08-IRDP配置
本章节下载: 08-IRDP配置 (214.20 KB)
目 录
· 本文提到的主机表示支持IRDP功能的主机。
· 本文提到的路由器表示具有路由功能的网络设备。
一个网络中的主机如果要发送报文到网络外部,它至少需要获取本网络内的一台路由器的IP地址,由路由器把报文转发出去。主机通常有两种方式获取路由器的IP地址:一是在主机上配置默认网关,二是让主机侦听网络内的路由协议报文,从报文中获取路由器的IP地址。
这两种方式都有缺点。第一种要求静态配置,必须要手工维护,而且不能适应网络的动态变化;第二种方式要求主机能够识别各种路由协议的报文,这对于一台主机来说要求太高了,而且有时路由器上不运行动态路由协议,此时主机便无法侦听到路由协议报文。
为了解决上述问题,出现了IRDP(ICMP Router Discovery Protocol,ICMP路由器发现协议)。IRDP是ICMP协议的一个扩展,它采用两种新的ICMP消息类型来实现主机对路由器的发现,使得主机能够动态地发现本地网络中路由器的IP地址,并设置自己的缺省路由。IRDP可以动态适应网络的变化,也不用手工维护大量的配置,并且不依赖于任何一种具体的路由协议。
IRDP中用到两种ICMP消息:
· 路由公告消息RA(Router Advertisement):由路由器发送,用于公告该路由器的IP地址、优先级等信息。
· 路由请求消息RS(Router Solicitation):由主机发送,用于主动向网络中的路由器请求其IP地址。
IRDP的工作机制如下:
· 路由器周期性的从接口发送RA,公告该接口的IP地址(包括接口的主IP地址和从IP地址)。主机接收到RA后,就会获取到网络中路由器的IP地址。
· 当一台主机刚刚连接到网络上,它可以主动发送RS来请求路由器的IP地址,而不是被动等待RA。如果主机发送的RS没有回应,它可以重传几次RS。如果主机通过上述主动方式不能获取路由器的IP地址,那么还可以通过后续路由器周期性公告RA来获取路由器的IP地址。
· 主机接收到RA后,将根据RA中包含的IP地址,添加本地路由。如果主机希望缺省路由也从RA中获取,那么主机将从收到的所有RA包含的IP地址中选择一个优先级最高的IP地址作为本机缺省路由。
IRDP功能只能使主机获取路由器的IP地址,但并不能帮主机判断出通过哪台路由器到达目的地址是最优的。如果主机选中了一台到达某目的地非最优的路由器作为报文转发路由器,一旦报文转发到那台路由器后,主机会收到从那台路由器发来的一个ICMP重定向报文,让主机发往这个目的地的报文重定向到一台更优的路由器上。
RA中每一个被公告的IP地址都对应一个“优先级”值,这个优先级是主机选择缺省路由的依据。当主机希望从RA中获取缺省路由时,它将从收到的所有RA包含的IP地址中选择一个优先级最高的IP地址作为本机缺省路由。
用户可以对路由器公告的IP地址的优先级进行配置,以控制主机优先选择哪个IP地址作为缺省路由。
优先级值越大表示优先级越高。最小的优先级值(-2147483648)表示主机不要使用这个地址作为缺省路由。
生命周期表示路由器公告的IP地址可以在主机上存在的时间。如果在生命周期内主机未收到包含该IP地址的新的RA,那么该IP地址将被删除。
通过同一个接口公告出去的所有IP地址具有相同的生命周期。
开启IRDP功能后,路由器会周期性发送RA。发送RA不是完全周期性的,每两次发送RA的时间间隔是在最小时间间隔和最大时间间隔之间的一个随机值,从而避免同一链路上多个路由器同时发送RA对网络性能的影响。
在丢包严重的链路上,建议缩短RA的发送周期。
RA消息的目的IP地址可以有两种:广播地址255.255.255.255、组播地址224.0.0.1(本地链路所有主机)。
缺省情况下,RA消息的目的IP地址采用广播地址。如果局域网内的客户端都支持接收组播报文,那么建议使用组播地址224.0.0.1作为RA消息的目的IP地址。
缺省情况下,接口仅向外公告接口的主IP地址和从IP地址,如果用户希望接口公告其他IP地址,可以通过命令行手工配置该接口代理公告的IP地址。
· RFC 1256:ICMP Router Discovery Messages
表1-1 配置IRDP
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入接口视图 |
interface interface-type interface-number |
支持配置IP地址的三层接口,不包括loopback口 |
开启接口的IRDP功能 |
ip irdp |
只有开启接口的IRDP功能,其他IRDP相关配置才生效,设备才会从该接口发送路由公告消息RA 缺省情况下,接口的IRDP功能处于关闭状态 |
(可选)配置接口公告的接口IP地址的优先级 |
ip irdp preference preference-value |
缺省情况下,接口公告的接口IP地址的优先级为0 本配置对接口公告出去的所有接口IP地址(包括接口主IP地址和从IP地址)有效 |
(可选)配置接口公告的IP地址的生命周期 |
ip irdp lifetime lifetime-value |
缺省情况下,接口公告的IP地址的生命周期为1800秒 本配置对接口公告出去的所有IP地址(包括接口IP地址和代理公告的IP地址)有效 接口公告的IP地址的生命周期必须大于等于接口发送周期性RA的最大时间间隔 |
(可选)配置接口发送周期性RA的最大时间间隔和最小时间间隔 |
ip irdp interval max-interval [ min-interval ] |
缺省情况下,接口发送周期性RA的最大时间间隔为600秒,最小时间间隔为最大时间间隔的0.75倍 |
(可选)配置接口组播发送RA消息,报文的目的IP地址为224.0.0.1 |
ip irdp multicast |
缺省情况下,接口广播发送RA消息,报文的目的IP地址为广播地址255.255.255.255 |
(可选)配置接口代理公告的IP地址 |
ip irdp address ip-address preference-value |
该命令支持重复配置,设备上接口最多支持配置4个代理公告的IP地址 缺省情况下,未设置接口代理公告的IP地址 |
· 公司内部网络中有两台Linux系统的主机Host A和Host B,支持IRDP功能。
· 内部交换网连接了两台出口交换机Switch A和Switch B,分别到达外网192.168.1.0/24和192.168.2.0/24。
用户希望两台主机使用Switch A作为缺省交换机(缺省交换机需要同时存在到外网1和外网2的路由),并且到两个外网的报文能正确路由。
(1) 配置Switch A
# 配置到外网2的路由。(配置步骤略)
# 配置VLAN接口2的IP地址。
<SwitchA> system-view
[SwitchA] interface vlan-interface 2
[SwitchA-Vlan-interface2] ip address 10.154.5.1 24
# 开启VLAN接口2的IRDP功能。
[SwitchA-Vlan-interface2] ip irdp
# 配置VLAN接口2公告的接口IP地址的优先级为1000。
[SwitchA-Vlan-interface2] ip irdp preference 1000
# 配置VLAN接口2发送的RA消息的目的IP地址为组播地址。
[SwitchA-Vlan-interface2] ip irdp multicast
# 配置VLAN接口2代理公告IP地址为192.168.1.0,优先级为400。
[SwitchA-Vlan-interface2] ip irdp address 192.168.1.0 400
(2) 配置Switch B
# 配置VLAN接口2的IP地址。
<SwitchB> system-view
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] ip address 10.154.5.2 24
# 开启VLAN接口2的IRDP功能。
[SwitchB-Vlan-interface2] ip irdp
# 配置VLAN接口2公告的接口IP地址的优先级为500。
[SwitchB-Vlan-interface2] ip irdp preference 500
# 配置VLAN接口2发送的RA消息的目的IP地址为组播地址。
[SwitchB-Vlan-interface2] ip irdp multicast
# 配置VLAN接口2代理公告IP地址为192.168.2.0,优先级为400。
[SwitchB-Vlan-interface2] ip irdp address 192.168.2.0 400
Host A和Host B打开IRDP功能后,查看Host A的路由表。
[HostA@localhost ~]$ netstat -rne
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.154.5.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
0.0.0.0 10.154.5.1 0.0.0.0 UG 0 0 0 eth1
从上面的信息可以看出,Host A的缺省路由是10.154.5.1,并且有到达外网192.168.1.0/24、192.168.2.0/24的路由。
查看Host B的路由表。
[HostB@localhost ~]$ netstat -rne
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.154.5.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
0.0.0.0 10.154.5.1 0.0.0.0 UG 0 0 0 eth1
从上面的信息可以看出,Host B的缺省路由是10.154.5.1,并且有到达外网192.168.1.0/24、192.168.2.0/24的路由。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!