iptables SNAT 之后ping不通解决

iptables -t nat -A POSTROUTING -s 192.168.81.238 -j SNAT --to 192.168.81.245

把本地网卡的IP地址从192.168.81.238改为192.168.81.245

然后:

/ # ping 192.168.81.211
PING 192.168.81.211 (192.168.81.211): 56 data bytes

发现没有回复。

在192.168.81.211上抓包可以看到icmp的源地址是192.168.81.245,但是只抓到接收,没有回复icmp。

原因:应该是211进行arp解析时没有发现245的mac,所以不能回复。

解决办法:

在81.211上增加静态arp映射。

arp -s 192.168.81.245 00-0b-82-27-fd-e4

地址00-0b-82-27-fd-e4是211的地址。

这样就可以ping通了:

/ # ping 192.168.81.211
PING 192.168.81.211 (192.168.81.211): 56 data bytes
64 bytes from 192.168.81.211: seq=0 ttl=64 time=0.688 ms
64 bytes from 192.168.81.211: seq=1 ttl=64 time=0.599 ms
64 bytes from 192.168.81.211: seq=2 ttl=64 time=0.558 ms
64 bytes from 192.168.81.211: seq=3 ttl=64 time=0.482 ms
64 bytes from 192.168.81.211: seq=4 ttl=64 time=0.424 ms
64 bytes from 192.168.81.211: seq=5 ttl=64 time=0.512 ms
64 bytes from 192.168.81.211: seq=6 ttl=64 time=0.427 ms
64 bytes from 192.168.81.211: seq=7 ttl=64 time=0.546 ms


你可能感兴趣的:(iptables,ping,SNAT)