路由基礎(chǔ)——RIP協(xié)議
RIP協(xié)議是我們接觸的較為早期的一個(gè)路由協(xié)議。對(duì)于這個(gè)協(xié)議的使用,我們需要作為基礎(chǔ)知識(shí)來(lái)學(xué)習(xí),因?yàn)橹蟮膮f(xié)議演進(jìn)都是基于這個(gè)版本的。
RIP協(xié)議簡(jiǎn)介
RIP是Routing Information Protocol(路由信息協(xié)議)的簡(jiǎn)稱(chēng),是一種基于D-V算法的簡(jiǎn)單動(dòng)態(tài)路由協(xié)議,主要用于小型網(wǎng)絡(luò).它通過(guò)UDP交換路由信息,每隔30秒向外發(fā)送一次更新報(bào)文(將自己所有的路由表都發(fā)送給鄰居).如果路由器經(jīng)過(guò)180秒沒(méi)有收到來(lái)自對(duì)方端的路由更新報(bào)文,則將所有來(lái)自此路由器的路由信息標(biāo)志為不可達(dá),如果在其后120 秒內(nèi)仍未收到更新報(bào)文,就將該條路由從路由表中刪除.
RIP使用跳數(shù)來(lái)衡量到達(dá)目的網(wǎng)絡(luò)的距離,路由器到與它直接相連網(wǎng)絡(luò)的跳數(shù)為0,通過(guò)一個(gè)路由器可達(dá)網(wǎng)絡(luò)的跳數(shù)為1,其余依此類(lèi)推.為限制收斂時(shí)間,RIP規(guī)定metric***跳數(shù)為15,高于此的都不可達(dá),這是限制RIP不能用于大型網(wǎng)絡(luò)的主要因素.
RIP協(xié)議處于UDP協(xié)議的上層,RIP所接收的路由信息都封裝在UDP的數(shù)據(jù)報(bào)中,RIP在520號(hào)端口上接收來(lái)自遠(yuǎn)程路由器的路由修改信息,并對(duì)本地的路由表做相應(yīng)地修改,同時(shí)通知其他路由器.通過(guò)這種方式,達(dá)到全局路由的同步.
RIP協(xié)議的實(shí)現(xiàn)
系統(tǒng)初始化
1.RIP啟動(dòng)時(shí)的初始路由表僅包含本路由器的一些直連接口路由.
2.RIP協(xié)議啟動(dòng)后向各接口廣播一個(gè)Request報(bào)文.
3.鄰居路由器的RIP協(xié)議從某接口收到Request報(bào)文后,根據(jù)自己的路由表,形成Response報(bào)文向該接口對(duì)應(yīng)的網(wǎng)絡(luò)廣播.
4.RIP接收鄰居路由器回復(fù)的包含鄰居路由器路由表的Response報(bào)文,形成自己的路由表.
路由更新
RIP協(xié)議以30秒為周期用Response報(bào)文廣播自己的路由表.
收到鄰居發(fā)送而來(lái)的Response報(bào)文后,RIP協(xié)議計(jì)算報(bào)文中路由項(xiàng)的度量值,比較其與本地路由表路由項(xiàng)度量值的差別,更新自己的路由表.
報(bào)文中路由項(xiàng)度量值的計(jì)算公式為:metric=MIN(metric + cost, 16).其中metric為報(bào)文中攜帶的度量值信息,cost為接收?qǐng)?bào)文的網(wǎng)絡(luò)的度量值開(kāi)銷(xiāo),缺省為 1(1 跳),16代表不可達(dá).
RIP配置(以Cisco的路由器為例)
Router(config)#router rip—啟動(dòng)RIP路由協(xié)議
AH_CZ_TC_2500(config-router)# network [network range | all]—指定工作網(wǎng)段,RIP只在指定網(wǎng)段上的接口工作;對(duì)于不在指定網(wǎng)段上的接口,RIP既不在它上面接收和發(fā)送路由,也不將它的接口路由轉(zhuǎn)發(fā)出去.
AH_CZ_TC_2500(config-router)# version [1|2—指定RIP的版本
AH_CZ_TC_2500(config-router)# maximum-paths [1-6]—指定等價(jià)路由的最多使用條數(shù)
AH_CZ_TC_2500(config-router)# passive-interface e0—可以使eth0口只接收RIP分組,但不發(fā)送rip分組,這個(gè)命令只有在需要的時(shí)候才配置.
AH_CZ_TC_2500(config-router)#int s0—進(jìn)入單獨(dú)的接口進(jìn)行配置
AH_CZ_TC_2500(config-if)#ip rip [send|receive] version [1|2]—可以指定某個(gè)接口做發(fā)送或接口功能,并且執(zhí)行哪一個(gè)版本的RIP
AH_CZ_TC_2500(config-if)#ip split-horizon—可以設(shè)置是否啟用水平分割
由于此處命令太多,不一一例舉,具體命令格式可以參考Cisco網(wǎng)站或其他命令參考手冊(cè).
RIP協(xié)議注意:RIP-1采用廣播形式發(fā)送報(bào)文;RIP-2有兩種傳送方式,廣播方式和多播方式,缺省將采用多播發(fā)送報(bào)文.多播發(fā)送報(bào)文的好處是在同一網(wǎng)絡(luò)中那些未運(yùn)行RIP的主機(jī)可以避免接收RIP的廣播報(bào)文.當(dāng)接口運(yùn)行RIP-1時(shí),只接收和發(fā)送RIP-1與RIP-2廣播報(bào)文,不接收RIP-2多播報(bào)文;當(dāng)接口運(yùn)行在RIP-2多播方式時(shí),只接收和發(fā)送RIP-2多播報(bào)文,不接收RIP-1與RIP-2廣播報(bào)文.在缺省情況下,一個(gè)接口既可接收RIP更新報(bào)文,也可發(fā)送RIP更新報(bào)文.