本文档介绍Cisco IOS®和Cisco IOS-XR在IPv6和IPv4的路由表中安装“本地”主机路由的情况。IPv6本地路由始终存在。IPv4本地路由添加了多拓扑路由(MTR)功能。
本文档没有任何特定的要求。
本文档中的信息基于Cisco IOS版本15.0(1)S和Cisco IOS-XR版本4.3.1。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
本地路由在show ip route命令的输出中标有“L”。
以下是一个具有一个IPv4和一个IPv6地址的接口:
interface Ethernet0/0
ip address 10.1.1.1 255.255.255.252
ipv6 address 2001:DB8::1/64
IPv4的IP地址为10.1.1.1/30,IPv6的IP地址为2001:db8::1/64。主机路由也不是。IPv4的主机路由的掩码为/32,而IPv6的主机路由的掩码为/128。
对于每个IPv4和IPv6地址,Cisco IOS会在各自的路由表中安装主机路由。
R1#show ip route
Codes: L - local, C - connected, S - static, R - RIP,
M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF,
IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA
external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1,
L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U -
per-user static route
o - ODR, P - periodic downloaded static route, H - NHRP
+ - replicated route, % - next hop override
Gateway of last resort is not set
C 10.1.1.0/30 is directly connected, Ethernet0/0
L 10.1.1.1/32 is directly connected, Ethernet0/0
在上一个路由表中,10.1.1.1/32是本地主机路由。
R1#show ipv6 route
IPv6 Routing Table - default - 3 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
B - BGP, R - RIP, I1 - ISIS L1, I2 - ISIS L2
IA - ISIS interarea, IS - ISIS summary, D - EIGRP, EX - EIGRP external
ND - Neighbor Discovery
O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2
C 2001:DB8::/64 [0/0]
via Ethernet0/0, directly connected
L 2001:DB8::1/128 [0/0]
via Ethernet0/0, receive
L FF00::/8 [0/0]
via Null0, receive
在上一个路由表中,2001:db8::1/128是本地主机路由。FF00::/8路由也是本地路由,但组播路由需要此路由,因此本文档不涉及此路由。
在Cisco IOS中,您还可以使用show ipv6 route local命令来仅显示本地IPv6路由。
以下是Cisco IOS的示例:
R1#show ipv6 route local
IPv6 Routing Table - default - 3 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
B - BGP, HA - Home Agent, MR - Mobile Router, R - RIP
I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary
D - EIGRP, EX - EIGRP external, NM - NEMO, ND - Neighbor Discovery
L 2001:DB8::1/128 [0/0]
via Ethernet0/0, receive
L FF00::/8 [0/0]
via Null0, receive
以下是一些思科快速转发(CEF)条目:
R1#show ip cef 10.1.1.1/32
10.1.1.1/32
receive for Ethernet0/0
R1#show ipv6 cef 2001:db8::1/128
2001:DB8::1/128
receive for Ethernet0/0
由于本地主机路由在路由表中,因此这些本地主机路由也存在于CEF表中。由于这些IP地址是在此路由器上配置的(它们是本地的),因此这些CEF条目是接收条目。因此,当路由器看到目的IP地址与这些CEF条目匹配的数据包时,会传送数据包,以便由路由器自己处理。
如果IPv4地址在路由器接口上配置了掩码/32(环回接口的典型掩码),则主机路由仅在连接时显示在路由表中(它具有C标志)。
R1#show ip route | include 10.100.1.1
C 10.100.1.1/32 is directly connected, Loopback0
R1#show ip route 10.100.1.1
Routing entry for 10.100.1.1/32
Known via "connected", distance 0, metric 0 (connected, via interface)
Routing Descriptor Blocks:
* directly connected, via Loopback0
Route metric is 0, traffic share count is 1
如果IPv6地址在路由器接口上配置了掩码/128(环回接口的典型掩码),则主机路由将显示L和C标志。
R1#show ipv6 route
IPv6 Routing Table - default - 4 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
B - BGP, HA - Home Agent, MR - Mobile Router, R - RIP
I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary
D - EIGRP, EX - EIGRP external, NM - NEMO, ND - Neighbor Discovery
LC 2001:DB8:1111::1/128 [0/0]
via Loopback0, receive
当在路由协议下配置redistribute connected时,会重分发这些路由。
在Cisco IOS-XR中,使用show route local或show route ipv6 local命令来查看本地主机路由。
如果IPv4地址在路由器接口上配置了掩码/32,或IPv6地址配置了掩码/128,则主机路由会显示L标志。它们通过本地获知,但安装为连接路由。因此,当在路由协议下配置重分布连接时,这些路由将被重分布。
示例如下:
RP/0/RP0/CPU0:router#show route 10.10.10.1/32
Routing entry for 10.10.10.1/32
Known via "local", distance 0, metric 0 (connected)
Installed Jul 10 10:50:30.265 for 00:20:07
Routing Descriptor Blocks
directly connected, via Loopback0
Route metric is 0
No advertising protos.
RP/0/RP0/CPU0:router#show route ipv6 2001:db8:2222::1/128
Routing entry for 2001:db8:2222::1/128
Known via "local", distance 0, metric 0 (connected)
Installed Jul 10 10:53:05.745 for 00:16:51
Routing Descriptor Blocks
directly connected, via Loopback0
Route metric is 0
No advertising protos.
结果是,如果路由器只搜索路由表中的相应条目,则始终可以为已配置的IP地址安装CEF条目。这还可以防止从另一路由器获取掩码比所连接条目长的路由的错误配置,从而导致发往本地IP地址的流量被误定向到远程路由器。
MTR功能需要本地条目。在MTR中,一个接口/IP地址可以属于多个拓扑。如果MTR中的一个接口上未启用一个拓扑,则该拓扑中不存在该连接的路由。但是,发往该IP地址的数据包仍必须由拥有该IP地址的路由器处理,即使该接口上未启用该拓扑。这就是为什么本地主机路由存在于所有拓扑中的原因,即使拓扑已禁用。
在本示例中,接口Ethernet 0/0上启用了拓扑红色,但未启用拓扑蓝色。
global-address-family ipv4
topology blue
!
topology red
!
interface Ethernet0/0
ip address 10.1.1.1 255.255.255.252
ipv6 address 2001:DB8::1/64
!
topology ipv4 unicast red
!
R1#show ip route topology red
Routing Table: red
C 10.1.1.0/30 is directly connected, Ethernet0/0
L 10.1.1.1/32 is directly connected, Ethernet0/0
R1#show ip route topology blue
Routing Table: blue
L 10.1.1.1 is directly connected, Ethernet0/0
拓扑红色的路由表中有连接的/30路由和本地/32路由。Ethernet0/0上未启用拓扑蓝色。虽然拓扑蓝色的路由表中没有连接的/30路由,但它有本地/32路由。
在IPv4和IPv6路由表中列出本地主机路由,对于路由器接口的IP地址,这是正常的。其目的是创建相应的CEF条目作为接收条目,以便路由器自身可以处理发往此IP地址的数据包。这些路由不能重分发到任何路由协议中。
版本 | 发布日期 | 备注 |
---|---|---|
1.0 |
10-Jul-2013 |
初始版本 |