CCNP6

動態路由協議

各臺路由器上,進行信息的溝通,相互的學習,獲取未知的路由信息;再進行計算、收斂將最佳的路徑加載到路由表中

優點:

  1. 工作效率----快速大量學習路由
  2. 結構突變時可以馬上重新收斂

缺點:

  1. 佔用硬件資源----cpu/緩存/帶寬
  2. 安全問題----設備間交互的信息,可能被竊取或者被篡改
  3. 算法錯誤問題----收斂結果不是真正的最佳路徑、甚至出環

總結: 一個優秀的IGP路由協議----收斂速度快、選擇路徑佳、佔用資源少

路由協議的分類:
基於AS號進行分類 AS----自治系統
AS編號 0-65535
1-64511 公有 64512-65535 私有

  1. IGP 內部網關路由協議----AS之內工作----RIP/EIGRP/OSPF/ISIS----在複雜的結構中快速計算出最佳無環路徑
  2. EGP 外部網關路由協議----AS之間工作----EGP/BGP----在大環境間進行路由的共享與管理

IGP協議的分類:

  1. 基於更新時是否攜帶子網掩碼
    無類別(攜帶掩碼)
    有類別(不攜帶掩碼)
  2. 基於工作特點
    DV(距離矢量)----RIP/EIGRP
    LV(鏈路狀態)----OSPF/ISIS

RIP

路由信息協議----V1/V2/NG(ipv6)

距離矢量型的路由協議
基於UDP520端口工作
使用跳數作爲度量
週期和觸發更新均存在 週期更新----30s
支持等開銷負載均衡,默認4條,最大6條,IOS版本12.4以上爲16條
週期更新----保活、確認的問題
管理距離爲120

V1和V2的區別:

V1 V2
V1有類別----不支持子網劃分、彙總,支持超網(CIDR) V2無類別----支持子網劃分、子網彙總;不支持超網(CIDR)
V1廣播更新----255.255.255.255 V2組播更新----224.0.0.9
v1不支持不連續子網 v2支持不連續子網
V2支持手工認證

RIP V1配置

r1(config)#router rip  啓動rip協議
r1(config-router)#version 1  選擇版本1;若不選版本,默認爲升級版本1;
宣告:1、激活接口   2、傳遞接口信息-路由或拓撲
r1(config-router)#network 12.0.0.0
r1(config-router)#network 1.0.0.0

RIP V2配置

r2(config)#router rip
r2(config-router)#version 2
r2(config-router)#no auto-summary   建議關閉自動彙總
r2(config-router)#network 12.0.0.0
r2(config-router)#network 2.0.0.0
r2(config-router)#network 23.0.0.0

RIP的擴展配置

  1. RIPv2的手工彙總
    在更新源路由器上所有更新發出的接口上配置
r2(config)#interface s1/0
r2(config-if)#ip summary-address rip 2.2.2.0 255.255.254.0
  1. RIPv2的認證
    先定義密鑰庫
r1(config)#key chain ccna
r1(config-keychain)#key 1
r1(config-keychain-key)#key-string cisco123
注:鄰居間祕鑰庫中的編號和密碼必須完全一致;
再在直連鄰居的接口上調用祕鑰
r1(config)#interface s1/1
r1(config-if)#ip rip authentication key-chain ccna    此時密碼是明文發送
r1(config-if)#ip rip authentication mode md5   密文發送
  1. 被動接口
    只接受不發送路由協議信息,建議配置於連接PC的接口;不能用於連接鄰居的接口
r1(config)#router rip
r1(config-router)#passive-interface fastEthernet 0/0
  1. 加快收斂
    計時器:30s 收斂 180s失效 180s抑制 240s刷新(非cisco爲300s)
    可以適當修改計時器,建議維持原有倍數;且不宜過小;全網一致
r1#show ip protocols 
r1(config)#router rip
r1(config-router)#timers basic 15 90 90 120
  1. 缺省路由
    邊界路由器上配置命令,向內網發佈缺省信息,讓內網設備生成缺省指向邊界;但注意邊界路由器需要靜態指向ISP
r3(config)#router rip
r3(config-router)#default-information originate 

RIPv1和RIPv2兼容
普通v1設備僅收發v1路由;v2設備僅收發v2路由;升級v1設備,收v1/2,發v1;RIP的所有接口,無論此時運行的RIP版本是多少,都可以直接修改接口的版本規則;

r2(config)#interface s1/1
r2(config-if)#ip rip send version 1 2 
r2(config-if)#ip rip receive version 1 2

注: v2設備可以發出沒有掩碼的v1路由;v1設備即使修改爲v2發送,也只能發出沒有掩碼的v2路由

干涉RIP選路
因爲RIP選路參數只有跳數,兩條不同帶寬的線路,如果跳數相同,RIP會認爲這兩條路是一樣的,這時就需要增加跳數,干涉RIP選路

使用偏移列表,可以干涉DV型路由協議的選路(RIP/EIGRP)

控制層面流量進或出的接口上,抓取流量,之後加大流量中的度量值,可以疊加;最終影響選路

