1. 基本信息
姓名 | 學(xué)號 | 班級 | 網(wǎng)絡(luò)是否連通 | 能否正常抓取報文 |
---|---|---|---|---|
lx | 2020 | 計(jì)算 | 是 | 能 |
2. 建立網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
感覺原來的拓?fù)鋱D過于簡單,所以另外又加了一個R3路由器,更加真實(shí)地觀察分析。
左邊是0/0口,右邊是0/1口,下面是0/2口。
3. 配置網(wǎng)絡(luò)參數(shù)
3.1. R1接口設(shè)置
Router>enable # 進(jìn)入特權(quán)執(zhí)行模式
Router#configure terminal # 進(jìn)入全局配置模式
Router(config)#hostname R1 # 將路由器名稱配置為R1
R1#show ip interface brief # 查看路由器R1的接口
Interface IP-Address OK? Method Status Protocol
GigabitEthernet0/0 unassigned YES unset administratively down down
GigabitEthernet0/1 unassigned YES unset administratively down down
GigabitEthernet0/2 unassigned YES unset administratively down down
Vlan1
先將路由器重命名為R1,然后查看接口,發(fā)現(xiàn)有三個接口分別是G0/0/0
、G0/0/1
、G0/0/2
3.1.1 為G0/0/0接口配置IP地址并激活
R1(config)#interface G0/0/0
R1(config-if)#ip address 192.168.1.57 255.255.255.0 # 設(shè)置IP地址
R1(config-if)#no shutdown # 激活接口
G0/0/1
、G0/0/2
同樣用這種方法設(shè)置,不多贅述。
3.1.2 保存配置
R1(config-if)#end # 返回特權(quán)執(zhí)行模式
R1#copy running-config startup-config # 保存R1配置
3.1.3 檢查IP地址是否配置正確并處于激活狀態(tài)
使用命令show ip interface brief
進(jìn)行查看(狀態(tài)Status應(yīng)為up
),舉例:
R1#show ip interface brief
Interface IP-Address OK? Method Status Protocol
GigabitEthernet0/0 192.168.1.57 YES manual up up
GigabitEthernet0/1 192.168.2.56 YES manual up up
GigabitEthernet0/2 192.168.4.56 YES manual up up
Vlan1 unassigned YES unset administratively down down
3.2. R1配置RIP
啟用動態(tài)路由
R1(config)#router rip # 進(jìn)入路由配置模式,在路由器使用RIP
指定網(wǎng)絡(luò)
R1(config-router)#network 192.168.1.0
R1(config-router)#network 192.168.2.0
R1(config-router)#network 192.168.4.0
用network命令發(fā)布網(wǎng)段,其作用如下:
- 對屬于該網(wǎng)絡(luò)的所有接口啟用RIP。這些接口將開始發(fā)送和接收RIP更新
- 在每30秒一次的RIP路由更新中向其它路由器通告該網(wǎng)絡(luò)
保存配置
network ip-address
命令用于發(fā)布網(wǎng)段,其作用如下:
對屬于該網(wǎng)絡(luò)的所有接口啟用RIP。這些接口將開始發(fā)送和接收RIP更新
在每30秒一次的RIP路由更新中向其它路由器通告該網(wǎng)絡(luò)
檢驗(yàn)RIP是否配置成功
3.3. 測試網(wǎng)絡(luò)連通性
4. 理解RIP路由表建立和更新
查看R1路由表
I,指從內(nèi)部網(wǎng)關(guān)協(xié)議(IGRP)中學(xué)到的路由。
R,從RIP協(xié)議中學(xué)到的路由。
O,從OSPF(開放式最短路徑優(yōu)先)協(xié)議學(xué)到。
C,直連路由。
S,靜態(tài)配置的路由,請注意,靜態(tài)路由的管理距離為 0。
E,從外部網(wǎng)關(guān)協(xié)議(EGP)學(xué)到的路由。
B,指從BGP協(xié)議、
I,指IS-IS協(xié)議學(xué)到的路由信息。
根據(jù)以上的關(guān)鍵字母的注釋,我們可以來嘗試著分析我們的路由表(部分):
192.168.1.0/24 is variably subnetted, 2 subnets, 2 masks # 192.168.1.0這個網(wǎng)絡(luò)中有兩個子網(wǎng)(1.56和1.57)
C 192.168.1.0/24 is directly connected, GigabitEthernet0/0 # 192.168.1.0這個網(wǎng)絡(luò)直接連接到接口G0/0
L 192.168.1.57/32 is directly connected, GigabitEthernet0/0 # 192.168.1.57這個子網(wǎng)直接連接到接口G0/0
R 192.168.3.0/24 [120/1] via 192.168.2.57, 00:00:07, GigabitEthernet0/1
- R是RIP協(xié)議,通過動態(tài)路由協(xié)議RIP寫進(jìn)路由器的路由信息
-
192.168.3.0/24
就是學(xué)到的路由 - 24是子網(wǎng)掩碼255.255.255.0的縮寫
- [120/1]即[管理距離/度量值(此數(shù)為路由跳數(shù))],是度量值和管理距離,也就是優(yōu)先級的意思。
- via 192.168.2.57
via
有 “經(jīng)由” 的意思,路由表中理解為 “下一跳” ,指下一跳的接口IP地址為192.168.2.57
,就是我要發(fā)送數(shù)據(jù)包到下個路由器的接口,從G0/1接口轉(zhuǎn)發(fā)。
R 192.168.5.0/24 [120/1] via 192.168.2.57, 00:00:07, GigabitEthernet0/1
[120/1] via 192.168.4.57, 00:00:24, GigabitEthernet0/2
R1學(xué)習(xí)到一條路由信息:192.168.5.0
,下一跳可以通過接口G0/1的192.168.2.57
子網(wǎng),也可以通過接口G0/2的192.168.4.57
子網(wǎng)。
重置路由表,分析初始路由表的建立過程
命令clear ip route *
可以清空該路由器的路由信息,用show ip route
進(jìn)行驗(yàn)證發(fā)現(xiàn)確實(shí)沒有學(xué)習(xí)到的路由信息了,用相同的操作清空 R2 和 R3 中的路由信息后,通過命令debug ip rip
和可視化報文進(jìn)行分析。
注意:以上的操作必須在模擬仿真條件下執(zhí)行,否則路由器會自動每30s和相鄰路由器交換信息,導(dǎo)致路由表清空失敗
至此,所有路由器都已經(jīng)初始化,點(diǎn)擊模擬開始按鈕讓路由器開始交換信息
在本題中,我們只用R2路由器來做分析
分析部分代碼
RIP: received v2 update from 192.168.5.57 on GigabitEthernet0/2
# 從接口G0/2接收到了rip v2的更新包,數(shù)據(jù)源為192.168.5.57網(wǎng)段
192.168.1.0/24 via 0.0.0.0 in 2 hops
# 若下一跳為G0/2連接的路由器,需要 2 跳達(dá)到網(wǎng)絡(luò)192.168.1.0(R2→R3→R1)
192.168.2.0/24 via 0.0.0.0 in 2 hops
# 若下一跳為G0/2連接的路由器,需要 2 跳達(dá)到網(wǎng)絡(luò)192.168.2.0(R2→R3→R1)
192.168.3.0/24 via 0.0.0.0 in 3 hops
# 若下一跳為G0/2連接的路由器,需要 3 跳達(dá)到網(wǎng)絡(luò)192.168.2.0(R2→R3→R1→R2)
RIP: sending v2 update to 224.0.0.9 via GigabitEthernet0/1 (192.168.3.56)
# 從接口G0/1發(fā)送本路由器的rip v2更新包,發(fā)送目標(biāo)為192.168.3.56網(wǎng)段(PC)
RIP: build update entries # 本路由器(R2)更新后的路由表
192.168.1.0/24 via 0.0.0.0, metric 2, tag 0 # 需要 2 跳才能到達(dá)網(wǎng)絡(luò)192.168.1.0( →B→A)
192.168.2.0/24 via 0.0.0.0, metric 1, tag 0 # 需要 1 跳才能到達(dá)網(wǎng)絡(luò)192.168.2.0( →B)
192.168.4.0/24 via 0.0.0.0, metric 2, tag 0 # 需要 2 跳才能到達(dá)網(wǎng)絡(luò)192.168.4.0( →B→D 或 →E→D)
192.168.5.0/24 via 0.0.0.0, metric 1, tag 0 # 需要 1 跳才能到達(dá)網(wǎng)絡(luò)192.168.5.0( →E)
分析報文
可以發(fā)現(xiàn),首先由R1準(zhǔn)備好3個RIP V2
路由更新報文,通過G0/0
、G0/1
、G0/2
分別發(fā)送給PC1,R1,R2,這里需要注意的是,因?yàn)槭锹酚筛聟f(xié)議,所以并不會成功傳送給PC1,如圖:
在R2接收到來自R1的路由更新報文后,繼續(xù)將R1的路由更新報文用剩余的接口轉(zhuǎn)發(fā)給PC2、R3路由器,下圖是R2在接收到R1的報文后,自己產(chǎn)生的要轉(zhuǎn)發(fā)的報文:
同理,R3接收到R1的報文后,也會再轉(zhuǎn)發(fā)給R2。
接下來就是R2開始發(fā)送路由更新報文,不再重復(fù)分析。
5. 理解RIP壞消息傳得慢
首先事先聲明,在本次實(shí)驗(yàn)中,我并沒有觀察到所謂的“壞消息傳得慢”的現(xiàn)象,相反,我觀察到“壞消息傳得最快”,一下是我的分析過程。
將R1的G0/0接口斷開
這里我一開始雖然有點(diǎn)疑惑,但是從理論上來說,因?yàn)殡m然R1到PC1的路徑斷開,如果R1在收到來自R2的路由刷新報文之前, R1將修改后的路由信息廣播給相鄰的路由器R2, 于是R2修改自己的路由表, 將原來經(jīng)R1去往net1的路由刪除。
這樣的話其實(shí)和我觀察到的好像沒有什么區(qū)別。(真的沒區(qū)別嗎?下文會闡述)
但是我想觀察到的現(xiàn)象其實(shí)是R2趕在R1發(fā)送新的路由刷新報文之前, 廣播自己的路由刷新報文,下面是慢收斂問題的原因闡述:
該報文中必然包含一條說明R2經(jīng)過一個路由器可以到達(dá)192.168.1.0路由。由于R1已經(jīng)刪除了到達(dá)192.168.1.0的路由,,按照V-D算法,,R1會增加通過R2到達(dá)192.168.1.0的新路徑,不過路徑的距離變成了2。這樣,,在路由器R1和R2之間就形成了路由環(huán), R2認(rèn)為通過R1可以到達(dá)192.168.1.0, R1則認(rèn)為通過R2可以到達(dá)192.168.1.0。盡管路徑的“距離”會越來越大,,但該路由信息不會從R1和R2的路由表中消失。從而出現(xiàn)無窮循環(huán)(實(shí)際有上限,最多16跳)。這就是慢收斂問題產(chǎn)生的原因。
于是我又反復(fù)斷開、連接、斷開、連接……大概六七次都是一樣的情況—R2、R3幾乎是在我斷開的一瞬間就收到了這條故障更新路由,就在這時,我發(fā)現(xiàn)了一個很奇怪的點(diǎn)
這里只有單單一條故障的路由信息!而不是R1所有的路由信息,按照道理來說R1更新路由是會有兩條路由信息:
然后我就開始懷疑,會不會RIP2協(xié)議中,已經(jīng)針對這種慢收斂問題做出了優(yōu)化,我首先的猜想是:在路由器連接的路由崩潰時,會立即將這條斷掉的路由值設(shè)置為16 hops,也就是不可到達(dá),然后立即(沒錯就是立即)發(fā)送給鄰近的路由器
。這樣的話,完全可以解釋剛剛的現(xiàn)象。
接下來分析下報文
1. 再次斷開R1的G0/0接口
2. R1立即產(chǎn)生兩個路由更新報文(只有兩個接口了)
3. R1發(fā)出崩潰路由的更新報文
在R2、R3接收到這條崩潰的路由信息后,立即準(zhǔn)備好轉(zhuǎn)發(fā)給下一接口的路由器。下圖是R2產(chǎn)生的報文(注意該報文里也只有單單一條崩潰的路由信息):
4. 查看報文
注意這里的“觸發(fā)更新”,在一篇 Title-題名為 路由協(xié)議RIP慢收斂問題及其對策 的論文中,提到了關(guān)于RIP協(xié)議解決慢收斂問題的一些對策:
為了解決慢收斂問題, RIP協(xié)議采用:限制路徑最大“距離”對策、分割水平線、帶抑制逆轉(zhuǎn)位的分割水平線和觸發(fā)更新來避免計(jì)值到無窮循環(huán)問題。
發(fā)現(xiàn)了么,這里也提到了觸發(fā)更新,下面引用這篇論文的內(nèi)容簡單介紹一下這幾種方法。
- 最大“距離”對策:RIP協(xié)議規(guī)定“距離”的最大值為16, 距離超過或等于16的路由為不可達(dá)路由。
- 水平分割對策:當(dāng)路由從某個網(wǎng)絡(luò)接口發(fā)送RIP路由刷新報文時, 其中不能包含從該接口獲取的路由信息。
- 保持對策:在得知目的網(wǎng)絡(luò)不可達(dá)后的一定時間內(nèi) (RIP規(guī)定為60 S) , 路由器不接受關(guān)于此網(wǎng)絡(luò)的任何可到達(dá)性信息。
- 帶觸發(fā)更新的毒性逆轉(zhuǎn)對策:當(dāng)某路徑崩潰后, 最早廣播此路由器將原路由器將路由繼續(xù)保留在若干路由刷新報文中, 但指明該路由的距離為無限長 (距離16) 。與此同時, 還可使用觸發(fā)刷新技術(shù), 一旦檢測到路由崩潰, 立即廣播路由刷新報文, 而不必等待下一刷新周期。
看到這里,結(jié)果已經(jīng)很顯而易見了,我們這里看到了就是RIP協(xié)議針對慢收斂問題的兩種解決辦法—帶觸發(fā)更新的毒性逆轉(zhuǎn)對策以及最大距離對策。效果也是很好,基本在一瞬間就能讓崩潰的路由信息傳遞給周圍的路由器,大概是因?yàn)槲疫@個網(wǎng)絡(luò)過于簡單,所以這種優(yōu)化方法并沒有發(fā)生什么問題。
6. 實(shí)驗(yàn)過程中遇到的問題及解決方法
問題1—默認(rèn)網(wǎng)關(guān)設(shè)置(已解決)
這個問題其實(shí)在一開始配置網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的時候就已經(jīng)發(fā)生了,因?yàn)槲也恢滥J(rèn)網(wǎng)關(guān)到底是什么,只是將它設(shè)置為連接到路由器該接口的ip地址,所以在完成本次實(shí)驗(yàn)后特意去了解了一下網(wǎng)關(guān)。
網(wǎng)關(guān)實(shí)質(zhì)上是一個網(wǎng)絡(luò)通向其他網(wǎng)絡(luò)的IP地址。比如有網(wǎng)絡(luò)A和網(wǎng)絡(luò)B,網(wǎng)絡(luò)A的IP地址范圍為“192.168.1.1-192. 168.1.254”,子網(wǎng)掩碼為255.255.255.0;網(wǎng)絡(luò)B的IP地址范圍為“192.168.2.1-192.168.2.254”,子網(wǎng)掩碼為255.255.255.0。在沒有路由器的情況下,兩個網(wǎng)絡(luò)之間是不能進(jìn)行TCP/IP通信的,即使是兩個網(wǎng)絡(luò)連接在同一臺交換機(jī)(或集線器)上,TCP/IP協(xié)議也會根據(jù)子網(wǎng)掩碼(255.255.255.0)判定兩個網(wǎng)絡(luò)中的主機(jī)處在不同的網(wǎng)絡(luò)里。而要實(shí)現(xiàn)這兩個網(wǎng)絡(luò)之間的通信,則必須通過網(wǎng)關(guān)。如果網(wǎng)絡(luò)A中的主機(jī)發(fā)現(xiàn)數(shù)據(jù)包的目的主機(jī)不在本地網(wǎng)絡(luò)中,就把數(shù)據(jù)包轉(zhuǎn)發(fā)給它自己的網(wǎng)關(guān),再由網(wǎng)關(guān)轉(zhuǎn)發(fā)給網(wǎng)絡(luò)B的網(wǎng)關(guān),網(wǎng)絡(luò)B的網(wǎng)關(guān)再轉(zhuǎn)發(fā)給網(wǎng)絡(luò)B的某個主機(jī)(如圖1所示)。網(wǎng)絡(luò)A向網(wǎng)絡(luò)B轉(zhuǎn)發(fā)數(shù)據(jù)包的過程。
問題2—為什么配置用RIP V2版本(模糊)
經(jīng)過了解,RIP v2其實(shí)就是RIP v1版本的增強(qiáng)版,具體的升級如下:
- 支持外部路由標(biāo)記(Route Tag),可以在路由策略中根據(jù)Tag對路由進(jìn)行靈活控制。
- 報文中攜帶掩碼信息,支持路由聚合和CIDR(Classless Inter-Domain Routing)。
- 支持指定下一跳,在廣播網(wǎng)上可以選擇到最優(yōu)下一跳地址。
- 支持以組播方式發(fā)送更新報文,只有支持RIPv2的設(shè)備才能收到協(xié)議報文,減少資源消耗。
- 支持對協(xié)議報文進(jìn)行驗(yàn)證,并提供明文驗(yàn)證和MD5驗(yàn)證兩種方式,增強(qiáng)安全性。
網(wǎng)上的解釋都比較簡單,而且在書上也沒有關(guān)于RIP v2的介紹。比如第一點(diǎn),如何通過標(biāo)志Tag對路由進(jìn)行靈活控制,第二點(diǎn)中的掩碼信息有什么用?出于時間方面的考慮,沒有再進(jìn)行過于深度的挖掘,各位小伙伴有興趣可以去了解下。
問題3—為什么觀察不到“壞消息傳得慢”現(xiàn)象(已解決)
其實(shí)這個點(diǎn)一開始卡了我很久,也問了很多的同學(xué),我發(fā)現(xiàn)好像大部分人其實(shí)都沒有觀察到書上說的這種遞歸收斂的現(xiàn)象,都是直接看到了一個崩潰路由的信息(就是 16 hops),但是很少有人去深入研究的,但是我覺得很古怪,就有這么一個猜想—RIP的內(nèi)部優(yōu)化,我覺得發(fā)明RIP協(xié)議的人肯定知道慢收斂的缺點(diǎn),肯定會改進(jìn)RIP協(xié)議,在實(shí)驗(yàn)中通過查資料、和同學(xué)討論都很好地激發(fā)了我深入研究的興趣。
在查閱的過程中,我了解到一個新的問題:“廣播雪崩”。
例如,當(dāng)許多路由器共享一個公共網(wǎng)絡(luò)時,如果采用觸發(fā)更新技術(shù),一個廣播就能改變這些路由器的路由表,從而引發(fā)新一輪的廣播。如果第二輪改變了路由表,會引起更多的廣播,這就產(chǎn)生了廣播雪崩。
問題4—RIP還有缺點(diǎn)么,如果有,是什么(已解決)
根據(jù) 計(jì)算機(jī)網(wǎng)絡(luò)(第七版)里關(guān)于RIP協(xié)議的描述,RIP協(xié)議的缺點(diǎn)有很多,比如最大距離為15,路由器之間交換的路由信息是路由器中的完整路由表,網(wǎng)絡(luò)規(guī)模一大,開銷就很大,最后就是慢收斂問題。
通過實(shí)驗(yàn)可以得知,慢收斂問題其實(shí)已經(jīng)解決了。但是問題在于RIP協(xié)議為了解決慢收斂問題所提出的“最大距離”對策,限制了路由能傳輸?shù)淖畲缶嚯x,再加上其傳輸?shù)穆酚杀硎峭暾穆酚尚畔?,所以在大型的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中,每個路由器都與幾個甚至數(shù)十個路由器相連,每次傳播的報文中都包含數(shù)十個路由信息,幾百個報文同時在網(wǎng)絡(luò)中傳輸,網(wǎng)絡(luò)肯定吃不消。
參考文獻(xiàn)
王福新,谷海紅.路由協(xié)議RIP慢收斂問題及其對策[J].通信技術(shù),2008(08):157-159.
(5條消息) 計(jì)算機(jī)網(wǎng)絡(luò)基礎(chǔ)(三):默認(rèn)網(wǎng)關(guān)_wangdongm123的博客-CSDN博客_默認(rèn)網(wǎng)關(guān)
(6條消息) 慢收斂問題以及解決方法_BABY LOVE的博客-CSDN博客_慢收斂
(6條消息) RIPV1和RIPV2的主要區(qū)別_仲瑿的博客-CSDN博客_ripv1和ripv2的區(qū)別
RIP協(xié)議(距離矢量路由協(xié)議)RIPv1——RIPv2_梓噯的博客-CSDN博客_rip距離矢量
[華為 | RIPv1與RIPv2對比實(shí)驗(yàn) - 飛翔灬吾愛的Blog (fishyoung.com)](http://www.fishyoung.com/post-197.html#:~:text=RIP使用了基于距離矢量的貝爾曼-福特算法(Bellman-Ford)來計(jì)算到達(dá)目的網(wǎng)絡(luò)的最佳路徑。 最初的RIP協(xié)議開發(fā)時間較早,所以在帶寬、配置和管理方面要求也較低,因此,RIP主要適合于規(guī)模較小的網(wǎng)絡(luò)中。,RIP包括RIPv1和RIPv2兩個版本。 RIPv1為有類別路由協(xié)議,不支持VLSM和CIDR。 RIPv2為無類別路由協(xié)議,支持VLSM,支持路由聚合與CIDR。)
思科路由器:學(xué)會看路由表信息,show ip route詳解_健忘的老菜鳥的博客-CSDN博客_思科查看路由表
tml#:~:text=RIP使用了基于距離矢量的貝爾曼-福特算法(Bellman-Ford)來計(jì)算到達(dá)目的網(wǎng)絡(luò)的最佳路徑。 最初的RIP協(xié)議開發(fā)時間較早,所以在帶寬、配置和管理方面要求也較低,因此,RIP主要適合于規(guī)模較小的網(wǎng)絡(luò)中。,RIP包括RIPv1和RIPv2兩個版本。 RIPv1為有類別路由協(xié)議,不支持VLSM和CIDR。 RIPv2為無類別路由協(xié)議,支持VLSM,支持路由聚合與CIDR。)文章來源:http://www.zghlxwxcb.cn/news/detail-495967.html思科路由器:學(xué)會看路由表信息,show ip route詳解_健忘的老菜鳥的博客-CSDN博客_思科查看路由表文章來源地址http://www.zghlxwxcb.cn/news/detail-495967.html
到了這里,關(guān)于計(jì)網(wǎng)實(shí)驗(yàn)3—路由協(xié)議RIP配置與分析的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!