路由器 CIDR TCP 交換器 路由 IP 網路 協定

無類別區隔路由CIDR技術 依需求善用有限IP位址

2015-11-12
為了避免造成IP位址的大量浪費,於是出現了無類別區隔路由(CIDR)技術,本文將介紹CIDR類型的IP位址分配方式及相關的路由技術,並說明CIDR的多變長度子網路遮罩與路由匯總兩項重要技術。
接著來看看圖4這個例子,也許大家會比較容易了解路由匯總的用途和好處在哪裡。

在圖4的網路架構圖中,路由器X連接著兩個子網路,分別是172.16.32.0/24和172.16.128.0/24,如果沒有路由匯總,則路由器X必須把這兩個子網路 中的路由資訊全部傳送給路由器Y,如此一來,一旦這兩個子網路中有任何的改變,則路由器X都必須傳送相對應的路由資訊給路由器Y,這樣不僅增加太多網路負擔,要維護這些資料也是相當麻煩的事情。


▲圖4 網路架構圖4。

如果再仔細看一下這個網路架構圖,可以發現對於路由器Y而言,相當於「路由器X知道如何送到172.16.0.0/16這樣的網路區段」。所以,以後一旦路由器Y收到相當於傳送給172.16.0.0/16這樣的目的地,就可以直接把這樣的封包傳送給路由器X,因為它知道怎麼傳送。把172.16.32.0/24和172.16.128.0/24這兩個子網路路由資訊結合成一筆172.16.0.0/16的路由,就是路由匯總的功能。

Classless的路由協定(像是RIPv2、OSPF、IS-IS以及EIGRP路由協定等等)都有支援路由匯總,當然也支援VLSM,而Classful的路由協定(例如RIPv1和IGRP路由協定)則沒有支援路由匯總,因為已經自動做了相對應的匯總動作。

路由匯總的詳細資訊與運作方式,都被定義在RFC 1518之中(An Architecture for IP Address Allocation with CIDR),可前往查看並研讀。

路由匯總的計算方式

了解路由匯總的目的與運作方式之後,應該就已經大略明白如何計算路由匯總的資料。不過,下面還是用例子來說明一下。假設有個路由器收到以下這些子網路的路由資訊更新:


那麼路由匯總之後的資料應該是如何呢?首先把這些資料轉成二進位:


轉換之後,很容易就可以發現,前面粗體字部分在這八個子網路當中都是一樣的,所以這些相同的部分就是路由匯總之後的結果,也就是:


因為相同的部分有21個數字,所以遮罩就是21。因此,最後路由匯總的結果就是:


現在,應該也能完全了解路由匯總了。接著,來看看多變長度子網路遮罩下的路由匯總又是如何。

多變長度子網路遮罩的路由匯總

以圖5的網路架構圖為例,為大家說明多變長度子網路遮罩的路由匯總又是如何計算的。


▲ 圖5 網路架構圖5。

假設路由器E、F以及路由器H會把路由資訊傳送給路由器G,然後路由器G會把路由資訊傳送給路由器Z,這裡可以發現,路由器E所連接的子網路遮罩是26,而路由器F和路由器H所連接的子網路遮罩是20,因此這個網路架構是多變長度子網路遮罩。

底下來看看如何在這個多變長度子網路遮罩的環境中做到路由匯總。首先,匯總路由器E所連接的子網路,若將路由器E所連接的子網路172.16.32.64/26和172.16.32.128/26轉換成二進位,則如下列所示:


可以發現匯總起來的結果是:


所以,路由器E傳送給路由器G的路由匯總資料是172.16.32.0/24。因此,路由器G會收到的路由資料有:

172.16.128.0/20
172.16.32.0/24
172.16.64.0/20

若將這些資料轉換成二進位,則如下列所示:


即使這三筆路由資料各使用不同的子網路遮罩,但從上面的二進位表示法中可以很清楚地發現,相同之處只有最前面的部分,如下所示:



追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!