子網掩碼不同能否通信?(可以)
兩台電腦PC1和PC2的網絡配置如下,PC2的子網掩碼本應該是255.255.255.0,被不小心配成了255.255.255.224,它們還能正常通信嗎?
1、打開華為ensp模擬器,按照如圖所示進行配置,配置完畢后,在三個抓包點進行抓包。
2、通過PC1 ping PC2,結果是通的,如下所示:
3、該操作產生的網絡包,在三個點抓包結果如下:
抓包結果分析:
PC1-192.168.26.129 ping PC2-192.168.26.3,在抓包2,No.92記錄,PC1根據自己的子網掩碼,計算出PC2屬於同一個子網,不需要跨子網通信不需要默認網關的轉發,所以直接發了ARP請求PC2的mac地址的廣播包,抓包點1和抓包點3都收到了這個廣播。抓包點1、ip為192.168.26.2不是請求的192.168.26.3丟棄此包。抓包點3ip與請求ip一直,回復了此包加上了自己的mac地址。回復此包時PC2根據自己的子網掩碼,計算出PC1屬於不同子網,跨子網通信需要默認網關的轉發,抓包3、No.90為PC2請求網關192.168.26.2的mac地址ARP廣播包。PC1收到此廣播包ip不一致丟棄。抓包1收到此arp請求,回復PC2 網關的mac地址。PC1pingPC2,ping包到達pc2,pc2的回報到網關,網關在到pc1。
PC2-192.168.26.3 ping PC1-192.168.26.129,ping包到達網關,網關到pc1,pc1到網關,網關到pc2。
結論:
1、根據自己的子網掩碼計算目標ip與自己是不是同一個子網,跨子網通信需要默認網關的轉發(本質是路由轉發)。
(ping目標ip,先計算是不是同一個子網,如果是同一個子網,直接請求目的ip的mac地址,不在同一個子網,查看路由,看路由的下一跳是哪里,就ARP請求下一跳ip的mac地址,如果路由配置的下一跳是出接口不是ip地址,那么意思就是說他們是直連,直接ARP廣播請求目的ip的mac地址。)
2、根據自己的子網掩碼計算目標ip與自己是不是同一個子網,屬於同一個子網,無需默認網關的參與。
后記: