HCNA——RIP的路由彙總

HCNA——RIP的路由彙總

RIP V1的路由彙總

  • 路由聚合的原理是,同一個自然網段內的不同子網的路由在向外(其它網段)發送時聚合成一個網段的路由發送。

  • RIP-1的協議報文中沒有攜帶掩碼信息,故RIP-1發佈的就是自然掩碼的路由。因此也不支持VLSM。

  • 在有類網絡的邊界自動彙總,並且不能關閉彙總。

PS:VLSM 可變長子網掩碼

RIP-2路由聚合

  • RIP-2支持路由聚合,因爲RIP-2報文攜帶掩碼位,所以支持子網劃分。在RIP-2中進行路由聚合可提高大型網絡的可擴展性和效率,縮減路由表。

路由聚合有兩種方式。基於RIP進程的有類聚合:

  • 聚合後的路由使用自然掩碼的路由形式發佈。比如,對於10.1.1.0/24(metric=2)和10.1.2.0/24(metric=3)- 這兩條路由,會聚合成自然網段路由10.0.0.0/8(metric=2)。RIP–2聚合是按類聚合的,聚合得到最優的metric值。

  • 基於接口的聚合:用戶可以指定聚合地址。比如,對於10.1.1.0/24(metric=2)和10.1.2.0/24(metric=3)這兩條路由,可以在指定接口上配置聚合路由10.1.0.0/16(metric=2)來代替原始路由。

RIP V2的路由彙總

  • 默認時在有類網絡的邊界自動彙總,但可以關閉彙總。

  • undo summary關閉彙總。

  • 如果接口啓用水平分割、毒性發轉,則不進行彙總,除非使用 “summary always”命令。

實驗開始

拓撲圖

enter description here

首先配置好拓撲給出的配置接口

華爲路由器環回接口配置命令,以此類推進行配置

[R1]interface LoopBack 0
[R1-LoopBack0]ip address 172.16.0.1 24

下面進行配置RIP

R1

[R1]rip 1
[R1-rip-1]version 1
[R1-rip-1]network 172.16.0.0

R2

[R2]rip 1
[R2-rip-1]version 1
[R2-rip-1]net 172.16.0.0 
[R2-rip-1]net 192.168.23.0

R3

[R3]rip
[R3-rip-1]version 1
[R3-rip-1]network 192.168.23.0
[R3-rip-1]network 10.0.0.0

下面我們在R2 g0/0/0口抓包看看

enter description here

PS:一個RIP數據包最多支持25條路由表更新 配置了RIP v2和認證的話最多隻能24條

enter description here

分析數據包發現並沒有攜帶掩碼信息 下面我們來查看R2的路由表

enter description here

首先會學習到10.0.0.0網絡 路由表 是R3發送給R2的 而且在發送中也是不帶掩碼的

有沒有發現R2收到的是10.0.0.0網絡的掩碼是8位呢?可是我的環回口配置的是24位啊 這就是RIP V1的特性了 在有類網絡的邊界自動彙總,並且不能關閉彙總。

enter description here

但並不是說 左邊爲C類 右邊爲A類才叫做網絡邊界 即使兩邊是A類 比如左邊是20.0.0.0/8 右邊 10.0.0.0/8 這時候這路由器也是邊界路由器

下面我們再返回到R2上面查看路由表

enter description here

172.16.0.0的網絡有16位 24位 而且沒有172.16.4.0的網絡 那到底是爲什麼呢?

enter description here

PS:因爲配置RIP V1 如果發現R1 g0/0/1 發出去的數據包是在同一個主網絡的子網 那麼與g0/0/1口的掩碼相匹配的就會被髮送出去 因此 最底下那條就不會被髮送

下面通過抓取R1 g0/0/1 數據包看看

enter description here

發現RIP V1在發送路由更新的時候不帶掩碼 那麼對方收到以後怎麼知道這些路由表的掩碼呢?

enter description here
PS:R2會以接收路由表的接口的掩碼來套在發送過來的路由

那爲什麼會有一條172.16.0.0/16的路由呢 不應該相匹配的掩碼是24位嗎?

PS:這裏應該存在了BUG 但變成16位的原因可能是R2認爲該網絡是一個邊界 因爲R2的右邊又是另外一個網絡 所以會變成16位 這裏就暫且不細究了 因爲我也不懂 可以去百度查查看

從以上實驗發現RIP V1是不支持VLSM的 並且我們不想讓路由在網絡邊界進行彙總 那麼就要支持VLSM 我們下面就來開啓RIP V2

R1

[R1]rip 1
[R1-rip-1]version 2

R2

[R2]rip 1
[R2-rip-1]version 2

R3

[R3]rip 1
[R3-rip-1]version 2

重新在R2 g0/0/0 抓取數據包看看

enter description here

除了攜帶網絡地址 還會攜帶掩碼 下一跳 如果下一跳是0.0.0.0的話 那麼意味着下一跳就是Src源地址 (172.16.12.2)

下面在R3查看一下RIP信息

enter description here

現在已經是RIP V2了 默認路由彙總Summary:Enabled 是打開的 意味着默認情況下也是在網絡的邊界進行路由彙總 下面我們在R2查看路由彙總情況

enter description here

現在爲什麼10.3.3.0是24位而不是前面彙總後的八位呢?

PS:如果接口啓用水平分割、毒性發轉,則不進行彙總。默認情況下呢 RIP所有接口都是啓用了水平分割 所以我們現在看到的路由表是沒有彙總的 如果想在水平分割打開的情況下 進行彙總 除非使用 “summary always”命令

[R3]rip 1
[R3-rip-1]summary always 

再次查看R2路由表

enter description here

現在則進行了路由彙總

下面再把R1 R2的路由彙總打開 summary always 命令

[R1]rip 1
[R1-rip-1]summary always
[R2]rip 1
[R2-rip-1]summary always

enter description here

enter description here
enter description here

現在看到的3臺路由器都是進行了路由彙總 下面我們把3臺路由器的彙總關閉掉

[R1-rip-1]undo summary

[R2-rip-1]undo summary

[R3-rip-1]undo summary

enter description here

回到了原來的連續路由 實際上路由表爲連續路由的話不好 爲什麼呢?

PS:因爲路由表太大 太多的話 我們路由器轉發數據包的時候查詢的條目會很多 因此效率比較低 我們可以來做基於接口的聚合 也稱手工的路由彙總

下面我們想在路由彙總關閉的情況下 R2向R3發送路由更新的時候 不要彙總成16位 那麼我們怎麼來算它的掩碼位數呢?

enter description here

172.16 是16位 加上後面全部一樣的 也就是4位 總共就是20位 掩碼就爲 255.255.240.0

下面我們就可以來進行手工的路由彙總 在接口視圖下進行配置(R2 g0/0/1)

[R2]int g0/0/1
[R2-GigabitEthernet0/0/1]rip summary-address 172.16.0.0 ?
  IP_ADDR<X.X.X.X>  IP address mask
[R2-GigabitEthernet0/0/1]rip summary-address 172.16.0.0 255.255.240.0

再到R3上面查看路由表

enter description here

在R3就會看到一條路由表 而不像剛纔有五條明細的路由表 這就是手工的路由彙總

下面在R2 g0/0/1 接口來進行抓包 看看數據包情況

enter description here

抓包清楚的看到R2發送到R3現在只發送一條路由表 並且掩碼爲我們手工配置的20位

實驗總結

  • 掌握RIP v1的路由彙總
  • 掌握RIP v2的路由彙總
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章