网络环境是这样。
有一个主路由器ROS1,和备路由器ROS2。
IP分别是10.10.2.2和10.10.2.3
两个IP起了VRRP10.10.2.1
核心交换机是10.10.2.254
然后四个IP之间起了OSPF。
出现故障的时候是这样的:
副ROS重启以后,ospf出现问题,ROS和核心交换机之间无法学习路由表!!!
OSPF Process 110 with Router ID 10.10.0.254
Neighbor Brief Information
Area: 0.0.0.0
Router ID Address Pri Dead-Time State Interface
10.10.2.2 10.10.2.1 1 36 Full/DR Vlan2
10.10.2.2 10.10.2.2 1 36 2-Way/ - Vlan2
10.10.2.3 10.10.2.3 1 38 2-Way/ - Vlan2
10.10.2.10 10.10.2.10 1 39 2-Way/ - Vlan2
核心交换机10.10.0.254和vrrp的ip10.10.2.1之间建立了ospf的DR关系。这个时候就出现问题了!
在这种网络结构下,必须让DR,BDR都不能选择为VRRP的IP,否则ospf无法互相学习。
OSPF Process 110 with Router ID 10.10.0.254
Neighbor Brief Information
Area: 0.0.0.0
Router ID Address Pri Dead-Time State Interface
10.10.2.2 10.10.2.1 1 38 2-Way/ - Vlan2
10.10.2.2 10.10.2.2 1 38 2-Way/ - Vlan2
10.10.2.3 10.10.2.3 1 30 Full/BDR Vlan2
10.10.2.10 10.10.2.10 1 31 Full/DR Vlan2
而必须让DR,BDR为非VRRP的IP,比如10.10.2.3或者其他邻居。
解决方案就是让10.10.2.2这台ROS的ospf宣告关闭10.10.2.0/24的宣告,让DR或者BDR重新选举到其他IP,
或者设置OSPF的Rourter ID为最大,比如是255.255.255.255,那么它永远没机会选举到DR。。。