VRRP (Virtual Router Redundancy Protocol)
虚拟路由器冗余协议 通常情况下,同一网段的所有主机都设置一条相同的网关为下一跳的缺省路由,然而当网关故障的时候,此时该网段下的所有主机都无法与外部网络通信,通过VRRP可以避免由于局域网网关单点故障而导致的网络中断。
应用
主备备份
VRRP允许将多个路由器加入到一个备份组中,形成一台虚拟路由器。 在一个备份组中,主路由器(Master身份)承担网关功能,当主路由器出现故障时,其他备用路由器(Backup身份)通过VRRP选举出一个路由器接替主路由器的工作。 不同路由器在备份组中拥有不同的优先级,优先级最高的将成为主路由器。
如上图所示,SW1和SW2实际IP地址为192.168.0.252和192.168.0.253,通过VRRP,将映射为一个网关192.168.0.254负载分担
VRRP负载分担使多台路由器同时承担业务,需要两个及两个以上的备份组,同一路由器可以加入不同的备份组,有不同的优先级,从而实现负载分担。
如上图所示,SW1和SW2加入两个备份组,处于上面的为备份组1,处于下面的为备份组2。SW1为备份组1Master,负责转发VLAN10的数据帧,192.168.0.0/24网段的数据包,而SW2为备份组2Master,负责转发VLAN20的数据帧,192.168.1.0/24网段的数据包。工作原理
VRRP标准
VRRP协议报文使用固定组播地址224.0.0.18
虚MAC地址:00-00-5E-00-01-{VRID} (VRID虚拟路由器号,范围1-255)
复制代码
相关概念
- VRID:虚拟路由器号,范围1-255,以区分不同备份组
- Master和Backup路由器:Master路由器由备份组内所有路由器根据优先级高低选举出的路由器,承担网关功能,其他都为Backup路由器。
- IP地址拥有着:接口IP地址与虚拟IP地址相同的路由器为“IP地址拥有者”。
- 虚MAC地址:00-00-5E-00-01-{VRID},当虚拟路由器回应ARP请求时,回应的是虚拟MAC地址,而不是接口真实的MAC地址
- 优先级:通过优先级确定参与到备份组每台路由器的地位,优先级最大的将成为Master路由器。优先级相同时,将比较接口的主IP地址。取值范围为0-255。实际可配置范围为1-254,0为系统保留为特殊用途,255保留给“IP地址拥有者”。
- 抢占模式:主路由器会不断发送VRRP报文,Backup收到报文后一旦发现自己优先级更高,它将成为Master,从而发送VRRP报文,而Master收到报文后,自己的优先级较低,自动成为Backup。
- 非抢占模式:只要Backup一直收到Master的VRRP报文,就可以证明Master运行正常,所以不会主动成为Master。在非抢占模式下,即使Master优先级降低,只要Master不故障一直处于运行状态中,Backup则不会抢占成为Master。
- 认证类型:三种认证类型:无认证、简单字符认证和MD5认证。 监视接口功能:在上图中,Master为SW1,SW1承担着网关的报文转发。当SW1上行链路(与SW4相连)故障后,如果没有开启接口监视,SW1仍然是Master,仍然承担报文转发任务,但此时局域网以无法与外部网络通信。 所以需要SW1监视端口1,当该端口DOWN后,在抢占模式下主动降低自己的优先级,让SW2抢占成为Master,使SW2承担报文转发任务。
VRRP报文格式
- Version:版本号,2、3。
- Type:VRRP报文类型。在VRRPv2下报文只有一种类型,即VRRP通告报文(Advertisement),取值为1。
- Virtual Rtr ID(VRID):备份组号。范围0-255。
- Priority:路由器在备份组中的优先级。数值越大优先级越高。
- Count IP Addrs:备份组的虚拟IP地址个数,一个IP地址可对应多个虚拟IP地址。
- Auth Type:认证类型。0->无认证。1->简单字符认证。2->MD5认证。
- Checksum:16位校验和。
- IP Address:备份组虚拟IP地址表项,包含地址数定义在Count IP Addrs字段。
- Authentication Data:验证字。
状态机
Initialize:路由器启动后进入Initialize状态,接口Startup后才会转让Backup或Master。Initialize状态不会对VRRP报文进行处理。 Master:在该状态下,定期发送VRRP广播报文。响应对虚拟IP地址的ARP请求,并且响应虚拟MAC地址。转发目的MAC地址为虚拟MAC地址的IP报文。在该状态中,只有接收到优先级比自己大的VRRP报文才会转为Backup。 Backup:接收Master发送的VRRP广播报文,对虚拟IP地址的ARP请求不做相应。丢弃目的MAC地址为虚拟MAC地址的IP报文。Backup有个Master_Down定时器,到时后默认Master路由器故障,自己将成为Master。相关命令
- [interface-view]vrrp vrid virtual-router-id virtual-ip virtual-address 创建备份组的同时,配置备份组的虚拟IP地址。为备份组指定第一个虚拟IP地址时,VRRP备份组会自动生成。以后再给这个备份组指定虚拟IP地址时,VRRP备份组仅将这个IP地址添加到它的备份组虚拟IP地址列表中。
- [interface-view]vrrp vrid virtual-router-id priority priority-value 配置路由器再备份组中的优先级。
- [interface-view]vrrp vrid virtual-router-id preempt-mode [timer delay delay-value] 配置备份组工作在抢占模式下,可选配置抢占延迟时间。
- [interface-view]vrrp vrid virtual-router-id track track-entry-number priority reduced reduced-value 命令用来配置监视指定的Track项,即当Track项的状态为Negative时降低路由器的优先级
- [system-view]dis vrrp 显示VRRP备份组状态信息,不同厂商命令大致相同。