博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Vrrp协议
阅读量:7119 次
发布时间:2019-06-28

本文共 1685 字,大约阅读时间需要 5 分钟。

一、简介

VRRP(Virtual Router Redundancy Protocol)协议是用于实现路由器冗余的协议,最新协议在RFC3768中定义,原来的定义RFC2338被废除,新协议相对还简化了一些功能。

 

二、详解

1)VRRP的报文结构

VRRP协议只有一种报文,封装在IP报文中,发送到分配给VRRP的IPv4组播地址,用来将Master设备的优先级和状态通告给同一虚拟路由器的所有VRRP路由器。

在IP报文头中,源地址为发送报文的主接口地址(不是虚拟地址或辅助地址),目的地址是224.0.0.18,TTL是255,协议号是112,报文结构如图所示:

Version:协议版本号,现在的VRRP为版本2。Type:报文类型,只有一种取值,1,表示Advertisement。Virtual Rtr ID(VRID):虚拟路由器ID,取值范围是1~255。Priority:发送报文的VRRP路由器在虚拟路由器中的优先级。取值范围是0~255,其中可用的范围是1~254。0表示设备停止参与VRRP,用来使备份路由器尽快成为主路由器,而不必等到计时器超时;255则保留给IP地址拥有者。缺省值是100。Count IP Addrs:VRRP广播中包含的虚拟IP地址个数。Authentication Type:验证类型,协议中指定了3种类型:    0:No Authentication    1:Simple Text Password    2:ReservedAdvertisement Interval:发送通告报文的时间间隔,缺省为1秒。Checksum:校验和。IP Address(es):虚拟路由器IP地址,地址个数是Count IP Addrs的值。Authentication Data:验证字,目前只有明文认证才用到该部分,对于其它认证方式,一律填0。

2)VRRP的状态机

VRRP协议中定义了三种状态机:初始状态(Initialize)、活动状态(Master)、备份状态(Backup)。其中,只有处于活动状态的设备才可以转发那些发送到虚拟IP地址的报文,状态转换如图:

Initialize    设备启动时进入此状态,当收到接口Startup的消息,将转入Backup或Master状态(IP地址拥有者的接口优先级为255,直接转为Master)。在此状态时,不会对VRRP报文做任何处理。Master,当路由器处于Master状态时,它将会做下列工作:    定期发送VRRP报文。    以虚拟MAC地址响应对虚拟IP地址的ARP请求。    转发目的MAC地址为虚拟MAC地址的IP报文。    如果它是这个虚拟IP地址的拥有者,则接收目的IP地址为这个虚拟IP地址的IP报文。否则,丢弃这个IP报文。    如果收到比自己优先级大的报文则转为Backup状态。    如果收到优先级和自己相同的报文,并且发送端的主IP地址比自己的主IP地址大,则转为Backup状态。    当接收到接口的Shutdown事件时,转为Initialize。Backup,当路由器处于Backup状态时,它将会做下列工作:    接收Master发送的VRRP报文,判断Master的状态是否正常。    对虚拟IP地址的ARP请求,不做响应。    丢弃目的MAC地址为虚拟MAC地址的IP报文。    丢弃目的IP地址为虚拟IP地址的IP报文。    Backup状态下如果收到比自己优先级小的报文时,丢弃报文,不重置定时器;如果收到优先级和自己相同的报文,则重置定时器,不进一步比较IP地址。    当Backup接收到MASTER_DOWN_TIMER定时器超时的事件时,才会转为Master。    当接收到接口的Shutdown事件时,转为Initialize。

 

三、功能应用

1)功能

 

2)应用

 

 

 

参考:http://blog.csdn.net/celeste7777/article/details/49096167
你可能感兴趣的文章
JSP常用指令
查看>>
SAMBA服务的搭建和访问
查看>>
APP推广 | 如何利用免费渠道去推广
查看>>
功能发布:大数据驱动业务决策,CDN实时日志重磅上线
查看>>
Vue实现环形进度条方法组件
查看>>
U盘文件删除怎么恢复?教你一个小妙招
查看>>
怎么将图片在线转成PDF
查看>>
How use TexturePacker
查看>>
微型机器人正迎来发展,三大领域应用大有可为
查看>>
PDF文件怎么拆分页面
查看>>
【云计算】对象存储OSS使用入门
查看>>
Oracle高级查询之OVER (PARTITION BY ..)
查看>>
Linux用户管理之sudo权限(visudo)
查看>>
尝试玩些小编程
查看>>
在code::blocks中使用gdb的pretty printer
查看>>
Web服务器压力测试工具简介
查看>>
前端解决跨域问题的8种方案
查看>>
mysql配置
查看>>
Nginx常用配置详解(二)——http协议配置块
查看>>
当别人加快脚步的时候,你更应该慢下来
查看>>