gtxyzz

IS-IS同时下发缺省路由出现路由环路解决

gtxyzz 运维技术 2022-11-08 453浏览 0

IS-IS(中间系统到中间系统的路由选择协议)是由 ISO 提出的一种路由选择协议。它是一种链路状态协议。在该协议中,IS(路由器)负责交换基于链路开销的路由信息并决定网络拓扑结构。IS-IS 类似于 TCP/IP 网络的开放最短路径优先(OSPF)协议。

网络环境

IS-IS同时下发缺省路由出现路由环路解决

NE80E_A、NE80E_B与NE40三台设备都运行在IS-IS Level-2区域中。为了引导NE40的上行流量负载分担,NE80E_A与NE80E_B同时对NE40下发了IS-IS缺省路由,出现路由环路。

故障分析

步骤 1 在NE80E_A 、NE80E_B和NE40设备上分别执行命令display current-configuration查看接口上IS-IS的配置情况,发现NE80E_A 、 NE80E_B和NE40设备的IS-IS配置正确,如下所示。

[NE80E_A]displaycurrent-configuration 
# 
sysnameRouterA 
# 
apsfast-interval0 
# 
isis1 
is-levellevel-2 
network-entity10.0000.0000.0001.00 
default-route-advertisealways 
# 
interfaceSerial1/0/0 
link-protocolppp 
ipaddress1.1.1.1255.255.255.0 
isisenable1 
# 
interfaceSerial1/0/1 
link-protocolppp 
ipaddress3.3.3.1255.255.255.0 
isisenable1 
# 
interfaceSerial1/0/2 
link-protocolppp 
ipaddress10.10.10.1255.255.255.0 
isisenable1 
[NE80E_B]displaycurrent-configuration 
# 
sysnameRouterB 
# 
apsfast-interval0 
# 
isis1 
is-levellevel-2 
network-entity10.0000.0000.0002.00 
default-route-advertisealways 
# 
interfaceSerial1/0/0 
link-protocolppp 
ipaddress2.2.2.1255.255.255.0 
isisenable1 
# 
interfaceSerial1/0/1 
link-protocolppp 
ipaddress4.4.4.1255.255.255.0 
isisenable1 
# 
interfaceSerial1/0/2 
link-protocolppp 
ipaddress10.10.10.2255.255.255.0 
isisenable1 
 
[NE40]displaycurrent-configuration 
# 
sysnameRouterC 
# 
apsfast-interval0 
# 
isis1 
is-levellevel-2 
network-entity10.0000.0000.0003.00 
# 
interfaceSerial1/0/0 
link-protocolppp 
ipaddress3.3.3.2255.255.255.0 
isisenable1 
# 
interfaceSerial1/0/1 
link-protocolppp 
ipaddress4.4.4.2255.255.255.0 
isisenable1

步骤 2 在NE40设备上执行命令display isis peer,查看邻居状况,发现NE40已 分别与NE80E_A 和NE80E_B建立邻居关系。

[NE40]displayisispeer 

PeerinformationforISIS(1) 

SystemIdInterfaceCircuitIdStateHoldTimeTypePRI 

------------------------------------------------------------------------------- 

0000.0000.0001S1/0/00000000002Up23sL2-- 

0000.0000.0002S1/0/10000000002Up29sL2--

步骤 3 在NE40设备上执行命令display isis route,发现存在NE80E_A 和 NE80E_B的缺省路由。在NE80E_A 和NE80E_B设备上分别执行命令 display isis route发现NE80E_A 和NE80E_B能互相学习到对方的 缺 省路由,因此而形成了路由环路,如下所示。