抓取路由
r1(config)#access-list 1 permit 3.0.0.0

r1(config)#router rip
r1(config-router)#offset-list    1    in    2          serial 1/1
                                ACL  方向  增加的跳數  對應的接口

v1的連續子網問題

什麼是連續子網?
簡單來說就是八個字:主類相同,掩碼相同 例如:
192.168.1.0/24
192.168.2.0/24
192.168.255.0/24
這種就是連續性子網

第一種情況:
當三個網段同時連續子網時,路由可達!且R1上的路由表顯示RIP v1 學到的R2環回的路由是 1.1.2.0/24的,並不是咱們所認知的 1.0.0.0/8 的路由。同理R2路由表上學到的R1環回的路由是1.1.1.0/24
在這裏插入圖片描述

看一下R1路由表信息:
在這裏插入圖片描述

看一下R2路由表信息:

在這裏插入圖片描述

第二種情況:當中間網絡不是連續子網時
在這裏插入圖片描述

當你宣告完之後,R3的路由表是這樣的:只顯示自己直連的1.0/24 網段和3.0/24網段,同理R4也是一樣
在這裏插入圖片描述

問題就來了,明明起了RIP,爲什麼學不到?
因爲 R3R4發的都是1.0.0.0/8
所以R3不能ping通1.1.2.1/24R4不能ping通1.1.1.1/24

那麼怎麼解決呢?也很簡單,給中間網段配一個第二地址就可以了!

R3接口配置:
在這裏插入圖片描述

R4接口配置:
在這裏插入圖片描述

然後查看R3 路由表:
在這裏插入圖片描述
然後查看R4 路由表:
在這裏插入圖片描述
這樣子RIP V1 連續性子網問題解決了!

總結:
在RIPV1中,若本地即將傳遞給鄰居的路由條目,與本地和鄰居的直連網段,形成了連續子網;那麼本地在傳遞該路由時,將讓路由條目攜帶上主機位,讓鄰居瞭解;
鄰居收到的路由條目中存在了主機位,將使用與對端直連網段的掩碼來加載該路由;
若不能形成連續子網,可以配置第二地址


RIP防環機制

在這裏插入圖片描述>三臺路由器:R1R2R3都運行RIP動態路由協議,其中R3有一個a網段,通過RIP動態路由協議,R1和R2都學習到了R3的a網段,一切都是那麼的安靜與和諧。。。。
突然,R3的a網段掛了,R3的拓撲立馬發生變化,觸發更新,R3就去向R2發包詢問,R2收到R3的查詢包,查詢自己的路由表,將自己通過RIP學習到的R3的a網段再發送給R3,該路由條目跳數增加1,下一跳爲R2,R3收到R2的a網段的路由,將路由加表;過了30s,R3的更新計時器到時間了,R3又查詢自己的路由表,將自己路由表中的a網段的路由發送給R2,根據同源規則,因爲R2第一次是從R3處學習到的a網段,所以再從R3傳來的a網段路由,R2還是會學習,a網段的路由跳數增加1,下一跳爲R3;然後R2又將a網段發送給R3…

一直循環下去,在R2和R3間就會形成環路

最大跳數

RIP使用跳數作爲度量值來衡量到達目的網絡的距離。在RIP中,路由器到與它直接相連網絡的跳數爲0,每經過一個路由器後跳數加1。爲限制收斂時間,RIP規定跳數的取值範圍爲0~15之間的整數,大於15的跳數被定義爲無窮大,即目的網絡或主機不可達
在這裏插入圖片描述

水平分割

水平分割指的是RIP從某個接口學到的路由,不會從該接口再發回給鄰居設備
在這裏插入圖片描述

關閉水平分割的命令
interface f0/0
no ip split-horizon

毒性逆轉

情景描述: 例如路由器 R1使用RIP作爲路由協議, 預設每30秒發送一次路由表更新, 把其路由表向外廣播, 而R1的鄰接路由器R2, 正常每30秒會收到從A發送過來的更新。 設想若R1連接的其中一個網絡(假設網絡X)中斷, 網絡X會消失於R1中的路由表, 當路由器 R1下次發送更新時, 會不包括X在內, 而路由器 R2因爲沒有收到關於X的更新, 在一定時間內(RIP失效計時器的時間 invalid time爲180秒)會誤認爲網絡X還存在, 並向外告知X的存在, 直至經過180秒後, 路由器 R2才認爲網絡 X出現問題, 在這180秒內整個網絡處於一個不正確狀態, 除路由器外, 其他路由器都不清楚網絡 X的問題, 會形成很多傳輸錯誤的發生, 亦會因此引起路由環路的產生

毒性逆轉的作用:
利用毒性逆轉,可以清除對方路由表中的無用路由。
實現情況:
配置毒性逆轉後,R2在接收到從R1發來的路由10.0.0.0/8後,向R1發送一個這條路由不可達的消息(將該路由的開銷設置爲16),這樣R1就不會再利用從R2學到的路由10.0.0.0/8,因此就可以避免路由環路的產生。
在這裏插入圖片描述
現實情況:
缺省情況下不使能毒性逆轉。一般情況下,在華爲設備中均使能水平分割(除NBMA網絡外)而禁用毒性逆轉。

