引言:在網(wǎng)絡(luò)結(jié)構(gòu)頻繁變化的組網(wǎng)環(huán)境下,善于使用動(dòng)態(tài)路由協(xié)議,可以使路由器之間高效通信。其中RIP協(xié)議作為動(dòng)態(tài)路由協(xié)議中的一種簡(jiǎn)單內(nèi)部網(wǎng)關(guān)協(xié)議,常用于組網(wǎng)規(guī)模不大的網(wǎng)絡(luò)環(huán)境。巧妙配置使用RIP動(dòng)態(tài)路由功能,可讓網(wǎng)絡(luò)傳輸性能更加穩(wěn)定、高效。
RIP動(dòng)態(tài)路由是基于RIP路由協(xié)議來(lái)實(shí)現(xiàn)的。該協(xié)議規(guī)定本地路由器與其他路由器通信時(shí),統(tǒng)一使用UDP數(shù)據(jù)報(bào)文進(jìn)行路由信息的交換,使用基于距離矢量的算法選擇到達(dá)目的網(wǎng)絡(luò)的最優(yōu)路徑。
RIP動(dòng)態(tài)路由協(xié)議通過(guò)跳數(shù)來(lái)衡量到達(dá)目的主機(jī)的距離。默認(rèn)狀態(tài)下,路由器到與它直接相連網(wǎng)絡(luò)的跳數(shù)為“0”,每隔一個(gè)路由器可以到達(dá)的網(wǎng)絡(luò)跳數(shù)增加“1”。為了有效控制收斂時(shí)間,RIP動(dòng)態(tài)路由要求路由跳數(shù)取值范圍為“0-15”,而且必須是整數(shù)。如果該數(shù)值超過(guò)或等于16,那么就表示目的主機(jī)或目的網(wǎng)絡(luò)不可達(dá)到。
該協(xié)議還使用UDP的“520”端口,路由器系統(tǒng)啟動(dòng)運(yùn)行后,平均每隔30秒鐘就從每個(gè)啟動(dòng)的RIP協(xié)議的接口發(fā)送路由更新信息。為了改善性能,避免出現(xiàn)路由環(huán)現(xiàn)象,RIP動(dòng)態(tài)路由不但支持水平分割,而且還支持引入其他路由協(xié)議所得到的路由。
RIP動(dòng)態(tài)路由在工作時(shí),會(huì)以廣播或組播形式向運(yùn)行RIP協(xié)議的相鄰路由器發(fā)送請(qǐng)求數(shù)據(jù)報(bào)文。相鄰路由器的RIP動(dòng)態(tài)路由收到請(qǐng)求后,響應(yīng)并回送包含本地路由表記錄的響應(yīng)數(shù)據(jù)報(bào)文。
一旦路由器接受到相鄰路由器傳輸過(guò)來(lái)的響應(yīng)數(shù)據(jù)報(bào)文,它會(huì)自動(dòng)比較本地路由表中的條目?jī)?nèi)容。如果本地路由表中已經(jīng)出現(xiàn)過(guò)某條路由記錄,RIP動(dòng)態(tài)路由還會(huì)對(duì)新舊兩條路由記錄的優(yōu)劣進(jìn)行比較。
倘若優(yōu)于舊的路由記錄,路由器會(huì)自動(dòng)選用新路由記錄替換舊的路由條目。相反,路由器會(huì)自動(dòng)比較新舊兩條路由記錄是否來(lái)自同一個(gè)源,要是來(lái)自同一個(gè)源,將會(huì)進(jìn)行更新操作,不然的話就忽略這條路由記錄。

