1. 程式人生 > >網路中是通過硬體地址找到目的主機的,那為什麼還要有IP地址呢?

網路中是通過硬體地址找到目的主機的,那為什麼還要有IP地址呢?

計算機網路這本書是這樣說的:

這是因為全世界存在著各式各樣的網路,他們使用不同的硬體地址。要使這些異構的網路能夠互相通訊就必須進行非常複雜的硬體地址轉換工作,因此由使用者或使用者主機來完成這個任務工作是幾乎不可能的。他們之間的通訊就像連線在同一個網路上那樣簡單方便,因為ARP的複雜過程都是計算機軟體自動進行的,對使用者來說是看不見這種呼叫的。所以,在虛擬的IP網路上用IP地址進行通訊給廣大的計算機使用者帶來了很大的方便。

這裡我通俗的給大家講一下:

每個網路都是不同的,硬體地址的格式也是不相同的,如果想要把不同的硬體地址統一化來進行資料之間的通訊,這是一件非常困難的事情。

網路是由各個不同的異構網路通過路由器互連起來的,路由器的兩端是兩個不同的區域網絡,不同的區域網絡的網路號就不相同。ARP地址解析協議只在同一個區域網內有效,如果目標主機和目的主機處在不用的區域網不同,那應該怎麼辦呢?這裡就用到了IP地址了,如果目的主機在網路1中(通過IP地址的網路號是否相同去判定),那麼下一跳的路由器應該為R1(對應目的主機的網路號的路由器),就這樣,通過網路號,從一個路由器轉發到另一個路由器,IP資料報最終一定可以找到目的主機所在的目標網路的路由器,這時候才再通過ARP地址解析協議找到目的主機,進行最後的直接交付。

通過IP地址進行通訊給使用者帶來了很大的便利,同時減輕了網路的負擔。比如說,有四個不同的網路,每個網路有一萬臺主機,那麼就一共有四萬臺主機,如果路由表是通過IP地址的主機號來進行製作路由表,那麼路由表就會有4萬項,如果是通過IP地址的網路號(同個區域網內的網路號相同),路由表只有4項,差異顯而易見。