水平分割和毒性逆轉的差別:
水平分割和毒性逆轉都是爲了防止RIP中的路由環路而設計的,但是水平分割是不將收到路由條目再按“原路返回”來避免環路,而毒性逆轉遵循“壞消息比沒消息好”的原則,即將路由條目按“原路返回”,但是該路由條目被標記爲不可達(度量值爲16)。如果同時配置了毒性逆轉和水平分割,則只使用毒性逆轉功能。

計時器

通過show ip protocols命令可以查看RIP的計時器信息,具體如下:
在這裏插入圖片描述
Sending updates every 30 seconds: 表示週期性更新時間爲30s(更新計時器)
next due in 22 seconds: 還剩下22s更新時間
Invalid after 180 seconds: 如果在 180 秒還沒有收到更新,則被標記爲無效(失效計時器)
hold down 180: 抑制計時器也是180s
flushed after 240: 路由條目如果在 240 秒還沒有收到更新,則從路由表中刪除此路由條目(刷新計時器)

更新計時器
用於實現對路由條目的週期交互(是否有數據流量),默認是30秒更新一次路由表中的信息。

也就是一臺路由器從接收到鄰居發來的路由條目更新包開始,計時器會​重置爲0s (秒)並重新計時。(RIP路由器總是每隔30s通過UDP 520端口以RIP廣播應答方式向鄰居路由器發送一個路由更新包)

失效計時器
如果某一條路由信息在180s內沒有收到更新或確認,那麼這條路由信息將被標記爲“失效”。

如果路由器30s還未收到鄰居發過來的路由更新包,則更新計時器超時。如果再過150s,達到180s(即30s + 150s = 180s)還沒收到路由更新包,說明失效計時器超時了,然後路由器將鄰居路由器的相應路由條目標記爲is possibly down,此時並不是真正失效了,是提示快要失效了
在這裏插入圖片描述
抑制計時器
失效計時器到時,立馬進入180s的抑制計時器,用於防止路由環路。

如果在抑制期間從任何相鄰路由器接收到少量的路由更新包,則恢復該網絡並刪除抑制計時器。

如果在抑制期間從相鄰路由器收到的一條路由更新的跳數大於路由表已記錄的跳數,則該更新將被忽略。
  
刷新計時器
失效計時器到時,再過60s,達到240s的刷新計時器(180s + 60s = 240s),還沒收到路由更新包。路由器就刷新路由表,把不可達的路由條目刪掉
在這裏插入圖片描述
在過了60s後,我們從上圖中發現被標記爲is possibly down:狀態的3.0.0.0路由信息已經從路由表中刪除掉了。從RIP計時器來看,如果路由在傳輸過程中出現故障,檢測到故障需要長達3分鐘的時間,到4分鐘纔會把故障路由刪除掉。RIP計時器的目的是使整個網絡上的路由器在最短的時間內收到更新信息,從而快速(學習收斂)瞭解整個網絡的變化

修改計時器----需全網一致

R1(config)#router rip 
R1(config-router)#timers basic 15 90 90 120

控制層面和數據層面

控制層面:

控制層面就是各種協議工作的層面。它的作用是通過控制和管理各種網絡協議的運行,使得路由器/交換機能夠對整個網絡的設備、鏈路和運行的協議有一個準確的瞭解,並在網絡發生變化時也能及時感知並調整。控制層面爲數據層面轉發數據提供了各種必要的信息。控制層面佔用的主要是軟件資源,它消耗CPU。
控制層面:控制信息流。Rip的報文、OSPF的LSA傳遞

數據層面:

數據層面是針對數據發送來說的。控制層面構建了路由表等數據發送的必要信息,數據層面根據這些信息來發送數據。網絡設備中,對數據的各種具體的處理、轉發過程都屬於數據層面的範疇。數據層面主要佔用的是硬件資源。
數據層面:數據流。ICMP的ping包

舉例:
在這裏插入圖片描述

假設有4臺路由器A—B—C—D,其中A是數據發送者、D是接收者。A要發數據給D,首先要知道D在哪兒。D會把自己的路由信息先通過路由選擇協議發給C,再傳遞給B,最後傳遞到A,即路由信息的流向是D—C—B—A,這就是控制層面,因爲該層面傳遞的是路由信息,而路由信息屬於控制信息,所以叫控制層面。當A—D的路由建立起來後,A就把生產流量通過A—B—C—D這個流向傳遞給D,這就是數據層面,因爲該層面傳遞的是生產數據,是用戶想要發送的數據,
所以叫數據層面。一般來說,控制層面和數據層面的方向相反。

典型的ospf計算cost是在控制層面的入接口累加,rip在控制層面的出接口累加

發佈了88 篇原創文章 · 獲贊 7 · 訪問量 4821
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章