RIP學習筆記

RIP V1&RIP V2比較

V1安全

V2網絡

有類(傳遞路由沒有掩碼)ide

無類spa

廣播更新設計

組播更新3d

FLSM(定長子網掩碼)orm

VLSM(變長)blog

v1收到路由的路由器以ip報文裏的源IP做爲下一跳接口

攜帶tag,subnet,next-hop進程

 

支持路由聚合,CIDR,認證

UDP 520

UDP 520

RIPv1報文結構

clip_image002[4]

l  有類別路由協議(不攜帶子網掩碼)

l  廣播更新

l  基於UDP,端口號爲520(UDP,不可靠傳輸。ipv6使用521,RIPNG)

l  FLSM

RIPv1報文結構

l  RIP每條消息包含兩個部分,分別爲Header和Route Entries。其中Header包含Command和Version。Route Entries最多包含25個路由條目,每一個路由條目包含Address Family Identity、路由可達的IP地址和跳數(metirc)。

l  報文格式各個字段解釋以下: 

n   Command:取值1或2,當取值爲1時表示該消息爲請求消息;當取值爲2時表示該消息爲響應消息。

n  Version:當取值爲1時表示該消息爲RIPv1消息;當取值爲2時表示該消息爲RIPv2消息。

n  Address Family Identity:對於IPv4協議,該字段取值爲2。當該消息是對整張路由表的請求消息時,該字段取值爲0。

n  IP Address:該字段表示路由的目的地址。這一項能夠是網絡地址、主機地址

n  Metric:該字段是指RIP中的跳數。雖然該字段取值範圍爲0-2^32,可是在RIP中,該字的取值範圍爲1-16。

v1request報文

clip_image004[4]

v1response報文

clip_image006[4]

RIPv1特色

RIP是一個基於UDP的路由協議,而且RIPv1的數據包不能超過512字節(RIP報文頭部佔用4個字節,而每一個路由條目佔用20八位組字節。所以,RIP消息最大爲4+(25*20)=504個字節(即最大25條路由,若是啓用認證爲24條路由),再加上8個字節的UDP頭部,因此RIP數據報的大小(不含IP包的頭部)最大可達512個字節。)。RIPv1的協議報文中沒有攜帶掩碼信息,因此RIPv1在處理數據包時會根據主類網段掩碼或者接口地址掩碼處理數據包。所以RIPv1沒法支持路由聚合,也不支持不連續子網。RIPv1的協議報文中沒有驗證字段,因此RIPv1也不支持驗證。

爲何最大可達512個字節:RIPv1開發出來主要的目的是做爲ARPA net的路由協議,而在那個時候SLIP、串行鏈路、撥號鏈路、T1鏈路等低速鏈路是最爲廣泛的,這些鏈路的MTU也就是500 - 600 Byte不等,因此不能用以太網的MTU來衡量了。

RIPv2報文結構

clip_image008[4]

l  無類別路由協議(攜帶子網掩碼)

l  組播更新,組播地址224.0.0.9

l  基於UDP,端口號爲520

l  支持外部路由Tag; 支持路由聚合和CIDR;支持指定下一跳;支持認證

l  VLSM

RIPv2報文結構

l  lRIPv2的報文格式的基本結構和RIPv1相同。RIPv2使用了RIPv1中部分未用字段以提供擴展功能。

l  報文格式部分字段解釋以下:

n  Route Tag:用於標記外部路由或者路由引入到RIPv2協議中的路由。

n  Subnet Mask:用來標識使用IPv4地址的網絡和子網部分。

n  Next Hop:表示比通告路由器地址更好的下一跳地址。若是該字段爲0.0.0.0,則說明通告路由器地址爲最優下一跳地址。

n  當RIPv2配置認證時,RIPv2會對報文第一條Route Entries進行修改。具體修改以下

u  Address Family Identity字段改成0XFFFF。

u  Route Tag字段改成Authentication Type字段。

u  IP Address、Subnet Mask、Next Hop和Metric會變爲口令字段。

RIPv2相較RIPv1的改進包括以下幾點

l  支持外部路由標記(Route Tag),能夠在路由策略中根據Tag對路由進行靈活的控制。

l  實際上不一樣RIP進程間相互引入路由也可使用Tag。 

