VRRP协议

VRRP协议

Virtual Router Redundancy Protocol 虚拟路由器冗余协议。

Vrrp协议在linux上的实现(软件实现)是keepalived

VRRP协议VRRP协议

VRRP简单的讲,就是心跳信息。

主节点不断的向备用节点广播信息,信息包含自己的心跳和优先级。

不光如此,还可以在主节点上安装一个监控,来监控其他资源,如果这些资源运行正常,就可以给其他客户端发送心跳信息(包含优先级),一旦监控的资源出现问题了,就降低自己的优先级(降低后的优先级要低于备用节点的优先级,自己设置)。

这时候,备用节点可以在主节点未出现故障的时候,就抢占主节点的资源(工作在抢占模式的备用节点)。备用节点发现自己的优先级比主节点的优先级高,就触发一次选举。将主节点变为备用节点,备用节点变为主节点。

VIP

     VIPVirtual IP

VIP和接口相关,和路由器无关

两个路由节点上,不是只可以做一个虚拟路由器。

我们可以把两个内部接口作为一个虚拟路由器,把他们的外部接口做成一个虚拟路由器。

VRRP协议

免费ARP广播:Grescious arp

每一台主机上,都会有网关的MAC是有缓存的。当主节点故障,备用节点开始使用的时候,客户机并不知道网关改变了。所以,备用节点开始使用的时候,就需要进行广播,告知所有的主机。就是Grescious arp广播。

这个广播自问自答,目的就是让全网都知道。

VRRP工作过程

KeepalivedVMAC有固定的:00-00-5e-00-01-VRID,每一个虚拟路由器都有一个虚拟MACVMAC)。

(1) 虚拟路由器中的路由器根据优先级选举出MasterMaster路由器通过发送免费 ARP 报文,将自己的虚拟 MAC地址通知给与它连接的设备或者主机,从而承担报文转发任务;

(2) Master 路由器周期性发送 VRRP报文,以公布其配置信息(优先级等)和工作状况;

(3) 如果 Master 路由器出现故障,虚拟路由器中的Backup 路由器将根据优先级重新选举新的 Master

(4) 虚拟路由器状态切换时,Master路由器由一台设备切换为另外一台设备,新的 Master路由器只是简单地发送一个携带虚拟路由器的 MAC 地址和虚拟 IP地址信息的免费 ARP报文,这样就可以更新与它连接的主机或设备中的ARP 相关信息。网络中的主机感知不到Master路由器已经切换为另外一台设备。

(5) Backup 路由器的优先级高于 Master 路由器时,由Backup 路由器的工作方式(抢占方式和非抢占方式)决定是否重新选举 Master

由此可见,为了保证Master路由器和Backup路由器能够协调工作,VRRP需要实现以下功能:

vMaster 路由器的选举;

vMaster 路由器状态的通告;

v同时,为了提高安全性,VRRP 还提供了认证功能;

抢占式和非抢占式

选举

认证方式

VRRP提供了三种认证方式:

1.无认证:不进行任何 VRRP 报文的合法性认证,不提供安全性保障。一般不要用这种。

2.简单字符认证:在一个有可能受到安全威胁的网络中,可以将认证方式设置为简单字符认证。发送 VRRP 报文的路由器将认证字填入到
VRRP
报文中,而收到 VRRP 报文的路由器会将收到的 VRRP 报文中的认证字和本地配置的认证字进行比较。如果认证字相同,则认为接收到的报文是合法的 VRRP 报文;否则认为接收到的报文是一个非法报文。

一般用的就是这种。

3.    MD5 认证:在一个非常不安全的网络中,可以将认证方式设置为 MD5 认证。发送 VRRP 报文的路由器利用认证字和 MD5 算法对 VRRP 报文进行加密,加密后的报文保存在 Authentication Header(认证头)中。收到 VRRP报文的路由器会利用认证字解密报文,检查该报文的合法性。MD5比较麻烦,有一些路由设备不支持。

VRRPIPVS

VRRP设计的目的是为了高可用IPVS服务,主要表现在:

1、VRRP协议完成地址流动(IP转移)

2、VIP地址所在的节点生成IPVS规则(在KeepAlived的配置文件中预先定义)

3、IPVS集群的各RS做健康状态检查

4、基于脚本调用接口通过执行脚本完成脚本中定义的功能,进而影响集群事务(比如降低或提升优先级);

所以,VRRP主要用于高可用DirectorIPVS

原创文章,作者:m20-吴清玲,如若转载,请注明出处:http://www.178linux.com/56850

(4)
m20-吴清玲m20-吴清玲
上一篇 2016-11-01
下一篇 2016-11-02

相关推荐

  • 密码保护:第一天

    无法提供摘要。这是一篇受保护的文章。

    Linux干货 2017-07-15
  • redis-cli的一些有趣也很有用的功能

    redis-cli我们最常用的三个参数就是-h、-p、-a选项,分配用来指定连接的redis-server的host、port和登录密码。 通过redis-cli –help发现,redis-cli还提供了其他很多的参数和功能。 1)-x-x选项从标准输入(stdin)读取最后一个参数。 比如从管道中读取输入: echo -en “chen.qun” | r…

    Linux干货 2015-03-16
  • LVS

        Linux虚拟服务器(LVS)是基于Linux内核的操作系统的负载平衡软件。     LVS提供了良好的可扩展性,可靠性和可服务性。 LVS项目的主要工作是开发先进的IP 负载平衡软件(IPVS),应用级负载平衡软件(KTCPVS)和集群管理组件。 IPVS:在…

    Linux干货 2017-08-21
  • 马哥教育网络班22期+第三周(8.22-8.28)博客作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。   # who|awk '{print $1}'|sort| uniq 2、取出最后登录到当前系统的用户的相关信息。   # last   # last|gr…

    Linux干货 2016-08-29
  • Linux文本编辑器之 vi vim 详谈

    Linux文本编辑器之 vi vim         vi :Visual Interface,它与sed不同,sed是功能比较简单的行编辑器,而vi是一个功能强大的全屏文本编辑器,它还有一个增强版vim (Vi IMproved).在vim里,有很多功能强大的文本编辑…

    Linux干货 2016-08-15
  • 系统自动化安装、selinux

    系统自动化安装 系统启动流程:bootloader–>kernel(initramfs)–>rootfs–>anaconda–>/sbin/init anaconda: 系统安装程序    tui: 基于图形库curses的文本配置窗口 &nbsp…

    Linux干货 2016-09-22