EIGRP:Enhanced Interior Gateway Routing Protocol 即 增強(qiáng)內(nèi)部網(wǎng)關(guān)路由協(xié)議。也翻譯為 加強(qiáng)型內(nèi)部網(wǎng)關(guān)路由協(xié)議。 EIGRP是Cisco公司的私有協(xié)議(2013年已經(jīng)公有化)。 EIGRP結(jié)合了鏈路狀態(tài)和距離矢量型路由選擇協(xié)議的Cisco專(zhuān)用協(xié)議,采用彌散修正算法(DUAL)來(lái)實(shí)現(xiàn)快速收斂,可以不發(fā)送定期的路由更新信息以減少帶寬的占用,支持Appletalk、IP、Novell和NetWare等多種網(wǎng)絡(luò)層協(xié)議。
eigrp的基本配置
實(shí)驗(yàn)步驟
Step1:配置IP
Step2:配置EIGRP
R1(config)#router eigrp 100 //啟用eigrp
R1(config-router)#no auto-summary //關(guān)閉自動(dòng)匯總
R1(config-router)#network 12.1.1.00.0.0.255 //network 目標(biāo)網(wǎng)段反子網(wǎng)掩碼
R1(config-router)#network 1.1.1.1 0.0.0.0
R2(config)#router eigrp 100
R2(config-router)#no auto-summary
R2(config-router)#network 12.1.1.00.0.0.255
R2(config-router)#network 23.1.1.00.0.0.255
R2(config-router)#network 2.2.2.2 0.0.0.0
R3(config)#router eigrp 100
R3(config-router)#no auto-summary
R3(config-router)#network 23.1.1.00.0.0.255
R3(config-router)#network 34.1.1.00.0.0.255
R3(config-router)#network 3.3.3.3 0.0.0.0
R4(config)#router eigrp 100
R4(config-router)#no auto-summary
R4(config-router)#network 34.1.1.00.0.0.255
R4(config-router)#network 4.4.4.4 0.0.0.0
Step3:檢查全網(wǎng)連通性
Step4:查看路由表
R3#show ip rou
Codes: C - connected, S - static, I - IGRP,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, E - EGP
i - IS-IS, 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
Gateway of last resort is not set
1.0.0.0/32 is subnetted, 1 subnets
D 1.1.1.1 [90/158720] via 23.1.1.2, 00:00:22, FastEthernet0/0
2.0.0.0/32 is subnetted, 1 subnets
D 2.2.2.2 [90/156160] via 23.1.1.2, 00:00:22, FastEthernet0/0
3.0.0.0/32 is subnetted, 1 subnets
C 3.3.3.3 is directly connected, Loopback1
4.0.0.0/32 is subnetted, 1 subnets
D 4.4.4.4 [90/156160] via 34.1.1.4, 00:00:22, FastEthernet0/1
12.0.0.0/24 is subnetted, 1 subnets
D 12.1.1.0 [90/30720] via 23.1.1.2, 00:00:22, FastEthernet0/0
23.0.0.0/24 is subnetted, 1 subnets
C 23.1.1.0 is directly connected, FastEthernet0/0
34.0.0.0/24 is subnetted, 1 subnets
C 34.1.1.0 is directly connected, FastEthernet0/1
“D”表示用EIGRP 學(xué)到的路由條目,管理距離為90。
Step5:查看路由協(xié)議
R3#show ip protocols
Routing Protocol is “eigrp 100 ”
//AS號(hào)為100
Outgoing update filter list for all interfaces is not set
Incoming update filter list for all interfaces is not set
Default networks flagged in outgoing updates
Default networks accepted from incoming updates
EIGRPmetric weight K1=1, K2=0, K3=1, K4=0, K5=0
// 顯示計(jì)算度量值所用的 K值
EIGRPmaximum hopcount 100
//EIGRP 支持的最大跳數(shù)
EIGRPmaximum metric variance 1
// variance 值默認(rèn)為 1,即默認(rèn)時(shí)只支持等價(jià)路徑的負(fù)載均衡
Redistributing: eigrp 100
Automaticnetwork summarization is not in effect
//顯示自動(dòng)匯總已經(jīng)關(guān)閉,默認(rèn)自動(dòng)匯總是開(kāi)啟的
Maximum path: 4
Routing for Networks:
23.1.1.0/24
34.1.1.0/24
3.3.3.3/32
Routing Information Sources:
Gateway Distance Last Update
23.1.1.2 90 0
34.1.1.4 90 10
Distance:internal 90 external 170
//EIGRP 路由協(xié)議能夠區(qū)分內(nèi)部路由和外部路由。內(nèi)部路由默認(rèn)管理距離是90,外部路由默認(rèn)管理距離是170。
Step6:查看EIGRP鄰居
R3#show ip eigrp neighbors
IP-EIGRP neighbors for process 100
H Address Interface Hold Uptime SRTT RTO Q Seq
(sec) (ms) Cnt Num
0 23.1.1.2 Fa0/0 10 00:06:54 40 1000 0 9
1 34.1.1.4 Fa0/1 10 00:06:54 40 1000 0 11
以上輸出各字段的含義如下:
① H: 表示與鄰居建立會(huì)話(huà)的順序;
② Address: 鄰居路由器的接口地址;
③ Interface: 本地到鄰居路由器的接口;
④ Hold: 認(rèn)為鄰居關(guān)系不存在所能等待的最大時(shí)間;
⑤ Uptime: 從鄰居關(guān)系建立到目前的時(shí)間;
⑥ SRTT: 是向鄰居路由器發(fā)送一個(gè)數(shù)據(jù)包以及本路由器收到確認(rèn)包的時(shí)間;
⑦ RTO: 路由器在重新傳輸包之前等待ACK 的時(shí)間;
⑧ Q Cnt: 等待發(fā)送的隊(duì)列;
⑨ Seq Num: 從鄰居收到的發(fā)送數(shù)據(jù)包的序列號(hào)。
Step7:查看拓?fù)?/p>
R3#show ip eigrp topology
IP-EIGRP Topology Table for AS100/ID(3.3.3.3)
Codes: P - Passive, A - Active, U - Update,Q - Query, R - Reply,
r - Reply status
P 1.1.1.1/32, 1 successors, FD is 158720
via 23.1.1.2 (158720/156160), FastEthernet0/0
P 2.2.2.2/32, 1 successors, FD is 156160
via 23.1.1.2 (156160/128256), FastEthernet0/0
P 3.3.3.3/32, 1 successors, FD is 128256
via Connected, Loopback1
P 4.4.4.4/32, 1 successors, FD is 156160
via 34.1.1.4 (156160/128256), FastEthernet0/1
P 12.1.1.0/24, 1 successors, FD is 30720
via 23.1.1.2 (30720/28160), FastEthernet0/0
P 23.1.1.0/24, 1 successors, FD is 28160
via Connected, FastEthernet0/0
P 34.1.1.0/24, 1 successors, FD is 28160
via Connected, FastEthernet0/1
可清楚看到每條路由條目FD和RD值
Step8:查看EIGRP接口
R3#show ip eigrp interfaces
IP-EIGRP interfaces for process 100
Xmit Queue Mean Pacing Time Multicast Pending
Interface Peers Un/Reliable SRTT Un/Reliable Flow Timer Routes
Lo1 0 0/0 1236 0/10 0 0
Fa0/0 1 0/0 1236 0/10 0 0
Fa0/1 1 0/0 1236 0/10 0 0
輸出各字段含義如下
① Interface:運(yùn)行 EIGRP 協(xié)議的接口;
② Peers:該接口的鄰居的個(gè)數(shù);
③ Xmit Queue Un/Reliable:在不可靠/可靠隊(duì)列中存留的數(shù)據(jù)包的數(shù)量;
④ Mean SRTT:平均的往返時(shí)間,單位是秒;
⑤ Pacing Time Un/Reliable:用來(lái)確定不可靠/可靠隊(duì)列中數(shù)據(jù)包被送出接口的時(shí)間間隔;
⑥ Multicast Flow Timer:組播數(shù)據(jù)包被發(fā)送前最長(zhǎng)的等待時(shí)間;
⑦ Pending Routes:在傳送隊(duì)列中等待被發(fā)送的數(shù)據(jù)包攜帶的路由條目。
Step9:查看EIGRP發(fā)送和接受數(shù)據(jù)包的情況
R3#show ip eigrp traffic
IP-EIGRP Traffic Statistics for process 100
Hellos sent/received: 566/377
Updates sent/received: 12/11
Queries sent/received: 0/0
Replies sent/received: 0/0
Acks sent/received: 10/7
Input queue high water mark 1, 0 drops
SIA-Queries sent/received: 0/0
SIA-Repliessent/received: 0/0
Step10:debug eigrp neighbors
該命令可以動(dòng)態(tài)查看 EIGRP 鄰居關(guān)系的情況。在路由器 R1 先將f0/0 接口shutdown 掉,
然后再 no shutdown,可以看到EIGRP 鄰居建立的過(guò)程。
EIGRP路由配置命令
是Cisco的私有路由協(xié)議,它綜合了距離矢量和鏈路狀態(tài)2者的優(yōu)點(diǎn),它的特點(diǎn)包括: 1.快速收斂
鏈路狀態(tài)包(Link-State Packet,LSP)的轉(zhuǎn)發(fā)是不依靠路由計(jì)算的,所以大型網(wǎng)絡(luò)可以較為快速的進(jìn)行收斂。它只宣告鏈路和鏈路狀態(tài),而不宣告路由,所以即使鏈路發(fā)生了變化,不會(huì)引起該鏈路的路由被宣告。但是鏈路狀態(tài)路由協(xié)議使用的是Dijkstra算法,該算法比較復(fù)雜,并且和其他路由協(xié)議單獨(dú)計(jì)算路由相比較占CPU和內(nèi)存資源,EIGRP采用彌散更新算法(diffusingcomputations ),通過(guò)多個(gè)路由器并行的進(jìn)行路由計(jì)算,這樣就可以在無(wú)環(huán)路產(chǎn)生的情況下快速的收斂。 2.減少帶寬占用
EIGRP不作周期性的更新,它只在路由的路徑和度發(fā)生變化以后做部分更新。當(dāng)路徑信息改變以后,DUAL只發(fā)送那條路由信息改變了的更新,而不是發(fā)送整個(gè)路由表。和更新傳輸?shù)揭粋€(gè)區(qū)域內(nèi)的所有路由器上的鏈路狀態(tài)路由協(xié)議相比,DUAL只發(fā)送更新給需要該更新信息的路由器。在WAN低速鏈路上,EIGRP可能會(huì)占用大量帶寬,默認(rèn)只占用鏈路帶寬50%,之后發(fā)布的IOS允許使用命令ip bandwidth-percent eigrp來(lái)修改這一默認(rèn)值。 3.支持多種網(wǎng)絡(luò)層協(xié)議
EIGRP通過(guò)使用“協(xié)議相關(guān)模塊”(即protocol-dependentmodule《PDM》),可以支持IPX,ApplleTalk,IP,IPv6和NovellNetware等協(xié)議。 4.無(wú)縫連接數(shù)據(jù)鏈路層協(xié)議和拓?fù)浣Y(jié)構(gòu)
EIGRP不要求對(duì)OSI參考模型的層2協(xié)議做特別的配置。不像OSPF,OSPF對(duì)不同的層2協(xié)議要做不同配置,比如以太網(wǎng)和幀中繼,EIGRP能夠有效的工作在LAN和WAN中,而且EIGRP保證網(wǎng)絡(luò)不會(huì)產(chǎn)生環(huán)路(loop-free);而且配置起來(lái)很簡(jiǎn)單;支持VLSM;它使用多播和單播,不使用廣播,這樣做節(jié)約了帶寬;它使用和IGRP一樣的度的算法,但是是32位長(zhǎng)的;它可以做非等價(jià)的路徑的負(fù)載平衡。 四個(gè)組件
1.Protocol-Dependent Module(PDM)
2.可靠傳輸協(xié)議(Reliable Transport Protocol,RTP) 3.鄰居的發(fā)現(xiàn)/恢復(fù)
4.彌散更新算法(Diffusing Update Algorithm,DUAL) RTP-EIGRP的可靠傳輸協(xié)議
RTP負(fù)責(zé)EIGRP packet(下面有講)的按順序(可靠)的發(fā)送和接收,這個(gè)可靠的保障是通過(guò)Cisco私有的一個(gè)算法,reliable multicast實(shí)現(xiàn)的,使用組播地址224.0.0.10,每個(gè)鄰居接收到這個(gè)可靠的組播包的時(shí)候就會(huì)以一個(gè)unicast作為確認(rèn)按順序的發(fā)送是通過(guò)packet里的2個(gè)序列號(hào)實(shí)現(xiàn)的,每個(gè)packet都包含發(fā)送方分配的1個(gè)序列號(hào),發(fā)送方每發(fā)送1個(gè)packet,這個(gè)序列號(hào)就遞增1.另外,發(fā)送方也會(huì)把最近從目標(biāo)路由器接收到的packet的序列號(hào)放在這個(gè)要發(fā)送的packet里,在某些情況下,RTP也可以使用無(wú)需確認(rèn)的不可靠的發(fā)送,并且使用這種不可靠發(fā)送的packet中不包含序列號(hào).EIGRP第一次傳輸都采用組播形式,重傳輸都采用單播。 EIGRP-Metric計(jì)算方法
EIGRP選擇一條主路由(最佳路由)和一條備份路由放在topology table(EIGRP到目的地支持最多6條鏈路)。它支持幾種路由類(lèi)型:內(nèi)部,外部(非EIGRP)和匯總路由.EIGRP使用混合度。
i.EIGRP Metric的5個(gè)標(biāo)準(zhǔn) 1.帶寬
10的7次方除以源和目標(biāo)之間最低的帶寬乘以256 2.延遲(delay)
接口的累積延遲乘以256,單位是10微秒 3.可靠性(reliability)
根據(jù)keepalive而定的源和目的之間最不可靠的可靠度的值 4.負(fù)載(loading)
根據(jù)包速率和接口配置帶寬而定的源和目的之間最不差的負(fù)載的值 5.最大傳輸單元(MTU)
路徑中最小的MTU.MTU包含在EIGRP的路由更新里,但是一般不參與EIGRP度的運(yùn)算
ii. EIGRP Metric的計(jì)算
EIGRP度量值的計(jì)算公式為:256*{K1(10^7/帶寬)+K2(10^7/帶寬)/(256-負(fù)載)+K3(延遲)+K5/(可靠性+K4)}
默認(rèn)情況下,K1和K3是1,其他的K值都是0.
所以通常情況下,度量值=256×(10^7/最小帶寬+累積延時(shí))
通過(guò)配置權(quán)重(K值),可以修改EIGRP度量值計(jì)算方式??梢栽貳IGRP配置模式使用命令:Metric weight Tos K1 K2 K3 K4 K5 來(lái)修改K值,Tos 只有一個(gè)有效值0,否則將被忽略。
EIGRP 要求兩臺(tái)路由器的K值必須相同才能成為鄰居。另外,K2,K4,,K5最好不要設(shè)置,因?yàn)檫@些參數(shù)設(shè)置為非零之后,會(huì)導(dǎo)致計(jì)算度量值時(shí)會(huì)考慮借口的負(fù)載和可靠性,而負(fù)載和可靠性會(huì)隨時(shí)間變化,這將導(dǎo)致EIGRP重新泛洪拓?fù)鋽?shù)據(jù),還可能導(dǎo)致路由器不斷地選擇不同的路由,由此導(dǎo)致網(wǎng)絡(luò)不穩(wěn)定。 EIGRP Packet
EIGRP使用多種類(lèi)型的packet,這些packet通過(guò)IP頭部信息里的協(xié)議號(hào)88來(lái)標(biāo)識(shí): 1. Hello packet
用來(lái)發(fā)現(xiàn)和恢復(fù)鄰居,通過(guò)組播的方式發(fā)送,使用不可靠的發(fā)送。 2. ACK(acknowledgement) packet
不包含數(shù)據(jù)(data)的Hello包,使用unicast的方式,不可靠的發(fā)送。
3. Update packet
傳播路由更新信息,不定期的,通過(guò)可靠的方式發(fā)送(比如網(wǎng)絡(luò)鏈路發(fā)生變化)。當(dāng)只有一臺(tái)路由器需要路由更新時(shí),update通過(guò)unicast的方式發(fā)送;當(dāng)有多個(gè)路由器需要路由更新的時(shí)候,通過(guò)組播的方式發(fā)送。 4. Query(查詢(xún)) & Reply(應(yīng)答) packet
是DUAL finite state machine用來(lái)管理擴(kuò)散計(jì)算用的,查詢(xún)包可以是組播或unicast;應(yīng)答包是通過(guò)unicast的方式發(fā)送,并且方式都是可靠的。 5. Request(請(qǐng)求) packet
最初是打算提供給路由服務(wù)器(server)使用的,但是從來(lái)沒(méi)實(shí)現(xiàn)過(guò)。 鄰居發(fā)現(xiàn)/恢復(fù)協(xié)議
EIGRP的Update包是非周期性發(fā)送的,
1.Hello包在一般的網(wǎng)絡(luò)中(比如點(diǎn)到點(diǎn),point-to-point)是每5秒組播1次(要隨機(jī)減去1個(gè)很小的時(shí)間防止同步);
2.在多點(diǎn)(multipoint)X.25,幀中繼(Frame Relay,F(xiàn)R)和ATM接口(比如ATM SVC)和ISDN PRI接口上,Hello包的發(fā)送間隔是60 秒。
在所有的情況中,Hello包是不需要確認(rèn)的??梢栽诮涌谂渲媚J较滦薷脑摻涌诘腍ello包默認(rèn)的發(fā)送間隔,命令為 ip hello-interval eigrp
當(dāng)一個(gè)路由器收到從鄰居發(fā)來(lái)的Hello包的時(shí)候,這個(gè)Hello包包含了一個(gè)holdown time,這個(gè)holdown time告訴這個(gè)路由器等待后續(xù)Hello包的最大時(shí)間。如果在超出這個(gè)holdown time之前沒(méi)有收到后續(xù)Hello包,那么這個(gè)鄰居就會(huì)被宣告為不可達(dá),并通知DUAL這個(gè)鄰居已丟失。默認(rèn)hold time是3倍于Hello包發(fā)送間隔的, 更高鏈路-- 默認(rèn)Hello間隔和保持時(shí)間是5s和15s T1或低于T1鏈路-- 分別是60s和180s 可以在接口配置模式下修改這個(gè)默認(rèn)的holdown time, 命令為 ip hold-time eigrp.
EIGRP鄰居信息都記錄在鄰居表(neighbor table)中,使用show ip eigrp neighbors命令查看IP EIGRP的鄰居。 EIGRP對(duì)環(huán)路的解決
EIGRP LOOP
如果EIGRP不考慮環(huán)路的問(wèn)題,那么當(dāng)右圖中連接路由3和4的線(xiàn)路斷開(kāi)后會(huì)因到不了network a而使路由1-3相互查詢(xún)?cè)趺慈etwork a而產(chǎn)生環(huán)路。因此EIGRP對(duì)于環(huán)路的防止考慮兩方面:
1.水平分割(Split Horizon)
2.路由的毒性逆轉(zhuǎn)(Poison reverse)
接收路由信息的接口,再?gòu)脑摻涌谕ǜ娉鰟偛艑W(xué)到的路由為不可達(dá) 觸發(fā)條件:
當(dāng)兩臺(tái)路由器進(jìn)行鄰居初始化時(shí),他們會(huì)互相以最大的metric值通告回剛才學(xué)到的路由信息(路由中毒)
當(dāng)拓?fù)浒l(fā)生改變時(shí),會(huì)臨時(shí)關(guān)閉水平分割和毒性逆轉(zhuǎn),重新學(xué)習(xí)拓?fù)?/p>
發(fā)送查詢(xún)請(qǐng)求時(shí),會(huì)引起水平分割,比如當(dāng)一個(gè)路由器查詢(xún)一條未知網(wǎng)段去向時(shí),他會(huì)想每一個(gè)鄰居發(fā)送查詢(xún),處于該網(wǎng)段的繼承者(successor)會(huì)返回查詢(xún)給該路由器,而該路由器會(huì)反饋一個(gè)查詢(xún)結(jié)果給其他鄰居,不會(huì)再次告訴那個(gè)繼承者要走這個(gè)網(wǎng)段應(yīng)該要經(jīng)過(guò)自己 路由重分發(fā)
在一些大型網(wǎng)絡(luò)中,往往存在不同的自治區(qū)域需要互聯(lián)的情況
EIGRP重分發(fā)
。b比如在右圖的情況下,AS號(hào)為1000的要與AS號(hào)為2000的兩個(gè)EIGRP相互通信,只需要在中間路由器配置重分發(fā),注意配置重分發(fā)也要避免路由環(huán)路。 示例:
Router One
router eigrp 2000 network 172.16.1.0 0.0.0.255 Router Two
router eigrp 2000 redistribute eigrp 1000 route-map to-eigrp2000
network 172.16.1.0 0.0.0.255--在AS=2000內(nèi)定義鄰居AS=1000去AS=2000的網(wǎng)段 !
router eigrp 1000
redistribute eigrp 2000 route-map to-eigrp1000--在AS=1000內(nèi)定義鄰居AS=2000去AS=1000的網(wǎng)段
network 10.1.0.0 0.0.255.255 route-map to-eigrp1000 deny 10 match tag 1000 !
route-map to-eigrp1000 permit 20 set tag 2000 !
route-map to-eigrp2000 deny 10 match tag 2000 !
route-map to-eigrp2000 permit 20 set tag 1000
--當(dāng)AS=1000的網(wǎng)段被標(biāo)上(tag)1000的標(biāo)記,當(dāng)AS=2000重分發(fā)進(jìn)AS=1000時(shí),被標(biāo)上1000的路由信息將被拒絕,以防產(chǎn)生環(huán)路;反之在AS=2000上亦然。 Router Three
router eigrp 1000network 10.1.0.0 0.0.255.255 現(xiàn)在路由1和3之間就能互訪了。 術(shù)語(yǔ)定義
1.彌散更新算法簡(jiǎn)介
(彌散更新算法可以保證路由100%無(wú)環(huán)路loopfree)為了能夠讓DUAL正確的操作,低層協(xié)議必須滿(mǎn)足以下幾個(gè)條件:
1. 一個(gè)節(jié)點(diǎn)要在有限的時(shí)間里檢測(cè)到新鄰居的存在或和一個(gè)鄰居的連接的丟失 2. 在鏈路上傳輸?shù)乃行畔⒈仨氃谟邢薜臅r(shí)間里按正確的順序收到
3. 所有的消息,包括鏈路cost的更改,鏈路故障,和新鄰居的發(fā)現(xiàn),都應(yīng)該是在有限時(shí)間里,一個(gè)一個(gè)的依次處理Cisco的EIGRP使用鄰居的發(fā)現(xiàn)/恢復(fù)和RTP來(lái)確保上述前提條件 2.adjacency(鄰接)
在剛啟動(dòng)的時(shí)候,路由器使用Hello包來(lái)發(fā)現(xiàn)鄰居并標(biāo)識(shí)自己用于鄰居的識(shí)別。當(dāng)鄰居被發(fā)現(xiàn)以后,EIGRP會(huì)在它們之間形成一種鄰接關(guān)系。鄰接是指在這2個(gè)鄰居之間形成一條交換路由信息的虛鏈路(virtual link)。當(dāng)鄰接關(guān)系形成以后,它們之間就可以相互發(fā)送路由update,這些update包括路由器它所知道的所有的鏈路及其metric.對(duì)于每個(gè)路由,路由器都會(huì)基于它鄰居宣告的距離(distance)和到達(dá)那個(gè)鄰居的鏈路的cost來(lái)計(jì)算出一個(gè)距離
3.Feasible Distance(FD,可行距離)
到達(dá)每個(gè)目標(biāo)網(wǎng)絡(luò)的最小的metric將作為那個(gè)目標(biāo)網(wǎng)絡(luò)的FD.比如,路由器可能有3條到達(dá)網(wǎng)絡(luò)172.16.5.0的路由,metric分別為380672,12381440和660868,那么380672就成了FD.
4. Feasible Condition(FC,可行條件)
鄰居宣告到達(dá)目標(biāo)網(wǎng)絡(luò)的的距離小于本地路由器到達(dá)目標(biāo)網(wǎng)絡(luò)的FD AD 《 FD =》 FC=ture.
5.Feasible Successor(FS,可行后繼路由)
如果一個(gè)鄰居宣告到達(dá)目標(biāo)網(wǎng)絡(luò)的距離滿(mǎn)足FC,那么這個(gè)鄰居就成為FS.比如,路由器到達(dá)目標(biāo)網(wǎng)絡(luò)172.16.5.0的FD為380672,而他鄰居所宣告到達(dá)目標(biāo)網(wǎng)絡(luò)的距離為355072,這個(gè)鄰居路由器滿(mǎn)足FC,它就成為FS;如果鄰居路由器宣告到達(dá)目標(biāo)網(wǎng)絡(luò)的距離為380928,即不滿(mǎn)足FC,那么這個(gè)鄰居路由器就不能成為FS,F(xiàn)S和FC是避免環(huán)路的核心技術(shù),F(xiàn)S也是downstream router(下游路由器),因?yàn)閺腇S到達(dá)目標(biāo)網(wǎng)絡(luò)的距離比本地路由器到達(dá)目標(biāo)網(wǎng)絡(luò)的FD要小,
router eigrp 1000network 10.1.0.0 0.0.255.255 現(xiàn)在路由1和3之間就能互訪了。 術(shù)語(yǔ)定義
1.彌散更新算法簡(jiǎn)介
(彌散更新算法可以保證路由100%無(wú)環(huán)路loopfree)為了能夠讓DUAL正確的操作,低層協(xié)議必須滿(mǎn)足以下幾個(gè)條件:
1. 一個(gè)節(jié)點(diǎn)要在有限的時(shí)間里檢測(cè)到新鄰居的存在或和一個(gè)鄰居的連接的丟失 2. 在鏈路上傳輸?shù)乃行畔⒈仨氃谟邢薜臅r(shí)間里按正確的順序收到
3. 所有的消息,包括鏈路cost的更改,鏈路故障,和新鄰居的發(fā)現(xiàn),都應(yīng)該是在有限時(shí)間里,一個(gè)一個(gè)的依次處理Cisco的EIGRP使用鄰居的發(fā)現(xiàn)/恢復(fù)和RTP來(lái)確保上述前提條件 2.adjacency(鄰接)
在剛啟動(dòng)的時(shí)候,路由器使用Hello包來(lái)發(fā)現(xiàn)鄰居并標(biāo)識(shí)自己用于鄰居的識(shí)別。當(dāng)鄰居被發(fā)現(xiàn)以后,EIGRP會(huì)在它們之間形成一種鄰接關(guān)系。鄰接是指在這2個(gè)鄰居之間形成一條交換路由信息的虛鏈路(virtual link)。當(dāng)鄰接關(guān)系形成以后,它們之間就可以相互發(fā)送路由update,這些update包括路由器它所知道的所有的鏈路及其metric.對(duì)于每個(gè)路由,路由器都會(huì)基于它鄰居宣告的距離(distance)和到達(dá)那個(gè)鄰居的鏈路的cost來(lái)計(jì)算出一個(gè)距離
3.Feasible Distance(FD,可行距離)
到達(dá)每個(gè)目標(biāo)網(wǎng)絡(luò)的最小的metric將作為那個(gè)目標(biāo)網(wǎng)絡(luò)的FD.比如,路由器可能有3條到達(dá)網(wǎng)絡(luò)172.16.5.0的路由,metric分別為380672,12381440和660868,那么380672就成了FD.
4. Feasible Condition(FC,可行條件)
鄰居宣告到達(dá)目標(biāo)網(wǎng)絡(luò)的的距離小于本地路由器到達(dá)目標(biāo)網(wǎng)絡(luò)的FD AD 《 FD =》 FC=ture.
5.Feasible Successor(FS,可行后繼路由)
如果一個(gè)鄰居宣告到達(dá)目標(biāo)網(wǎng)絡(luò)的距離滿(mǎn)足FC,那么這個(gè)鄰居就成為FS.比如,路由器到達(dá)目標(biāo)網(wǎng)絡(luò)172.16.5.0的FD為380672,而他鄰居所宣告到達(dá)目標(biāo)網(wǎng)絡(luò)的距離為355072,這個(gè)鄰居路由器滿(mǎn)足FC,它就成為FS;如果鄰居路由器宣告到達(dá)目標(biāo)網(wǎng)絡(luò)的距離為380928,即不滿(mǎn)足FC,那么這個(gè)鄰居路由器就不能成為FS,F(xiàn)S和FC是避免環(huán)路的核心技術(shù),F(xiàn)S也是downstream router(下游路由器),因?yàn)閺腇S到達(dá)目標(biāo)網(wǎng)絡(luò)的距離比本地路由器到達(dá)目標(biāo)網(wǎng)絡(luò)的FD要小,存在一個(gè)或多個(gè)FS的目標(biāo)網(wǎng)絡(luò)被記錄在拓?fù)浔碇小?/p>
6.拓?fù)浔恚═opological Table)
拓?fù)浔戆ㄒ韵聝?nèi)容: 目標(biāo)網(wǎng)絡(luò)的FD. 所有的FD.
每一個(gè)FS所宣告的到達(dá)目標(biāo)網(wǎng)絡(luò)的距離。
本地路由器計(jì)算出的,經(jīng)過(guò)每個(gè)FS到達(dá)目標(biāo)網(wǎng)絡(luò)的距離,即基于FS所宣告到達(dá)目標(biāo)網(wǎng)絡(luò)的距離和本地路由器到達(dá)那個(gè)FS的鏈路的cost. 發(fā)現(xiàn)FS的網(wǎng)絡(luò)相連的接口。
7.鄰居表(Neighbor Table)
每個(gè)路由器的RAM中都保存有關(guān)于鄰居的地址和接口信息的表。
8.后繼路由(Successor)
又稱(chēng)成功者(Secessful),是到達(dá)遠(yuǎn)程網(wǎng)絡(luò)的最佳路由。是EIGRP用于轉(zhuǎn)發(fā)業(yè)務(wù)量的路由,它被存儲(chǔ)在路由表中。 EIGRP路由協(xié)議優(yōu)缺點(diǎn) (1)EIGRP路由協(xié)議主要優(yōu)點(diǎn)
精確路由計(jì)算和多路由支持。EIGRP協(xié)議繼承了IGRP協(xié)議的最大的優(yōu)點(diǎn)是矢量路由權(quán)。EIGRP協(xié)議在路由計(jì)算中要對(duì)網(wǎng)絡(luò)帶寬、網(wǎng)絡(luò)時(shí)延、信道占用率和信道可信度等因素作全面的綜合考慮,所以EIGRP的路由計(jì)算更為準(zhǔn)確,更能反映網(wǎng)絡(luò)的實(shí)際情況。同時(shí)EIGRP協(xié)議支持多路由,使路由器可以按照不同的路徑進(jìn)行負(fù)載分擔(dān)。 較少帶寬占用。使用EIGRP協(xié)議的對(duì)等路由器之間周期性的發(fā)送很小的hello報(bào)文,以此來(lái)保證從前發(fā)送報(bào)文的有效性。路由的發(fā)送使用增量發(fā)送方法,即每次只發(fā)送發(fā)生變化的路由。發(fā)送的路由更新報(bào)文采用可靠傳輸,如果沒(méi)有收到確認(rèn)信息則重新發(fā)送,直至確認(rèn)。EIGRP還可以對(duì)發(fā)送的EIGRP報(bào)文進(jìn)行控制,減少EIGRP報(bào)文對(duì)接口帶寬的占用率,從而避免連續(xù)大量發(fā)送路由報(bào)文而影響正常數(shù)據(jù)業(yè)務(wù)的事情發(fā)生。
快速收斂。路由計(jì)算的無(wú)環(huán)路和路由的收斂速度是路由計(jì)算的重要指標(biāo)。EIGRP協(xié)議由于使用了DUAL算法,使得EIGRP協(xié)議在路由計(jì)算中不可能有環(huán)路路由產(chǎn)生,同時(shí)路由計(jì)算的收斂時(shí)間也有很好的保證。因?yàn)?,DUAL算法使得EIGRP在路由計(jì)算時(shí),只會(huì)對(duì)發(fā)生變化的路由進(jìn)行重新計(jì)算;對(duì)一條路由,也只有此路由影響的路由器才會(huì)介入路由的重新計(jì)算。
MD5認(rèn)證。為確保路由獲得的正確性,運(yùn)行EIGRP協(xié)議進(jìn)程的路由器之間可以配置MD5認(rèn)證,對(duì)不符合認(rèn)證的報(bào)文丟棄不理,從而確保路由獲得的安全。
路由聚合。EIGRP協(xié)議可以通過(guò)配置,對(duì)所有的EIGRP路由進(jìn)行任意掩碼長(zhǎng)度的路由聚合,從而減少路由信息傳輸,節(jié)省帶寬。
實(shí)現(xiàn)負(fù)載分擔(dān)。去往同一目的的路由表項(xiàng),可根據(jù)接口的速率、連接質(zhì)量和可靠性等屬性,自動(dòng)生成路由優(yōu)先級(jí),報(bào)文發(fā)送時(shí)可根據(jù)這些信息自動(dòng)匹配接口的流量,達(dá)到幾個(gè)接口負(fù)載分擔(dān)的目的。
配置簡(jiǎn)單。使用EIGRP協(xié)議組建網(wǎng)絡(luò),路由器配置非常簡(jiǎn)單,它沒(méi)有復(fù)雜的區(qū)域設(shè)置,也無(wú)需針對(duì)不同網(wǎng)絡(luò)接口類(lèi)型實(shí)施不同的配置方法。使用EIGRP協(xié)議只需使用router eigrp命令在路由器上啟動(dòng)EIGRP 路由進(jìn)程,然后再使用network 命令使能網(wǎng)絡(luò)范圍內(nèi)的接口即可。 (2)EIGRP路由協(xié)議主要缺點(diǎn)
沒(méi)有區(qū)域概念。EIGRP沒(méi)有區(qū)域的概念,而OSPF在大規(guī)模網(wǎng)絡(luò)的情況下,可以通過(guò)劃分區(qū)域來(lái)規(guī)劃和限制網(wǎng)絡(luò)規(guī)模。所以EIGRP適用于網(wǎng)絡(luò)規(guī)模相對(duì)較小的網(wǎng)絡(luò),這也是矢量-距離路由算法(RIP協(xié)議就是使用這種算法)的局限所在。 定時(shí)發(fā)送HELLO報(bào)文。運(yùn)行EIGRP的路由器之間必須通過(guò)定時(shí)發(fā)送HELLO報(bào)文來(lái)維持鄰居關(guān)系,這種鄰居關(guān)系即使在撥號(hào)網(wǎng)絡(luò)上,也需要定時(shí)發(fā)送HELLO報(bào)文,這樣在按需撥號(hào)的網(wǎng)絡(luò)上,無(wú)法定位這是有用的業(yè)務(wù)報(bào)文還是EIGRP發(fā)送的定時(shí)探詢(xún)報(bào)文,從而可能誤觸發(fā)按需撥號(hào)網(wǎng)絡(luò)發(fā)起連接,尤其在備份網(wǎng)絡(luò)上,引起不必要的麻煩。所以,一般運(yùn)行EIGRP的路由器,在撥號(hào)備份端口還需配置Dialer list和Dialer group,以便過(guò)濾不必要的報(bào)文,或者運(yùn)行TRIP協(xié)議,這樣做增加路由器運(yùn)行的開(kāi)銷(xiāo)。而OSPF可以提供對(duì)撥號(hào)網(wǎng)絡(luò)按需撥號(hào)的支持,只用一種路由協(xié)議就可以滿(mǎn)足各種專(zhuān)線(xiàn)或撥號(hào)網(wǎng)絡(luò)應(yīng)用的需求。
基于分布式的DUAL算法。EIGRP的無(wú)環(huán)路計(jì)算和收斂速度是基于分布式的DUAL算法的,這種算法實(shí)際上是將不確定的路由信息散播(向鄰居發(fā)query報(bào)文),得到所有鄰居的確認(rèn)后(reply報(bào)文)再收斂的過(guò)程,鄰居在不確定該路由信息可靠性的情況下又會(huì)重復(fù)這種散播,因此某些情況下可能會(huì)出現(xiàn)該路由信息一直處于活動(dòng)狀態(tài)(這種路由被稱(chēng)為活動(dòng)路由棧),并且,如果在活動(dòng)路由的這次DUAL計(jì)算過(guò)程中,出現(xiàn)到該路由的后繼(successor)的測(cè)量發(fā)生變化的情況,就會(huì)進(jìn)入多重計(jì)算,這些都會(huì)影響DUAL算法的收斂速度。而OSPF算法則沒(méi)有這種問(wèn)題,所以從收斂速度上看,雖然整體相近,但在某種特殊情況下,EIGRP還有不理想的情況。
EIGRP是Cisco公司的私有協(xié)議。Cisco公司是該協(xié)議的發(fā)明者和唯一具備該協(xié)議解釋和修改權(quán)的廠商。如果要支持EIGRP協(xié)議需向Cisco公司購(gòu)買(mǎi)相應(yīng)版權(quán),并且Cisco公司修改該協(xié)議沒(méi)有義務(wù)通知任何其他廠家和使用該協(xié)議的用戶(hù)。而OSPF是開(kāi)放的協(xié)議,是IETF組織公布的標(biāo)準(zhǔn)。世界上主要的網(wǎng)絡(luò)設(shè)備廠商都支持該協(xié)議,所以它的互操作性和可靠性由于公開(kāi)而得到保障,并且在眾多的廠商支持下,該協(xié)議也會(huì)不斷走向更加完善。
IGRP與EIGRP路由協(xié)議
IGRP(Interior Gateway Routing Protocol,內(nèi)部網(wǎng)關(guān)路由選擇協(xié)議)是Cisco特有的基于距離矢量的路由協(xié)議,雖然同樣應(yīng)用于規(guī)模較小的局域網(wǎng)絡(luò),但是,與RIP路由協(xié)議有所不同,IGRP使用IP層的端口號(hào)9進(jìn)行報(bào)文交換,而RIP則是使用520端口進(jìn)行報(bào)文交換。
IGRP同樣是一種動(dòng)態(tài)距離向量路由協(xié)議,它由Cisco公司20世界80年代中期設(shè)計(jì)推出,使用跳數(shù)來(lái)確定到達(dá)一個(gè)網(wǎng)絡(luò)的最佳路徑,使用延遲、帶寬、可靠性和負(fù)載來(lái)確定最優(yōu)路由。默認(rèn)狀態(tài)下,IGRP每90秒鐘發(fā)送一次路由更新廣播,在3個(gè)更新周期(即270秒)內(nèi),如果沒(méi)有從路由中的第一個(gè)路由器接受到更新,則宣布路由器不可訪問(wèn)。在7個(gè)周期(即630秒)后,Cisco IOS(網(wǎng)際操作系統(tǒng))軟件會(huì)從路由表中清除該路由。
EIGRP結(jié)合了鏈路狀態(tài)和距離矢量型路由選擇協(xié)議的Cisco專(zhuān)用協(xié)議,采用彌散修正算法(DUAL)來(lái)實(shí)現(xiàn)快速收斂,可以不發(fā)送定期的路由更新信息以減少帶寬的占用,支持Appletalk、IP、Novell和NetWare等多種網(wǎng)絡(luò)層協(xié)議。自從EIGRP路由協(xié)議誕生后,IGRP路由協(xié)議便很少再被使用了。 基本配置 r1(config)#router eigrp 1
r1(config-router)#net 192.168.1.0激活接口,下行等價(jià)命令 r1(config-router)#net 192.168.1.1 0.0.0.255
r1(config-router)#passive-interface fastEthernet 0/1 不從F0/1發(fā)hello包 neib 192.168.1.2 / lo 0單播
variance 《multiplier》 非等價(jià)負(fù)載均衡 bandwidth 《kbps》 帶寬
ip bandwidth-parcent AS 占用帶寬 key chain 《name》 MD5驗(yàn)證 key 《ID》
key-string 《string》
ip authenticatian mode eigrp 《AS》 md5
ip authentication key-chain eigrp 《AS》 《name-of-chain》 show命令:
show ip eigrp int / nei / top / tra/
show ip pro
EIGRP metric 詳解
1. EIGRP metric = (IGRP metric) * 256 IGRP metric is 24 bits in length. EIGRP metric is 32 bits in length.
2. K1 :: Bandwidth = (10,000,000 / bandwidth on interface, kbps) * 256 56K 45714176 1.544M 1657856 (10,000,000 / 1544 = 6476) * 256 10M 256000 100M 25600 1G 2560
3. K2 :: Loading 4. K3 :: Delay sum of delays in the path, in tens of microseconds, mutliplied by 256 Delay = [(sum of the DLY, in microseconds) / 10] * 256 這里的DLY是從本地接口發(fā)出后,沿途所經(jīng)所有源接口的DLY,舉例:DLY=8000usec DLY=10000usec 。 。 。 DLY=20000usec 。 DLY=5000usec 。 。 。 。 。 。 12.0.0.0/24 。 。 |---lo0-( R1 )-s0/0------------------s0/0-( R2 )-lo0---| 。 。 。 。 。 。 。 。 。 。 。 。 。 。 BW=1544Kbit BW=1544Kbit 。 。 。 。 。 。 。 BW=8000000Kbit BW=8000000Kbit 。 。 。 。 1.1.1.0/24 2.2.2.0/24 在R1 上 show ip route 得到的指向2.2.2.0/24 的路由的 metric 值為2,297,856 Bandwidth = (10,000,000 / 1544) * 256 = 6476 * 256 = 1,657,856 Delay = [(20000 + 5000)/10] * 256 = 2500 * 256 = 640,000 metric = K1*BW + K3*Delay = 1657856 + 256000 = 2,297,856 在R2 上 show ip route 得到的指向1.1.1.0/24 的路由的 metric 值為2,118,656 Bandwidth = (10,000,000 / 1544) * 256 = 6476 * 256 = 1,657,856 Delay = [(10000 + 8000) / 10] * 256 = 1800 * 256 = 460,800 metric = K1*BW + K3*Delay = 1657856 + 460800 = 2,118,656 - 通過(guò)觀察上面2個(gè)路由的 metric 可以看出,雖然只是2臺(tái)路由器2個(gè)loopback接口之間的路由,并且在鏈路帶寬一致的情況下,得出的 metric 卻是不同的。其原因就是EIGRP 在計(jì)算 metric 時(shí)所取的DLY 值是路由路徑中所有鏈路的源端口的DLY 值,由于一條鏈路上的2端接口的DLY 值不同,才產(chǎn)生了2個(gè)方向上的不同的 metric 結(jié)果。事實(shí)上 bandwidth 的值并不是鏈路上的最小帶寬,這個(gè)在很多書(shū)上的講解都是錯(cuò)誤的,在EIGRP 的 metric 計(jì)算中,bandwidth 只是一個(gè)性能參考值,并不反映真實(shí)帶寬,它就是本地接口上顯示的BW 值,可以通過(guò)接口命令 bandwidth 修改。例如: R2(config)#int
s0/0R2(config-if)#bandwidth 1000R2(config-if)#do sh ip routeCodes: 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
Gateway of last resort is not set
1.0.0.0/24 is subnetted, 1 subnetsD 1.1.1.0 [90/3020800] via 10.1.1.1, 00:00:21, Serial0/0 2.0.0.0/24 is subnetted, 1 subnetsC 2.2.2.0 is directly connected, Loopback0 12.0.0.0/24 is subnetted, 1 subnetsC 12.1.1.0 is directly connected, Serial0/0
可以看到, 1.1.1.0 的 metric 已從2,118,656 變?yōu)?,020,800 5. K4 :: Reliability Can be observed at the result of show interface 6. K5 :: MTU
7. K1~K5 ---》 B-L-D-R-M ---》 BLack DReaM (這是我的一個(gè)記憶技巧)
8. Formula with default K values (K1=1, K2=0, K3=1, K4=0, K5=0): metric = K1*BW + ((K2*BW)/(256-load)) + K3*delay = BW + delay
9. If K5 is not equal to 0: metric = metric * [ K5/(reliability + K4) ] 10.K values are carried in EIGRP hello packets.
11.Mismatched K values can cause a neighbor to be reset. EIGRP常用排錯(cuò)命令
show run | begin router eigrp//查看配置文件中eigrp的配置命令 show ip protocols//查看當(dāng)前路由器運(yùn)行的eigrp協(xié)議狀態(tài) show ip route summary//查看eigrp路由匯總狀態(tài) show ip eigrp neighbors//查看eigrp鄰居狀態(tài)
show ip eigrp interface//查看各個(gè)運(yùn)行eigrp的狀態(tài)
show ip eigrp interface detail//查看各個(gè)運(yùn)行eigrp的詳細(xì)狀態(tài) show ip route eigrp//查看eigrp協(xié)議學(xué)習(xí)到的路由表 show ip eigrp topology//查看eigrp的拓?fù)浔?/p>
show ip eigrp topology all-links//查看eigrp完整的拓?fù)浔?/p>
show ip eigrp topology 10.1.1.0 255.255.255.0//產(chǎn)看指定的某個(gè)網(wǎng)絡(luò)參數(shù)信息
debug eigrp packets//調(diào)試eigrp的查訊包
debug eigrp fsm //調(diào)試eigrp的dual算法調(diào)試信息
-
網(wǎng)關(guān)協(xié)議
+關(guān)注
關(guān)注
0文章
113瀏覽量
8598 -
EIGRP
+關(guān)注
關(guān)注
0文章
13瀏覽量
9119
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論