论文部分内容阅读
[摘 要] 随着网络的迅猛发展,基于网络的各种应用随即增多,然而在提出相应应用的同时,也对网络的可靠性提出了更高的要求来满足网络应用的实时性。本文浅析路由冗余链路技术VRRP的原理及过程。
[关键词] VRRP;HSRP
1.概述
随着Internet的迅猛发展,基于网络的应用逐渐增多。当前,在部分网络环境,用户对网络的要求非常高,任何停工和储运损耗都会对用户造成严重影响。这就对网络的可靠性提出了越来越高的要求。如Internet服务提供商提供Web主机设备,为了使得用户的Web服务器对公众总是有效的,必须保证用户99.9999%的正常运行时间,再如某网段方便访问外网会设置网关,该网关就是主机所在网段内的一个路由器的接口地址,由R1将报文转发出去。然而,万一R1出现故障,主机将与外界失去联系,陷入孤立的境地。在路由器间为增强网络健壮性,我们可以通过动态路由协议(比如ISIS和OSPF)动态学习。然而,在每一个终端都运行动态路由协议是不现实的,大多客户端操作系统平台都不支持动态路由协议。因此普遍采用对终端IP设备静态路由配置,一般是给终端设备指定一个默认网关(Default Gateway)。静态路由的方法简化了网络管理的复杂度和减轻了终端设备的通信开销,但是它仍然有一个缺点:如果作为默认网关的路由器损坏,所有使用该网关为下一跳主机的通信必然要中断。虚拟路由冗余协议(VRRP:Virtual Router Redundancy Protocol)就是一种很好的解决方案。在该协议中,对共享多存取访问介质(如以太网)上终端IP设备的默认网关(Default?Gateway)进行冗余备份,从而在其中一台路由设备宕机时,备份路由设备及时接管转发工作,向用户提供透明的切换,提高了网络服务质量。
2.VRRP原理
VRRP是一种容错协议,它为具有组播或广播能力的局域网,(如以太网)设计,它保证当局域网内主机的下一跳路由器出现故障时,可以及时的由另一台路由器来代替,从而保持通讯的连续性和可靠性。为了使VRRP工作,要在路由器上配置虚拟路由器号和虚拟IP地址,同时产生一个虚拟MAC地址,这样在这个网络中就加入了一个虚拟路由器。而网络上的主机与虚拟路由器通信,无需了解这个网络上物理路由器的任何信息。一个虚拟路由器由一个主路由器和若干个备份路由器组成,主路由器实现真正的转发功能。当主路由器出现故障时,一个备份路由器将成为新的主路由器接替它的工作。
2.1 VRRP工作机制
VRRP路由器:运行虚拟路由冗余协议(VRRP)的路由器。它将参与一台或多台虚拟路由器。
虚拟路由器(Virtual Router):由VRRP协议管理、设置,作为LAN上终端主机的缺省路由。
IP拥有者(IP Address Owner):拥有与虚拟路由器有相同IP地址的VRRP路由器。此路由器响应ICMP Ping包、TCP连接等。
主用路由器:负责转发发给虚拟路由器的数据包,并响应ARP请求的路由器。若一台拥有与虚拟路由器有相同IP地址的VRRP路由器(IP拥有者)活动,则此VRRP路由器为主用路由器。
备用路由器:在VRRP中,其他参与此虚拟路由器的均为备用路由器。它将在主用路由器不能工作时接替其工作。
VRID:一个虚拟路由器有唯一的标识,范围为0—255。该路由器对外表现为唯一的虚拟MAC地址,地址的格式为00-00-5E-00-01-[VRID]。主控路由器负责对ARP请求用该MAC地址做应答。这样,无论如何切换,保证给终端设备的是唯一一致的IP和MAC地址,减少了切换对终端设备的影响。
为了保证VRRP协议的安全性,提供了两种安全认证措施:明文认证和IP头认证。明文认证方式要求:在加入一个VRRP路由器组时,必须同时提供相同的VRID和明文密码。适合于避免在局域网内的配置错误,但不能防止通过网络监听方式获得密码。IP头认证的方式提供了更高的安全性,能够防止报文重放和修改等攻击。
2.2 VRRP路由器的状态机制
组成虚拟路由器的路由器会有三种状态分别是Initialize, Master和Backup 下面对这三种状态进行说明:
(1) Initialize
系统启动后进入此状态,当收到接口startup的消息,将转入Backup(优先级不为255时)或Master(状态优先级为255时)。在此状态(Initialize)时,路由器不会对VRRP报文做任何处理。
(2) Master
当路由器处于Master状态时它将会做下列工作:
定期发送VRRP组播报文;只有主用路由器可以定期发布VRRP广告消息(keep-alive消息),它使用IP多播数据包进行封装,组地址为224.0.0.18,发布范围只限于同一局域网内。
发送免费gratuitous ARP报文,以使网络内各主机知道虚拟IP地址所对应的虚拟MAC地址;
响应对虚拟IP地址的ARP请求,并且响应的是虚拟MAC地址,而不是接口的真实MAC地址;
转发目的MAC地址为虚拟MAC地址的IP报文;
如果它是这个虚拟IP地址的拥有者,则接收目的IP地址为这个虚拟IP地址的IP报文,否则,丢弃这个IP报文。需要注意的是,由于有这一点要求,所以除非主路由器是IP地址拥有者,否则主机ping虚拟IP地址不能ping通;在Master状态中只有接收到比自己的优先级大的VRRP报文时,才会转为Backup,只有当接收到接口的Shutdown事件时才会转为Initialize。
(3) Backup
当路由器处于Backup状态时它将会做下列工作:
接收Master发送的VRRP组播报文,从中了解Master的状态。备份路由器在连续三个通告间隔内收不到VRRP或收到优先级为0的通告后启动新的一轮VRRP选举。 对虚拟IP地址的ARP请求,不做响应。
丢弃目的MAC地址为虚拟MAC地址的IP报文。
丢弃目的IP地址为虚拟IP地址的IP报文。
只有当Backup接收到MASTER_DOWN这个定时器到时的事件时,才会转为Master, 而当接收到比自己的优先级小的VRRP报文时,它只是做丢弃这个报文的处理,从而就不对定时器做重置处理,这样定时器就会在
若干次这样的处理之后到时,于是就转为Master。只有当接收到接口的Shutdown事件时,才会转为Initialize。
3. VRRP与HSRP比较
(1)HSRP将报文承载在UDP报文上,而VRRP承载在IP报文上(HSRP 使用UDP 1985端口,向组播地址224.0.0.2 发送hello消息)。
(2)VRRP包括一个保护VRRP分组不会被另外一个远程网络添加内容的机制(设置TTL值=255,并在接受时检查),这限制了可以进行本地攻击的大部分缺陷.而另一方面,HSRP在它的消息中使用的TTL值是1。
(3)VRRP中如果两路由器都不是网关地址拥有者且优先级相同,则谁先发VRRP报文,谁就成为主用,而HSRP中是谁的IP地址最高谁成为主用。
(4)HSRP中主用路由器每3秒发一次KEEP-ALIVE包,10秒为失效时间;而VRRP中主用路由器是每1秒发一次KEEP-ALIVE包,VRRP的主用路由器失效时间: 3×广告发送间隔+(256-优先级)/256。
(5)在CISCO的HSRP中,需要单独配置一个IP地址作为虚拟路由器对外体现的地址,这个地址不能是组中任何一个成员的接口地址,但是VRRP允许这种情况发生(如果”拥有”虚拟路由器地址的路由器被建立并且正在运行,那么应该总是由这个虚拟路由器管理—等价于HSRP中的活动路由器),但是为了确保万一失效发生的时候终端主机不必重新学习MAC地址,它指定使用的MAC地址00-00-5e-00-01-VRID,这里的VRID是虚拟路由器的ID(等价于一个HSRP的组标识符)。
(6)安全方面:VRRP对HSRP的一个主要优势,它允许参与VRRP组的设备间建立认证机制。强认证方法使用IP认证头(AH)协议.AH是与用在IPSEC中相同的协议,AH为认证VRRP分组中的内容和分组头提供了一个方法. MD5 HMAC 的使用表明使用一个共享的密钥用于产生hash值.路由器发送一个VRRP分组产生MD5 hash值,并将它置于要发送的通告中,在接收时,接受方使用相同的密钥和MD5值,重新计算分组内容和分组头的hash值,如果结果相同,这个消息就是真正来自于一个可信赖的主机,如果不相同,它必须丢弃,这可以防止攻击者通过访问LAN而发出能影响选择过程的通告消息或者其他一些方法中断网络。
4. 总结
VRRP目前作为设备容错的一个重要协议,提高了网络的稳定性和可靠性,也使网络发生故障时用户的损失达到最低。而且VRRP路由间可以实现设备间的互相备份,也可实现流量的负载均衡,随着用户数量的不断增多,vrrp协议起的作用也将越来越大。
作者简介:
范华明,重庆海事局长江泸州通信管理处,关注方向:长江水上无线电管理与技术发展方向、海事信息化管理技术发展与应用。
[关键词] VRRP;HSRP
1.概述
随着Internet的迅猛发展,基于网络的应用逐渐增多。当前,在部分网络环境,用户对网络的要求非常高,任何停工和储运损耗都会对用户造成严重影响。这就对网络的可靠性提出了越来越高的要求。如Internet服务提供商提供Web主机设备,为了使得用户的Web服务器对公众总是有效的,必须保证用户99.9999%的正常运行时间,再如某网段方便访问外网会设置网关,该网关就是主机所在网段内的一个路由器的接口地址,由R1将报文转发出去。然而,万一R1出现故障,主机将与外界失去联系,陷入孤立的境地。在路由器间为增强网络健壮性,我们可以通过动态路由协议(比如ISIS和OSPF)动态学习。然而,在每一个终端都运行动态路由协议是不现实的,大多客户端操作系统平台都不支持动态路由协议。因此普遍采用对终端IP设备静态路由配置,一般是给终端设备指定一个默认网关(Default Gateway)。静态路由的方法简化了网络管理的复杂度和减轻了终端设备的通信开销,但是它仍然有一个缺点:如果作为默认网关的路由器损坏,所有使用该网关为下一跳主机的通信必然要中断。虚拟路由冗余协议(VRRP:Virtual Router Redundancy Protocol)就是一种很好的解决方案。在该协议中,对共享多存取访问介质(如以太网)上终端IP设备的默认网关(Default?Gateway)进行冗余备份,从而在其中一台路由设备宕机时,备份路由设备及时接管转发工作,向用户提供透明的切换,提高了网络服务质量。
2.VRRP原理
VRRP是一种容错协议,它为具有组播或广播能力的局域网,(如以太网)设计,它保证当局域网内主机的下一跳路由器出现故障时,可以及时的由另一台路由器来代替,从而保持通讯的连续性和可靠性。为了使VRRP工作,要在路由器上配置虚拟路由器号和虚拟IP地址,同时产生一个虚拟MAC地址,这样在这个网络中就加入了一个虚拟路由器。而网络上的主机与虚拟路由器通信,无需了解这个网络上物理路由器的任何信息。一个虚拟路由器由一个主路由器和若干个备份路由器组成,主路由器实现真正的转发功能。当主路由器出现故障时,一个备份路由器将成为新的主路由器接替它的工作。
2.1 VRRP工作机制
VRRP路由器:运行虚拟路由冗余协议(VRRP)的路由器。它将参与一台或多台虚拟路由器。
虚拟路由器(Virtual Router):由VRRP协议管理、设置,作为LAN上终端主机的缺省路由。
IP拥有者(IP Address Owner):拥有与虚拟路由器有相同IP地址的VRRP路由器。此路由器响应ICMP Ping包、TCP连接等。
主用路由器:负责转发发给虚拟路由器的数据包,并响应ARP请求的路由器。若一台拥有与虚拟路由器有相同IP地址的VRRP路由器(IP拥有者)活动,则此VRRP路由器为主用路由器。
备用路由器:在VRRP中,其他参与此虚拟路由器的均为备用路由器。它将在主用路由器不能工作时接替其工作。
VRID:一个虚拟路由器有唯一的标识,范围为0—255。该路由器对外表现为唯一的虚拟MAC地址,地址的格式为00-00-5E-00-01-[VRID]。主控路由器负责对ARP请求用该MAC地址做应答。这样,无论如何切换,保证给终端设备的是唯一一致的IP和MAC地址,减少了切换对终端设备的影响。
为了保证VRRP协议的安全性,提供了两种安全认证措施:明文认证和IP头认证。明文认证方式要求:在加入一个VRRP路由器组时,必须同时提供相同的VRID和明文密码。适合于避免在局域网内的配置错误,但不能防止通过网络监听方式获得密码。IP头认证的方式提供了更高的安全性,能够防止报文重放和修改等攻击。
2.2 VRRP路由器的状态机制
组成虚拟路由器的路由器会有三种状态分别是Initialize, Master和Backup 下面对这三种状态进行说明:
(1) Initialize
系统启动后进入此状态,当收到接口startup的消息,将转入Backup(优先级不为255时)或Master(状态优先级为255时)。在此状态(Initialize)时,路由器不会对VRRP报文做任何处理。
(2) Master
当路由器处于Master状态时它将会做下列工作:
定期发送VRRP组播报文;只有主用路由器可以定期发布VRRP广告消息(keep-alive消息),它使用IP多播数据包进行封装,组地址为224.0.0.18,发布范围只限于同一局域网内。
发送免费gratuitous ARP报文,以使网络内各主机知道虚拟IP地址所对应的虚拟MAC地址;
响应对虚拟IP地址的ARP请求,并且响应的是虚拟MAC地址,而不是接口的真实MAC地址;
转发目的MAC地址为虚拟MAC地址的IP报文;
如果它是这个虚拟IP地址的拥有者,则接收目的IP地址为这个虚拟IP地址的IP报文,否则,丢弃这个IP报文。需要注意的是,由于有这一点要求,所以除非主路由器是IP地址拥有者,否则主机ping虚拟IP地址不能ping通;在Master状态中只有接收到比自己的优先级大的VRRP报文时,才会转为Backup,只有当接收到接口的Shutdown事件时才会转为Initialize。
(3) Backup
当路由器处于Backup状态时它将会做下列工作:
接收Master发送的VRRP组播报文,从中了解Master的状态。备份路由器在连续三个通告间隔内收不到VRRP或收到优先级为0的通告后启动新的一轮VRRP选举。 对虚拟IP地址的ARP请求,不做响应。
丢弃目的MAC地址为虚拟MAC地址的IP报文。
丢弃目的IP地址为虚拟IP地址的IP报文。
只有当Backup接收到MASTER_DOWN这个定时器到时的事件时,才会转为Master, 而当接收到比自己的优先级小的VRRP报文时,它只是做丢弃这个报文的处理,从而就不对定时器做重置处理,这样定时器就会在
若干次这样的处理之后到时,于是就转为Master。只有当接收到接口的Shutdown事件时,才会转为Initialize。
3. VRRP与HSRP比较
(1)HSRP将报文承载在UDP报文上,而VRRP承载在IP报文上(HSRP 使用UDP 1985端口,向组播地址224.0.0.2 发送hello消息)。
(2)VRRP包括一个保护VRRP分组不会被另外一个远程网络添加内容的机制(设置TTL值=255,并在接受时检查),这限制了可以进行本地攻击的大部分缺陷.而另一方面,HSRP在它的消息中使用的TTL值是1。
(3)VRRP中如果两路由器都不是网关地址拥有者且优先级相同,则谁先发VRRP报文,谁就成为主用,而HSRP中是谁的IP地址最高谁成为主用。
(4)HSRP中主用路由器每3秒发一次KEEP-ALIVE包,10秒为失效时间;而VRRP中主用路由器是每1秒发一次KEEP-ALIVE包,VRRP的主用路由器失效时间: 3×广告发送间隔+(256-优先级)/256。
(5)在CISCO的HSRP中,需要单独配置一个IP地址作为虚拟路由器对外体现的地址,这个地址不能是组中任何一个成员的接口地址,但是VRRP允许这种情况发生(如果”拥有”虚拟路由器地址的路由器被建立并且正在运行,那么应该总是由这个虚拟路由器管理—等价于HSRP中的活动路由器),但是为了确保万一失效发生的时候终端主机不必重新学习MAC地址,它指定使用的MAC地址00-00-5e-00-01-VRID,这里的VRID是虚拟路由器的ID(等价于一个HSRP的组标识符)。
(6)安全方面:VRRP对HSRP的一个主要优势,它允许参与VRRP组的设备间建立认证机制。强认证方法使用IP认证头(AH)协议.AH是与用在IPSEC中相同的协议,AH为认证VRRP分组中的内容和分组头提供了一个方法. MD5 HMAC 的使用表明使用一个共享的密钥用于产生hash值.路由器发送一个VRRP分组产生MD5 hash值,并将它置于要发送的通告中,在接收时,接受方使用相同的密钥和MD5值,重新计算分组内容和分组头的hash值,如果结果相同,这个消息就是真正来自于一个可信赖的主机,如果不相同,它必须丢弃,这可以防止攻击者通过访问LAN而发出能影响选择过程的通告消息或者其他一些方法中断网络。
4. 总结
VRRP目前作为设备容错的一个重要协议,提高了网络的稳定性和可靠性,也使网络发生故障时用户的损失达到最低。而且VRRP路由间可以实现设备间的互相备份,也可实现流量的负载均衡,随着用户数量的不断增多,vrrp协议起的作用也将越来越大。
作者简介:
范华明,重庆海事局长江泸州通信管理处,关注方向:长江水上无线电管理与技术发展方向、海事信息化管理技术发展与应用。