判斷兩個IP是否處於同一子網(網段)


大學的時候有上過計算機網絡的課程,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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM