注意:首先启用一个密钥,然后声明它!
OSPF认证 |
密钥 |
声明 |
Link |
intf |
intf (接口下操作) |
Area |
intf |
ospf Porcess(接口下) |
Vlink |
PVC |
PVC |
明文:
ip ospf authentication-key 'passwd'
ip ospf authentication
密文:
ip ospf message-digest-key 1 md5 'passwd'
ip ospf authentication message-digest
Area认证:
明文:
interface下启用一个密钥:ip ospf authentication-key 'passwd'
ospf进程下去声明此密钥: area 1 authentication
密文:
interface下启用一个密钥:ip ospf message-digest-key 1 md5 'passwd'
ospf进程下去声明此密钥: area 1 authentication message-digest
明文:
area 1 virtual-link 1.1.1.1 authentication-key 'passwd'
area 1 virtual-link 1.1.1.1 authentication
密文:
area 1 virtual-link 1.1.1.1 message-digest-key 1 md5 'passwd'
area 1 virtual-link 1.1.1.1 authentication message-digest
注意在area 0中做认证时,也必须在VirtualLink上做
明文:
area 0 authentication
area 1 virtual-link 1.1.1.1 authentication-key 'passwd'
密文:
area 0 authentication message-digest
area 1 virtual-link 1.1.1.1 message-digest-key 1 md5 'passwd'
小结:当启用OSPF接口验证时,不需要在OSPF进程下启用OSPF验证,直接在接口下启用即可,并且只需要对端的接口也启用相同的验证方法和密码,验证即可通过,而不需要整个区域都参与验证。而在OSPF进程下启用区域验证时,实际上是把本路由器上所有属于该区域的接口都启用了验证,因此这些接口的对端也都必须启用OSPF验证才能成功建立邻接关系,这样的结果就是整个区域都必须参与验证。还有一点需要注意的是virtual-link的验证,因为virtual-link都是属于区域0的,所以当区域0启动区域验证时,必须在virtual-link上也启用验证,否则virtual-link将验证失败。
注意,配置区域认证之后,要在区域内的所有路由器上都配置。在区域里启用认证之后,同区域的所有路由器接口上都生效。但需要注意的是:所谓区域认证,其实质还是链路认证,只是你不用在接口上敲ip ospf authentification message-digest,配置起来比较方便而已。如果在OSPF中启用了区域认证,则只需在接口上敲密码的命令就可以了,即 ip ospf message-digest-key key-id md5 key,而如果不启用区域认证,则在每个接口都要启用MD5认证。
如果在接口上和区域里同时启用了认证,则接口上的认证数据优先,例如在一台路由器的接口上配置了MD5加密认证,区域里启用了简单密码认证。则最终的认证方式为MD5加密认证。 区域认证配置中,key-id 和key值要对应相等。
1、如果区域内的某处配置了认证,那么就必须在整个区域内都要配置认证。
2、明文认证的时候,密码最长为8个八位组字节。
3、MD5密文认证的时候,密码最长为16个八位组,密钥ID在1-255之间。
4、所配置的口令在整个区域间可以不同,但是在一对邻居路由器之间必须相同。
5、区域内配置对区域间没有影响。
6、可以同时配置多个MD5口令。
OSPF认证分为区域认证和接口认证,加密方法分为简单加密和MD5加密。
(下面所讲的都是在网络设备正确安装配置,OSPF协议正常运行,网络全互联状态下)
(一)首先先讲下接口下的认证:
1.接口下基于明文的认证
R1(config)#interface serial 1/1
R1(config-if)#ip ospf authentication
R1(config-if)#ip ospf authentication-key free
R1(config-if)#exit
这时候debug会出现以下信息
00:30:33: OSPF: 192.168.1.5 address 192.168.1.2 on Serial1/1 is dead
00:30:33: OSPF: 192.168.1.5 address 192.168.1.2 on Serial1/1 is dead, state DOWN
00:30:33: %OSPF-5-ADJCHG: Process 1, Nbr 192.168.1.5 on Serial1/1 from FULL to DOWN, Neighbor Down: Dead timer expired
00:30:35: OSPF: Rcv pkt from 192.168.1.2, Serial1/1 : Mismatch Authentication type. Input packet specified type 0, we use type 1
00:54:45: OSPF: Rcv pkt from 192.168.1.2, Serial1/1 : Mismatch Authentication Key - Clear Text
00:30:33: OSPF: 192.168.1.5 address 192.168.1.2 on Serial1/1 is dead
00:30:33: OSPF: 192.168.1.5 address 192.168.1.2 on Serial1/1 is dead, state DOWN
00:30:33: %OSPF-5-ADJCHG: Process 1, Nbr 192.168.1.5 on Serial1/1 from FULL to DOWN, Neighbor Down: Dead timer expired
00:30:35: OSPF: Rcv pkt from 192.168.1.2, Serial1/1 : Mismatch Authentication type. Input packet specified type 0, we use type 1
00:54:45: OSPF: Rcv pkt from 192.168.1.2, Serial1/1 : Mismatch Authentication Key - Clear Text
大意为认证的失败导致邻居关系DOWN,明文认证。
这时候就需要在对端接口下启用相同命令就可以正常建立邻居关系。
2.接口下基于MD5认证:
R1(config)#interface serial 1/1
R1(config-if)#ip ospf authentication message-digest
R1(config-if)#ip ospf message-digest-key 1 md5 free
命令和上面的明文差不多,第一句是启用基于MD5的认证,第二句中数字1是key ID,范围为1-255。md5后面为密码,16位以内字符即可,不过双方需要一致。
配置完成同样会出现邻接关系DOWN掉的提示,依旧在对方配置相同信息即可。
(二)下面讲讲基于区域的认证。
1.基于区域的明文认证:
R1(config)#router ospf 1
R1(config-router)#area 1 authentication (区域1开启认证)
R1(config-router)#exit
R1(config)#interface serial 1/1
R1(config-if)#ip ospf authentication-key free(配置认证的明文密码)
配置完成后会出现下面的提示
01:10:25: %OSPF-5-ADJCHG: Process 1, Nbr 192.168.1.5 on Serial1/1 from FULL to DOWN, Neighbor Down: Dead timer expired
01:10:25: %OSPF-5-ADJCHG: Process 1, Nbr 192.168.1.5 on Serial1/1 from FULL to DOWN, Neighbor Down: Dead timer expired
这时候同样在对方配上相同信息即可。
2.基于区域的MD5认证:
R1(config)#router ospf 1
R1(config-router)#area 1 authentication message-digest (区域1开启MD5认证)
R1(config-router)#exit
R1(config)#interface serial 1/1
R1(config-if)#ip ospf message-digest-key 1 md5 free(配置认证的MD5密码)
然后同样在对方配置完成即可正常建立邻居关系。
当然,当你想更换密码的话,可以用一下命令,
R1(config)#interface serial 1/1
R1(config-if)#ip ospf message-digest-key 2 md5 free2
这样OSPF在发送数据时会同时使用1和2两种加密密码,发送两份不同数据。
当两端同时配好,2可以正常使用,就可以no掉1了。这样做不影响正常邻居关系。