大學的時候有上過計算機網絡的課程,IP這塊也有一些接觸,但向來不是很好學的我,對於一些問題似是而非的態度,感覺知道,但具體的又說不上,今天就花了點時間徹底把這個問題搞清楚,寫在這也算是做個記錄吧!接下來我們舉例說明,如何去判斷A和B兩個IP是否在同一網段。
A IP:202.194.128.9
B IP:202.194.128.14
子網掩碼:255.255.255.0
1.把A和B的地址轉換為二進制的
A:1100 1010.1100 0010.1000 0000.0000 1001
B:1100 1010.1100 0010.1000 0000.0000 1101
掩碼 :1111 1111.1111 1111. 1111 1111 .0000 0000
2、要判斷兩個IP是否在同一網段,主要是看看他們的網絡標識是否一樣,其實一個IP的網絡標識也就是他的IP和子網掩碼AND之后的結——比如上面兩個AND以后的結果如下:
A:11001010.1100 0010.1000 0000 .0000 0000 轉化為十進制:202.194.128.0
B:1100 1010.1100 0010.1000 0000.0000 0000 轉化為十進制:202.194.128.0
這說明兩個IP的網絡標識相同,也就是說他們在同一子網。
3、有的時候我們還想知道,兩個IP各自的主機標識,先將子網掩碼取反,再和IP做AND.
A:1100 1010.1100 0010.1000 0000.0000 1001
B:1100 1010.1100 0010.1000 0000.0000 1101
掩碼取反:0000 0000.0000 0000.0000 0000.1111 1111
AND 之后結果:
A:0000 0000.0000 0000.0000 0000.0000 1001 轉化為十進制:9
B:0000 0000.0000 0000.0000 0000.0000 1101 轉化為十進制:14
也就是說A和B的主機標識為9和14