Myluzh Blog

iptables 四表五链

2025-4-1 myluzh Linux

0x01 iptables概念     iptables是Linux系统中强大的网络流量控制工具,它通过四种主要的表(raw、mangle、nat、filter)和五条链(INPUT、OUTPUT、FORWARD、PREROUTING、POSTROUTING)来实现对数据包的过滤、修改和地址转换。     iptables、firewalld 和 ufw 都是用于管理 Linux 系统防火墙的工具,但它们的设计目标、使用方式和复杂性有所不同。它们都依赖于底层的 netfilter 框架来实现实际的网络包过滤和转发功能。真正实现防火墙功能的是内核中的 Netfilter 模块。Netfilter 在网络层的五个关键位置(即防火墙的“五链”)注册了钩子函数,用于抓取数据包,并根据 iptables 配置的规则进行匹配和处理(如 ACCEPT、DROP 等)。简而言之,iptables 负责配置规则,Netfilter 负责执行这些规则。 0x02 四表五链概念 1. 四种表 filter:负责数据包过滤(默认表)。 nat:用于网络地址转换...

阅读全文>>

标签: linux firewalld iptables 四表五链 netfilter ufw

评论(0) (79)

K8S使用NodePort时,无法在主机上看到监听的端口 - 探究原因

2023-12-7 myluzh Kubernetes

0x00 前言 在新版K8S中,即便 Service 使用 nodeport 暴露,在 node 中使用netstat -anp 或者ss -nlt命令上也看不到 kube-proxy 监听的端口了,但是 nodeport 访问是正常的。 Kubernetes服务不是作为侦听特定端口的进程来实现的。取而代之的是使用iptables (或IPVS),服务基本上是iptables规则。这就是为什么它们不会出现在你的netstat中。 详细查看:https://kubernetes.io/docs/concepts/services-networking/service/#proxy-mode-iptables 0x01 你需要先了解kube-proxy的三种工作模式 1、userspace userspace模式是 kube-proxy 使用的第一代模式,该模式在 kubernetes v1.0 版本开始支持使用,该模式kube-proxy会为每一个Service创建一个监听端口,发向Cluster IP的请求被Iptables规则重定向到kube-proxy监听的端口上,kube-proxy根据LB算法选择一个...

阅读全文>>

标签: k8s kube-porxy iptables ipvs

评论(0) (1934)