OSPF 骨干区域中断的解决方案!
OSPF要求backbone area 0必须连续。如果不连续的话,一般的教材上面都给出了一种基本的解决方案,virtual-link。下面我们先来看看virtual-link的配置:
R1 ------ R2 ------ R3
R1:
inter lo 0
ip add 133.10.1.1 255.255.255.255
inter s 1/0
ip add 133.10.12.1 255.255.255.0
router ospf 100
router-id 133.10.1.1
net 133.10.1.1 0.0.0.0 area 0
net 133.10.12.0 0.0.0.255 a 10
----------------------------------------------------
R2:
inter lo 0
ip add 133.10.2.2 255.255.255.255
inter s 1/0
ip add 133.10.12.2 255.255.255.0
inter s 1/0
ip add 133.10.23.2 255.255.255.0
router ospf 100
router-id 133.10.2.2
net 133.10.2.2 0.0.0.0 a 10
net 133.10.12.0 0.0.0.255 a 10
net 133.10.23.0 0.0.0.255 a 0
!
------------------------------------------------------
R3
inter lo 0
ip add 133.10.3.3 255.255.255.255
inter s 1/0
ip add 133.10.23.3 255.255.255.0
router ospf 100
router-id 133.10.3.3
net 133.10.3.3 0.0.0.0 a 0
net 133.10.23.0 0.0.0.255 a 0
==================================
这种配置下,路由是有问题的。
在R1和R2上需要做virtual-link, 让area 0连起来:
R1
router ospf 100
area 10 virtual-link 133.10.2.2
R2
router ospf 100
area 10 virtual-link 133.10.1.1
说明:virtual-link 后面的参数是路由器的id。
方案二: 使用tunnel
在R1和R2上建立tunnel接口,tunnel接口使用区域0的接口的IP地址。
R1
inter tun0
ip unnumbered lo 0
tunnel source s 1/0
tunnel destination 133.10.12.2
R2
inter tun0
ip unnumbered f0/0
tunnel source s1/0
tunnel destination 133.10.12.1
只要在R1和R2之间建立一个tunnel就可以了,然后tunnel的接口地址引用路由器所在的区域0的接口地址就可以了。
在R1上show ip os nei 就可以看到有一个邻居是通过tunnel建立起来的
R1#show ip os nei
Neighbor ID Pri State Dead Time Address Interface
133.10.2.2 0 FULL/ - 00:00:31 133.10.23.2 Tunnel0
133.10.2.2 0 FULL/ - 00:00:31 133.10.12.2 Serial1/0
R1#
R1 ------ R2 ------ R3
R1:
inter lo 0
ip add 133.10.1.1 255.255.255.255
inter s 1/0
ip add 133.10.12.1 255.255.255.0
router ospf 100
router-id 133.10.1.1
net 133.10.1.1 0.0.0.0 area 0
net 133.10.12.0 0.0.0.255 a 10
----------------------------------------------------
R2:
inter lo 0
ip add 133.10.2.2 255.255.255.255
inter s 1/0
ip add 133.10.12.2 255.255.255.0
inter s 1/0
ip add 133.10.23.2 255.255.255.0
router ospf 100
router-id 133.10.2.2
net 133.10.2.2 0.0.0.0 a 10
net 133.10.12.0 0.0.0.255 a 10
net 133.10.23.0 0.0.0.255 a 0
!
------------------------------------------------------
R3
inter lo 0
ip add 133.10.3.3 255.255.255.255
inter s 1/0
ip add 133.10.23.3 255.255.255.0
router ospf 100
router-id 133.10.3.3
net 133.10.3.3 0.0.0.0 a 0
net 133.10.23.0 0.0.0.255 a 0
==================================
这种配置下,路由是有问题的。
在R1和R2上需要做virtual-link, 让area 0连起来:
R1
router ospf 100
area 10 virtual-link 133.10.2.2
R2
router ospf 100
area 10 virtual-link 133.10.1.1
说明:virtual-link 后面的参数是路由器的id。
方案二: 使用tunnel
在R1和R2上建立tunnel接口,tunnel接口使用区域0的接口的IP地址。
R1
inter tun0
ip unnumbered lo 0
tunnel source s 1/0
tunnel destination 133.10.12.2
R2
inter tun0
ip unnumbered f0/0
tunnel source s1/0
tunnel destination 133.10.12.1
只要在R1和R2之间建立一个tunnel就可以了,然后tunnel的接口地址引用路由器所在的区域0的接口地址就可以了。
在R1上show ip os nei 就可以看到有一个邻居是通过tunnel建立起来的
R1#show ip os nei
Neighbor ID Pri State Dead Time Address Interface
133.10.2.2 0 FULL/ - 00:00:31 133.10.23.2 Tunnel0
133.10.2.2 0 FULL/ - 00:00:31 133.10.12.2 Serial1/0
R1#
















