Ping答复没有得到LAN机器,但进入Linux路由器网关

我已经将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 

重新启动防火墙以刷新旧规则。