我有一个带有两个 NIC 的 Ubuntu 14.04 LTS 服务器。一个连接到内部网络(eth0,192.168.4.0/24),另一个连接到可以访问互联网的路由器(eth1,网络192.168.2.0/24)。
我想要实现的是让192.168.4.0/24网络的客户端可以上网。所以我运行了以下命令:
$ echo 1 > /proc/sys/net/ipv4/ip_forward
$ iptables -A FORWARD -i eth0 -j ACCEPT
$ iptables -A FORWARD -o eth0 -j ACCEPT
据我了解,客户端现在应该能够访问路由器,但它不起作用:
$ ping 192.168.2.1
Request timeout for icmp_seq 0
并且在最后一步启用 NAT 不起作用
$ iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
你能告诉我我的错误在哪里吗?
您是否检查过您的路由,例如默认网关?检查路线-n。
否则,您可以尝试设置规则以从已建立的连接中路由回数据包。