EIGRP(加強內部網關路由協議)是思科的私有協議,屬於距離矢量路由協議,但又具備鏈路狀態的特性。而且支持 VLSM(可變長子網和無類路由協議)。但在本質上說仍是傳送路由條目。redis
具備以下的特性:算法
EIGRP 能夠實現可靠傳輸的機制:
網絡
經過思科私有算法 RTP,來實現數據包的可靠發送,該算法又稱「可靠組播」。使用組播地址 224.0.0.10,每個接受到可靠組播的數據包的鄰居都會發送單播的數據包進行確認。數據結構
而且在組播發送時,每一個數據包都是有序列號。app
進而經過序列號和ACK來保證可靠性。負載均衡
Hello 報文:不可靠傳輸,就是不用確認。發現鄰居,創建鄰居,維護(週期性發送)組播發送。ide
Update 報文:傳遞路由更新,單播或組播發送,須要確認oop
單播:當路由器收到某個鄰居的第一個 HELLO 報文,以單播發送本身已知路由信息的 Update學習
組播:當路由信息變化(路由增長或減小),以組播方式發送只包含變化信息的 Update測試
Query 報文:當路由失效後,且拓撲表沒有 FS 時。向鄰居發送查詢,查詢可行後繼路由器。組播發送。當沒有應答時,會觸發 SIA-Query 查詢。
Reply 報文:應答報文,單播發送。對 Query 報文的應答。
ACK 報文:確認報文。用來確認 Update,Query,Reply 報文,單播發送。
SIA-Query 報文:⽤於避免 SIA 超時致使鄰居關係重置⽽發送的查詢報⽂,單播發送
SIA-Reply:⽤於避免SIA超時致使鄰居關係重置⽽發送的響應報⽂,單播發送
當路由器發送 Query 報文後,當 Active Timer 超過一半,會向鄰居發送⼀個SIA Query報⽂。 若是鄰居正在進⾏DUAL計算,則會回覆⼀個SIA Reply
報⽂,此時Active Timer置0,從新計時,當計時器到⼀半時間後再次發送SIA Query,若是反覆7次仍沒有計算成功,則在
第8次180秒到期後,重置鄰居關係。
總結一下通訊過程:
鄰居表:和路由器建⽴鄰居關係的路由器
參數 | 解釋 |
---|---|
Address | 鄰居路由器的地址 |
H | 路由器所建⽴的鄰居的順序號 |
Interface | 本地到鄰居的接⼝ |
Hold time | 等待從鄰居收到消息的時間 |
SRTT | 平均回程時間(Smooth Round-Trip Time),⼀個EIGRP報⽂發送給鄰居後到本地路由器從鄰居收到確認報⽂所花費的時間。單位 ms。 |
RTO | 重傳超時(Retransmission Timeout,RTO),⼤概是SRTT的6倍,從新傳輸報⽂以前等待確認的時間,單位是ms |
Q cnt | 隊列計數,等待發送的EIGRP報⽂數,若是這個數值持續⾼於0,說明⽹絡發⽣了擁塞 |
Seq Num | 從鄰居收到的最新的更新、查詢或應答數據包的序列號 |
在經過組播發送數據包時,若是沒有從鄰居收到 Ack 確認,那麼這個數據包就會以單播⽅式被從新發送給那個沒有響應的鄰
居,若是重傳16次還沒獲得確認,這個鄰居就被宣佈⽆效。從組播⽅式切換到單播⽅式以前等待⼀個 Ack 時間由組播流計時器指定,後
續的單播之間的時間由重傳超時 RTO 指定。組播流計時器和重傳超時都經過SRTT來計算。
Router#show ip eigrp neighbor EIGRP-IPv4 Neighbors for AS(1) H Address Interface Hold Uptime SRTT RTO Q Seq (sec) (ms) Cnt Num 2 14.1.1.2 Et0/2 11 00:30:16 9 100 0 5 1 13.1.1.2 Et0/1 11 00:31:13 9 100 0 15 0 12.1.1.2 Et0/0 11 00:32:08 6 100 0 8
拓撲表:包含路由器學習到達⽬的地的全部路由條⽬
參數 | 描述 |
---|---|
P:Passive | 表示⽹絡處於穩定狀態。是⼀種⽬前有正確的路由到達⽬的地的狀態。 當路由器失去了 S ⽽有⼀個 FS 時,或者再找到⼀個 FS 時, 該路由進⼊被動狀態,代表是⼀條可⽤路由。 |
A:Active | 表示當前⽹絡不可⽤,正處於發送查詢狀態。 是⼀種正在搜索 FS 的狀態,當路由器丟失了S,而且沒有FS可⽤時, 該路由進⼊活動狀態,是⼀條不可⽤的路由。當⼀條路由處於活動狀態時, 路由器向全部鄰居發送查詢來尋找另外⼀條到達該⽬的地的路由。 |
U:Update | 表示⽹絡處於等待 Update 包確認的狀態 |
Q:Query | 表示⽹絡處於等待 Query 包確認的狀態 |
Reply Status | 送了Query,收到了Ack,等待 Reply |
SIA:Stuck-In-Active | 表示⽹絡持續處於 Active 狀態,說明 EIGRP ⽹絡收斂發⽣了問題 |
Router#show ip eigrp neighbor EIGRP-IPv4 Neighbors for AS(1) H Address Interface Hold Uptime SRTT RTO Q Seq (sec) (ms) Cnt Num 2 14.1.1.2 Et0/2 11 00:30:58 9 100 0 5 1 13.1.1.2 Et0/1 12 00:31:55 9 100 0 15 0 12.1.1.2 Et0/0 12 00:32:50 6 100 0 8
路由表:最佳路徑的路由表
參數 | 描述 |
---|---|
D | 本⾃治系統⾥學到的路由 |
D EX | 經過自治系統外的路由引入到 EIGRP 中,但由於有可能出現環路,因此 AD 較低 |
Router#show ip route Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP a - application route + - replicated route, % - next hop override, p - overrides from PfR Gateway of last resort is not set 12.0.0.0/8 is variably subnetted, 2 subnets, 2 masks C 12.1.1.0/24 is directly connected, Ethernet0/0 L 12.1.1.1/32 is directly connected, Ethernet0/0 13.0.0.0/8 is variably subnetted, 2 subnets, 2 masks C 13.1.1.0/24 is directly connected, Ethernet0/1 L 13.1.1.1/32 is directly connected, Ethernet0/1 14.0.0.0/8 is variably subnetted, 2 subnets, 2 masks C 14.1.1.0/24 is directly connected, Ethernet0/2 L 14.1.1.1/32 is directly connected, Ethernet0/2 25.0.0.0/24 is subnetted, 1 subnets D 25.1.1.0 [90/332800] via 13.1.1.2, 00:15:43, Ethernet0/1 35.0.0.0/24 is subnetted, 1 subnets D 35.1.1.0 [90/307200] via 13.1.1.2, 00:26:24, Ethernet0/1 45.0.0.0/24 is subnetted, 1 subnets D 45.1.1.0 [90/307200] via 14.1.1.2, 00:15:29, Ethernet0/2
FD:可⾏距離,到達⼀個⽬的地的最⼩度量值
AD/RD:通告距離/報告距離,鄰居路由器所通告的它⾃⼰到達某個⽬的地的最⼩度量值
FC:可⾏性條件,AD<FD,鄰居路由器到達⽬的地的度量值必須⼩於本地路由器達到⽬的地的度量值
Successor:後繼路由器,是⼀個直連的鄰居路由器,它滿⾜FC,經過它具備到達⽬的地的最⼩度量值,是去往⽬的地的下⼀跳
Feasible Successor:可⾏後繼路由器,是⼀個鄰居路由器,它滿⾜FC,當主路由不可⽤時,FS⽤來代替主路由,當作備⽤路由。
S:後繼路由器
知足 FC,且 CD 最小的路由
FS:可行後繼路由器
知足 FC,但 CD 比 S 要大的路由
AD(RD):通告距離/報告距離
上游路由器通告給本地路由器,到達一個目標網絡的距離
FD:可行距離
進入被動狀態後,路由曾經擁有過的最小距離
CD:計算距離
本地路由器到達一個上游鄰居的距離加上該上游鄰居的 AD
FC(可行性條件)
FC 是 EIGRP 防止環路的重要參數,該條件爲若是一條路由想要成爲 FS,它的 AD 必須小於當前 FD。因爲產生環路時,數據必定是通過了必定的路由器後又回到了某臺路由器,這時,該路由累加的開銷,必定會大於當前從這臺路由器到達目的網絡的開銷。
假設默認 metric 爲圖中的固定值,而且路由器剛啓動 FD 默認爲無窮大
以 R1 爲視角,從 1.0 到 2.0 網絡選擇路由的過程:
router | AD(RD):本身到目標網絡的距離 | CD: R1 到通告路由的距離 |
---|---|---|
R2 | 30 | 60 = 30 + 30 (R1 到 R2 ) |
--- | --- | --- |
R3 | 20 | 60 = 20 + 40 |
--- | --- | --- |
R4 | 15 | 35 = 20 + 15 |
首先因爲 CD 最小的是 R4 ,故 S 爲 R4.
因爲 FD 無窮大 ,故 FS 爲 R2,R3
此時 FD 爲 35,同時發現 R3 的 RD 爲 40,大於 FD 因此將 R3 到 2.0 網絡的這條路刪除
經過這裏能夠看到,其實並沒構成環路,因此 EIGRP 在消除環路時,也錯誤的隔離了一些正確的路徑
如以前所提到的,一旦 S 出現問題,FS 就會立刻替代
特殊狀況一旦 FS 也變空,會將 FD 設爲無限大
# R1 開啓 EIGRP 進程1(注意,這個 1 是AS號,與 OSPF 不一樣,若是AS號不一致,EIGRP沒法創建鄰居關係) R1(config)# router eigrp 100 R1(config-router)# no au R1(config-router)# network 14.1.1.1 0.0.0.0 R1(config-router)# network 15.1.1.1 0.0.0.0 R1(config-router)# network 13.1.1.1 0.0.0.0 # R2 , R3 ,R4 ,R5 同理 # 排錯命令 R1# show ip route # 查看有沒有創建鄰居關係 R1# show ip eigrp neighbor R1# show ip protocol # 查看 EIGRP 拓撲表的摘要信息 R1# show ip eigrp topology
在路由器收到路由後,可能到達同一目的,有多條路由能夠選擇。這時就須要將最優的路由條目更新到路由表中,而 Metric 越低則代表該路由更優秀。
在這裏,以 R1 的視角查看下路由表的信息:
Router#show ip route 12.0.0.0/8 is variably subnetted, 2 subnets, 2 masks C 12.1.1.0/24 is directly connected, Ethernet0/0 L 12.1.1.1/32 is directly connected, Ethernet0/0 13.0.0.0/8 is variably subnetted, 2 subnets, 2 masks C 13.1.1.0/24 is directly connected, Ethernet0/1 L 13.1.1.1/32 is directly connected, Ethernet0/1 14.0.0.0/8 is variably subnetted, 2 subnets, 2 masks C 14.1.1.0/24 is directly connected, Serial1/0 L 14.1.1.1/32 is directly connected, Serial1/0 25.0.0.0/24 is subnetted, 1 subnets D 25.1.1.0 [90/307200] via 12.1.1.2, 00:00:11, Ethernet0/0 35.0.0.0/24 is subnetted, 1 subnets D 35.1.1.0 [90/307200] via 13.1.1.2, 00:00:11, Ethernet0/1 45.0.0.0/24 is subnetted, 1 subnets D 45.1.1.0 [90/2221056] via 13.1.1.2, 00:00:11, Ethernet0/1 [90/2221056] via 12.1.1.2, 00:00:11, Ethernet0/0
能夠發現去往 45 網絡的下一跳接口爲 R3 的 Ethernet0/0,並非在距離看見來更短 R4 的 S1/0. 緣由就在與通過計算後,走 R4 的 Metric 更大,由於所用接口爲串行鏈路,相對於以太網鏈路帶寬更小。那麼 EIGRP 在計算機時會考慮哪些參數呢?
ERGRP 在計算 Metric 時,會考慮以下的參數:
帶寬:路徑上沿途出站接口上的最小帶寬,單位爲 kbit/s.
時延:路徑上沿途出站接口上的時延綜合,單位爲 10 微秒。1000000μs = 1s,1000μs = 1ms。
Router#show interface e 0/0 Ethernet0/0 is up, line protocol is up Hardware is AmdP2, address is aabb.cc00.5000 (bia aabb.cc00.5000) Internet address is 25.1.1.2/24 MTU 1500 bytes, BW 10000 Kbit/sec, DLY 1000 usec, => 帶寬爲 10000 kbit/sec Router#show interface s 1/0 Serial1/0 is up, line protocol is up Hardware is M4T Internet address is 45.1.1.2/24 MTU 1500 bytes, BW 1544 Kbit/sec, DLY 20000 usec => 帶寬爲 1544 kbit/sec
可手動修改帶寬和時延, 僅在計算 Metric 時有意義,並沒有法真正改變物理帶寬:
# modify bandwidth Router(config-if)#bandwidth 10000 # modify delay,unit is 10 microseconds Router(config-if)#delay 10 # actually delay is 100
可靠性:動態的度量參數,描述出錯率,最大值爲 255,表示 100% 可靠。1 表示 1% 可靠。
負載:基於單位時間內發送的包率,描述佔用率。1 表示最小負載。255 表示 100% 負載。
最大傳輸單元:不參與計算,但會記錄。最小 MTU.
計算公式,負載和可靠性,在人工配置後會參與計算:
但因爲默認,K1, K3 等於 1,K2, K4, K5 等於 0. 因此公式可簡化爲:
帶寬:路徑上沿途出站接口上的最小帶寬
時延:時延求和
這裏舉個例子。求 R1 經過 R4 到 R5 的 45 網絡的 metric 值,途經兩個接口:
(10^7 / 1544 + 20000 * 2 / 10) * 256 = 2681856 # 能夠看到計算的沒有問題 Router#show ip eigrp topology P 45.1.1.0/24, 1 successors, FD is 2221056 P 45.1.1.0/24, 2 successors, FD is 2221056 via 12.1.1.2 (2221056/2195456), Ethernet0/0 via 13.1.1.2 (2221056/2195456), Ethernet0/1 via 14.1.1.2 (2681856/2169856), Serial1/0
等價負載:到達同一目的有多條路徑,且 Metric 同樣
# EIGRP中默認爲4條,可經過命令修改,最⼤數量根據IOS版本不一樣⽽不一樣。 R1(config)#router eigrp 100 R1(config-router)#maximum-paths 32
非等價負載:到達同一目的有多條路徑,且 Metric 不一樣
# 經過設置 variance (差別變量)來進行非等價負載分擔,默認爲 1,最大爲 128 # 若是某條路由的 Metric 小於 FD * variance 的值,表示該路由可用。 R1(config)# router eigrp 100 R1(config-router)# variance 6
好比這裏若是想讓 R4 兩端接口的串行鏈路,能夠做爲非等價負載分攤的路由:
Traffic Share:
因爲 Metric 值小的路由表示鏈路狀態更好,因此在負載均衡時但願 Metric 值小的路由傳輸更多的流量。
# 默認開啓 R1(config)#router eigrp 100 R1(config-router)#traffic-share balanced
當配置 traffic-share min across-interfaces
命令時,表示路由表中有多條路徑,流量也只經過最低成本的路徑發送。
R1(config)#router eigrp 100 R1(config-router)#traffic-share min across-interfaces
當路由器存在多個網絡時,若是但願在傳輸路由時,將其彙總成一個大網段進行發送,能夠設置彙總。
有兩種方式:
自動彙總
手動彙總
⽀持本地以及鄰居傳遞過來的路由彙總。爲防⽌路由遞歸,進⾏彙總的設備會⾃動產⽣⼀條指向Null0接⼝的路由。
R2(config)#interface e0/1
R2(config-if)#ip summary-address eigrp 100 10.1.0.0 255.255.252.0
同時配置⾃動彙總和⼿⼯彙總,優先發送⾃動彙總的路由。
開啓彙總後的設備會自動產生一個 NULL 開頭的接口,用於防止環路。
看這樣一個場景,通常在公司內部都有一臺路由器和 ISP 鏈接,用於經過外網進行通訊,這裏以 R5 表示。
一般會在這臺路由器上配置一條默認路由將沒法識別的報文,扔給 ISP 的接口。假設區域內的路由器運行 EIGRP 協議,則該默認路由會自動分發給其餘的路由器進行學習。
此時假設 R1 的某個接口出現問題,丟失了一個網段。而此時路由器中是彙總後的網絡段,依然會正常傳遞數據。
假設 R2 給 R1 傳輸數據,但原來 R1 網段已經 down,因此它也沒法處理,正常來講該數據包就會被丟棄了。
但因爲默認路由的存在,又會將該數據包扔給 R2,此時 R2 收到又會將數據包傳給 R1,造成環路。
爲了解決這個問題,會增長一個網段是彙總網段 NULL0 接口,在匹配默認路由前,會先匹配 NULL0,匹配成功後把該數據包丟棄。
在 R1 路由器上增長多個網絡,開啓彙總:
自動彙總
# R1 增長四個網絡,並宣告 Router#show ip route 10.0.0.0/8 is variably subnetted, 8 subnets, 2 masks C 10.1.0.0/24 is directly connected, Loopback0 L 10.1.0.1/32 is directly connected, Loopback0 C 10.2.0.0/24 is directly connected, Loopback1 L 10.2.0.1/32 is directly connected, Loopback1 C 10.3.0.0/24 is directly connected, Loopback2 L 10.3.0.1/32 is directly connected, Loopback2 C 10.4.0.0/24 is directly connected, Loopback3 L 10.4.0.1/32 is directly connected, Loopback3 Router(config)#router eigrp 100 Router(config-router)#network 10.0.0.0 0.255.255.255 # 在 R5 查看,增長對應的網段 Router5#show ip route 10.0.0.0/8 is variably subnetted, 9 subnets, 3 masks D 10.0.0.0/8 is a summary, 00:03:30, Null0 C 10.1.0.0/24 is directly connected, Loopback0 L 10.1.0.1/32 is directly connected, Loopback0 C 10.2.0.0/24 is directly connected, Loopback1 L 10.2.0.1/32 is directly connected, Loopback1 C 10.3.0.0/24 is directly connected, Loopback2 L 10.3.0.1/32 is directly connected, Loopback2 C 10.4.0.0/24 is directly connected, Loopback3 L 10.4.0.1/32 is directly connected, Loopback3 12.0.0.0/8 is variably subnetted, 3 subnets, 3 masks D 12.0.0.0/8 is a summary, 00:03:30, Null0 C 12.1.1.0/24 is directly connected, Ethernet0/0 L 12.1.1.1/32 is directly connected, Ethernet0/0 13.0.0.0/8 is variably subnetted, 3 subnets, 3 masks D 13.0.0.0/8 is a summary, 00:03:30, Null0 C 13.1.1.0/24 is directly connected, Ethernet0/1 L 13.1.1.1/32 is directly connected, Ethernet0/1 14.0.0.0/8 is variably subnetted, 3 subnets, 3 masks D 14.0.0.0/8 is a summary, 00:03:30, Null0 C 14.1.1.0/24 is directly connected, Serial1/0 L 14.1.1.1/32 is directly connected, Serial1/0 25.0.0.0/24 is subnetted, 1 subnets D 25.1.1.0 [90/307200] via 12.1.1.2, 03:46:59, Ethernet0/0 35.0.0.0/24 is subnetted, 1 subnets D 35.1.1.0 [90/307200] via 13.1.1.2, 03:46:59, Ethernet0/1 45.0.0.0/24 is subnetted, 1 subnets D 45.1.1.0 [90/2221056] via 13.1.1.2, 03:46:59, Ethernet0/1 [90/2221056] via 12.1.1.2, 03:46:59, Ethernet0/0 # 在 R1 打開自動彙總 R1(config)#router eigrp 100 R1(config-router)# auto-summary # 在 R5 上再次查看,能夠看到彙總成 10.0.0.0/8 的大網絡 Router#show ip route 10.0.0.0/8 is subnetted, 1 subnets D 10.0.0.0 [90/435200] via 35.1.1.1, 00:00:25, Ethernet0/1 [90/435200] via 25.1.1.1, 00:00:25, Ethernet0/0 12.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
手動彙總:
Router(config-router)#no auto-summary # 手動彙總支持本地和鄰居的路由 # 在 R2 上手動彙總 Router(config-if)#ip summary-address eigrp 1 10.1.0.0 255.252.0.0 # 在 R5 上查看 10.0.0.0/8 is variably subnetted, 5 subnets, 2 masks D 10.0.0.0/14 [90/486400] via 35.1.1.1, 00:00:34, Ethernet0/1 D 10.1.0.0/24 [90/435200] via 35.1.1.1, 00:06:32, Ethernet0/1 [90/435200] via 25.1.1.1, 00:06:32, Ethernet0/0 D 10.2.0.0/24 [90/435200] via 35.1.1.1, 00:06:32, Ethernet0/1 [90/435200] via 25.1.1.1, 00:06:32, Ethernet0/0 D 10.3.0.0/24 [90/435200] via 35.1.1.1, 00:06:32, Ethernet0/1 [90/435200] via 25.1.1.1, 00:06:32, Ethernet0/0 D 10.4.0.0/24 [90/435200] via 35.1.1.1, 00:06:32, Ethernet0/1 [90/435200] via 25.1.1.1, 00:06:32, Ethernet0/0
路由器的某個接口會與交換機創建鏈接,而交換機經過會下掛多臺 PC. 因爲在路由器上運行如 EIGRP 相似的協議,會週期性的發送 Hello 報文,這些報文會經過交換機發送給 PC,但這些報文對於交換機和 PC 來講,並無意義,反而會佔用帶寬,因此可將和交換機鏈接的端口設置成被動接口。
當不但願從某個接⼝向外發送路由更新時,能夠將該接⼝配置爲被動接⼝,配置之後,被動接⼝將不接收、不發送任何EIGRP報⽂。
R1(config)#router eigrp 100 R1(config-router)#passive-interface e0/0
如以前的 R5 所示,一般和 ISP 相連,用於將本身不知道的網段發送給 ISP 在外網上傳輸。因此就須要將 R5 配置的默認路由引入到其餘路由器中。
# 在AS的邊界路由器上配置缺省路由,再將此缺省路由重分佈到EIGRP域內。 R5(config)#ip route 0.0.0.0 0.0.0.0 56.1.1.6 R5(config)#router eigrp 100 R5(config-router)#redistribute static
在AS的邊界路由器鏈接內⽹的接⼝,經過⼿⼯路由彙總實現缺省路由下放。
R5(config)#interface e0/0 R5(config-if)#ip summary-address eigrp 100 0.0.0.0 0.0.0.0
EIGRP協議可以配置認證來驗證鄰居/消息的合法性,EIGRP 僅⽀持 MD5 加密認證,也是 EIGRP 協議惟⼀⽀持的認證⽅式。
區分加密和認證:
加密:經過如 DES,3DES 等算法加密後生成一段密文
認證:對數據完整性進行檢查有沒有被篡改
配置:
# 建立鑰匙鏈 R1(config)#key chain test R1(config-keychain)#key 1 R1(config-keychain-key)#key-string cisco # 接⼝下開啓認證並調⽤鑰匙鏈 R1(config)#interface e0/0 R1(config-if)#ip authentication mode eigrp 100 md5 R1(config-if)#ip authentication key-chain eigrp 100 test
爲了減小⽹絡不穩定的⻛險,抑制某些設備查詢報⽂過多,引發「卡在活動狀態」的情形發⽣,能夠將某些設備配置爲Stub路由器
看以下的場景:
這裏假設在 R1,R3 和 R5 之間已經創建了 EIGRP 的鄰居關係後,忽然 R1 到 R3 的網絡不可用,而此時沒有 FS (後繼路由器),因此 R3 就會給 R5 發送 Query 消息,獲取後繼路由器。
但這時 R5 並沒給出回覆,R3 一直等待,但 R1 和 R3 之間的網絡忽然有恢復了,但此時 R3 到 R1 的拓撲表中依然是 Active 狀態。也是是說,即便⽹絡恢復了,也依然不 Passive 穩定的狀態。
爲了解決這樣的問題,一般會在末節路由器(即邊緣設備)配置成 Stub 設備。
Stub 的特性:
配置:
R1(config)#router eigrp 100 # 隱含了connected summary, 也就是說默認發送 connected 和 summary 路由 R1(config-router)#eigrp stub Router#show running-config | s router router eigrp 1 network 12.1.1.0 0.0.0.255 network 13.1.1.0 0.0.0.255 network 14.1.1.0 0.0.0.255 eigrp stub connected summary # 若是想要開啓 stub 的設備傳遞靜態路由 Router(config-router)#eigrp stub redistributed # 若是想要開啓直連,彙總,重分佈須要一塊兒 Router(config-router)#eigrp stub summary connected redistributed # 查看 stub 鄰居 R3# show ip eigrp neighbor detail Router#show ip eigrp neighbor detail EIGRP-IPv4 Neighbors for AS(1) H Address Interface Hold Uptime SRTT RTO Q Seq (sec) (ms) Cnt Num 1 13.1.1.1 Et0/0 13 00:02:07 15 100 0 32 Version 23.0/2.0, Retrans: 0, Retries: 0, Prefixes: 2 Topology-ids from peer - 0 Topologies advertised to peer: base Stub Peer Advertising (CONNECTED SUMMARY ) Routes Suppressing queries 0 35.1.1.2 Et0/1 12 02:15:20 272 1632 0 33 Version 23.0/2.0, Retrans: 1, Retries: 0, Prefixes: 3 Topology-ids from peer - 0 Topologies advertised to peer: base
在某些較新的IOS版本⽀持命名EIGRP配置,名字區分⼤⼩寫。
相⽐較傳統EIGPR配置,命名版有如下優勢:
(K1 × Bandwidth + K2 × Bandwidth / (256 - load) + K3 × delay + K6 × Extended Attributes) × K5 / (Reliability+K4) × 65536
係數 K1-K6 是可配置的加權值,缺省值爲:K1=K3=1,K2=K4=K5=K6=0
公式簡化:
(K1 × Bandwidth + K2 × Bandwidth / (256 - load) + K3 × delay) × 65536 = (Bandwidth + delay) × 65536 EIGRP_Bandwidth = 10^7 / min_Bandwidth EIGRP_Dealy = Sum(Link_Delay / 10000000)
命名EIGRP延遲單位爲⽪秒(Picosecond),1000000ps=1μ
地址族下配置, 爲了適應多個 IP 版本:
R1(config)#router eigrp cisco R1(config-router)#address-family ipv4 unicast autonomous-system 100 R1(config-router-af)#network 12.1.1.1 0.0.0.0 R1(config-router-af)#network 13.1.1.1 0.0.0.0 R1(config-router-af)#network 14.1.1.1 0.0.0.0 R1(config-router-af)#eigrp stub connected summary
地址族接⼝配置模式:
R1(config-router-af)#af-interface e0/0 R1(config-router-af-interface)#summary-address 10.1.0.0 255.255.252.0 R1(config-router-af-interface)#authentication mode md5 R1(config-router-af-interface)#authentication key-chain cisco R1(config-router-af-interface)#exit R1(config-router-af)#af-interface loopback 0 R1(config-router-af-interface)#passive-interface R1(config-router-af-interface)#exit
地址族拓撲庫配置模式:
R1(config-router-af)#topology base R1(config-router-af-topology)#variance 6 R1(config-router-af-topology)#exit
能夠發現由以前的分開配置,變成如今的全在 #address-family ipv4 unicast autonomous-system 100
下進行配置。
EIGRP for IPv6和IPv4在原理上沒有區別:
一樣使⽤DUAL算法,有鄰居的機制,⽀持認證,⽀持彙總,採⽤組播更新、觸發更新、部分更新。
配置⽅法⼀:進程及接⼝下配置
# 開啓 IPV6 功能 R5(config)#ipv6 unicast-routing R5(config)#interface e0/2 # 開啓 IPV6 功能 R5(config-if)#ipv6 enable R5(config-if)#ipv6 address 2000::5/64 R5(config-if)#no shutdown # IPV6 EIGRP 配置 R5(config)#ipv6 router eigrp 100 R5(config-rtr)#eigrp router-id 5.5.5.5 # 打開 eigrp 進程,默認關閉,手動開啓 R5(config-rtr)#no shutdown # 應用 ERGRP 配置到接口上 R5(config)#interface e0/2 R5(config-if)#ipv6 eigrp 100 R5(config-if)#exit # 應用 ERGRP 配置到接口上 R5(config)#interface loopback 10 # 開啓 IPV6 功能 R5(config-if)#ipv6 enable R5(config-if)#ipv6 address 3005::5/64 R5(config-if)#ipv6 eigrp 100
配置⽅法⼆:命名EIGRP配置
R5(config)# router eigrp cisco R5(config-router)#address-family ipv6 unicast autonomous-system 100 # 若是沒有環回接口,則須要指定一個 router-id R5(config-rtr)#eigrp router-id 5.5.5.5 # 默認全部接⼝開啓EIGRP,不須要則⼿⼯關閉。只要接口下開啓 IPV6 enable,就會自動學習鄰居地址 R5(config-router-af)#af-interface e0/0 R5(config-router-af-interface)#shutdown
測試直連連通性(ping)
查看鄰居表是否有鄰居(show ip eigrp neighbors)
查看是否有須要的路由(show ip route)