这些 iptable 规则是什么意思?

这些 iptable 规则是什么意思?

这些:

sudo iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
sudo iptables -A FORWARD -i tun0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i wlan0 -o tun0 -j ACCEPT

我是 iptables 的新手,FORWARD、POSTROUTING 和 PREROUTING、MASQUERADE 规则对我来说完全难以理解。

有人可以解释一下吗?

答案1

sudo iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

通过 tun0 接口发出的数据包将被 nat(网络地址转换)为 tun0 IP 地址。

sudo iptables -A FORWARD -i tun0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT

如果此会话已存在于连接跟踪表中,则到达 tun0 接口并发往 wlan0 接口的数据包将被接受。是的,您可以假设此处发生了传出 nat 的逆转,转换回原始 wlan0 ip 地址。

sudo iptables -A FORWARD -i wlan0 -o tun0 -j ACCEPT

到达 wlan0 接口并发往 tun0 接口的数据包被无条件允许。

请注意,FORWARD 链中的这些类型的规则假定默认策略为 DROP,否则它们就不是必需的。需要确切了解 iptables 规则集的整个上下文。

相关内容