虚拟路由冗余协议Virtual Router Redundancy Protocol (VRRP)概要:虚拟路由冗余协议Virtual Router Redundancy Protocol (VRRP) ,VRRP 协议是保证访问一些资源不会中断,即通过多台路由器组成一个网关集合,如果其中一台路由器出现故障,会自动启用另外一台。
两个或多个路由器建立起一个动态的虚拟集合,每一个路由器都可以参与处理数据,这个集合最大不能超过255 个虚拟路由器( 可参考虚拟路由协议) 。
一般现在的路由器都支持该协议。
规格需要功能包: system软件等级: Level1操作路径: /ip vrrp相关协议和标准: VRRP , AH , HMAC-MD5-96 within ESP and AH属性虚拟路由冗余协议是一种为路由提供高效率的路由选择协议。
一个或多个IP 地址可以分配到一个虚拟路由上,一个虚拟路由节点应该具备以下状态:•MASTER 状态, 一个节点回答所有的请求给相应请求的IP 地址。
仅只有一个MASTER 路由器在虚拟路由中。
每隔一段时间这个主节点发出VRRP 广播包给所有backup 路由器。
•BACKUP 状态, VRRP 路由器监视Master 路由器的状态。
它不会回答任何来至相应IP 地址的请求,当MASTER 路由器无法工作时(假设至少三次VRRP 数据连接丢失),选择过程发生,新的MASTER 会根据优先级产生。
VRRP Routers操作路径: /ip vrrp属性描述name ( 名称) – VRRP 名称interface ( 名称) –选择那个接口(interface )在VRRP 上运行。
vrid ( 整型: 0-255; 默认: 1 ) –虚拟路由的身份号( 必须是在接口(interface )上是唯一的) priority ( 整型: 1-255; 默认: 100 ) –当前节点的优先级( 高的数值代表高的优先级) interval ( 整型: 1-255; 默认: 1 ) – VRRP 更新间隔秒数。
定义MASTER 经过多少时间未向VRRP 集合节点发出广播数据。
preemption-mode (yes | no; 默认: yes ) –是否启用优先模式。
no –一个backup 节点在当前的master 失效之前,是不会选择master ,即使该backup 的优先高于当前master 的级别yes –该节点总是拥有最高优先级。
authentication (none | simple | ah; 默认: none ) –使用VRRP 的广播数据包的验证方法none –没有验证simple –纯文本的验证ah –验证标题使用HMAC-MD5-96 算法password ( 文本; 默认: "" ) –需要验证时的密码,不使用验证时可以被忽略。
8 位字符长文本字符串(为纯文本验证方式);16 位字符长文本字符串(为需要128 位key 的AH 验证)on-backup ( 名称; 默认: "" ) –当节点为backup 状态时执行的脚步on-master ( 名称; 默认: "" ) - 当节点为master 状态时执行的脚步注:所有同一个集合的节点,必须使相同的vrid , interval , preemption-mode , authentication 和password .第255 的优先级被保留为真正的虚拟路由的主机IP 地址。
添加一个VRRP 事例在ether1 的接口上,一个虚拟路由的vrid 设置为 1 ,因为是虚拟路由的主机,所有优先级为255 :[admin@MikroTik] ip vrrp> add interface=ether1 vrid=1 priority=255[admin@MikroTik] ip vrrp> printFlags: X - disabled, I - invalid, M - master, B - backup0 I name="vr1" interface=ether1 vrid=1 priority=255 interval=1preemption-mode=yes authentication=none password="" on-backup=""on-master=""[admin@MikroTik] ip vrrp>虚拟IP 地址操作路径: /ip vrrp address属性描述address ( IP 地址) – IP 地址适用于虚拟路由belongs to the virtual routernetwork ( IP 地址) – IP 地址的子网掩码address of the networkbroadcast ( IP 地址) – IP 地址广播段virtual-router ( 名称) - VRRP 路由的名称Notes虚拟IP 地址应与每个节点的虚拟路由器相同。
在vr1 VRRP 路由器上添加虚拟地址192.168.1.1/24 :admin@MikroTik] ip vrrp> address add address=192.168.1.1/24 \\... virtual-router=vr1[admin@MikroTik] ip vrrp> address printFlags: X - disabled, A - active# ADDRESS NETWORK BROADCAST VIRUAL-ROUTER0 192.168.1.1/24 192.168.1.0 192.168.1.255 vr1[admin@MikroTik] ip vrrp>一个简单的VRRP 事例让我们假设,我们有一个192.168.1.0/24 的网络,且我们需要为它提供高效率的Internet 连接。
这个网络将作NAT ,我们连接了两个不同的ISP ,并且他们其中的一个优先选取(如:速度最快)。
这个例子在上面的图解中显示了如何用两个路由器配置VRRP. 这两个路由器被初始化为以下:接口以启用,每一个接口都配置了相应的IP 地址;路由表设置正确(应至少有一个默认路由);SRC-NAT 或伪装应配置。
如何设置这些配置,看各自的说明手册。
我们将假设这个接口的网段192.168.1.0/24 以连接,并在VRRP 路由器上命名为local配置Master VRRP 路由器首先将创建一个VRRP 项,我们将这个路由器设置为优先选取,使用255 的优先级[admin@MikroTik] ip vrrp> add interface=local priority=255[admin@MikroTik] ip vrrp> printFlags: X - disabled, I - invalid, M - master, B - backup0 M name="vr1" interface=local vrid=1 priority=255 interval=1preemption-mode=yes authentication=none password="" on-backup=""on-master=""[admin@MikroTik] ip vrrp>下一步,将虚拟IP 地址添加到这个VRRP 项目中[admin@MikroTik] ip vrrp> address add address=192.168.1.1/24 \\... virtual-router=vr1[admin@MikroTik] ip vrrp> address printFlags: X - disabled, A - active# ADDRESS NETWORK BROADCAST VIRTUAL-ROUTER0 192.168.1.1/24 192.168.1.0 192.168.1.255 vr1[admin@MikroTik] ip vrrp>现在这个地址将出现在/ip address 列表中:[admin@MikroTik] ip address> printFlags: X - disabled, I - invalid, D - dynamic# ADDRESS NETWORK BROADCAST INTERFACE0 10.0.0 .1/24 10.0.0 .0 10.0.0 .255 public1 192.168.1.2/24 192.168.1.0 192.168.1.255 local2 D 192.168.1.1/24 192.168.1.0 192.168.1.255 local[admin@MikroTik] ip address>配置Backup VRRP 路由器现在我们将创建低优先级的路由器的VRRP 项目( 我们可用使用默认的值100 ), 因此这个路由器将优先选作的一个backup :[admin@MikroTik] ip vrrp> add interface=local[admin@MikroTik] ip vrrp> printFlags: X - disabled, I - invalid, M - master, B - backup0 B name="vr1" interface=local vrid=1 priority=100 interval=1preemption-mode=yes authentication=none password="" on-backup=""on-master=""[admin@MikroTik] ip vrrp>现在我们将添加相同的虚拟地址,和master 节点的添加一样:这个节点将不会出现在/ip address 列表中:[admin@MikroTik] ip address> printFlags: X - disabled, I - invalid, D - dynamic# ADDRESS NETWORK BROADCAST INTERFACE0 10.1.0 .1/24 10.0.0 .0 10.0.0 .255 public1 192.168.1.3/24 192.168.1.0 192.168.1.255 local[admin@MikroTik] ip address>测试:现在,当我们断掉master 路由器,backup 将选择master 状态:[admin@MikroTik] ip vrrp> printFlags: X - disabled, I - invalid, M - master, B - backup0 M name="vr1" interface=local vrid=1 priority=100 interval=1preemption-mode=yes authentication=none password="" on-backup=""on-master=""[admin@MikroTik] ip vrrp> /ip address printFlags: X - disabled, I - invalid, D - dynamic# ADDRESS NETWORK BROADCAST INTERFACE0 10.1.0 .1/24 10.0.0 .0 10.0.0 .255 public1 192.168.1.3/24 192.168.1.0 192.168.1.255 local2 D 192.168.1.1/24 192.168.1.0 192.168.1.255 local[admin@MikroTik] ip vrrp>。