在中间系统到中间系统(IS-IS)协议中,有两种网络:点对点和广播。与开放最短路径优先(OSPF)协议不同,IS-IS没有其他网络类型,如非广播和点对多点。对于每种类型的网络,交换不同类型的IS-IS Hello(IIH)数据包以建立邻接关系。在点对点网络上,交换点对点IIH;在广播网络(如LAN)上,交换1级或2级LAN IIH。运行IS-IS的帧中继网络可以配置为属于这些网络类型之一,具体取决于路由器之间通过云可用的连接类型(全网状、部分网状或中心辐射型)。本文档举例说明了这种情况下网络类型配置不匹配的情况,并说明了如何诊断和解决问题。
本文档的读者应掌握以下这些主题的相关知识:
配置帧中继
配置集成IS-IS
本文档不限于特定的软件和硬件版本。
本文档中显示的输出基于以下软件和硬件版本:
Cisco 2500 系列路由器
Cisco IOS® 软件版本 12.2(27)
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
有关文件规则的更多信息请参见“ Cisco技术提示规则”。
IS-IS处理多点串行接口和子接口的方式与处理广播接口的方式相同,但它处理点对点子接口的方式与处理点对点子接口的方式类似。例如,在本节的网络示例拓扑中,三台全网状路由器之间的WAN多点连接被视为LAN连接。与LAN一样,LAN之间交换1级或2级LAN IIH,并选择指定中间系统(DIS)。
在本示例拓扑中,所有三台路由器都连接到点对多点接口或子接口上的帧中继网云。默认情况下,主接口(如路由器E上的Serial1和路由器G上的Serial0)是多点接口。路由器H和F通过点对点子接口建立点对点连接,并且它们使用点对点IIH。
以下是本示例拓扑中使用的路由器配置:
路由器 E |
---|
clns routing ! interface Serial1 ip address 10.10.10.1 255.255.255.0 ip router isis encapsulation frame-relay clns router isis frame-relay map clns 123 broadcast frame-relay map clns 121 broadcast frame-relay map ip 10.10.10.3 121 broadcast frame-relay map ip 10.10.10.4 123 broadcast frame-relay lmi-type ansi ! router isis net 49.0001.1111.1111.1111.00 is-type level-1 |
路由器G |
---|
clns routing ! interface Serial0 ip address 10.10.10.3 255.255.255.0 ip router isis encapsulation frame-relay clns router isis frame-relay map clns 112 broadcast frame-relay map clns 113 broadcast frame-relay map ip 10.10.10.1 112 broadcast frame-relay map ip 10.10.10.4 113 broadcast frame-relay lmi-type ansi ! router isis net 49.0001.3333.3333.3333.00 is-type level-1 |
路由器H |
---|
clns routing ! interface Serial0 no ip address no ip directed-broadcast no ip mroute-cache encapsulation frame-relay frame-relay lmi-type ansi ! interface Serial0.1 multipoint ip address 10.10.10.4 255.255.255.0 no ip directed-broadcast ip router isis clns router isis frame-relay map clns 132 broadcast frame-relay map clns 131 broadcast frame-relay map ip 10.10.10.1 132 broadcast frame-relay map ip 10.10.10.3 131 broadcast ! interface Serial0.2 point-to-point ip address 10.20.20.4 255.255.255.0 no ip directed-broadcast ip router isis clns router isis frame-relay interface-dlci 130 ! router isis net 49.0001.4444.4444.4444.00 is-type level-1 |
路由器 F |
---|
clns routing ! interface Serial2 no ip address no ip directed-broadcast encapsulation frame-relay frame-relay lmi-type ansi ! interface Serial2.1 point-to-point ip address 10.20.20.2 255.255.255.0 no ip directed-broadcast ip router isis clns router isis frame-relay interface-dlci 103 ! router isis net 49.0001.2222.2222.2222.00 is-type level-1 |
在网状网中的任何路由器上发出show clns neighbors、show isis database和show isis database details命令,以观察IS-IS配置对多点WAN连接的影响。以下是所有路由器上show clns neighbors命令的输出:
Router_E# show clns neighbors System Id Interface SNPA State Holdtime Type Protocol Router_G Se1 DLCI 121 Up 29 L1 IS-IS Router_H Se1 DLCI 123 Up 7 L1 IS-IS Router_G# show clns neighbors System Id Interface SNPA State Holdtime Type Protocol Router_E Se0 DLCI 112 Up 27 L1 IS-IS Router_H Se0 DLCI 113 Up 7 L1 IS-IS Router_H# show clns neighbors System Id Interface SNPA State Holdtime Type Protocol Router_E Se0.1 DLCI 132 Up 23 L1 IS-IS Router_F Se0.2 DLCI 130 Up 25 L1 IS-IS Router_G Se0.1 DLCI 131 Up 28 L1 IS-IS Router_F# show clns neighbors System Id Interface SNPA State Holdtime Type Protocol Router_H Se2.1 DLCI 103 Up 24 L1 IS-IS
show isis database的输出显示,根据源节点的链路状态数据包(LSP)ID,路由器H是DIS:
Router_E# show isis database IS-IS Level-1 Link State Database LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL Router_E.00-00 * 0x00000EA6 0xA415 54 10/0/0 Router_F.00-00 0x00000DD7 0xD76E 46 0/0/0 Router_G.00-00 0x00000DE7 0x780B 40 0/0/0 Router_H.00-00 0x00000DF0 0x4346 37 0/0/0 Router_H.01-00 0x00000DD5 0xFD1F 46 0/0/0 Router_G# show isis database IS-IS Level-1 Link State Database LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL Router_E.00-00 0x00000E8F 0xD2FD 46 10/0/0 Router_F.00-00 0x00000DC0 0x0657 45 0/0/0 Router_G.00-00 * 0x00000DD0 0xA6F3 41 0/0/0 Router_H.00-00 0x00000DDA 0x6F30 42 0/0/0 Router_H.01-00 0x00000DBE 0x2C08 50 0/0/0 Router_H# show isis database IS-IS Level-1 Link State Database LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL Router_E.00-00 0x000001EC 0x1D12 44 10/0/0 Router_F.00-00 0x00000124 0x63A2 54 0/0/0 Router_G.00-00 0x00000130 0x0C3B 33 0/0/0 Router_H.00-00 * 0x0000012F 0xEA6C 42 0/0/0 Router_H.01-00 * 0x00000123 0xBA21 43 0/0/0
您还可以检查DIS生成的子节点的LSP的详细信息。在此输出中,伪节点LSP Router_H.01-00代表全网状WAN,它显示连接到网状网的所有路由器(就像LAN上的伪节点LSP一样):
Router_E# show isis database detail Router_H.01-00 IS-IS Level-1 LSP Router_H.01-00 LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL Router_H.01-00 0x00000DD6 0xFB20 42 0/0/0 Metric: 0 IS Router_H.00 Metric: 0 IS Router_E.00 Metric: 0 IS Router_G.00 Router_G# show isis database detail Router_H.01-00 IS-IS Level-1 LSP Router_H.01-00 LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL Router_H.01-00 0x00000DBE 0x2C08 35 0/0/0 Metric: 0 IS Router_H.00 Metric: 0 IS Router_E.00 Metric: 0 IS Router_G.00 Router_H# show isis database detail Router_H.01-00 IS-IS Level-1 LSP Router_H.01-00 LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL Router_H.01-00 * 0x00000126 0xB424 55 0/0/0 Metric: 0 IS Router_H.00 Metric: 0 IS Router_G.00 Metric: 0 IS Router_E.00
本部分检查由配置不匹配引起的问题。路由器F的Serial2.1子接口从点对点变为多点,从而在路由器F和H之间引入了问题。如下面的输出所示,当路由器H仍通过点对点子接口连接到路由器F时,路由器F的配置已更改。
路由器H |
---|
clns routing ! interface Serial0 no ip address no ip directed-broadcast no ip mroute-cache encapsulation frame-relay frame-relay lmi-type ansi ! interface Serial0.1 multipoint ip address 10.10.10.4 255.255.255.0 no ip directed-broadcast ip router isis clns router isis frame-relay map clns 132 broadcast frame-relay map clns 131 broadcast frame-relay map ip 10.10.10.1 132 broadcast frame-relay map ip 10.10.10.3 131 broadcast ! interface Serial0.2 point-to-point ip address 10.20.20.4 255.255.255.0 no ip directed-broadcast ip router isis clns router isis frame-relay interface-dlci 130 ! router isis passive-interface Ethernet0 net 49.0001.4444.4444.4444.00 is-type level-1 |
路由器 F |
---|
clns routing ! interface Serial2 no ip address no ip directed-broadcast encapsulation frame-relay frame-relay lmi-type ansi ! interface Serial2.1 multipoint ip address 10.20.20.2 255.255.255.0 no ip directed-broadcast ip router isis clns router isis frame-relay interface-dlci 103 ! router isis net 49.0001.2222.2222.2222.00 is-type level-1 |
现在,路由器H不再将路由器F视为IS-IS邻居。
Router_H# show clns neighbors System Id Interface SNPA State Holdtime Type Protocol Router_E Se0.1 DLCI 132 Up 23 L1 IS-IS Router_G Se0.1 DLCI 131 Up 22 L1 IS-IS
路由器F将路由器H视为邻居;但邻接类型是IS而不是L1,协议是终端系统到中间系统(ES-IS)而不是IS-IS。这意味着路由器F存在邻接问题。
Router_F# show clns neighbors System Id Interface SNPA State Holdtime Type Protocol Router_H Se2.1 DLCI 103 Up 272 IS ES-IS
问题的根源在于路由器F在其多点子接口上发送LAN IIH,而路由器H在其点对点子接口上发送串行IIH。在路由器H上激活debug isis adj packets时,您可以看到它通过Serial0.2发送串行IIH。但是,您看不到任何IIH通过Serial0.2发送,尽管路由器F在Serial2.1上发送LAN IIH。
Router_H# debug isis adj-packets IS-IS Adjacency related packets debugging is on *Mar 2 01:11:10.065: ISIS-Adj: Rec L1 IIH from DLCI 131 (Serial0.1), cir type L1, cir id4444.01, length 1500 *Mar 2 01:11:11.421: ISIS-Adj: Sending L1 LAN IIH on Serial0.1, length 1500 *Mar 2 01:11:11.961: ISIS-Adj: Rec L1 IIH from DLCI 132 (Serial0.1), cir type L1, cir id4444.01, length 1500 *Mar 2 01:11:14.657: ISIS-Adj: Sending L1 LAN IIH on Serial0.1, length 1500 *Mar 2 01:11:15.205: ISIS-Adj: Sending serial IIH on Serial0.2, length 1499 *Mar 2 01:11:17.237: ISIS-Adj: Sending L1 LAN IIH on Serial0.1, length 1500 *Mar 2 01:11:18.765: ISIS-Adj: Rec L1 IIH from DLCI 131 (Serial0.1), cir type L1, cir id4444.01, length 1500 *Mar 2 01:11:20.181: ISIS-Adj: Sending L1 LAN IIH on Serial0.1, length 1500 *Mar 2 01:11:21.861: ISIS-Adj: Rec L1 IIH from DLCI 132 (Serial0.1), cir type L1, cir id4444.01, length 1500 *Mar 2 01:11:22.717: ISIS-Adj: Sending L1 LAN IIH on Serial0.1, length 1500 *Mar 2 01:11:24.073: ISIS-Adj: Sending serial IIH on Serial0.2, length 1499 *Mar 2 01:11:25.845: ISIS-Adj: Sending L1 LAN IIH on Serial0.1, length 1500 *Mar 2 01:11:27.289: ISIS-Adj: Rec L1 IIH from DLCI 131 (Serial0.1), cir type L1, cir id4444.01, length 1500 *Mar 2 01:11:28.637: ISIS-Adj: Sending L1 LAN IIH on Serial0.1, length 1500 *Mar 2 01:11:31.853: ISIS-Adj: Sending L1 LAN IIH on Serial0.1, length 1500 *Mar 2 01:11:31.865: ISIS-Adj: Rec L1 IIH from DLCI 132 (Serial0.1), cir type L1, cir id4444.01, length 1500 *Mar 2 01:11:33.181: ISIS-Adj: Sending serial IIH on Serial0.2, length 1499 *Mar 2 01:11:35.165: ISIS-Adj: Sending L1 LAN IIH on Serial0.1, length 1500
在路由器F上激活相同的调试时,您可以看到路由器F在其Serial2.1接口上从路由器H接收串行IIH,但它忽略了Hello。路由器F尝试发送的LAN IIH会因封装失败而丢弃。
Router_F# debug isis adj-packets IS-IS Adjacency related packets debugging is on *Mar 2 01:19:15.113: ISIS-Adj: Rec serial IIH from DLCI 103 (Serial2.1), cir type L1, cir id 00, length 1499 *Mar 2 01:19:15.117: ISIS-Adj: Point-to-point IIH received on multi-point interface: ignored IIH *Mar 2 01:19:17.177: ISIS-Adj: Encapsulation failed for L1 LAN IIH on Serial2.1 *Mar 2 01:19:20.305: ISIS-Adj: Encapsulation failed for L1 LAN IIH on Serial2.1 *Mar 2 01:19:22.813: ISIS-Adj: Rec serial IIH from DLCI 103 (Serial2.1), cir type L1, cir id 00, length 1499 *Mar 2 01:19:22.817: ISIS-Adj: Point-to-point IIH received on multi-point interface: ignored IIH *Mar 2 01:19:23.229: ISIS-Adj: Encapsulation failed for L1 LAN IIH on Serial2.1 *Mar 2 01:19:26.157: ISIS-Adj: Encapsulation failed for L1 LAN IIH on Serial2.1 *Mar 2 01:19:28.825: ISIS-Adj: Encapsulation failed for L1 LAN IIH on Serial2.1 *Mar 2 01:19:30.833: ISIS-Adj: Rec serial IIH from DLCI 103 (Serial2.1), cir type L1, cir id 00, length 1499 *Mar 2 01:19:30.837: ISIS-Adj: Point-to-point IIH received on multi-point interface: ignored IIH *Mar 2 01:19:31.849: ISIS-Adj: Encapsulation failed for L1 LAN IIH on Serial2.1 *Mar 2 01:19:34.929: ISIS-Adj: Encapsulation failed for L1 LAN IIH on Serial2.1 *Mar 2 01:19:38.029: ISIS-Adj: Encapsulation failed for L1 LAN IIH on Serial2.1
这是对当链路类型不匹配时路由器F和H之间发生的情况的分析:
LAN邻接使用握手,这会导致三种可能的状态之一:DOWN、INIT或UP。
1级IIH在Serial2.1子接口上从路由器F出站时存在封装故障,因为它在多点子接口下没有frame-relay map clns命令转发IS-IS PDU。
路由器H没有收到来自路由器F的任何LAN IIH,因为路由器F在发送LAN IIH时有封装故障。
路由器F确实看到来自路由器H的串行IIH,但它忽略Hello,因为它在多点子接口上接收点对点Hello。路由器F确实检测到路由器H的IIH中缺失或出错,因此路由器F创建LAN邻接关系,但认为它是通过ES-IS而不是通过与IS-IS的L1类邻接关系获知的。
解决方案是确保链路的两端均为点对点或多点。在这种情况下,将路由器F的Serial2.1子接口改回点对点接口,以匹配路由器H的Serial0.2接口上配置的子接口。更改后,摆动接口。
下一个调试输出显示更改后发生的情况,路由器F的Serial2接口已断开。现在,路由器F能够在其Serial2.1接口上发送和接收串行IIH。
Router_F# debug isis adj-packets *Mar 2 04:32:37.276: %LINK-5-CHANGED: Interface Serial2, changed state to administratively down *Mar 2 04:32:38.316: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial2, changed state to down *Mar 2 04:32:45.868: %LINK-3-UPDOWN: Interface Serial2, changed state to up *Mar 2 04:32:46.868: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial2, changed state to up *Mar 2 04:33:05.896: ISIS-Adj: Sending serial IIH on Serial2.1, length 1499 *Mar 2 04:33:13.312: ISIS-Adj: Rec serial IIH from DLCI 103 (Serial2.1), cir type L1, cir id 00, length 1499 *Mar 2 04:33:13.316: ISIS-Adj: rcvd state DOWN, old state DOWN, new state INIT *Mar 2 04:33:13.316: ISIS-Adj: Action = GOING UP, new type = L1 *Mar 2 04:33:13.320: ISIS-Adj: New serial adjacency *Mar 2 04:33:13.324: ISIS-Adj: Sending serial IIH on Serial2.1, length 1499 *Mar 2 04:33:14.196: ISIS-Adj: Rec serial IIH from DLCI 103 (Serial2.1), cir type L1, cir id 00, length 1499 *Mar 2 04:33:14.204: ISIS-Adj: rcvd state INIT, old state INIT, new state UP *Mar 2 04:33:14.204: ISIS-Adj: Action = GOING UP, new type = L1 *Mar 2 04:33:14.208: ISIS-Adj: L1 adj count 1 *Mar 2 04:33:14.212: ISIS-Adj: Sending serial IIH on Serial2.1, length 1499 *Mar 2 04:33:15.100: ISIS-Adj: Rec serial IIH from DLCI 103 (Serial2.1), cir type L1, cir id 00, length 1499 *Mar 2 04:33:15.100: ISIS-Adj: rcvd state UP, old state UP, new state UP *Mar 2 04:33:15.104: ISIS-Adj: Action = ACCEPT *Mar 2 04:33:22.924: ISIS-Adj: Rec serial IIH from DLCI 103 (Serial2.1), cir type L1, cir id 00, length 1499 *Mar 2 04:33:22.928: ISIS-Adj: rcvd state UP, old state UP, new state UP *Mar 2 04:33:22.932: ISIS-Adj: Action = ACCEPT
从路由器H的角度来看,配置恢复正常:
Router_H# show clns neighbors System Id Interface SNPA State Holdtime Type Protocol Router_E Se0.1 DLCI 132 Up 28 L1 IS-IS Router_F Se0.2 DLCI 130 Up 21 L1 IS-IS Router_G Se0.1 DLCI 131 Up 28 L1 IS-IS
debug isis adj packets命令输出也恢复正常:
Router_H# debug isis adj-packets *Mar 2 04:40:19.376: ISIS-Adj: Sending L1 LAN IIH on Serial0.1, length 1500 *Mar 2 04:40:21.944: ISIS-Adj: Rec L1 IIH from DLCI 132 (Serial0.1), cir type L1, cir id 4444.4444.01, length 1500 *Mar 2 04:40:22.020: ISIS-Adj: Sending L1 LAN IIH on Serial0.1, length 1500 *Mar 2 04:40:22.428: ISIS-Adj: Rec L1 IIH from DLCI 131 (Serial0.1), cir type L1, cir id 4444.4444.01, length 1500 *Mar 2 04:40:24.740: ISIS-Adj: Sending L1 LAN IIH on Serial0.1, length 1500 *Mar 2 04:40:24.780: ISIS-Adj: Rec serial IIH from DLCI 130 (Serial0.2), cir type L1, cir id 0ngth 1499 *Mar 2 04:40:24.784: ISIS-Adj: rcvd state UP, old state UP, new state UP *Mar 2 04:40:24.784: ISIS-Adj: Action = ACCEPT *Mar 2 04:40:26.068: ISIS-Adj: Sending serial IIH on Serial0.2, length 1499 *Mar 2 04:40:27.516: ISIS-Adj: Sending L1 LAN IIH on Serial0.1, length 1500 *Mar 2 04:40:30.432: ISIS-Adj: Sending L1 LAN IIH on Serial0.1, length 1500 *Mar 2 04:40:31.152: ISIS-Adj: Rec L1 IIH from DLCI 132 (Serial0.1), cir type L1, cir id 4444.4444.01, length 1500 *Mar 2 04:40:31.540: ISIS-Adj: Rec L1 IIH from DLCI 131 (Serial0.1), cir type L1, cir id 4444.4444.01, length 1500 *Mar 2 04:40:33.292: ISIS-Adj: Rec serial IIH from DLCI 130 (Serial0.2), cir type L1, cir id 0ngth 1499 *Mar 2 04:40:33.296: ISIS-Adj: rcvd state UP, old state UP, new state UP *Mar 2 04:40:33.296: ISIS-Adj: Action = ACCEPT *Mar 2 04:40:33.664: ISIS-Adj: Sending L1 LAN IIH on Serial0.1, length 1500 *Mar 2 04:40:34.420: ISIS-Adj: Sending serial IIH on Serial0.2, length 1499 *Mar 2 04:40:36.328: ISIS-Adj: Sending L1 LAN IIH on Serial0.1, length 1500
版本 | 发布日期 | 备注 |
---|---|---|
1.0 |
10-Aug-2005 |
初始版本 |