l  報文中攜帶掩碼信息,支持路由聚合和CIDR。

l  支持指定下一跳,在廣播網上能夠選擇到最優下一跳地址。

l  支持以組播方式發送更新報文,只有運行RIPv2的設備才能收到協議報文,減小資源消耗。

l  支持對協議報文進行驗證,加強安全性。

在多於兩臺設備組建的廣播網絡環境中,Next Hop字段會發生變化,從而使路徑最優。

MD5認證明際上是把路由表項和共享密鑰進行與運算,而後路由器將運行運算結果和路由條目發送給對端鄰居。

v2request報文

clip_image010[4]

v2response報文

clip_image012[4]

RIP主要使用三個定時器

l  更新定時器:它定時觸發更新報文的發送,更新週期默認爲30。(實際25.5-30之間)

l  老化定時器:RIP設備若是在老化時間內沒有收到鄰居發來的路由更新報文,則認爲該路由不可達。老化定時器超時後,該路由條目設置爲16。180

l  垃圾收集定時器:若是在垃圾收集時間內(默認爲更新定時器的4倍,即120),不可達路由沒有收到來自同一鄰居的更新,則該路由將被從路由表中完全刪除。

三個定時器之間的關係

l  RIP 的更新信息發佈是由更新定時器控制的,默認爲每30 秒發送一次。 

l  每一條路由表項對應兩個定時器:老化定時器和垃圾收集定時器。當學到一條路由並添加到路由表中時,老化定時器啓動。若是老化定時器超時,設備仍沒有收鄰居發來的更新報文,則把該路由的度量值置爲16(表示路由不可達),並啓動垃圾收集定時器。若是垃圾收集定時器超時,設備仍然沒有收到更新報文,則在路由表中刪除該條目。

注意事項

l  若是在沒有觸發更新的前提下,一個路由表項最多須要300秒才能被刪除(老化時間180+垃圾收集時間120)。

l  若是存在觸發更新,那麼一個路由條目最多須要120秒才能被刪除(即爲老化時間)。

clip_image014[4]

水平分割

水平分割指的是RIP從某個接口學到的路由,不會從該接口再發回給鄰居設備。

特殊狀況:在幀中繼和X.25等NBMA網絡中,水平分割功能缺省爲禁止狀態

做用:RIP採用水平分割不但減小了帶寬消耗,還能夠防止路由環路。

clip_image016[4]

毒性逆轉

毒性逆轉指的是RIP從某個接口學到路由後,將該路由的開銷設置爲16(即指明該路由不可達),並從原接口發回鄰居設備。

若是同時配置了毒性逆轉和水平分割,則只使用毒性逆轉功能

做用:利用毒性逆轉,能夠清除對方路由表中的無用路由。

現實狀況:缺省狀況下不使能毒性逆轉。通常狀況下,在華爲設備中均使能水平分割(除NBMA網絡外)而禁用毒性逆轉。

水平分割和毒性逆轉的差異:水平分割和毒性逆轉都是爲了防止RIP中的路由環路而設計的,可是水平分割是不將收到路由條目再按「原路返回」來避免環路,而毒性逆轉遵循「壞消息比沒消息好」的原則,即將路由條目按「原路返回」,可是該路由條目被標記爲不可達(度量值爲16)。

clip_image018[4]

觸發更新

觸發更新是指路由信息發生變化時,當即向鄰居設備發送觸發更新報文,通知變化的路由信息。

觸發更新不會觸發接收路由器重置本身的更新定時器

l觸發更新縮短了收斂時間,觸發更新能夠縮短網絡收斂時間,在路由表項變化時當即向其餘設備廣播該信息,而沒必要等待定時更新。若是沒有觸發更新,缺省狀況下,失效的路由條目會在路由錶停留最多300秒(老化定時器+垃圾收集定時器)

下一跳地址不可達,不會觸發觸發更新

clip_image020[4]

路由聚合

l  RIPv2支持路由聚合(僅RIPv2支持路由聚合),由於RIPv2報文攜帶掩碼位,因此支持子網劃分。在RIPv2中進行路由聚合可提升大型網絡的可擴展性和效率,縮減路由表。

l  基於RIPv2進程的有類聚合即實現自動聚合。

l  基於接口的聚合即實現手動聚合。

