VRRP简单概述
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VRRP简单概述相关的知识,希望对你有一定的参考价值。
VRRP基本概念VRRP(Virtual Router Redundancy Protocol)即和可靠,它是一种容错协议,它保证当用户设备的下一跳路由器失效时,可以及时的由另一台路由器来替代,从而保持通讯的连续和可靠。跟TCP的协议号为6,UDP的协议号为17,ICMP的协议号为1一样,VRRP协议一样需要协议号,为112。
1 、VRRP通过交互报文的方法将多台路由器模拟成一台虚拟路由器(该虚拟路由器可以有多个虚拟IP地址),网络上的主机与虚拟路由器进行通讯。一旦VRRP组中的某台物理路由器失效,其它路由器自动接替工作。
(1) VRRP路由器
运行VRRP协议的路由器
(2) VRRP组(VRID)
由多个VRRP路由器组成,属于同一VRRP组的VRRP路由器相互交换信息
(3) 虚拟路由器
对于每一个VRRP组,抽象出来的一个逻辑路由器,该路由器充当网络用户的网关(下一跳)
(4) 虚拟IP地址、MAC地址
用于标识虚拟的路由器,该地址实际上就是用户的默认网关
(5) Master、Backup路由器
Master路由器就是在VRRP组实际转发数据包的路由器,Backup路由器就是在VRRP组中处于监听状态的路由器。一旦Master路由器出现故障,Backup路由器就开始接替工作
2、VRRP的3种状态
(1) 初始化状态
路由器刚刚启动时进入此状态,通过VRRP报文交换数据后进入其它状态
(2) 活动状态(Master)
VRRP组中的路由器通过VRRP报文交换后确定的当前转发数据包的一种状态
(3) 备份状态(Backup)
VRRP组中的路由器通过VRRP报文交换后确定处于监听的一种状态
3、VRRP报文
VRRP报文是一种多播报文,由Master路由器发出来通告它的存在,使用VRRP报文可以检测虚拟路由器的各种参数,用于主路由器的选择。VRRP报文是封装在IP报文中,通过组播的方式传送。也就是说VRRP协议跟ICMP协议一样,工作在第三层(路由层),它是不具有端口的说法的。
(1) Version:VRRP协议版本号
(2) Type:指明VRRP报文类型,RFC3768只定义了一种VRRP报文,即VRRP通告报文,所以该字段总为1(若收到的VPPR通告报文的该字段的类型为非1则会被丢弃)
(3) Virtual Rtr ID:即上面讲的大VRID。一个VRID唯一标识了一个虚拟路由器,取值范围为[1,255]。(所以一台路由器的接口最多可以运行255个VRRP组)
(4) Priority:优先级。虚拟路由器中用该字段来决定Master路由器和Backup路由器,值越大表明优先级越高,取值为[1,255],缺省值为100。假设虚拟路由器的IP地址跟VRRP组中某台路由器IP地址相同,那么该路由器的发出的VRRP报文的该字段总为255,即使人为指定为其他值也不受影响。若此字段为0表示这是Master路由器出现故障发送的VRRP通告报文,当Backup路由器收到此通告报文后,会等待Skew time时间,然后将自己切换为Master路由器。
(5) Count IP Addrs:VRRP通告报文中包含的IP数目,即被一个VRRP虚拟路由器所分配的IP地址的数量。
(6) Auth Type:认证类型字段,一个虚拟路由器只能使用一种认证类型,若Backup路由器收到的通告报文段中认证类型字段是未知或者和本地配置不匹配,则将该数据包丢弃。
认证类型字段的定义:
0表示无认证
1表示保留,向前一个版本的RFC2338提供兼容性
2表示保留,向前一个版本的RFC2338提供兼容性
(7) Adver Int:Mater路由器向外发送VRRP通告报文的时间间隔,以秒为单位,取值范围是[1,255],缺省为1
(8)Checksum:整个VRRP报文的校验和
(9) IP Address:VRRP虚拟路由器的虚拟IP地址(可配置多个)
(10) Authentication Data:为了向RFC2338兼容,在实际的封装时,全置为0.,接收方会忽略此字段
BGP协议
BGP:边界网关路由协议,又称为无类别路径矢量路由协议,是典型的EGP协议,作用于AS与AS之间。自治系统(AS):由同一个技术管理机构管理,使用同一管理控制和选路策略的一些路由器的集合。AS编号由英特网注册机构统一管理分配,范围是1-65535,其中1-64511是注册的英特网编号,64512-65535是私有的网络编号。IGP协议工作追求:1:、收敛快2、占用资源少3、选路佳(无环)EGP协议工作追求:1、可靠性2、可控性3、AS-BY-AS
二、BGP特点1、无类别路径协议,是距离矢量的升级版(路径矢量和距离矢量均选择共享路由表来收敛,但距离矢量基于一台路由器为一跳,路径矢量基于一个AS为一跳)2、使用单播更新来发送所有信息,基于TCP?179端口工作3、增量更新–仅触发无周期4、具有丰富的属性来取代IGP中度量进行选路----多个参数控制协议5、可以在进项和出项对流量实施强大的策略–可控性6、默认不被用于负载均衡-----通过各种选路规则仅仅产生一条最佳路径7、BGP支持认证和聚合(汇总,一般是往超网汇总所以称为聚合)8、BGP协议不生产路由,只是路由的搬运工
三、BGP的数据包BGP所有的数据均基于TCP会话传递,由TCP来进行邻居的发现及所有数据包的ACKopen:存在hold?time?和?RID(生成方式和OSPF一致);用于邻居关系建立;默认仅收发一次即可;邻居发现是由TCP三次握手完成的,包活不用open包Keeplive?:保活包?,周期1min保活?TCP会话,hold?time?180s;实际是包活TCP的会话update:更新包—增量更新;路由信息==目标网络号+属性notificatio:报错包,检测到BGP路由出现错误时发送,发出该消息后BGP连接被立即关闭
四、BGP的工作过程1、启动配置完成后,本地和对端先单播进行TCP的三次握手,建立TCP的会话。2、会话建立后,使用open报文进行邻居关系的建立,正常收发一次open报文即可;建立关系后生成邻居表。3、邻居关系建立后,用户进行路由宣告;宣告配置完成后,BGP使用update包进行路由条目的传递—目标网络号+属性4、本地接收到的所有路由条目均存储在BGP表中;–装载本地发出和接收到的所有路由。5、默认仅从BGP表中挑选一条最优路径到路由表内。6、收敛完成,仅keeplive包继续周期保活TCP会话即可。注:所有BGP协议的数据包均基于TCP的会话传递;TCP会保证这些数据包的可靠性-确认、重传、排序、流控(窗口机制)若结构突变:
五、BGP名词注解1、对等体(peer),邻居是直连建立关系,对等体非直连建立邻居关系,故把邻居称为对等体peer2、EBGP邻居关系,不同AS间设备建立的邻居关系,通过EBGP邻居学习的路由,管理距离为20(别人传的不用算路)3、IBGP邻居关系,同一AS内设备的邻居关系?,通过IBGP邻居学习到的路由,管理距离200(IBGP邻居学习的所以要算路)
六、BGP的路由黑洞因为考虑成本和实用性,正常在一个AS内部不是所有的设备都运行BGP协议,故将出现路由可达,但实际数据在传输时,经过中间未运行BGP协议的路由器后被丢弃。路由黑洞:控制层面可达,数据层面不可达(此概念出于MPLS时代)控制层面:传路由表的方向数据层面:访问目标的方向1、BGP协议是基于TCP单播沟通,可以穿越中间设备来传递路由2、BGP的路由正常均需要递归多次到直连路由,运行BGP协议的路由基本都可以完成递归,认为可达,不关注下一跳设备是否由路由,只要本地能到下一跳即可3、BGP生成的路由是唯一路径,但递归可以多条路径传输解决BGP路由黑洞:1)物理链路全连(IBGP中运行BGP协议的路由器太远不能实现)2)邻居关系全连(所有设备均运行BGP)3)将BGP重发布到IGP(LAB实验环境下应用,慎用)4)MPLS,多协议标签交换(最佳)
以上是关于VRRP简单概述的主要内容,如果未能解决你的问题,请参考以下文章