CCNP-EIGRP
路由认证:
实验拓扑:
实验目标:
EIGRP
的认证。
为了安全起见,所以在路由上添加认证,在路由更新时对数据包进行认证。
EIGRP
只支持
MD5
加密认证,不支持明文认证
。在发送时并不发送密钥本身。而是发送一个消息摘要。所以即使被截取也不知道密钥。
EIGRP
配置认证时先要配置一个密钥链,然后在密钥链是添加密钥
ID
,在密钥
ID
上设置密码。密钥链的名称可以不同,但密钥
ID
和密码是必须相同。
路由基本配置(略)
IP
地址配置:
r1(config)#in s1/0
r1(config-if)#ip add 219.146.0.1 255.255.255.0
r1(config-if)#no sh
r1(config-if)#exi
r2(config)#in s1/0
r2(config-if)#ip add 219.146.0.2 255.255.255.0
r2(config-if)#no sh
r2(config-if)#in s1/1
r2(config-if)#ip add 219.146.1.1 255.255.255.0
r2(config-if)#no sh
r2(config-if)#exi
r3(config)#in s1/1
r3(config-if)#ip add 219.146.1.2 255.255.255.0
r3(config-if)#no sh
r3(config-if)#exi
EIGRP
配置:
r1(config)#router e 10
r1(config-router)#no au
r1(config-router)#net 219.146.0.0 0.0.0.255
r1(config-router)#exi
r2(config)#router e 10
r2(config-router)#no au
r2(config-router)#net 219.146.0.0 0.0.1.255
r2(config-router)#exi
r3(config)#router e 10
r3(config-router)#no au
r3(config-router)#net 219.146.1.0 0.0.0.255
r3(config-router)#exi
查看一下
R1
的邻居表:
r1(config)#do sh ip ei nei
IP-EIGRP neighbors for process 10
H Address Interface Hold Uptime SRTT RTO Q Seq
(sec) (ms) Cnt Num
0 219.146.0.2 Se1/0 14 00:02:34 147 882 0 2
已经有一个邻居了,下面来配置认证。
r1(config)#key chain cisco //
定义一个密钥链
r1(config-keychain)#key 1 //
定义密钥
ID
r1(config-keychain-key)#key-string 123 //
定义密码
r1(config-keychain-key)#exi
r1(config-keychain)#exi
r1(config)#in s1/0 //
在接口下应用
r1(config-if)#ip authentication key-chain eigrp 10 cisco
r1(config-if)#ip authentication mode eigrp 10 md5
r1(config)#do sh ip ei nei
IP-EIGRP neighbors for process 10
已经没有邻居了,因为
R2
没有通过认证。在
R2
上配置:
r2(config)#key chain cisco
r2(config-keychain)#key 1
r2(config-keychain-key)#key-string 123
r2(config-keychain-key)#exi
r2(config-keychain)#exi
r2(config)#in s1/0
r2(config-if)#ip authentication key-chain ei 10 cisco
r2(config-if)#ip authentication mode ei 10 md5
r2(config-if)#exi
r1(config)#do sh ip ei nei
IP-EIGRP neighbors for process 10
H Address Interface Hold Uptime SRTT RTO Q Seq
(sec) (ms) Cnt Num
0 219.146.0.2 Se1/0 13 00:00:28 111 666 0 8
重新建立了邻居关系。双方通过了认证。
接下来在
R2
和
R3
上做认证。
r2(config)#in s1/1
r2(config-if)#ip authentication key-chain ei 10 cisco
r2(config-if)#ip authentication mode ei 10 md5
r2(config-if)#exi
r3(config)#key chain mycisco //
这里定义了一个不同的密钥链。
r3(config-keychain)#key 1
r3(config-keychain-key)#key-string 123
r3(config-keychain-key)#exi
r3(config-keychain)#exi
r3(config)#in s1/1
r3(config-if)#ip authentication key-chain ei 10 mycisco
r3(config-if)#ip authentication mode ei 10 md5
r3(config-if)#exi
r3(config)#do sh ip ei nei
IP-EIGRP neighbors for process 10
H Address Interface Hold Uptime SRTT RTO Q Seq
(sec) (ms) Cnt Num
0 219.146.1.1 Se1/1 13 00:00:06 135 810 0 12
这就说明
key chain
不同可以通过认证
。
下面来试一下
key id
不同能不能通过认证。
r3(config)#no key chain mycisco
r3(config)#key chain mycisco
r3(config-keychain)#key 2
r3(config-keychain-key)#key-string 123
r3(config-keychain-key)#exi
r3(config-keychain)#exi
r3(config)#exi
r3#clear ip ei nei
r3#sh ip ei nei
IP-EIGRP neighbors for process 10
已经不能建立邻居关系了。说明
key id
要相同才能通过认证
。
接下来在
R2
操作。
r2(config)#key chain cisco
r2(config-keychain)#key 2
r2(config-keychain-key)#key-string 123
r2(config-keychain-key)#exi
r2(config-keychain)#exi
r2(config)#do sh ip ei nei
IP-EIGRP neighbors for process 10
H Address Interface Hold Uptime SRTT RTO Q Seq
(sec) (ms) Cnt Num
1 219.146.1.2 Se1/1 10 00:00:36 1 5000 1 0
0 219.146.0.1 Se1/0 11 00:30:18 119 714 0 6
r3#sh ip ei nei
IP-EIGRP neighbors for process 10
在
R2
上和
R3
建立了邻居关系,但
R3
上并没有建立邻居关系。这是因为
R2
会发送
key 1
和
R3
认证。但
R3
上没有
key 1
。所以认证不能通过。但
R3
发送
key 2
给
R2
认证。因为
R2
上有
key 1
。所以
R2
上能够通过认证。这就说明如果存在多个有效的
key id
,路由器会发送第一个
(
最小
)
和邻居认证
。这时只需在
R3
上配上
key 1(
或在
R2
上
NO
掉
key 1)
就能恢复。
关于
key id
的有效期如下:
r2(config)#key chain cisco
r2(config-keychain)#key 1
r2(config-keychain-key)#accept-lifetime 11:00:00 jan 3 2010 duration 3600
//
在这个时间后的
3600
秒之内接收认证。把
duration 3600
换成
infinite
表示一直有效。
r2(config-keychain-key)#send-lifetime 11:00:00 jan 3 2010 12:00:00 jan 3 2010
//
在这个时间之间发送认证。
如果配置了多个密钥且对密钥都设置了有效期。那在两个相邻的有效期之间要有个重叠的时间。避免在这段时间内路由不能通过认证。