首页 文章

IPTABLES:ping和wget工作,虽然他们没有

提问于
浏览
2

我好像不懂IPTABLES逻辑 .

我在我的服务器上重新安装了ubuntu服务器11.10并打开了转发(/etc/sysctl.conf中的net.ipv4.ip_forward = 1) . 服务器有两个网络接口 - eth0(ip 192.168.1.1)查找本地网络,eth1(ip 213.164.156.130)查找Internet .

在本地网络中还有另一台计算机使用ip 192.168.1.2 .

然后我向ITABLE * nat添加了两个简单的规则:

-A PREROUTING -i eth1 -j DNAT --to-destination 192.168.1.2
-A POSTROUTING -o eth1 -j SNAT --to-source 213.164.156.130

我认为第一条规则意味着将每个传入的数据包转发到192.168.1.2 .

但如果我从服务器运行“ping google.com”,“wget google.com”,它们就能成功运行 . 服务器接收数据包而不进行转发,我真的坚持这个 .

如果我从192.168.1.2运行这些命令,它们也可以工作,这意味着转发工作 .

1 回答

  • 3

    这些是NAT规则 .

    在第一个规则中,在路由数据包之前进行地址转换 . 您正在将目标地址更改为192.168.1.2,而在第二个规则中,您将在路由到213.164.156.130之前更改源地址 .

    我猜你可以ping和wget,因为你的INPUT和OUTPUT链都有默认动作 .

    TBH,I 'm confused about what you actually want to do but if you want to forward packets, you need to modify the FORWARD chain. Here'是关于iptables的详细和有用信息的链接,因此您可以更好地理解逻辑 - Ch14:Linux_Firewalls_Using_iptables“> http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO:Ch14:_Linux_Firewalls_Using_iptables .

相关问题