目录
一、vrrp概念
在企业网当中,PC一般是需要使用网关来与外部网络进行通讯,这样如果网关出现了故障那么整一个子网的对外通讯都会被切断,怎么避免这种情况呢?这时候就需要用到VRRP。
1、什么是VRRP
VRRP中文名叫虚拟路由器冗余协议,是一种选择协议,是一个容错协议(备份路由)。它选择局域网上的 VRRP 路由器中的一台作为主路由器,承载虚拟路由器的责任,这时候的主路由器就是局域网的网关。 一旦主路由器不可用,可以及时的由另一台路由器替代,保证网络通讯的连续性和可靠性。
因为VRRP工作时会产生一个虚拟路由器(带有虚拟IP和虚拟MAC地址),该路由器充当网络用户的网关,使得网络上的主机与虚拟路由器通信无需了解这个网络上物理路由器的任何信息。
Master报文的发送:当Master正常工作时,它会每隔一段时间(缺省为1秒)向组内Backup设备发送vrrp通告报文,通告自己工作正常。(注:只有Master发送VRRP报文)
VRRP通告报文被封装在IP报文里,通过组播地址224.0.0.18发送,TTL为255,协议号为112。
例如下图中,中间的是虚拟路由器,虚拟地址为网关,vrrp会在R1和R2中选择一个主路由器,另一个为备,当R1为主时,如果它的g0/0/0口down了或交换机坏了,那vrrp协议会重新选择R2做主路由器,让网络正常工作。
2、VRRP组件介绍
虚拟路由器
对于每一个VRRP组,抽象出来的一个逻辑路由器(有虚拟的IP 地址和MAC地址),该路由器充当网络用户的网关,该路由器并非真实存在,事实上对于用户而言,只需知道虚拟路由器的IP,至于具体的虚拟路由器的角色由谁来承担、数据转发任务由谁来承担、Master挂掉之后谁来接替,这是VRRP的工作。
虚拟IP地址、MAC地址
虚拟IP地址用于标示虚拟路由器,该地址实际上就是用户的网关地址。
与虚拟IP地址对应的MAC也是虚拟的,该MAC地址由固定位加上VRRP组ID构成,虚拟MAC的最后1个字节的VRID表示VRRP ID号的16进制,例如VRID是1,虚拟MAC地址为00-00-5E-00-01-01。当PC发arp请求虚拟IP地址对应的MAC地址,Master路由器响应这个arp请求并告知虚拟MAC地址。
Master Router
响应PC对网关(虚拟路由器IP地址)的ARP请求(使用虚拟MAC响应)。
转发目的MAC地址为虚拟MAC地址的IP报文。
周期忪发送VRRP组播包以告知自己的存活情况。
Backup Router
持续侦听Master router发送的VRRP组播包;
当Master Router出现问题的时候,接替它的位置;
对虚拟IP地址的ARP请求,不做响应;
丢弃目的MAC地址为虚拟MAC地址的IP报文;
丢弃目的IP地址为虚拟IP地址的IP报文。
主备路由器选举依据︰先比较接口优先级(比大),如果相等则比接口IP地址(比大)
3、VRRP的状态
VRRP协议的状态共有三种,分别是Initialize,Master,Backup,初始状态都是Initialize,通过比较优先级产生Master和Backup,在规定时间内,Backup若没有收到Master发来的心跳报文,将切换为Master。
二、VRRP的应用
上述的VRRP描述中主备备份模式,若SW1一直正常工作,那么SW2则长期处于待机状态,显然这种做法比较浪费,所以要采用负载分担模式,负载分担模式是SW1和SW2都处于工作状态,互为主备,例如下列实验中,SW1为vlan10的主vlan20的备;SW2是vlan20的主,vlan10的备。