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 23:02
下一篇 2016-11-02 15:23

相关推荐

  • linux学习心得

    Linux学习心得 之前没怎么了解过linux运维,机缘巧合来到了这里,刚刚开始一脸蒙圈,或者说现在仍然是,不过最大的收获是我在这里真正认真学习了,有了一个端正的态度,一切都是好的开始。 这一周,我学习了linux的发展史,如何安装系统,一些简单的命令等。。。。下面我一一介绍一下,初学者,可能简单粗暴,多多指教! 系统安装: 1:首先用光盘进行linuxIS…

    2017-07-16
  • sed命令及vim编辑器

    sed[option]… 'script' inputfile…选项:-n:不输出模式空间内容的自动打印-e: 多点编辑-f /PATH/TO/SCRIPT_FILE: 从指定文件中读取编辑脚本-r: 支持使用扩展正则表达式-i: 原处编辑script:'地址命令' 1.地址定界:(1) 不给地…

    Linux干货 2016-08-11
  • Second

    1、 linux 上的文件管理类命令都有哪些, 其常用的使用方法及相关示例演示 cat     concatenate file and print ont the standard output cat [OPTION]…[FILE]…      &nbsp…

    Linux干货 2016-12-13
  • 数据结构知识点(list,tuple,冒泡法)

    分类 数值型 int、float、complex、bool 序列对象 字符串str、列表list、tuple 键值对 集合set、字典dict 数值型 complex:有实数和虚数部分组成 float:有整数和小数组成。只有双精度 类型转换 int(X) 返回一个整数 float(x) 返回一个浮点数 complex(x)、complex(x,y) 返回一个…

    2017-09-25
  • bash的基本特性之globbing,IO重定向及管道

    bash的基本特性之globbing,IO重定向及管道 giobbing:文件名通配 在bash的操作环境中有一个分厂有用的功能那就是gilobbing:文件名通配,这样我们在处理数据的时候就更方便了。下面我们来罗列一些常用的通配符。(注:globbing是做整体的文件名匹配而非部分) 匹配模式:元字符 *:表示匹配任意长度的任意字符  &nbsp…

    Linux干货 2016-12-19
  • 实战:ansible自动化部署nginx+keepalived+mysql负载均衡集群

    一、目的 使用ansible自动化部署nginx+keepalived+mysql负载均衡集群。 二、拓扑规划 三、详细步骤 1、环境的搭建         (1)安装ansible,同时配置私钥免密码进行通信 [root@localhost ~]# ssh-keygen &nb…

    Linux干货 2016-11-11