一.VRRP中的角色
- 虚拟路由器 vird 1-255
- 主用设备 Master
- 备用设备 Backup
配置VRRP虚拟IP地址:
华为:
interface vlanif 10
vrrp vrid 10 virtual-ip 10.1.10.254
思科:
SW1(config)#int vlan 10
SW1(config-if)#ip address 10.1.10.252 255.255.255.0
SW1(config-if)#vrrp 10 ip 10.1.10.254
二.VRRP三个状态
1.Init 初始化状态
功能:发送VRRP通告
1)虚拟路由编号,和虚拟IP
2)优先级:默认100 可以设置
特殊:如果VRRP的物理IP地址和虚拟IP地址重叠,本机拥有最高优先级255,其他设备最高254
影响拓展性,以后想要平滑割接,会比较麻烦,需要先把此地址改掉,才能进行平滑迁移
3)选举
VRRP优先级高,选举IP地址大的(越大越优先要和STP区分哦)
2. Master 主用状态
处理任何发给网关的信息(包含广播)
周期发送自己的通告报文:1s发一次,3s超时
3.Backup 备用状态
1)不处理任何发送给VRRP网关的地址的信息(包含广播)
2)监听主用设备的通告报文——感知到主用设备超时,立即成为Master
3)切换为Master的情况:
- 自己的优先级改高了
- 对方的优先级变低了
- 主用设备down了,连续3s没有收到VRRP报文
三.VRRP+OSPF组网碰到的问题和优化方法
问题一:
在VRRP组网中,当主用设备故障后,如何使得备用设备能正常工作呢?
解决方案:为了当主用设备故障后能切换到备用设备工作正常,需要在备用设备上建立OSPF邻居,并宣告业务网段。
问题二:
如果上行链路故障,而VRRP本身与上行链路无关,如何才能保证正常通信呢?
解决方案:使用Track关联让VRRP主用设备感知上行链路故障,主动减少优先级,让备份设备抢占,使得备用设备成为Master
华为配置:
interface Vlanif10
vrrp vrid 10 track interface GigabitEthernet0/0/6 reduced 20
思科配置:
1.配置track
SW1(config)#track 1 interface e0/1 line-protocol
2.关联到VRRP
SW1(config)#int vlan 10
SW1(config-if)#vrrp 10 track 1 decrement 20
问题三:
如果上行链路故障,VRRP主用设备由于没有上行路由,无法进行数据转发,如何才能保证数据通信正常呢?
解决方案:让核心交换机之间互相学习ospf路由,成为各自的路由备份路径,也就是在VRRP设备之间再建立一个SVI接口互相学习路由
优化方案一:
为了让业务可达,需要宣告业务VLAN的地址,业务VLAN的SVI接口会发送OSPF的hello报文给PC,让ospf业务端口不发Hello(不尝试建立邻居,但是发送网段)
在华为设备配置静默端口:
ospf 1 silent-interface Vlan 10 静默端口
在思科设备上配置被动端口:
router ospf 1
passive-interface vlan10 被动端口
优化方案二:
当存在多个业务网段,VRRP都落在相同的两台设备时,平均的分配主用设备,可以形成一定程度的负载和分流
例如:vlan 10 主用SW1 vlan 20主用SW2
华为配置:
在SW1上
interface Vlanif10
ip address 10.1.10.252 255.255.255.0
vrrp vrid 10 virtual-ip 10.1.10.254
vrrp vrid 10 priority 110
在SW2上:
interface Vlanif20
ip address 10.1.20.253 255.255.255.0
vrrp vrid 20 virtual-ip 10.1.20.254
vrrp vrid 20 priority 110
思科配置:
在SW1上:
interface Vlan10
ip address 10.1.10.252 255.255.255.0
vrrp 10 ip 10.1.10.254
vrrp 10 priority 110
在SW2上:
interface Vlan20
ip address 10.1.20.253 255.255.255.0
vrrp 20 ip 10.1.20.254
vrrp 20 priority 110