[NE40]displayisisroute 
RouteinformationforISIS(1) 
----------------------------- 
ISIS(1)Level-2ForwardingTable 
-------------------------------- 
IPV4DestinationIntCostExtCostExitInterfaceNextHopFlags 
---------------------------------------------------------------------------- 
0.0.0.0/010NULLS1/0/03.3.3.1A/-/-/- 
S1/0/14.4.4.14.4.4.0/2410NULLS1/0/1DirectD/-/L/- 
10.10.10.0/2420NULLS1/0/03.3.3.1A/-/-/- 
S1/0/14.4.4.1 
3.3.3.0/2410NULLS1/0/0DirectD/-/L/- 
2.2.2.0/2420NULLS1/0/14.4.4.1A/-/-/- 
1.1.1.0/2420NULLS1/0/03.3.3.1A/-/-/- 
Flags:D-Direct,A-AddedtoURT,L-AdvertisedinLSPs,S-IGPShortcut, 
U-Up/DownBitSet

[NE80E_A]displayisisroute 
RouteinformationforISIS(1) 
----------------------------- 
ISIS(1)Level-2ForwardingTable 
-------------------------------- 
IPV4DestinationIntCostExtCostExitInterfaceNextHopFlags 
---------------------------------------------------------------------------- 
0.0.0.0/010NULLS1/0/210.10.10.2A/-/-/- 
4.4.4.0/2420NULLS1/0/210.10.10.2A/-/-/- 
S1/0/13.3.3.2 
10.10.10.0/2410NULLS1/0/2DirectD/-/L/- 
3.3.3.0/2410NULLS1/0/1DirectD/-/L/- 
2.2.2.0/2420NULLS1/0/210.10.10.2A/-/-/- 
S1/0/01.1.1.2 
1.1.1.0/2410NULLS1/0/0DirectD/-/L/- 
Flags:D-Direct,A-AddedtoURT,L-AdvertisedinLSPs,S-IGPShortcut, 
U-Up/DownBitSet 
[NE80E_B]dislayisisroute 
RouteinformationforISIS(1) 
----------------------------- 
ISIS(1)Level-2ForwardingTable 
-------------------------------- 
IPV4DestinationIntCostExtCostExitInterfaceNextHopFlags 
---------------------------------------------------------------------------- 
0.0.0.0/010NULLS1/0/210.10.10.1A/-/-/- 
4.4.4.0/2410NULLS1/0/1DirectD/-/L/- 
10.10.10.0/2410NULLS1/0/2DirectD/-/L/- 
3.3.3.0/2420NULLS1/0/210.10.10.1A/-/-/- 
S1/0/14.4.4.2 
2.2.2.0/2410NULLS1/0/0DirectD/-/L/- 
1.1.1.0/2420NULLS1/0/210.10.10.1A/-/-/- 
S1/0/02.2.2.2 
Flags:D-Direct,A-AddedtoURT,L-AdvertisedinLSPs,S-IGPShortcut, 
U-Up/DownBitSet

处理步骤

步骤 1 分别在NE80E_A 和NE80E_B设备上进行以下操作。

步骤 2 执行命令system-view,进入系统视图。

步骤 3 执行命令isis 1,进入IS-IS视图。

步骤 4 执行命令acl number 2008,创建 ACL 2008并进入ACL视图。

步骤 5 执行命令rule 5 deny source 0.0.0.0 0,增加一个基于ACL 2008的规则5,过滤源地址为0.0.0.0的路由。

步骤 6 执行命令rule 10 permit,增加一个基于ACL 2008的规则10,允许任何报文通过。

步骤 7 执行命令isis 1,进入IS-IS视图。

步骤 8 执行命令filter-policy 2008 import,使用ACL 2008对接收的路由进行过滤。

步骤 9 完成上述操作后,NE80E_A 和NE80E_B可以过滤彼此的IS-IS缺省路由,该故障排除。

案例总结

对于IS-IS路由协议Level-2区域中两台设备同时下发IS-IS默认路由时,双方会将对方发布的默认路由条目放入路由转发表中,产生的缺省路由会让他们互相指向从而形成环路,因此需要过滤掉彼此的IS-IS缺省路由。

继续浏览有关 网络运维 的文章
发表评论