回覆列表
  • 1 # 使用者4378695757546

    我寫點自己粗淺的理解吧。

    掩碼是給自己用的。 掩碼和IP地址與運算得到網路地址。 比如(請自行腦補二進位制的方式來理解):

    IP地址:192.168.1.2

    子網掩碼:255.255.255.0

    那它們與運算後得到的網路地址是:192.168.1.0

    我的理解是網絡卡接受到一個數據包,到了第三層,取出資料包中的IP地址,與本機的掩碼進行與運算得到網路地址,如果網路地址與本機的網路地址不一致則認為是不同子網,就丟棄那個資料包,如果一致則認為在同一個網路中,資料包合法,繼續往上傳(第四層) 。所以192.168.1.2/24和192.168.1.3/16在本機看來,對方都是跟自己在同一個網路中(貌似就是所謂的超網的概念),就像@繆偉寧 在答案中補充的例子一樣。

    另外我再補充四個例子(拓撲跟@繆偉寧 回答補充的例子一樣)。

    例子一:

    主機A的IP地址:192.168.1.2/24,閘道器:空,運算得到的網路地址:192.168.1.0

    主機B的IP地址:192.168.2.2/16,閘道器:空,運算得到的網路地址:192.168.0.0

    此時主機A和主機B ping不通

    分析:

    主機A ping主機B的時候,目標地址:192.168.2.2 和本機掩碼:255.255.255.0運算得到的網路地址:192.168.2.0,跟本機的網路地址:192.168.1.0 不一致,所以主機A認為目標地址和本機不在同一個網路中,所以資料包發到閘道器去,但是閘道器為空,die~

    主機B ping主機A的時候,目標地址:192.168.1.2 和本機掩碼:255.255.0.0運算得到的網路地址:192.168.0.0,跟本機的網路地址:192.168.0.0 一致,所以認為在同一個網路中。資料包傳送出去之後主機A的網絡卡雖然收到了,但是在OSI第三層的時候,主機A用自己的掩碼跟資料包的源地址與運算之後得到的網路地址是:192.168.2.0,顯然跟本機的網路地址:192.168.1.0不一致,所以丟棄,die~

    例子二:

    主機A的IP地址:192.168.1.2/24,閘道器:192.168.2.2,運算得到的網路地址:192.168.1.0

    主機B的IP地址:192.168.2.2/16,閘道器:空,運算得到的網路地址:192.168.0.0

    此時主機A和主機B 能ping通

    分析:主機A ping主機B的時候,目標地址:192.168.2.2 和本機掩碼:255.255.255.0運算得到的網路地址:192.168.2.0,跟本機的網路地址:192.168.1.0 不一致,所以主機A認為目標地址和本機不在同一個網路中,所以資料包發到閘道器去,即:192.168.2.2 . 主機B收到了主機A發來的資料包,把主機A的IP地址跟本機的掩碼計算得到的網路地址與本機的網路地址一致,OK,收下,併發送響應的ICMP包,所以ping通了。

    主機B ping主機A的時候,目標地址:192.168.1.2 和本機掩碼:255.255.0.0運算得到的網路地址:192.168.0.0,跟本機的網路地址:192.168.0.0 一致,所以認為在同一個網路中。資料包傳送出去之後主機A看到是閘道器發來的資料包,所以義不容辭的收下併發送了響應的ICMP包,所以ping通了。

    例子三:

    主機A的IP地址:192.168.1.2/24,閘道器:空,運算得到的網路地址:192.168.1.0

    主機B的IP地址:192.168.2.2/16,閘道器:192.168.1.2,運算得到的網路地址:192.168.0.0

    此時主機A和主機B ping不通

    分析:

    主機A ping主機B,情況跟第一個例子一樣,就不復制過來了。

    主機B ping主機A,情況其實跟第一個例子也一樣,走不走閘道器在單純接交換機的情況下是差不多的,也是主機A網絡卡雖然收到了,但是丟棄了。

    例子四:

    主機A的IP地址:10.0.0.2/8,閘道器:空,運算得到的網路地址:10.0.0.0

    主機B的IP地址:192.168.2.2/16,閘道器:10.0.0.2,運算得到的網路地址:192.168.0.0

    此時主機A和主機B ping不通

    分析:

    主機A ping主機B,情況跟第一個例子一樣,只是地址變了。不復制了。

    主機B ping主機A,資料包走閘道器,發到主機A去,主機A收到了,但是根據資料包的IP地址和本機的掩碼得出的網路地址是:192.0.0.0,跟自己的:10.0.0.0 不一樣,丟棄,die~

  • 中秋節和大豐收的關聯?
  • 《紅樓夢》的片頭曲,片尾曲,插曲,都叫什麼名字?