arp 和icmp
阿新 • • 發佈:2018-07-05
背景 pro ces ext 通過 網關 主機 ble ado 背景:
在做openstack 虛擬機網絡調試時,發現虛擬機之間可以Ping通,但是無法ping到網關。抓tap設備也沒有icmp的報文通過。 [root@localhost ~]#
此時我們卡電腦 在1.25上沒有1.24 的arp 表。下面我們把1.24的網卡關閉,並且在1.25上ping
1.24
在做openstack 虛擬機網絡調試時,發現虛擬機之間可以Ping通,但是無法ping到網關。抓tap設備也沒有icmp的報文通過。
下面我們來復原下,並且做分析:
實驗環境,共兩臺主機:
主機名 ip
localhost 192.168.1.25
bogon 192.168.1.24
查看192.168.1.25 主機的arp
[root@localhost ~]# arp -na
? (192.168.1.23) at e8:2a:44:34:3e:f4 [ether] on ens33
? (192.168.1.22) at 94:39:e5:53:53:c0 [ether] on ens33
此時我們卡電腦 在1.25上沒有1.24 的arp 表。下面我們把1.24的網卡關閉,並且在1.25上ping
1.24
並且在1.24上抓icmp包
再抓arp的包
可以看到此時只有 arp的包,沒有icmp的包。
###########
下面我們把1.24的網卡 enable
再次在1.25上ping 1.24。無疑是可以通的,下面我們看1.25的arp表
現在已經有了1.24的arp了。我們再次把1.24的網卡禁用掉,再次ping ,並且抓包
可以看到 只有請求包,沒有回應包,此時我們把1.25上的1.24 的arp表清除掉
我們再次ping ,查看是否有icmp包
查看arp包
可以看到 icmp是基於 arp的包的。當沒有arp表是會 先 學習 arp。然後會進行ping包
arp 和icmp