l  若是被聚合路由攜帶了Tag,那麼路由聚合發生以後,Tag信息將被清除。

l  rip summary-address ip-address mask [ avoid-feedback ] 增長avoid-feedback是爲了聚合後從接口發送給對端後,接口不在收相同的聚合路由(防止路由環路),其餘友商可能會在聚合後生產一條null0的黑洞路由有相同效果。

工做過程分析

l  初始狀態:路由器開啓RIP進程,宣告相應接口,則設備就會從相關接口發送和接收RIP報文。進程初始啓動發送request(能夠單播、組播、廣播,v1默認單播,v2默認組播),後面都是response報文(能夠單播,組播,廣播,v1默認廣播,v2默認組播,能夠手動設置爲單播)

l  構建路由表:路由器依據收到的RIP報文構建本身的路由表項。

l  維護路由表:路由器每一個30發送更新報文以維護本身的路由表項。

l  老化路由表項:路由器爲將本身構建的路由表項啓動180的定時器。180秒內,若是路由器收到更新報文,則重置本身的更新定時器和老化定時器。

l  垃圾收集表項:若是180秒事後,路由器沒有收到相應路由表項的更新,則啓動時長爲120的垃圾收集定時器,同時將該路由表象的度量置位16

l  刪除路由表項:若是120以後,路由器仍然沒有收到相應路由表象的更新,則路由器將該表相刪除。

clip_image022[4]

 

RIP v1發送規則

注意發送時沒有子網掩碼。

將要發送前綴路由和出接口網段匹配:

1.      若是不在同一主網,此爲主網邊界,將前綴自動彙總爲有類網絡號,發送前綴到出接口;

2.      若是在同一主網,檢查要發送的前綴是否爲32位掩碼:

a)     若是是,發送32爲前綴到出接口;

b)     若是不是,檢查前綴和出口掩碼是否相同:

                 i.          若是不一樣,抑制發送或者彙總爲主網絡號;

               ii.          若是相同,沒有邊界,發送正確前綴到出口。

RIP v1接受規則

收到一個前綴後

3.      若是發現是主網絡號,直接放入路由表,掩碼是8/16/24;

4.      若是不是主網絡號,檢查是否與接口在同一主網:

a)     若是不在,生成有類路由,掩碼按有類路由計算,放入路由表;

b)     若是在同一主網,用接口掩碼去掩,而後檢查該前綴是不是網段地址仍是主機地址:

                 i.          若是是網段地址,生成路由,掩碼等於本身的接口掩碼,放入路由表;

               ii.          若是掩出來發現不是網段地址,就默認是主機,生產32位主機路由,放入路由表。

 

clip_image024[4]

R1發送路由解析:

5.      10.2.2.2:同一主網且掩碼爲32位

6.      10.3.3.0:同一主網,相同掩碼,發送24位前綴

7.      10.0.0.0:同一主網,不一樣掩碼,彙總爲主網絡號

8.      192.168.1.0:不一樣主網,自動彙總爲有類網絡號

9.      172.16.0.0:不通主網,自動彙總爲有類網絡

R2接受路由解析:

10.   10.2.2.2/32:前綴不是主網絡號---是同一主網---掩出後不是網段地址---默認主機路由

11.   10.3.3.0/24:前綴不是主網絡號---是同一主網---等於接口掩碼

12.   10.0.0.0/8:主網絡號匹配

13.   192.168.1.0/24:主網絡號匹配

14.   172.16.0.0/16:主網絡號匹配

silent-interface :RIP開啓後只接受不發送,OSPF是收發都禁止。

silent-interface+指定peer實現單播更新,

若是隻配置指定peer,那麼v1既發單播又發廣播,v2既發單播又發組播

排錯:

15.   檢查接口是否在RIP中使能

16.   檢查對方發送版本號和本地接口接收的版本號是否匹配

17.   檢查在RIP中是否配置了策略,過濾掉收到的RIP路由:

18.   RIP使用的端口520是否被禁用

19.   檢查接口是否配置了undo rip input/output或者rip metricin設置度量值多大

20.   檢查接口是否配置了抑制接口

21.   檢查路由度量值是否大於16

22.   檢查鏈路兩端的接口認證方式是否匹配:若是報文認證失敗,則需正確配置

clip_image026[4]

相關文章
相關標籤/搜索