09-IPv6静态路由配置
本章节下载: 09-IPv6静态路由配置 (430.09 KB)
静态路由是一种特殊的路由,由管理员手工配置。当网络结构比较简单时,只需配置静态路由就可以使网络正常工作。
静态路由不能自动适应网络拓扑结构的变化。当网络发生故障或者拓扑发生变化后,必须由网络管理员手工修改配置。
IPv6静态路由与IPv4静态路由类似,适合于一些结构比较简单的IPv6网络。
(1) 进入系统视图。
system-view
(2) 配置IPv6静态路由。
(公网)
ipv6 route-static ipv6-address prefix-length { interface-type interface-number [ next-hop-address ] | next-hop-address | vpn-instance d-vpn-instance-name nexthop-address } [ permanent | track track-entry-number ] [ preference preference ] [ tag tag-value ] [ no-advertise ] [ description text ]
ipv6 route-static ipv6-address prefix-length vpn-instance d-vpn-instance-name [ preference preference ] [ tag tag-value ] [ no-advertise ] [ description text ]
ipv6 route-static ipv6-address prefix-length { remote-sid remote-sid locator-prefix-len | srv6-policy { color color-value end-point ipv6 ipv6-address | name policy-name } [ sid sid ] } * [ preference preference ] [ tag tag-value ] [ no-advertise ] [ description text ]
缺省情况下,未配置IPv6静态路由。
参数remote-sid和sid互斥,不能同时配置。
(VPN网络)
ipv6 route-static vpn-instance s-vpn-instance-name ipv6-address prefix-length { interface-type interface-number [ next-hop-address ] | nexthop-address [ public ] | vpn-instance d-vpn-instance-name nexthop-address } [ permanent | track track-entry-number ] [ preference preference ] [ tag tag-value ] [ no-advertise ] [ description text ]
ipv6 route-static vpn-instance s-vpn-instance-name ipv6-address prefix-length { public | vpn-instance d-vpn-instance-name } [ preference preference ] [ tag tag-value ] [ no-advertise ] [ description text ]
ipv6 route-static vpn-instance s-vpn-instance-name ipv6-address prefix-length { remote-sid remote-sid locator-prefix-len | srv6-policy { color color-value end-point ipv6 ipv6-address | name policy-name } [ sid sid ] } * [ preference preference ] [ tag tag-value ] [ no-advertise ] [ description text ]
如果某VPN实例已经被指定为目的VPN实例,那么为此VPN实例配置静态路由时不支持vpn-instance d-vpn-instance-name参数。
配置指定目的VPN实例的静态路由时不支持除VXLAN隧道外的隧道。
若策略节点的动作只设置了报文的缺省下一跳和缺省SRv6 TE Policy,那么不能为此策略节点匹配规则包含的VPN实例配置静态路由,ipv6-address参数也不能是策略节点匹配规则中包含的目的IPv6地址。关于IPv6策略路由的详细介绍,请参考“三层技术-IP路由”中的“IPv6策略路由”。
缺省情况下,未配置IPv6静态路由。
参数remote-sid和sid互斥,不能同时配置。
(3) (可选)配置IPv6静态路由的缺省优先级。
ipv6 route-static default-preference default-preference
缺省情况下,IPv6静态路由的缺省优先级为60。
配置IPv6浮动静态路由可以实现路由备份,提高网络可靠性。
如果设备上已存在去往某一目的地址的IPv6静态或动态路由,则再配置一条低优先级的IPv6静态路由可以起到路由备份的作用,从而提高网络可靠性。这条优先级较低的IPv6静态路由称为IPv6浮动静态路由,只有当主路由不可用时该IPv6静态路由才会被激活,承担数据转发业务;在主路由恢复正常后,该IPv6静态路由又变为不活跃状态,数据转发业务仍然由主路由承担。
IPv6浮动静态路由有如下两种配置方式:
· 为目的地址相同的多条IPv6静态路由指定不同的优先级,则低优先级的IPv6静态路由自动成为备份路由。
· 如果设备上已存在去往某一目的地址的IPv6动态路由,则可以再配置一条低优先级IPv6静态路由。当主用路由暂时不可用时,该静态路由将承担数据转发业务。
在配置IPv6浮动静态路由时,该路由优先级的值需大于主用路由优先级的值,具体的配置步骤请参见“1.2 配置IPv6静态路由”。
使用undo ipv6 route-static命令可以删除一条IPv6静态路由,而使用delete ipv6 static-routes all命令可以删除包括缺省路由在内的所有IPv6静态路由。
(1) 进入系统视图。
system-view
(2) 删除所有IPv6静态路由。
delete ipv6 [ vpn-instance vpn-instance-name ] static-routes all
删除全部IPv6静态路由可能导致网络不通,报文转发失败,请谨慎使用。
BFD(Bidirectional Forwarding Detection,双向转发检测)提供了一个通用的、标准化的、介质无关、协议无关的快速故障检测机制,可以为上层协议(如路由协议、MPLS等)统一地快速检测两台路由器间双向转发路径的故障。使能IPv6与BFD联动功能后,BFD将对IPv6静态路由的下一跳可达性进行快速检测。当检测到下一跳不可达时,相应的IPv6静态路由将会被删除。
关于BFD的详细介绍,请参见“可靠性配置指导”中的“BFD”。
配置IPv6静态路由与BFD联动时,需要注意:
· 对于直连下一跳,当指定的出接口类型为非P2P接口时,建议用户通过bfd-source命令指定BFD源IPv6地址,该地址必须为出接口的IPv6地址,且与下一跳IPv6地址处在同一网段。如果下一跳IPv6地址指定的是链路本地地址,本参数也必须是链路本地地址。
· 对于直连下一跳或者非直连下一跳,如果要指定BFD源IPv6地址,那么下一跳IPv6地址和BFD源IPv6地址必须成对配置,即本端指定的下一跳IPv6地址是对端的BFD源IPv6地址,本端指定的BFD源IPv6地址是对端的下一跳IPv6地址。
· 路由震荡时,使能BFD功能可能会加剧震荡,请谨慎使用。
通过控制报文检测两个方向上的链路状态,实现毫秒级别的链路故障检测。
控制报文方式的BFD检测支持直连下一跳和非直连下一跳:
· 直连下一跳是指下一跳和本端是直连的,配置时必须指定出接口和下一跳。
· 非直连下一跳是指下一跳和本端不是直连的,中间还有其它设备。
本端配置控制报文方式的BFD检测时,需要对端也配置控制报文方式的BFD检测。
(1) 进入系统视图。
system-view
(2) 配置静态路由与BFD联动。
ipv6 route-static [ vpn-instance s-vpn-instance-name ] ipv6-address prefix-length interface-type interface-number next-hop-address bfd { control-packet [ bfd-source ipv6-address ] | static session-name } [ preference preference ] [ tag tag-value ] [ description text ]
为VPN实例配置静态路由时,若策略节点的动作只设置了报文的缺省下一跳和缺省SRv6 TE Policy,那么不能为此策略节点匹配规则包含的VPN实例配置静态路由,ipv6-address参数也不能是策略节点匹配规则中包含的目的IPv6地址。关于IPv6策略路由的详细介绍,请参考“三层技术-IP路由”中的“IPv6策略路由”。
缺省情况下,未配置IPv6静态路由与BFD联动。
(3) (可选)配置IPv6静态路由的BFD会话参数。
ipv6 route-static bfd interface-type interface-number next-hop-address { detect-multiplier detect-multiplier | min-receive-interval min-receive-interval | min-transmit-interval min-transmit-interval }*
缺省情况下,未配置IPv6静态路由的BFD会话参数,使用通用BFD会话参数作为IPv6静态路由的BFD会话参数。
(1) 进入系统视图。
system-view
(2) 配置静态路由与BFD联动。
ipv6 route-static [ vpn-instance s-vpn-instance-name ] ipv6-address prefix-length [ vpn-instance d-vpn-instance-name ] { next-hop-address bfd { control-packet bfd-source ipv6-address | static session-name } } [ preference preference ] [ tag tag-value ] [ description text ]
为VPN实例配置静态路由时,如果某VPN实例已经被指定为目的VPN实例,那么为此VPN实例配置静态路由时不支持vpn-instance d-vpn-instance-name参数。
为VPN实例配置静态路由时,配置指定目的VPN实例的静态路由时不支持除VXLAN隧道外的隧道。
为VPN实例配置静态路由时,若策略节点的动作只设置了报文的缺省下一跳和缺省SRv6 TE Policy,那么不能为此策略节点匹配规则包含的VPN实例配置静态路由,ipv6-address参数也不能是策略节点匹配规则中包含的目的IPv6地址。关于IPv6策略路由的详细介绍,请参考“三层技术-IP路由”中的“IPv6策略路由”。
缺省情况下,未配置IPv6静态路由与BFD联动。
(3) (可选)配置IPv6静态路由的BFD会话参数。
ipv6 route-static bfd [ vpn-instance d-vpn-instance-name ] next-hop-address source-ipv6 ipv6-address { detect-multiplier detect-multiplier | min-receive-interval min-receive-interval | min-transmit-interval min-transmit-interval } *
为VPN实例配置静态路由时,如果某VPN实例已经被指定为目的VPN实例,那么为此VPN实例配置静态路由时不支持vpn-instance d-vpn-instance-name参数。
为VPN实例配置静态路由时,配置指定目的VPN实例的静态路由时不支持除VXLAN隧道外的隧道。
为VPN实例配置静态路由时,若策略节点的动作只设置了报文的缺省下一跳和缺省SRv6 TE Policy,那么不能为此策略节点匹配规则包含的VPN实例配置静态路由,ipv6-address参数也不能是策略节点匹配规则中包含的目的IPv6地址。关于IPv6策略路由的详细介绍,请参考“三层技术-IP路由”中的“IPv6策略路由”。
缺省情况下,未配置IPv6静态路由的BFD会话参数,使用通用BFD会话参数作为IPv6静态路由的BFD会话参数。
通过echo报文方式的BFD检测链路时,echo报文的目的地址为本端接口地址,发送给下一跳设备后会直接转发回本端。
只需要在本端配置echo报文方式的BFD检测。
IPv6静态路由的出接口处于SPOOFING状态时,不能使用BFD进行检测。
(1) 进入系统视图。
system-view
(2) (可选)配置echo报文的源IPv6地址。
bfd echo-source-ipv6 ipv6-address
缺省情况下,未配置echo报文的源IPv6地址。
建议配置本命令,且配置的源IPv6地址不属于该设备任何一个接口所在网段,以避免对端发送大量的ICMPv6重定向报文造成网络拥塞。
echo报文源IPv6地址仅支持全球单播地址。
本命令的详细情况请参见“可靠性命令参考”中的“BFD”。
(3) 配置静态路由与BFD联动。
ipv6 route-static [ vpn-instance s-vpn-instance-name ] ipv6-address prefix-length interface-type interface-number next-hop-address bfd { echo-packet [ bfd-source ipv6-address ] | static session-name } [ preference preference ] [ tag tag-value ] [ description text ]
为VPN实例配置静态路由时,若策略节点的动作只设置了报文的缺省下一跳和缺省SRv6 TE Policy,那么不能为此策略节点匹配规则包含的VPN实例配置静态路由,ipv6-address参数也不能是策略节点匹配规则中包含的目的IPv6地址。关于IPv6策略路由的详细介绍,请参考“三层技术-IP路由”中的“IPv6策略路由”。
缺省情况下,未配置IPv6静态路由与BFD联动。
下一跳IPv6地址必须为全球单播地址。
(4) (可选)配置IPv6静态路由的BFD会话参数。
ipv6 route-static bfd interface-type interface-number next-hop-address { detect-multiplier detect-multiplier | min-echo-receive-interval min-echo-receive-interval }*
缺省情况下,未配置IPv6静态路由的BFD会话参数,使用通用BFD会话参数作为IPv6静态路由的BFD会话参数。
当网络中的链路或某台路由器发生故障时,需要通过故障链路或故障路由器传输才能到达目的地的报文将会丢失,数据流量将会被中断。
为了尽可能避免网络故障导致的流量中断,网络管理员可以根据需要配置IPv6静态路由快速重路由功能。
图1-1 IPv6静态路由快速重路由功能示意图
如图1-1所示,通过配置快速重路由功能,网络管理员可以为路由指定备份下一跳,也可以在存在低优先级IPv6静态路由的情况下,使能自动快速重路由功能,查找满足条件的低优先级路由的下一跳作为主路由的备份下一跳,当路由器检测到网络故障时,路由器会使用事先配置好的备份下一跳替换失效下一跳,通过备份下一跳来指导报文的转发,从而避免了流量中断。
IPv6静态路由快速重路由功能不能与IPv6静态路由BFD功能同时使用。
等价路由不支持配置IPv6静态路由快速重路由功能。
配置本功能后,当主链路三层接口up,主链路由双通变为单通或者不通时,设备会将流量快速地切换到备份路径上转发;当主链路三层接口down时,设备会暂时将流量快速地切换到备份路径上转发。同时,设备会重新查找到达目的地址的路由,并将流量切换到查找到的新的路径。如果没有查找到路由,则流量转发会中断。因此,除本配置创建的IPv6静态路由外,设备上还需要存在一条到达目的地址的路由。单通现象,即一条链路上的两端,有且只有一端可以收到另一端发来的报文,此链路称为单向链路。
(1) 进入系统视图。
system-view
(2) 配置IPv6静态路由自动快速重路由功能。
ipv6 route-static fast-reroute auto
缺省情况下,IPv6静态路由自动快速重路由功能处于关闭状态。
缺省情况下,IPv6静态路由通过IPv6 ND检测主路由的下一跳是否可达。配置本功能后,将使用BFD(Echo方式)检测主路由的下一跳是否可达,这种方式可以更快地检测到链路故障。
(1) 进入系统视图。
system-view
(2) (可选)配置BFD Echo报文源地址。
bfd echo-source-ipv6 ipv6-address
缺省情况下,未配置echo报文的源IPv6地址。
建议配置本命令,且配置的源IPv6地址不属于该设备任何一个接口所在网段,以避免对端发送大量的ICMPv6重定向报文造成网络拥塞。
echo报文源IPv6地址仅支持全球单播地址。
本命令的详细情况请参见“可靠性命令参考”中的“BFD”。
(3) 使能IPv6静态路由中主用链路的BFD(Echo方式)检测功能。
ipv6 route-static primary-path-detect bfd echo
缺省情况下,IPv6静态路由中主用链路的BFD(Echo方式)检测功能处于关闭状态。
如果IPv6静态路由的下一跳不是直连的,则需要进行路由迭代。当IPv6静态路由的下一跳迭代到SRv6 BE或SRv6 TE Policy路径时,缺省情况下,IPv6静态路由不会继承迭代路由的SRv6封装信息,即设备不会为满足匹配该IPv6静态路由的报文添加SRv6封装信息,只会根据路由迭代找到出接口将报文转发出去。
配置本功能后,如果IPv6静态路由的下一跳迭代到了SRv6 BE或SRv6 TE Policy路径,则IPv6静态路由会继承迭代路由的SRv6封装信息,设备会对匹配该IPv6静态路由的报文添加SRv6封装,然后将封装后的报文以SRv6 BE方式或通过SRv6 TE Policy转发出去。
有关SRv6 BE的详细介绍,请参见“Segment Routing配置指导”中的“IP L3VPN over SRv6”或“公网IP over SRv6”。有关SRv6 TE Policy的详细介绍,请参见“Segment Routing配置指导”中的“SRv6 TE Policy”。
(1) 进入系统视图。
system-view
(2) 配置允许IPv6静态路由继承迭代路由的SRv6封装信息。
ipv6 route-static recursive-lookup segment-routing-ipv6
缺省情况下,不允许IPv6静态路由继承迭代路由的SRv6封装信息。
在完成上述配置后,在任意视图下执行display命令查看IPv6静态路由配置的运行情况并检验配置结果。
表1-1 IPv6静态路由显示和维护
操作 |
命令 |
查看IPv6静态路由表信息(本命令的详细情况请参见“三层技术-IP路由命令参考”中的“IP路由基础”) |
display ipv6 routing-table protocol static [ inactive | verbose ] |
显示IPv6静态路由下一跳信息 |
display ipv6 route-static nib [ nib-id ] [ verbose ] |
显示IPv6静态路由表信息 |
display ipv6 route-static routing-table [ vpn-instance vpn-instance-name ] [ ipv6-address prefix-length ] |
要求各路由器之间配置IPv6静态路由后,可以使所有主机和路由器之间互通。
图1-2 IPv6静态路由基本功能配置组网图
(1) 配置各接口的IPv6地址(略)
(2) 配置IPv6静态路由
# 在Router A上配置IPv6缺省路由。
<RouterA> system-view
[RouterA] ipv6 route-static :: 0 4::2
# 在Router B上配置两条IPv6静态路由。
<RouterB> system-view
[RouterB] ipv6 route-static 1:: 64 4::1
[RouterB] ipv6 route-static 3:: 64 5::1
# 在Router C上配置IPv6缺省路由。
<RouterC> system-view
[RouterC] ipv6 route-static :: 0 5::2
(3) 配置主机地址和网关
根据组网图配置好各主机的IPv6地址,并将Host A的缺省网关配置为1::1,Host B的缺省网关配置为2::1,Host C的缺省网关配置为3::1。
# 查看Router A的IPv6静态路由信息。
[RouterA] display ipv6 routing-table protocol static
Summary Count : 1
Static Routing table Status : <Active>
Summary Count : 1
Destination: :: Protocol : Static
NextHop : 4::2 Preference: 60
Interface : XGE3/1/2 Cost : 0
Static Routing table Status : <Inactive>
Summary Count : 0
# 查看Router B的IPv6静态路由信息。
[RouterB] display ipv6 routing-table protocol static
Summary Count : 2
Static Routing table Status : <Active>
Summary Count : 2
Destination: 1::/64 Protocol : Static
NextHop : 4::1 Preference: 60
Interface : XGE3/1/1 Cost : 0
Destination: 3::/64 Protocol : Static
NextHop : 5::1 Preference: 60
Interface : XGE3/1/2 Cost : 0
Static Routing table Status : <Inactive>
Summary Count : 0
# 使用Ping进行验证。
[RouterA] ping ipv6 3::1
Ping6(56 data bytes) 4::1 --> 3::1, press CTRL_C to break
56 bytes from 3::1, icmp_seq=0 hlim=62 time=0.700 ms
56 bytes from 3::1, icmp_seq=1 hlim=62 time=0.351 ms
56 bytes from 3::1, icmp_seq=2 hlim=62 time=0.338 ms
56 bytes from 3::1, icmp_seq=3 hlim=62 time=0.373 ms
56 bytes from 3::1, icmp_seq=4 hlim=62 time=0.316 ms
--- Ping6 statistics for 3::1 ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/std-dev = 0.316/0.416/0.700/0.143 ms
· 在Router A上配置IPv6静态路由可以到达120::/64网段,在Router B上配置IPv6静态路由可以到达121::/64网段,并使能BFD检测功能。
· 在Router C上配置IPv6静态路由可以到达120::/64网段和121::/64网段。
· 当Router A和Router B通过L2 Switch通信的链路出现故障时,BFD能够快速感知,并且切换到Router C进行通信。
图1-3 IPv6静态路由与BFD联动(直连)配置组网图
设备 |
接口 |
IPv6地址 |
设备 |
接口 |
IPv6地址 |
Router A |
XGE3/1/1 |
12::1/64 |
Router B |
XGE3/1/1 |
12::2/64 |
|
XGE3/1/2 |
10::102/64 |
|
XGE3/1/2 |
13::1/64 |
Router C |
XGE3/1/1 |
10::100/64 |
|
|
|
|
XGE3/1/2 |
13::2/64 |
|
|
|
(1) 配置各接口的IPv6地址(略)
(2) 配置IPv6静态路由和BFD
# 在Router A上配置IPv6静态路由,并使能BFD检测功能,使用控制报文方式。
<RouterA> system-view
[RouterA] interface ten-gigabitethernet 3/1/1
[RouterA-Ten-GigabitEthernet3/1/1] bfd min-transmit-interval 500
[RouterA-Ten-GigabitEthernet3/1/1] bfd min-receive-interval 500
[RouterA-Ten-GigabitEthernet3/1/1] bfd detect-multiplier 9
[RouterA-Ten-GigabitEthernet3/1/1] quit
[RouterA] ipv6 route-static 120:: 64 ten-gigabitethernet 3/1/1 12::2 bfd control-packet
[RouterA] ipv6 route-static 120:: 64 10::100 preference 65
[RouterA] quit
# 在Router B上配置静态路由,并使能BFD检测功能,使用控制报文方式。
<RouterB> system-view
[RouterB] interface ten-gigabitethernet 3/1/1
[RouterB-Ten-GigabitEthernet3/1/1] bfd min-transmit-interval 500
[RouterB-Ten-GigabitEthernet3/1/1] bfd min-receive-interval 500
[RouterB-Ten-GigabitEthernet3/1/1] bfd detect-multiplier 9
[RouterB-Ten-GigabitEthernet3/1/1] quit
[RouterB] ipv6 route-static 121:: 64 ten-gigabitethernet 3/1/1 12::1 bfd control-packet
[RouterB] ipv6 route-static 121:: 64 13::2 preference 65
[RouterB] quit
# 在Router C上配置静态路由。
<RouterC> system-view
[RouterC] ipv6 route-static 120:: 64 13::1
[RouterC] ipv6 route-static 121:: 64 10::102
下面以Router A为例,Router B和Router A类似,不再赘述。
# 查看BFD会话,可以看到BFD会话已经创建。
<RouterA> display bfd session
Total sessions: 1 Up sessions: 1 Init mode: Active
IPv6 session working in control packet mode:
Local discr: 513 Remote discr: 33
Source IP: 12::1
Destination IP: 12::2
Session state: Up Interface: XGE3/1/1
Hold time: 2012ms
# 查看IPv6静态路由,可以看到Router A经过L2 Switch到达Router B。
<RouterA> display ipv6 routing-table protocol static
Summary Count : 1
Static Routing table Status : <Active>
Summary Count : 1
Destination: 120::/64 Protocol : Static
NextHop : 12::2 Preference: 60
Interface : XGE3/1/1 Cost : 0
Static Routing table Status : <Inactive>
Summary Count : 0
当Router A和Router B通过L2 Switch通信的链路出现故障时:
# 查看静态路由,可以看到Router A经过Router C到达Router B。
<RouterA> display ipv6 routing-table protocol static
Summary Count : 1
Static Routing table Status : <Active>
Summary Count : 1
Destination: 120::/64 Protocol : Static
NextHop : 10::100 Preference: 65
Interface : XGE3/1/2 Cost : 0
Static Routing table Status : <Inactive>
Summary Count : 0
· 在Router A上配置IPv6静态路由可以到达120::/64网段,在Router B上IPv6配置静态路由可以到达121::/64网段,并使能BFD检测功能。
· 在Router C和Router D上配置IPv6静态路由可以到达120::/64网段和121::/64网段。
· Router A存在到Router B的接口Loopback1(2::9/128)的路由,出接口为Ten-GigabitEthernet3/1/1;Router B存在到Router A的接口Loopback1(1::9/128)的路由,出接口为Ten-GigabitEthernet3/1/1;Router D存在到1::9/128的路由,出接口为Ten-GigabitEthernet3/1/1,存在到2::9/128的路由,出接口为Ten-GigabitEthernet3/1/2。
· 当Router A和Router B通过Router D通信的链路出现故障时,BFD能够快速感知,并且切换到Router C进行通信。
图1-4 IPv6静态路由与BFD联动(非直连)配置组网图
设备 |
接口 |
IPv6地址 |
设备 |
接口 |
IPv6地址 |
Router A |
XGE3/1/1 |
12::1/64 |
Router B |
XGE3/1/1 |
11::2/64 |
|
XGE3/1/2 |
10::102/64 |
|
XGE3/1/2 |
13::1/64 |
|
Loop1 |
1::9/128 |
|
Loop1 |
2::9/128 |
Router C |
XGE3/1/1 |
10::100/64 |
Router D |
XGE3/1/1 |
12::2/64 |
|
XGE3/1/2 |
13::2/64 |
|
XGE3/1/2 |
11::1/64 |
(1) 配置各接口的IPv6地址(略)
(2) 配置IPv6静态路由和BFD
# 在Router A上配置IPv6静态路由,并使能BFD检测功能,使用控制报文方式。
<RouterA> system-view
[RouterA] bfd multi-hop min-transmit-interval 500
[RouterA] bfd multi-hop min-receive-interval 500
[RouterA] bfd multi-hop detect-multiplier 9
[RouterA] ipv6 route-static 120:: 64 2::9 bfd control-packet bfd-source 1::9
[RouterA] ipv6 route-static 120:: 64 10::100 preference 65
[RouterA] ipv6 route-static 2::9 128 12::2
[RouterA] quit
# 在Router B上配置IPv6静态路由,并使能BFD检测功能,使用控制报文方式。
<RouterB> system-view
[RouterB] bfd multi-hop min-transmit-interval 500
[RouterB] bfd multi-hop min-receive-interval 500
[RouterB] bfd multi-hop detect-multiplier 9
[RouterB] ipv6 route-static 121:: 64 1::9 bfd control-packet bfd-source 2::9
[RouterB] ipv6 route-static 121:: 64 13::2 preference 65
[RouterB] ipv6 route-static 1::9 128 11::1
[RouterB] quit
# 在Router C上配置静态路由。
<RouterC> system-view
[RouterC] ipv6 route-static 120:: 64 13::1
[RouterC] ipv6 route-static 121:: 64 10::102
# 在Router D上配置静态路由。
<RouterD> system-view
[RouterD] ipv6 route-static 120:: 64 11::2
[RouterD] ipv6 route-static 121:: 64 12::1
[RouterD] ipv6 route-static 2::9 128 11::2
[RouterD] ipv6 route-static 1::9 128 12::1
下面以Router A为例,Router B和Router A类似,不再赘述。
# 查看BFD会话,可以看到BFD会话已经创建。
<RouterA> display bfd session
Total sessions: 1 Up sessions: 1 Init mode: Active
IPv6 session working in control packet mode:
Local discr: 513 Remote discr: 33
Source IP: 1::9
Destination IP: 2::9
Session state: Up Interface: N/A
Hold time: 2012ms
# 查看IPv6静态路由,可以看到Router A经过Router D到达Router B。
<RouterA> display ipv6 routing-table protocol static
Summary Count : 1
Static Routing table Status : <Active>
Summary Count : 1
Destination: 120::/64 Protocol : Static
NextHop : 2::9 Preference: 60
Interface : XGE3/1/1 Cost : 0
Static Routing table Status : <Inactive>
Summary Count : 0
当Router A和Router B通过Router D通信的链路出现故障时:
# 查看IPv6静态路由,可以看到Router A经过Router C到达Router B。
<RouterA> display ipv6 routing-table protocol static
Summary Count : 1
Static Routing table Status : <Active>
Summary Count : 1
Destination: 120::/64 Protocol : Static
NextHop : 10::100 Preference: 65
Interface : XGE3/1/2 Cost : 0
Static Routing table Status : <Inactive>
Summary Count : 0
如图1-5所示,Router A、Router B和Router C通过IPv6静态路由实现网络互连。要求当Router A和Router B之间的链路A出现单通故障时,业务可以快速切换到链路B上。
设备 |
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
Router A |
XGE3/1/1 |
13::1/64 |
Router B |
XGE3/1/1 |
23::2/64 |
|
XGE3/1/2 |
12::1/64 |
|
XGE3/1/2 |
12::2/64 |
|
Loop0 |
1::9/128 |
|
Loop0 |
2::9/128 |
Router C |
XGE3/1/1 |
13::3/64 |
|
|
|
|
XGE3/1/2 |
23::3/64 |
|
|
|
(1) 配置各接口的IPv6地址(略)
(2) 配置静态路由快速重路由功能(自动查找备份下一跳)
# 在Router A上配置IPv6静态路由,并配置IPv6静态路由自动快速重路由功能。
<RouterA> system-view
[RouterA] ipv6 route-static 2::9 128 ten-gigabitethernet 3/1/2 12::2
[RouterA] ipv6 route-static 2::9 128 ten-gigabitethernet 3/1/1 13::3 preference 70
[RouterA] ipv6 route-static 23:: 64 ten-gigabitethernet 3/1/2 12::2
[RouterA] ipv6 route-static 23:: 64 ten-gigabitethernet 3/1/1 13::3 preference 70
[RouterA] ipv6 route-static fast-reroute auto
# 在Router B上配置IPv6静态路由,并配置IPv6静态路由自动快速重路由功能。
<RouterB> system-view
[RouterB] ipv6 route-static 1::9 128 ten-gigabitethernet 3/1/2 12::1
[RouterB] ipv6 route-static 1::9 128 ten-gigabitethernet 3/1/1 23::3 preference 70
[RouterB] ipv6 route-static 13:: 64 ten-gigabitethernet 3/1/2 12::1
[RouterB] ipv6 route-static 13:: 64 ten-gigabitethernet 3/1/1 23::3 preference 70
[RouterB] ipv6 route-static fast-reroute auto
(3) 配置链路B上的静态路由
# 在Router C上配置静态路由。
<RouterC> system-view
[RouterC] ipv6 route-static 1::9 128 ten-gigabitethernet 3/1/1 13::1
[RouterC] ipv6 route-static 2::9 128 ten-gigabitethernet 3/1/2 23::2
# 在Router A上查看2::9/128路由,可以看到备份下一跳信息。
[RouterA] display ipv6 routing-table 2::9 verbose
Summary Count : 1
Destination: 2::9/128
Protocol: Static
Process ID: 0
SubProtID: 0x1 Age: 00h09m12s
FlushedAge: 15h28m49s
Cost: 0 Preference: 60
IpPre: N/A QosLocalID: N/A
Tag: 0 State: Active Adv
OrigTblID: 0x0 OrigVrf: default-vrf
TableID: 0xa OrigAs: 0
NibID: 0x21000002 LastAs: 0
AttrID: 0xffffffff Neighbor: ::
Flags: 0x10040 OrigNextHop: 12::2
Label: NULL RealNextHop: 12::2
BkLabel: NULL BkNextHop: 13::3
SRLabel: NULL Interface: Ten-GigabitEthernet3/1/2
BkSRLabel: NULL BkInterface: Ten-GigabitEthernet3/1/1
Tunnel ID: Invalid IPInterface: Ten-GigabitEthernet3/1/2
BkTunnel ID: Invalid BkIPInterface: Ten-GigabitEthernet3/1/1
InLabel: NULL ColorInterface: N/A
SIDIndex: NULL BkColorInterface: N/A
FtnIndex: 0x0 TunnelInterface: N/A
TrafficIndex: N/A BkTunnelInterface: N/A
Connector: N/A PathID: 0x0
UserID: 0x0 SRTunnelID: Invalid
SID Type: N/A NID: Invalid
FlushNID: Invalid BkNID: Invalid
BkFlushNID: Invalid StatFlags: 0x0
SID: N/A
BkSID: N/A
CommBlockLen: 0 Priority: Critical
MemberPort: N/A
# 在Router B上查看1::9/128路由,可以看到备份下一跳信息。
[RouterB] display ipv6 routing-table 1::9 verbose
Summary Count : 1
Destination: 1::9/128
Protocol: Static
Process ID: 0
SubProtID: 0x1 Age: 00h09m57s
FlushedAge: 15h28m49s
Cost: 0 Preference: 60
IpPre: N/A QosLocalID: N/A
Tag: 0 State: Active Adv
OrigTblID: 0x0 OrigVrf: default-vrf
TableID: 0xa OrigAs: 0
NibID: 0x21000002 LastAs: 0
AttrID: 0xffffffff Neighbor: ::
Flags: 0x10040 OrigNextHop: 12::1
Label: NULL RealNextHop: 12::1
BkLabel: NULL BkNextHop: 23::3
SRLabel: NULL Interface: Ten-GigabitEthernet3/1/2
BkSRLabel: NULL BkInterface: Ten-GigabitEthernet3/1/1
Tunnel ID: Invalid IPInterface: Ten-GigabitEthernet3/1/2
BkTunnel ID: Invalid BkIPInterface: Ten-GigabitEthernet3/1/1
InLabel: NULL ColorInterface: N/A
SIDIndex: NULL BkColorInterface: N/A
FtnIndex: 0x0 TunnelInterface: N/A
TrafficIndex: N/A BkTunnelInterface: N/A
Connector: N/A PathID: 0x0
UserID: 0x0 SRTunnelID: Invalid
SID Type: N/A NID: Invalid
FlushNID: Invalid BkNID: Invalid
BkFlushNID: Invalid StatFlags: 0x0
SID: N/A
BkSID: N/A
CommBlockLen: 0 Priority: Critical
MemberPort: N/A
IPv6缺省路由是在路由器没有找到匹配的IPv6路由表项时使用的路由。
· 第一种是网络管理员手工配置。配置请参见“1.2 配置IPv6静态路由”,指定的目的地址为::/0(前缀长度为0)。
· 第二种是动态路由协议生成,由路由能力比较强的路由器将IPv6缺省路由发布给其它路由器,其它路由器在自己的路由表里生成指向那台路由器的缺省路由。配置请参见各个路由协议手册。
如图2-1所示,Device A发往Device C、Device D和Device E的报文下一跳都是Device B,因此可在Device A上配置一条缺省路由,代替配置通往Device C、Device D和Device E网络的3条IPv6静态路由。
在Device A上配置IPv6缺省路由时,需要将目的地址和前缀长度配置为全零(::/0),下一跳地址为Device B接口的地址1::2。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!