1. 子網號為何不能為全0或全1?
今天在寫計算機網絡-網絡層的作業時遇到了一個問題:
問題:試找出可以產生一下2個A類子網的子網掩碼。
題目很簡單,A類網絡的子網掩碼為255.0.0.0
,如果需要在A類網絡下划分兩個子網,除去全1與全0,子網掩碼為255.192.0.0
。
但對於為什么要剔除全0或全1卻有些模糊不清。遂與同學交流討論,翻閱博客,最終找到了答案。
拿45.0.0.0
這個A類地址來舉例,設其子網掩碼為255.192.0.0
。
- 全0的情況:
在子網號全為0時,其網絡號為45.0.0.0/10
。顯然,在路由器眼中,其與45.0.0.0/8
並無區別,產生二義性。 - 全1的情況:
在子網號全為1時,若想對本子網(45.11.0.0/10
)廣播,其目的ip應為45.255.255.255
。然而,這卻與45.0.0.0/8
的廣播產生了沖突,不能確定應該對子網還是對整個網段進行廣播,產生二義性。
2. CIDR子網號為何能為全0或全1?
因為在無分類的情況下,采用最長前綴匹配
來進行路由轉發,掩碼與ip地址總是成對出現,所以不存在二義性的問題。