一文搞懂路由VRRP协议,工作原理与优先级

2024-02-15 10:04:36

大家好,我是IT售前工程师Bernie.

本文主要介绍计算机网络中有关VRRP协议的相关概念、工作原理,以及优先级配置。

我们知道,网关是用来连接两个不同网段的关口,有了网关,我们才可以将一个数据包从一个网段分发到另外一个网段。如下图,4个PC连接一个二层交换机,然后连接一个三层路由器设备。我们可以用路由器的某个端口作为网关,让发送的数据包出公网。

由于4台设备的同属于一个广播域,他们的网关都是10.110.5.1,我们指定路由器的端口1(IP地址是10.110.5.1)作为出公网的网关。

其实正常情况下,这样的组网方式没有任何问题。但是,这个是一个比较脆弱的网络结构,设想一下:如果在某一时间,路由器由于机械故障突然宕机了。

好戏来了!路由器的宕机会直接引发下面的4台PC都没办法上网了。显然,我们是不能允许这样的情况出现的。

那如何搞呢?

或许有人会说:加一个路由呗!就像下图一样

然而,上面的组网方式真的可行吗?

其实是不可以的!

在计算机组网中,不管是用DHCP来配置IP网关,还是用静态配置,在两个不同网段之间,网关都是只能允许同时有且仅有一个。

说白了:虽然加上了一个并行的路由器,下面的4台PC根本不认!因为网关只能有一个,人家还是跟只给左边的路由器通信,右边的路由器只能是一个摆设。

好吧,这个时候你需要引入VRRP协议了!

VRRP协议原理

VRRP的英文全称是Virtual Router Redundancy Protocol,即虚拟路由冗余协议。直白点讲就是:通过VRRP协议,我们可以将多个(两个或者更多)路由器放在一个虚拟的路由器组里面,大家互相配合当成一个路由器来用。

比如上图,4台主机的网关都是10.110.5.1,我们通过VRRP协议建立了一个路由冗余备份组。这个组里,每一个路由器都有一个端口可以网关,他们之间是协同配合的,对外提供一台虚拟的路由器,并提供一个虚拟的IP端口10.110.5.1,作为整个组的唯一一个出口出口网关。

在VRRP路由备份组里面,我们选取台路由器作为master路由,其他的都是backup路由。

正常情况下,是master路由提供网关服务的。当某一时间,mater路由发生机械故障时,我们会根据优先级,从backup路由中选取一个作为新的mater路由。这一切的操作对于外部来讲是透明的(不可见的),所以可以保障网络的高可用。

那么,VRRP中路由备份组是如何划分主、备路由的呢?

VRRP路由优先级

VRRP协议遵循的是Advertisement的协商报文,我们还以上面的组网方式为例:

实际上,每个路由器网关接口都有一个真实的IP地址,比如从左至右的IP地址分别是:10.110.5.3、10.110.5.4和10.110.5.5,他们根据优先级分别占用虚拟IP网关(10.110.5.1)。

Priority优先级是可以由技术人员设置的,VRRP分组中谁的优先级高谁就是master。优先级的范围是0-255,默认值100,可以设置的范围是1-254。

特别说明:如果虚拟网关的IP跟某个路由器的接口真实IP地址一样,那么这个路由器的接口地址的优先级肯定是255。如果没有一台路由器的真实网关接口优先级是255时,大家起初都是备用路由的,大家会根据Advertisement报文进行多轮比较,优先级最高的作为master。

总结

VRRP协议能够在不改变组网的前提下,将多台路由设备虚拟成一套虚拟路由,并提供虚拟网关作为对外的网关。VRRP协议可以分为VRRPv2和VRRPv3,其中VRRPv2仅支持IPv4网络,VRRPv3可以兼容IPv4和IPv6网络。

以上是关于VRRP协议的全部分享。

我是IT售前工程师Bernie,感谢关注!下期见~