iptables 将所有流量转发到 2 个不同的接口

iptables 将所有流量转发到 2 个不同的接口

我目前正在使用 dnsmasq 创建一个小型 Debian 盒子作为 DHCP 和 DNS 缓存服务器。直到今天,我只有 2 个接口(eth0、eth1)。一台连接到我的 WAN (eth0),一台连接到我的 LAN (eth1) 以分配 IP。

为了在 NIC 之间转发流量,我如下设置 iptables:

iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --append FORWARD --in-interface eth1 -j ACCEPT

然后我使用 iptables-persistent 来修复规则。

我安装了一个新的 NIC (eth2),配置了 dnsmasq,所以我现在有 2 个子网。我补充道:

iptables --append FORWARD --in-interface eth2 -j ACCEPT

有用。
我清理/etc/iptables/rules.v4并重新安装了 iptables-persistent,但是当我编辑 /etc/iptables/rules.v4 时,配置文件中没有 eth2 的痕迹。

问题是它有效,但我做错了什么?

答案1

/etc/iptables/rules.v4当您发出命令时不会更新iptables,您必须自己更新它,例如:

iptables-save > /etc/iptables/rules.v4

相关内容