我已经将Ubuntu 12.04configuration为具有两个接口的网关machine.its
eth0 with ip 192.168.122.39(Static) and eth1 connected to modem with ip address 192.168.2.3(through DHCP).
在路由器框中启用ip-forwarding。
客户机configuration为:
ip address 192.168.122.5 and gateway 192.168.122.39
客户端机器可以ping通路由器(192.168.122.39)。但是当ping到8.8.8.8回复没有到达客户端机器,但是在网关的tcpdump输出中,我可以看到8.8.8.8的回应请求,但从来没有回应回复。这是因为122.5没有转发请求2.0networking。请你帮我解决这个问题。
编辑:步骤跟随
此机器正在运行XEN HVM。
路由器机器:两个接口eth0:192.168.122.39(静态ip)eth1:192.168.2.3在路由器上
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE iptables -A FORWARD -i eth0 -j ACCEPT iptables -A FORWARD -i eth1 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
ptables -A FORWARD -i eth0 -o eth1 -j ACCEPT
在客户机上
ping 8.8.8.8
在网关的tcpdump结果
tcpdump -v -i eth0
192.168.122.1是虚拟桥梁
tcpdump:监听eth0,链路types为EN10MB(以太网),捕获大小为65535字节
14:17:26.352383 IP(tos 0x0,ttl 64,id 0,offset 0,flags [DF],proto ICMP(1),length 84)192.168.122.1> google-public-dns-a.google.com:ICMP回声请求,ID 1541,序列8395,长度64
14:17:26.938156 IP(tos 0x0,tt164,id 0,offset 0,flags [DF],原始ICMP(1),长度84)192.168.122.1> google-public-dns-a.google.com:ICMP回声请求,ID 1513,序列10735,长度64
tracepath 8.8.8.8。 从客户端机器:
tracepath 8.8.8.8
1:192.168.122.39 0.046ms pmtu 1500
1:192.168.122.5 0.259ms
1:192.168.122.5 0.188ms
2:没有答复
3:没有答复
您的调制解调器不知道如何达到192.168.122.0/24networking。 您必须在路由器上执行NAT,或者必须告诉调制解调器192.168.122.0/24应通过192.168.2.3路由。
对于NAT尝试这些规则:
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE iptables -A FORWARD -i eth0 -j ACCEPT iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
重新启动防火墙以刷新旧规则。