<b>一、概述:</b><b></b>
EIGRP啟用認證,用于防止惡意路由進入EIGRP自治系統導緻路由攻擊。EIGRP認證原理采用“密碼比對”的形式,在接口受到EIGRP資料包後,檢查認證類型、認證密碼等字段,如果與本地接口定義的密碼串比對,那麼接收該資料包,否則丢棄。
<b>二:認證方式:</b><b></b>
<b>EIGRP</b><b>有兩種認證方式:</b>明文認證與MD5認證,這裡我們不推薦使用明文,明文是直接發送字元串給對方之後對比,容易被人通過抓包截獲,而MD5是通過計算之後得出的值發送給對方對比,這次為大家做的為MD5實驗.
實驗:在實驗的過程當中會為大家示範一些故障,使大家能夠更好的了解.
拓撲如下:
<b>步驟一:配置接口資訊及啟用</b><b>EIGRP</b><b>釋出網段</b><b>,</b><b>并且建立鄰居關系</b><b>.</b><b></b>
注:由于字數限制8萬,EIGRP的基本配置沒有寫上來.
R2 檢視EIGRP鄰居表:
r2#show ip eigrp neighbors
IP-EIGRP neighbors for process 1
H Address Interface Hold Uptime SRTT RTO Q Seq Type
(sec) (ms) Cnt Num
0 192.168.1.1 Et0/0 10 00:02:28 3 200 0 2
r2#
步驟二:兩邊啟用MD5認證,但是KEY-ID不一樣,鄰居是否能建立,為什麼? (注:故障)
R1:
r1#
r1#conf t
r1(config)#key chain eigrp //定義鑰匙鍊eigrp(名字任意取)
r1(config-keychain)#key 1 //KEY ID為1
r1(config-keychain-key)#key-string cisco //密碼為cisco
r1(config-keychain-key)#exit
r1(config-keychain)#exit
r1(config)#interface e0/0
r1(config-if)#ip authentication key-chain eigrp 1 eigrp //啟用EIGRP認證
r1(config-if)#ip authentication mode eigrp 1 md5 //認證模式MD5
r1(config-if)#end
R2:
r2#conf t
r2(config)#key chain eigrp
r2(config-keychain)#key 2 //KEY ID為2
r2(config-keychain-key)#key-string cisco
r2(config-keychain-key)#exit
r2(config-keychain)#exit
r2(config)#interface e0/0
r2(config-if)#ip authentication key-chain eigrp 1 eigrp
r2(config-if)#ip authentication mode eigrp 1 md5
r2(config-if)#end
檢視鄰居表:
//說明沒有建立鄰居關系,為什麼?
檢視Debug:
r2#debug eigrp packets
EIGRP Packets debugging is on
(UPDATE, REQUEST, QUERY, REPLY, HELLO, IPXSAP, PROBE, ACK, STUB, SIAQUERY, SIAREPLY)
*Mar 1 22:31:40.962: EIGRP: Sending HELLO on Ethernet0/0
*Mar 1 22:31:40.962: AS 1, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0
*Mar 1 22:31:41.187: EIGRP: pkt authentication key id = 1, key not defined or not live
//這裡清楚的看到,收到的KEY ID = 1 ,key沒有定義或不存在,因為們的KEY ID為2
*Mar 1 22:31:41.187: EIGRP: Ethernet0/0: ignored packet from 192.168.1.1, opcode = 5 (invalid authentication)
步驟三:雙方KEY ID一緻,但密碼不一緻,鄰居關系是否能建立,為什麼? (注:故障)
r2(config-keychain)#key 1
r2(config-keychain-key)#key-string cisco1 //這裡密碼是cisco1,與r1不一緻
r2(config-keychain-key)#end
//還是一樣沒有建立,為什麼?
(UPDATE, REQUEST, QUERY, REPLY, HELLO, IPXSAP, PROBE, ACK, STUB, SIAQUERY, SIAREPLY)
*Mar 1 22:46:14.094: EIGRP: pkt key id = 1, authentication mismatch
//這裡沒有顯示KEY ID不正确,而是認證不比對,說明密碼不一緻.
*Mar 1 22:46:14.094: EIGRP: Ethernet0/0: ignored packet from 192.168.1.1, opcode = 5 (invalid authentication)
步驟四:雙方KEY ID一樣,密碼也一樣,可以正常建立鄰居關系.
R1:
r1(config)#
r1(config)#key chain eigrp
r1(config-keychain)#key 1
r1(config-keychain-key)#key-string cisco
r1(config-if)#ip authentication key-chain eigrp 1 eigrp
r1(config-if)#ip authentication mode eigrp 1 md5
r1(config-keychain-key)#end
r2(config)#
r2(config-keychain)#key 1
r2(config-keychain-key)# key-string cisco
*Mar 1 22:51:33.037: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.1.1 (Ethernet0/0) is up: new adjacency //正常建立,OK!!
步驟五:分别在R1與R2上驗證
r1#show ip eigrp neighbors
H Address Interface Hold Uptime SRTT RTO Q Seq Type
(sec) (ms) Cnt Num
0 192.168.1.2 Et0/0 13 00:03:00 1321 5000 0 9
檢視路由表:
r1#show ip route
Codes: 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, 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 subnets
C 1.1.1.0 is directly connected, Loopback0
2.0.0.0/24 is subnetted, 1 subnets
D 2.2.2.0 [90/409600] via 192.168.1.2, 00:03:23, Ethernet0/0
C 192.168.1.0/24 is directly connected, Ethernet0/0
------------------------------------------------------------------------------------
0 192.168.1.1 Et0/0 12 00:01:17 20 200 0 8
r2#show ip route
D 1.1.1.0 [90/409600] via 192.168.1.1, 00:01:41, Ethernet0/0
C 2.2.2.0 is directly connected, Loopback0
總結(認證過程):
隻發送最小的一個KEY-D的密鑰匙.并攜帶KEY=ID.當本路由器接受到對方發過來的KEY-ID和密鑰時.先比對收到的密鑰的KEY-ID号與自己的KEY-ID号是否相同.如果KEY-ID号有相同的,則看密碼是否相同,密碼相同則認證通過.密碼不同人證不通過.如果對方發過來的KEY-ID号自己沒有相同的KEY-ID号,就向下一個比對一個KEY-ID号中的密鑰(既比收到的KEY-ID号大的的下一個KEY-ID),而且隻向下比對一次KEY-ID号中的密鑰.既密文認證是先比對KEY-ID在比對KEY-ID的内容.
本文轉自 meiyanaa 51CTO部落格,原文連結:http://blog.51cto.com/justim/245185,如需轉載請自行聯系原作者