圖 1 全局視圖窗口
在一些不支持廣播或組播報(bào)文的通信鏈路上使用RIP動(dòng)態(tài)路由時(shí),需要對(duì)其進(jìn)行啟用和配置,以便正確創(chuàng)建RIP鄰居,從而實(shí)現(xiàn)路由信息的正確傳送。
以H3C系 列 的Quidway S8500路由交換機(jī)為例,要啟用路由器的RIP動(dòng)態(tài)路由功能并進(jìn)入對(duì)應(yīng)功能視圖狀態(tài)時(shí),只要先以管理員權(quán)限登錄路由交換機(jī)后臺(tái)系統(tǒng),執(zhí)行字符串命令“system-view”,進(jìn)入系統(tǒng)全局視圖狀態(tài)(如圖1所示),在該狀態(tài)下繼續(xù)輸入“rip”命令即可。
為了讓RIP動(dòng)態(tài)路由靈活發(fā)揮作用,有時(shí)要根據(jù)工作實(shí)際,將一些特定接口所處的工作子網(wǎng)配置成RIP動(dòng)態(tài)路由網(wǎng)絡(luò),以便讓它們能夠正常接受動(dòng)態(tài)路由條目?jī)?nèi)容。
默認(rèn)狀態(tài)下,RIP動(dòng)態(tài)路由功能被成功啟用后,仍然在所有網(wǎng)絡(luò)接口上處于禁用狀態(tài),所以該功能啟用后,我們還必須指定其工作子網(wǎng),讓其在對(duì)應(yīng)子網(wǎng)中的接口上運(yùn)行。例如,在“10.176.0.0”工作子網(wǎng)的接口上運(yùn)行RIP動(dòng)態(tài)路由時(shí),只要在RIP視圖模式下執(zhí)行字符串命令“network 10.176.0.0” 即可。
對(duì)于那些沒(méi)有處于特定工作子網(wǎng)上的接口,RIP動(dòng)態(tài)路由既不會(huì)轉(zhuǎn)發(fā)它的接口路由信息,也不會(huì)在它上面接受和發(fā)送路由信息,就相當(dāng)于對(duì)應(yīng)接口根本不存在一樣。日后要取消對(duì)“10.176.0.0”工作子網(wǎng)中的接口應(yīng)用RIP動(dòng)態(tài)路由時(shí),只要執(zhí)行“undo network 10.176.0.0”字符串命令即可。
此外,為了能夠在不支持廣播報(bào)文的通信鏈路中,交換傳輸路由條目?jī)?nèi)容,我們應(yīng)該配置啟用RIP動(dòng)態(tài)路由報(bào)文的定點(diǎn)傳送功能。只要在交換機(jī)后臺(tái)系統(tǒng)的RIP視圖狀態(tài)下,使用“peer xxx.xxx.xxx.xxx”命 令(這 里 的“xxx.xxx.xxx.xxx”為特定網(wǎng)絡(luò)接口IP地址),就能配置啟用好RIP動(dòng)態(tài)路由報(bào)文的定點(diǎn)傳送功能。默認(rèn)狀態(tài)下,RIP動(dòng)態(tài)路由不會(huì)向任何定點(diǎn)地址傳輸發(fā)送動(dòng)態(tài)路由信息。
例如,在NBMA網(wǎng)絡(luò)環(huán)境中使用RIP動(dòng)態(tài)路由功能時(shí),要限制它進(jìn)行水平分割,以犧牲傳輸效率來(lái)達(dá)到正確傳播路由信息的目的。
在進(jìn)行水平分割限制操作時(shí),只要在RIP視圖模式下,執(zhí)行字符串命令“undo rip split-horizon”即 可。默認(rèn)狀態(tài)下,RIP動(dòng)態(tài)路由功能允許進(jìn)行水平分割。
在其他一些網(wǎng)絡(luò)環(huán)境下,善于使用RIP動(dòng)態(tài)路由的水平分割功能,可以在某種程度上防止出現(xiàn)路由環(huán)。因?yàn)樗椒指罟δ苁遣粡谋镜亟涌诎l(fā)送從該接口接受到的路由信息的。如果要在某個(gè)網(wǎng)絡(luò)環(huán)境下啟用水平分割功能時(shí),只要先將路由交換機(jī)后臺(tái)系統(tǒng)切換到RIP視圖狀態(tài),輸入“rip splithorizon”字符串命令即可。
附加路由權(quán)這項(xiàng)參數(shù),是對(duì)使用RIP的動(dòng)態(tài)路由添加的輸入輸出路由權(quán)值。該數(shù)值僅僅是在特定接口接受發(fā)送路由報(bào)文時(shí),給路由增加的一個(gè)指定權(quán)值,而不會(huì)直接調(diào)整路由表中路由的路由權(quán)值。默認(rèn)狀態(tài)下,RIP動(dòng)態(tài)路由在特定接口接受數(shù)據(jù)報(bào)文時(shí),會(huì)給路由增加權(quán)值為“0”的附加路由權(quán),在特定接口發(fā)送數(shù)據(jù)報(bào)文時(shí),會(huì)給路由增加權(quán)值為“1”的附加路由權(quán)。
要為某個(gè)接口設(shè)置接受動(dòng)態(tài)路由數(shù)據(jù)報(bào)文時(shí)給路由的附加路由權(quán)參數(shù)時(shí),只要先進(jìn)入路由交換機(jī)特定接口視圖模式下,輸入字符串命令“rip metricin xxx” 即可(“xxx”為附加路由權(quán)的具體數(shù)值);同樣地,要為某個(gè)接口設(shè)置發(fā)送動(dòng)態(tài)路由數(shù)據(jù)報(bào)文時(shí)給路由的附加路由權(quán)參數(shù)時(shí),只要執(zhí)行“rip metricout xxx”命令即可;如果要禁止特定接口在接受或發(fā)送動(dòng)態(tài)路由數(shù)據(jù)報(bào)文時(shí)給路由的附加路由權(quán)參數(shù)的話,只要簡(jiǎn)單地執(zhí)行一下“undo rip metricin”或“undo rip metricout”字符串命令即可。
臨時(shí)禁止RIP動(dòng)態(tài)路由功能接收主機(jī)路由,可以確保路由交換機(jī)可以拒絕它所能接收到的大量無(wú)效主機(jī)路由信息。在進(jìn)行這種配置操作時(shí),可以先切換到路由交換機(jī)的RIP視圖模式狀態(tài),輸入“undo host-route”字符串命令,就能禁止接收大量無(wú)效主機(jī)路由信息。
默認(rèn)狀態(tài)下,路由交換機(jī)是主動(dòng)接收相同工作子網(wǎng)中的主機(jī)路由信息的。禁用了接收主機(jī)路由功能后,也能使用“host-route”命令,將該功能重新啟動(dòng)起來(lái)。
各種不同類(lèi)型的路由協(xié)議都有各自的優(yōu)先級(jí),不同優(yōu)先級(jí)的路由協(xié)議,將最后決定路由策略選用哪種路由協(xié)議獲取到的路由信息,作為最理想的路由。一般來(lái)說(shuō),數(shù)值越大的優(yōu)先級(jí),其實(shí)際的優(yōu)先級(jí)會(huì)越低。
當(dāng)要調(diào)整RIP動(dòng)態(tài)路由的優(yōu)先級(jí)時(shí),可以在路由交換機(jī)后臺(tái)系統(tǒng)的RIP視圖狀態(tài)下,使用“preference xxx”命令(其中“xxx”為RIP動(dòng)態(tài)路由需要配置的優(yōu)先級(jí)別),確認(rèn)后RIP動(dòng)態(tài)路由就能工作在指定優(yōu)先級(jí)狀態(tài)了。默認(rèn)狀態(tài)下,RIP動(dòng)態(tài)路由的優(yōu)先級(jí)為“100”。
默認(rèn)狀態(tài)下,RIP路由過(guò)濾功能不對(duì)接收與發(fā)布的任何路由信息進(jìn)行過(guò)濾。在進(jìn)行路由引入操作時(shí),不妨通過(guò)路由過(guò)濾功能限定路由交換機(jī),僅接收特定鄰居的RIP路由報(bào)文信息。
要做到這一點(diǎn),可以在路由交換機(jī)后臺(tái)系統(tǒng)的RIP視圖模式下,執(zhí)行字符串命令“filter-policy gateway YYY import”(這 里 的“YYY”為特定地址前綴列表名),這樣路由交換機(jī)就能對(duì)接收的由“YYY”發(fā)布的路由信息進(jìn)行過(guò)濾了,那些沒(méi)有通過(guò)過(guò)濾的路由信息,既不會(huì)發(fā)布給鄰居路由,也不會(huì)被添加到本地路由表。
日后要取消對(duì)特定地址列表的路由信息進(jìn)行過(guò)濾時(shí),只要簡(jiǎn)單地執(zhí)行“undo filter-policy gateway YYY import”字符串命令即可。
倘若要過(guò)濾接收到的全局路由信息時(shí),可以使用“filter-policy YYY import”這樣的字符串命令,而使用“undo filter-policy YYY import”命令則能取消過(guò)濾接收到的全局路由信息。
在對(duì)外發(fā)布路由信息時(shí),也能通過(guò)RIP路由過(guò)濾功能,實(shí)現(xiàn)僅對(duì)特定鄰居發(fā)布路由的目的。例如,要對(duì)地址前綴列表名為“YYY”的路由發(fā)布進(jìn)行過(guò)濾時(shí),只要先切換到路由交換機(jī)后臺(tái)系統(tǒng)的RIP視圖模式下,使 用“filter-policy YYY export”字符串命令即可。
倘若上述操作命令中沒(méi)有配置對(duì)哪種路由信息進(jìn)行過(guò)濾時(shí),該操作會(huì)對(duì)本地引入的所有路由和發(fā)布的路由有效。
要提醒大家的是,在引入其他協(xié)議的路由信息時(shí),需要在RIP視圖模式下,使用“import-route aaa cost bbb route-policy ccc”命令(這里的“aaa”為其他路由協(xié)議名稱(chēng)。
例 如 可 以 為“Static”、“OSPF”、“BGP”、“Direct”等路由協(xié)議,“bbb”為引入路由的具體權(quán)值,“ccc”為引入路由的策略或規(guī)則名稱(chēng))。默認(rèn)狀態(tài)下,RIP路由不會(huì)引入其他協(xié)議的路由。
要想有效控制RIP動(dòng)態(tài)路由功能的收斂速度,我們只要有針對(duì)性地配置好它的Timeout、Period update、Garbage-collection等定時(shí)器參數(shù)即可。
默認(rèn)狀態(tài)下,Timeout定時(shí)器數(shù)值為180秒,Period update定時(shí)器數(shù)值為30秒,Garbage-collection定時(shí)器數(shù)值為120秒。
在實(shí)際工作過(guò)程中,我們或許會(huì)看到Garbagecollection定時(shí)器超時(shí)時(shí)間并不會(huì)固定不變。當(dāng)Period update定時(shí)器數(shù)值指定為30秒時(shí),Garbage-collection定時(shí)器超時(shí)時(shí)間會(huì)處于90-120變動(dòng)范圍之中。
出現(xiàn)這種現(xiàn)象,主要是RIP動(dòng)態(tài)路由功能徹底刪除本地路由表中的不可到路由信息之前,會(huì)以定時(shí)更新報(bào)文方式對(duì)外發(fā)布這條路由四次,確保所有鄰居路由器知道這條路由已經(jīng)不可到達(dá)。
而路由變成不可到達(dá)狀態(tài),很可能不在一個(gè)更新周期開(kāi)始,所以這就會(huì)讓Garbage-collection定時(shí)器超出時(shí)間處于90-120變動(dòng)范圍之中。
當(dāng)需要調(diào)整某個(gè)定時(shí)器數(shù)值時(shí),只要在路由交換機(jī)后臺(tái)系統(tǒng)的RIP視圖模式下,執(zhí)行字符串命令“timers update xxx”、“timers timeout yyy”即可,這里的“xxx”、“yyy”為定時(shí)器的具體數(shù)值。
要將定時(shí)器數(shù)值恢復(fù)為默認(rèn)設(shè)置時(shí),只要簡(jiǎn)單地執(zhí)行“undo timers update”、“undo timers timeout”等命令即可。
為了給路由表“瘦身”,以降低在網(wǎng)絡(luò)通道上傳輸?shù)穆酚闪髁浚覀兂3P枰獙?duì)路由執(zhí)行聚合操作。因?yàn)樵摬僮骺梢宰屜嗤ぷ髯泳W(wǎng)中的不同子網(wǎng)路由信息對(duì)外發(fā)送時(shí),能自動(dòng)聚合成一條自然掩碼的路由進(jìn)行發(fā)送。
其 中,RIP-1僅 支 持自然掩碼路由的發(fā)送,而RIP-2可以發(fā)送無(wú)類(lèi)地址域間路由、子網(wǎng)掩碼路由等,所以在廣播所有子網(wǎng)路由信息時(shí),必須暫停啟用RIP-2的路由聚合功能。
在默認(rèn)狀態(tài)下,RIP-2已經(jīng)開(kāi)啟了路由聚合功能,如果發(fā)現(xiàn)其沒(méi)有被啟動(dòng)運(yùn)行時(shí),不妨進(jìn)入路由交換機(jī)的RIP視圖模式,執(zhí)行“summary”字符串命令,就能開(kāi)啟RIP-2的路由聚合功能。倘若日后不需要使用路由聚合功能時(shí),只要簡(jiǎn)單地 執(zhí) 行“undo summary”字符串命令即可。
值得注意的是,上面的RIP-1、RIP-2表示 RIP動(dòng)態(tài)路由功能的兩個(gè)不同版本,其中RIP-1以廣播方式傳輸報(bào)文,RIP-2既能以廣播方式傳輸報(bào)文,又能以組播方式傳輸報(bào)文,默認(rèn)以組播方式傳輸報(bào)文。
使用組播方式發(fā)送路由報(bào)文的優(yōu)點(diǎn),主要在于相同網(wǎng)絡(luò)中那些沒(méi)有使用RIP的主機(jī)能避免接受RIP的廣播報(bào)文,而且該方式發(fā)送報(bào)文還能防止RIP-1主機(jī)錯(cuò)誤接收和處理RIP-2中包含子網(wǎng)掩碼的路由。
要指定某接口究竟使用RIP-1還是RIP-2時(shí),只要在對(duì)應(yīng)接口視圖模式下,執(zhí)行字符串命令“rip version 1”或“rip version 2”即可。默認(rèn)狀態(tài)下所有接口只接收和發(fā)送RIP-1路由報(bào)文。
路由環(huán)
路由環(huán)即路由環(huán)路,指路由器在轉(zhuǎn)發(fā)數(shù)據(jù)包時(shí)產(chǎn)生了環(huán)路。有直接環(huán)路和間接環(huán)路之分。
直接環(huán)路:A、B兩個(gè)直接連接的路由接口或計(jì)算機(jī)接口,在配置時(shí)都把下一跳設(shè)置到對(duì)方。A發(fā)給B,B找不到其他路由,又發(fā)給A,循環(huán)發(fā)送。
間接環(huán)路:如有A,B,C連接成一個(gè)三角形。A發(fā)給B,B發(fā)給C,C再發(fā)給A,循環(huán)發(fā)送。
路由環(huán)路最大的危害是造成了網(wǎng)絡(luò)中一部分?jǐn)?shù)據(jù)包不停傳輸,浪費(fèi)了帶寬。隨著時(shí)間積累,在網(wǎng)絡(luò)中將會(huì)充斥無(wú)數(shù)個(gè)無(wú)法到達(dá)目的網(wǎng)絡(luò)的數(shù)據(jù)包,導(dǎo)致網(wǎng)絡(luò)癱瘓。