IS-IS基本概念

IS-IS概述

IS-IS是ISO定义的OSI协议栈中的CLNS(ConnectionLess Netowrk Service,无连接网络服务)的一部分。

image-1

地址结构

NSAP

NSAP(Network Service Access Point,网络服务访问点)是OSI协议栈中用于定位资源的地址,主要用于提供网络层和上层应用之间的接口。NSAP包括IDP及DSP。

image-2

IDP(Initial Domain Part)相当于IP地址中的主网络号。它是由ISO规定,并由AFI(Authority and Fromat Identifier)与IDI(Initial Domain Identifier)两部分组成。AFI表示地址分配机构和地址格式,IDI用来标识域。

DSP(Domain Specific Part)相当于IP地址中的子网号和主机地址。它由High Order DSP、System ID和SEL三个部分组成。High Order DSP用来分割区域,System ID用来区分主机,SEL(NSAP Selector)用来指示服务类型。

NET

NET(Network Entity Title,网络实体名称)是OSI协议栈中设备的网络层信息,主要用于路由计算,由区域地址(Area ID)和System ID组成,可以看作是特殊的NSAP(SEL为00的NSAP)。

NET的长度与NSAP的相同,最长为20Byte,最短为8Byte。

在IP网络中运行IS-IS时,只需配置NET,根据NET地址设备可以获取到Area ID以及System ID。

image-3

Area ID就是OSPF中的区域ID,System ID相当于OSPF中的Router ID。

NET配置举例

每台运行IS-IS的网络设备至少需拥有一个NET,当然,一台设备也可以同时配置多个NET,但是这些NET的System ID必须相同。

在华为的网络设备上,System ID的长度总是固定的6Byte。在一个IS-IS路由域中,设备的System ID必须唯一,为了便于管理,一般根据Router ID配置System ID。

image-4

简单配置

image-5

基础IP地址配置好后,可以对is-is进行配置了。

AR1

1
2
3
4
5
6
7
8
[AR1]isis
[AR1-isis-1]network-entity 49.0123.0000.0000.0001.00
Oct 17 2025 11:40:52-08:00 AR1 %%01ISIS/4/START_ENABLE_ISIS(l)[0]:ISIS 256 enabled all ISIS modules.
[AR1-isis-1]quit
[AR1]int g0/0/0
[AR1-GigabitEthernet0/0/0]isis enable
[AR1-GigabitEthernet0/0/0]int lo0
[AR1-LoopBack0]isis enable

AR2

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[AR2]isis
[AR2-isis-1]network-entity 49.0123.0000.0000.0002.00
Oct 17 2025 11:42:06-08:00 AR2 %%01ISIS/4/START_ENABLE_ISIS(l)[2]:ISIS 256 enabled all ISIS modules.
[AR2-isis-1]quit
[AR2]int g0/0/1
[AR2-GigabitEthernet0/0/1]isis en
Oct 17 2025 11:44:50-08:00 AR2 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[3]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=GE
0/0/1, CurrentState=up, ChangeType=NEW_L1_ADJ, Level=Level-1)
[AR2-GigabitEthernet0/0/1]
Oct 17 2025 11:44:50-08:00 AR2 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[4]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=GE
0/0/1, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)
[AR2-GigabitEthernet0/0/1]int g0/0/0
[AR2-GigabitEthernet0/0/0]isis en
[AR2-GigabitEthernet0/0/0]int lo0
[AR2-LoopBack0]isis en

AR3

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[AR3]isis
[AR3-isis-1]network-entity 49.0123.0000.0000.0003.00
Oct 17 2025 11:42:44-08:00 AR3 %%01ISIS/4/START_ENABLE_ISIS(l)[1]:ISIS 256 enabled all ISIS modules.
[AR3-isis-1]quit
[AR3]int g0/0/1
[AR3-GigabitEthernet0/0/1]isis en
Oct 17 2025 11:46:11-08:00 AR3 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[2]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0002, InterfaceName=GE
0/0/1, CurrentState=up, ChangeType=NEW_L1_ADJ, Level=Level-1)
[AR3-GigabitEthernet0/0/1]
Oct 17 2025 11:46:11-08:00 AR3 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[3]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0002, InterfaceName=GE
0/0/1, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)
[AR3-GigabitEthernet0/0/1]int lo0
[AR3-LoopBack0]isis en

AR1路由表查看

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
[AR1-LoopBack0]dis ip rou
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 11 Routes : 11

Destination/Mask Proto Pre Cost Flags NextHop Interface

1.1.1.1/32 Direct 0 0 D 127.0.0.1 LoopBack0
2.2.2.2/32 ISIS-L1 15 10 D 12.1.1.2 GigabitEthernet
0/0/0
3.3.3.3/32 ISIS-L1 15 20 D 12.1.1.2 GigabitEthernet
0/0/0
12.1.1.0/24 Direct 0 0 D 12.1.1.1 GigabitEthernet
0/0/0
12.1.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
12.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
23.1.1.0/24 ISIS-L1 15 20 D 12.1.1.2 GigabitEthernet
0/0/0
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0

AR2路由表查看

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
[AR2-LoopBack0]dis ip rou
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 13 Routes : 13

Destination/Mask Proto Pre Cost Flags NextHop Interface

1.1.1.1/32 ISIS-L1 15 10 D 12.1.1.1 GigabitEthernet
0/0/1
2.2.2.2/32 Direct 0 0 D 127.0.0.1 LoopBack0
3.3.3.3/32 ISIS-L1 15 10 D 23.1.1.3 GigabitEthernet
0/0/0
12.1.1.0/24 Direct 0 0 D 12.1.1.2 GigabitEthernet
0/0/1
12.1.1.2/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
12.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
23.1.1.0/24 Direct 0 0 D 23.1.1.2 GigabitEthernet
0/0/0
23.1.1.2/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
23.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0

AR3路由表查看

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
[AR3-LoopBack0]dis ip rou 
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 11 Routes : 11

Destination/Mask Proto Pre Cost Flags NextHop Interface

1.1.1.1/32 ISIS-L1 15 20 D 23.1.1.2 GigabitEthernet
0/0/1
2.2.2.2/32 ISIS-L1 15 10 D 23.1.1.2 GigabitEthernet
0/0/1
3.3.3.3/32 Direct 0 0 D 127.0.0.1 LoopBack0
12.1.1.0/24 ISIS-L1 15 20 D 23.1.1.2 GigabitEthernet
0/0/1
23.1.1.0/24 Direct 0 0 D 23.1.1.3 GigabitEthernet
0/0/1
23.1.1.3/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
23.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0

拓扑结构

IS-IS与OSPF区域划分的区别

image-6

IS-IS在自治系统内采用骨干区域与非骨干区域两级的分层结构:

  • Level-1路由器部署在非骨干区域。
  • Level-2路由器和Level-1-2路由器部署在骨干区域。

每一个非骨干区域都通过Level-1-2路由器与骨干区域相连。

IS-IS路由器的分类

Level-1路由器

Level-1路由器(例如下图中的R1)是一种IS-IS区域内部路由器,它只与属于同一区域的Level-1和Level-1-2路由器形成邻接关系,这种邻接关系称为Level-1邻接关系。Level-1路由器无法与Level-2路由器建立邻接关系。

Level-1路由器只负责维护Level-1的链路状态数据库LSDB,该LSDB只包含本区域的路由信息。值得一提的是,Level-1路由器必须通过Level-1-2路由器接入IS-IS骨干区域从而访问其他区域。

image-7

Level-2路由器

Level-2路口尤其(如下图中的R4、R5、R6、R7)是IS-IS骨干路由器,它可以与同一或者不同区域的Level-2路由器或者Level-1-2路由器形成邻接关系。Level-2路由器维护一个Level-2的LSDB,该LSDB包含整个IS-IS域的所有路由信息。

所有Level-2级别(即形成Level-2邻接关系)的路由器组成路由域的骨干网,负责在不同区域间通信。路由域中Level-2级别的路由器必须是物理连接的,以保证骨干网的连续性。

image-9

Level-1-2路由器

Level-1-2路由器域OSPF中的ABR非常相似,它也是IS-IS骨干网络的组成部分。

Level-1-2路由器维护两个LSDB,Level-1的LSDB用于区域内路由,Level-2的LSDB用于区域间路由。

同时属于Level-1和Level-2的路由器称为Level-1-2路由器(如下图中的R2和R3),它可以与同一区域的Level-1和Level-1-2路由器形成Level-1邻接关系,也可以与其他区域的Level-2和Level-1-2路由器形成Level-2的邻接关系。

image-10

实验

image-8

基本接口IP地址配置好之后即可开始IS-IS的Level设置实验。

AR1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[AR1]isis
[AR1-isis-1]network-entity 49.0123.0000.0000.0001.00
[AR1-isis-1]is-level level-1
Info: IS Level Changed, Resetting ISIS...
Oct 17 2025 15:47:40-08:00 AR1 %%01ISIS/4/START_DISABLE_ISIS(l)[1]:ISIS 256 disa
bled all ISIS modules.
Oct 17 2025 15:47:40-08:00 AR1 %%01ISIS/4/START_ENABLE_ISIS(l)[2]:ISIS 256 enabl
ed all ISIS modules.
[AR1-isis-1]quit
[AR1]int lo0
[AR1-LoopBack0]isis en
[AR1-LoopBack0]int g0/0/0
[AR1-GigabitEthernet0/0/0]isis en
[AR1-GigabitEthernet0/0/0]int g0/0/1
[AR1-GigabitEthernet0/0/1]isis en

AR2

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[AR2]isis
[AR2-isis-1]network-entity 49.0123.0000.0000.0002.00
Oct 17 2025 15:54:17-08:00 AR2 %%01ISIS/4/START_ENABLE_ISIS(l)[0]:ISIS 256 enabl
ed all ISIS modules.
[AR2-isis-1]quit
[AR2]int g0/0/1
[AR2-GigabitEthernet0/0/1]isis en
Oct 17 2025 15:55:07-08:00 AR2 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[1]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=GE
0/0/1, CurrentState=up, ChangeType=NEW_L1_ADJ, Level=Level-1)
[AR2]int lo0
[AR2-LoopBack0]isis enable
[AR2-LoopBack0]int g0/0/0
[AR2-GigabitEthernet0/0/0]isis enable

AR1和AR2建立邻居之后就可以查看其邻居建立情况和isis的lsdb

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
[AR1]dis isis peer 

Peer information for ISIS(1)

System Id Interface Circuit Id State HoldTime Type PRI
-------------------------------------------------------------------------------
0000.0000.0002 GE0/0/0 0000.0000.0001.01 Up 29s L1 64

Total Peer(s): 1
[AR1]dis isis peer

Peer information for ISIS(1)

System Id Interface Circuit Id State HoldTime Type PRI
-------------------------------------------------------------------------------
0000.0000.0002 GE0/0/0 0000.0000.0001.01 Up 29s L1 64

Total Peer(s): 1
[AR1]dis isis ls
[AR1]dis isis lsdb

Database information for ISIS(1)
--------------------------------

Level-1 Link State Database

LSPID Seq Num Checksum Holdtime Length ATT/P/OL
-------------------------------------------------------------------------------
0000.0000.0001.00-00* 0x00000005 0x780e 1122 102 0/0/0
0000.0000.0001.01-00* 0x00000001 0xb5d7 1122 55 0/0/0
0000.0000.0002.00-00 0x00000003 0xb523 1141 70 0/0/0

Total LSP(s): 3
*(In TLV)-Leaking Route, *(By LSPID)-Self LSP, +-Self LSP(Extended),
ATT-Attached, P-Partition, OL-Overload

AR3

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[AR3]isis	
[AR3-isis-1]network-entity 49.0123.0000.0000.0003.00
Oct 17 2025 16:18:38-08:00 AR3 %%01ISIS/4/START_ENABLE_ISIS(l)[0]:ISIS 256 enabl
ed all ISIS modules.
[AR3-isis-1]
[AR3-isis-1]int g0/0/0
[AR3-GigabitEthernet0/0/0]isis en
Oct 17 2025 16:18:55-08:00 AR3 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[1]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L1_ADJ, Level=Level-1)
[AR3-GigabitEthernet0/0/0]int g0/0/1
[AR3-GigabitEthernet0/0/1]isis en
[AR3-GigabitEthernet0/0/1]int lo0
[AR3-LoopBack0]isis en

AR4

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
[AR4]isis
[AR4-isis-1]network-entity 49.0045.0000.0000.0004.00
Oct 17 2025 16:21:32-08:00 AR4 %%01ISIS/4/START_ENABLE_ISIS(l)[0]:ISIS 256 enabl
ed all ISIS modules.
[AR4-isis-1]is-level level-2
Info: IS Level Changed, Resetting ISIS...
Oct 17 2025 16:21:49-08:00 AR4 %%01ISIS/4/START_DISABLE_ISIS(l)[1]:ISIS 256 disa
bled all ISIS modules.
Oct 17 2025 16:21:49-08:00 AR4 %%01ISIS/4/START_ENABLE_ISIS(l)[2]:ISIS 256 enabl
ed all ISIS modules.
[AR4-isis-1]quit
[AR4]int lo0
[AR4-LoopBack0]isis en
[AR4-LoopBack0]int g0/0/1
[AR4-GigabitEthernet0/0/1]isis en
Oct 17 2025 16:22:49-08:00 AR4 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[3]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0002, InterfaceName=GE
0/0/1, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)
[AR4-GigabitEthernet0/0/1]int g0/0/0
[AR4-GigabitEthernet0/0/0]isis en

AR5

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[AR5]isis
[AR5-isis-1]network-entity 49.0045.0000.0000.0005.00
Oct 17 2025 16:23:42-08:00 AR5 %%01ISIS/4/START_ENABLE_ISIS(l)[0]:ISIS 256 enabl
ed all ISIS modules.
[AR5-isis-1]is-level level-2
Info: IS Level Changed, Resetting ISIS...
Oct 17 2025 16:23:51-08:00 AR5 %%01ISIS/4/START_DISABLE_ISIS(l)[1]:ISIS 256 disa
bled all ISIS modules.
Oct 17 2025 16:23:51-08:00 AR5 %%01ISIS/4/START_ENABLE_ISIS(l)[2]:ISIS 256 enabl
ed all ISIS modules.
[AR5-isis-1]quit
[AR5]int lo0
[AR5-LoopBack0]isis en
[AR5-LoopBack0]int g0/0/1
[AR5-GigabitEthernet0/0/1]isis en
Oct 17 2025 16:24:10-08:00 AR5 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[3]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0004, InterfaceName=GE
0/0/1, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)
[AR5-GigabitEthernet0/0/1]int g0/0/0
[AR5-GigabitEthernet0/0/0]isis en
Oct 17 2025 16:24:23-08:00 AR5 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[4]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0003, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)

IS-IS支持的网络类型

IS-IS会自动根据接口的数据链路层封装决定该接口的缺省网络类型,IS-IS支持两种类型的网络:

广播(Broadcast):如Ethernet。

点到点(P2P):如PPP、HDLC等。

image-11

IS-IS开销值

IS-IS使用Cost(开销)作为路由度量值,Cost值越小,则路径越优。IS-IS链路的Cost与设备的接口有关,与OSPF类似,每一个激活了IS-IS的接口都会维护接口Cost。然而与OSPF不同的是,IS-IS接口的Cost在缺省情况下并不与接口带宽相关(在实际部署时,IS-IS也支持根据带宽调整Cost值),无论接口带宽多大,缺省时Cost为10。

一条IS-IS路径的Cost等于本路由到达目标网段沿途的所有链路的Cost总和。

IS-IS有三种方式来确定接口的开销,按照优先级由高到低分别是:

  • 接口开销:为单个接口设置开销。

  • 全局开销:为所有接口设置开销。

  • 自动计算开销:根据接口带宽自动计算开销。

image-12

接口开销,进入单独的接口进行Cost设置,以上图中的R3为例。

1
2
int g0/0/0
isis cost 20

全局开销,进入isis视图中进行设置,以R3为例。

1
2
isis
circuit-cost 20

自动计算开销,进入isis视图中进行设置,以R3为例。

1
2
isis
auto-cost enable

自动计算接口开销与带宽对应的关系如表所示。

开销值 接口带宽范围
60 接口带宽≤10Mbit/s
50 10Mbit/s≤接口带宽≤100Mbit/s
40 100Mbit/s≤接口带宽≤155Mbit/s
30 155Mbit/s≤接口带宽≤622Mbit/s
20 622Mbit/s≤接口带宽≤2.5Gbit/s
10 2.5Gbit/s<接口带宽

报文类型

IS-IS报文格式

IS-IS报文是直接封装在数据链路层的帧结构中的。

PDU(Protocol Data Unit,协议数据单元)可以分为两个部分,报文头(IS-IS Header)和变长字段部分(Variable Length Fields)。

其中IS-IS Header又可分为通用头部(PDU Common Header)和专用头部(PDU Specific Header)。对于所有PDU来说,通用报头都是相同的,但专用报头PDU类型不同而有所差别。

image-13

IS-IS报文类型概述

IS-IS的PDU由4种类型:IIH(IS-IS Hello),LSP(Link State PDU,链路状态报文),CSNP(Complate Sequence Number PDU,全序列号报文),PSNP(Partial Sequence Number PDU,部分序列号报文)。

IIH:用于建立和维持邻接关系,广播网络中Level-1 IS-IS路由器使用Level-1 LAN IIH;广播网络中的Level-2 IS-IS路由器使用Level-2 LAN IIH;点到点网络中使用P2P IIH。

LSP:用于交换链路状态信息。LSP分为两种:Level-1 LSP、Level-2 LSP。

SNP:通过描述全部或部分链路数据库中的LSP来同步LSDB,从而维护LSDB的完整与同步。SNP包括CSNP和PSNP,进一步又可以为Level-1 CSNP、Level-2 CSNP、Level-1 PSNP和Level-2 PSNP。

image-14

IS-IS常见的TLV

TLV的含义是:类型(TYPE),长度(LENGTH),值(VALUE)。实际上是一个数据结构,这个结构包含了这三个字段。

使用TLV结构构建报文的好处是灵活性和扩展性好。采用TLV使得报文的整体结构固定,增加新特性只需要增加新TLV即可,不需要改变整个报文的整体结构。

image-15

邻居关系建立

邻接关系建立

IS-IS邻接关系建立原则

IS-IS按如下原则建立邻接关系:

  • 只有同一层次的相邻路由才有可能称为邻接。
  • 对于Level-1路由器来说,Area ID必须一致。
  • 链路两端IS-IS接口的网络类型必须一致。
  • 链路两端IS-IS接口的地址必须处于同一网段(默认情况下)。

由于IS-IS是直接运行在数据链路层上的协议,并且最早是给CLNP使用的,IS-IS邻接关系的形成与IP地址无关。但在实际的部署中,在IP网络上运行IS-IS时,需要检查对方的IP地址的。如果接口配置了从IP,那么只要双方由某个IP(主IP或者从IP)在同一网段就能建立邻接,不一定要主IP相同。

IIH

IIH报文用于建立和维护邻接关系,广播网络中的Level-1 IS-IS路由器使用Level-1 LAN IIH;广播网络中的Level-2 IS-IS路由器使用Level-2 LAN IIH;点到点网络中则使用P2P IIH。

image-16

Holding Time 值为30s。

DIS同步数据库LSDB。

广播网络中的邻接关系建立过程

两台运行IS-IS的路由器在交互协议报文实现路由功能之前必须首先建立邻接关系。在不同的网络上,IS-IS的邻接建立方式并不相同。在广播网络中,使用三次握手建立邻接关系。

image-17

DIS与伪节点

在广播网络中,IS-IS需要在所有路由器种选举一个路由器作为DIS(Designated Intermediate System)。

DIS用来创建和更新伪节点(Pseudonodes)并负责生成伪节点的LSP,用来描述这个网络上由哪些网络设备。伪节点使用来模拟广播网络的一个虚拟节点,,并非真实的路由器。在IS-IS中,伪节点用DIS的System ID和Citcuit ID(非0值)标识。

image-18

IS-IS的DIS与OSPF的DR

Level-1和Level-2的DIS时分别选举的,用户可以为不同级别的DIS选举设置不同的优先级。

DIS的选举规则如下:

  • DIS优先级数值最大的被选为DIS。
  • 如果优先级数值最大的路由器有多台,则其中MAC地址最大的路由器会成为DIS。

DIS发送Hello PDU的时间间隔是普通路由器的三分之一,这样可以确保DIS出现故障时能够被快速的被发现。

IS-IS中的DIS与OSPF中的DR的区别:

  • 在IS-IS广播网中,优先级为0的路由器也参与DIS的选举,而在OSPF中优先级为0的路由器则不参与DR的选举。
  • 在IS-IS广播网中,当有新的路由器加入,并符合成为DIS的条件时,这个路由器会被选中成为新的DIS,原有的伪节点被删除。此更改会引起一组新的LSP泛洪。而在OSPF中,当一台新路由器加入后,即使它的DR优先级值最大,也不会立即成为该网段中的DR。
  • 在IS-IS广播网中,同一网段上的同一级别的路由器之间都会形成邻接关系,包括所有的非DIS路由器之间也会形成邻接关系。而在OSPF中,路由器只与DR和BDR建立邻接关系。

点到点网络中的邻接关系建立过程

点到点网络中,邻接关系的建立使用两次握手方式:只要路由器收到对端发来的Hello报文,就单方面宣布邻接为UP状态,建立邻接关系。

两次握手机制存在明显的缺陷,华为设备在点到点网络中使用IS-IS时,默认使用三次握手建立邻接关系。此方法通过三次发送P2P IIH最终建立起邻接关系。

image-19

广播网络邻接关系建立实验

image-25

AR1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
[AR1]int g0/0/0
[AR1-GigabitEthernet0/0/0]ip add 10.0.100.1 24
Oct 18 2025 19:45:38-08:00 AR1 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP
on the interface GigabitEthernet0/0/0 has entered the UP state.
[AR1-GigabitEthernet0/0/0]quit
[AR1]isis
[AR1-isis-1]network-entity 49.0001.0000.0000.0001.00
Oct 18 2025 19:46:41-08:00 AR1 %%01ISIS/4/START_ENABLE_ISIS(l)[1]:ISIS 256 enabl
ed all ISIS modules.
[AR1-isis-1]quit
[AR1]int g0/0/0
[AR1-GigabitEthernet0/0/0]isis en
[AR1-GigabitEthernet0/0/0]isis enable
Oct 18 2025 19:53:57-08:00 AR1 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[2]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0002, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L1_ADJ, Level=Level-1)
Oct 18 2025 19:53:57-08:00 AR1 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[3]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0002, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)
Oct 18 2025 19:53:58-08:00 AR1 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[4]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0003, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L1_ADJ, Level=Level-1)
Oct 18 2025 19:53:58-08:00 AR1 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[5]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0003, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)

AR2

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
[AR2]int g0/0/0
[AR2-GigabitEthernet0/0/0]ip add 10.0.100.2 24
Oct 18 2025 19:45:54-08:00 AR2 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP
on the interface GigabitEthernet0/0/0 has entered the UP state.
[AR2-GigabitEthernet0/0/0]quit
[AR2]isis
[AR2-isis-1]network-entity 49.0001.0000.0000.0002.00
Oct 18 2025 19:47:04-08:00 AR2 %%01ISIS/4/START_ENABLE_ISIS(l)[1]:ISIS 256 enabl
ed all ISIS modules.
[AR2-isis-1]quit
[AR2]int g0/0/0
[AR2-GigabitEthernet0/0/0]isis en
Oct 18 2025 19:53:56-08:00 AR2 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[2]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L1_ADJ, Level=Level-1)
Oct 18 2025 19:53:56-08:00 AR2 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[3]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)
Oct 18 2025 19:53:57-08:00 AR2 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[4]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0003, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L1_ADJ, Level=Level-1)
Oct 18 2025 19:53:57-08:00 AR2 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[5]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0003, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)

AR3

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
[AR3]int g0/0/0
[AR3-GigabitEthernet0/0/0]ip add 10.0.100.3 24
Oct 18 2025 19:46:06-08:00 AR3 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP
on the interface GigabitEthernet0/0/0 has entered the UP state.
[AR3-GigabitEthernet0/0/0]quit
[AR3]isis
[AR3-isis-1]network-entity 49.0001.0000.0000.0003.00
Oct 18 2025 19:47:23-08:00 AR3 %%01ISIS/4/START_ENABLE_ISIS(l)[1]:ISIS 256 enabl
ed all ISIS modules.
[AR3-isis-1]quit
[AR3]int g0/0/0
[AR3-GigabitEthernet0/0/0]isis en
Oct 18 2025 19:53:57-08:00 AR3 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[2]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0002, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L1_ADJ, Level=Level-1)
Oct 18 2025 19:53:57-08:00 AR3 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[3]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L1_ADJ, Level=Level-1)
Oct 18 2025 19:53:57-08:00 AR3 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[4]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0002, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)
Oct 18 2025 19:53:57-08:00 AR3 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[5]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)

以AR1和AR3的ISIS Hello报文交互为例

image-26

image-27

image-28

image-29

image-30

要分辨报文时L1还是L2的,需要查看以太网头部,组播地址后两位数字为14的即为L1,为15的即为L2。

image-31

image-32

P2P邻接关系建立实验

image-20

AR1

1
2
3
4
5
6
7
8
9
10
11
12
[AR1]isis 
[AR1-isis-1]network-entity 49.0001.0000.0000.0001.00
Oct 18 2025 19:17:24-08:00 AR1 %%01ISIS/4/START_ENABLE_ISIS(l)[6]:ISIS 256 enabl
ed all ISIS modules.
[AR1-isis-1]quit
[AR1-Serial4/0/0]isis enable
Oct 18 2025 19:18:49-08:00 AR1 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[7]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0002, InterfaceName=S4
/0/0, CurrentState=init, ChangeType=NEW_ADJ_CREATE, Level=Unknown)
Oct 18 2025 19:18:49-08:00 AR1 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[8]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0002, InterfaceName=S4
/0/0, CurrentState=up, ChangeType=3_WAY_UP, Level=Level-1-2)

AR2

1
2
3
4
5
6
7
8
9
10
11
12
[AR2]isis
[AR2-isis-1]network-entity 49.0001.0000.0000.0002.00
Oct 18 2025 19:18:29-08:00 AR2 %%01ISIS/4/START_ENABLE_ISIS(l)[6]:ISIS 256 enabl
ed all ISIS modules.
[AR2-isis-1]quit
[AR2-Serial4/0/0]isis enable
Oct 18 2025 19:18:49-08:00 AR2 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[7]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=S4
/0/0, CurrentState=init, ChangeType=NEW_ADJ_CREATE, Level=Unknown)
Oct 18 2025 19:18:49-08:00 AR2 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[8]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=S4
/0/0, CurrentState=up, ChangeType=3_WAY_UP, Level=Level-1-2)

第一个Hello报文

image-21

第二个Hello报文

image-22

第三个Hello报文

image-23

第四个Hello报文

image-24

若要修改为两次握手,进入接口配置。

1
2
3
4
5
6
7
8
9
10
11
12
13
[AR1]int s4/0/0
[AR1-Serial4/0/0]isis ppp-negotiation 2-way
Oct 18 2025 19:34:16-08:00 AR1 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[0]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0002, InterfaceName=S4
/0/0, CurrentState=down, ChangeType=CIRCUIT_DOWN, Level=Level-1-2)
Oct 18 2025 19:34:16-08:00 AR1 %%01ISIS/4/PEER_DOWN_CIRC_DOWN(l)[1]:ISIS 256 nei
ghbor 0000.0000.0002 was Down because interface S4/0/0 was down. The Hello packe
t was received at 19:26:40 last time; the maximum interval for sending Hello pac
kets was 1109852160; the local router sent 3221225472 Hello packets and received
33554432 packets; the type of the Hello packet was P2P.
Oct 18 2025 19:34:18-08:00 AR1 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[2]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0002, InterfaceName=S4
/0/0, CurrentState=up, ChangeType=NEW_ADJ, Level=Level-1-2)
1
2
3
4
5
6
7
8
9
10
11
12
13
[AR2]int s4/0/0
[AR2-Serial4/0/0]isis ppp-negotiation 2-way
Oct 18 2025 19:34:18-08:00 AR2 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[0]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=S4
/0/0, CurrentState=down, ChangeType=CIRCUIT_DOWN, Level=Level-1-2)
Oct 18 2025 19:34:18-08:00 AR2 %%01ISIS/4/PEER_DOWN_CIRC_DOWN(l)[1]:ISIS 256 nei
ghbor 0000.0000.0001 was Down because interface S4/0/0 was down. The Hello packe
t was received at 19:34:16 last time; the maximum interval for sending Hello pac
kets was 438763520; the local router sent 3355443200 Hello packets and received
50331648 packets; the type of the Hello packet was P2P.
Oct 18 2025 19:34:18-08:00 AR2 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[2]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=S4
/0/0, CurrentState=up, ChangeType=NEW_ADJ, Level=Level-1-2)

LSDB同步

LSP

IS-IS链路状态报文LSP用于交换链路状态信息。LSP分为两种:Level-1 LSP和Level-2 LSP。Level-1 LSP由Level-1 路由器传送,Level-2 LSP由Level-2路由器传送,Level-1-2路由器则可以传送以上两种LSP。

两类LSP有相同的报文格式。

image-33

IS-IS的LSDB

广播型网络的LSDB

image-34

查看非伪节点LSP

image-35

查看伪节点LSP

image-36

CSNP

CSNP包含该设备LSDB中所有的LSP摘要,路由器通过交互CSNP来判断是否需要同步LSDB。

  • 在广播网络上,CSNP由DIS定期发送(缺省的发送周期为10秒)。
  • 在点到点网络上,CSNP只在第一次建立邻接关系时发送。

image-37

PSNP

PSNP只包含部分LSP的摘要信息(与CSNP不同):

  • 当发现LSDB不同步时,PSNP来请求邻居发送新的LSP。
  • 在点到点的网络中,收到LSP时,使用PSNP对收到的LSP进行确认。

image-38

广播型网络中LSP的同步过程

广播网络中新加入路由器与DIS同步LSDB数据库的过程:

新加入的路由器R3首先发送IIH报文,与该广播域中的路由器建立邻接关系。建立邻接关系之后,R3等待LSP刷新定时器超时,然后将自己的LSP发往组播地址(Level-1:01-80-C2-00-00-14;Level-2:01-80-C2-00-00-15)。这样的网络上所有的邻接都将收到该LSP。

该网段中的DIS会把收到R3的LSP加入到LSDB中,并等待CSNP报文定时器超时并发送CSNP报文。

R3收到DIS发来的CSNP报文,对比自己的LSDB数据库,然后向DIS发送PSNP报文请求自己没有的LSP。

DIS收到该PSNP报文请求后向R3发送对应的LSP进行LSDB的同步。

image-39

注意:

CSNP中的R1.00-00中的R1是为ISIS节点的名字,可以从ISIS视图下修改,使用is-name R1即可修改。R1即替代了isis的system id。

点到点网络中LSP的同步过程

点到点网络上LSDB数据库的同步过程:

R1先与R2建立邻接关系。

建立邻接关系之后,R1与R2会先发送CSNP给对端设备。如果对端的LSDB与CSNP没有同步,则发送PSNP请求索取相应的LSP。

假设R2向R1索取相应的LSP:

  • R1发送R2请求的LSP的同时启动LSP重传定时器,并等待R2发送的PSNP作为收到的LSP的确认。
  • 如果在接口LSP重传定时器超时后,R1没有收到R2发送的PSNP报文作为应答。
  • 则R1重新发送该LSP。
  • R2收到LSP后,发送PSNP进行确认。

image-40

路由计算

Level-1路由器的路由计算

R1是Level-1路由器,只维护Level-1 LSDB,该LSDB中包含同属一个区域的R2及R3以及R1自己产生的Level-1 LSP。

R1根据LSDB中的Level-1 LSP计算出Area 49.0001内的拓扑,以及到达区域内各个网段的路由信息。

R2及R3作为Area 49.0001内的Level-1-2路由器,会在它们向该区域下发的Level-1 LSP设置ATT标志位,用于向区域内的Level-1路由器宣布可以通过自己到达其他区域。R1作为Level-1路由器,会根据该ATT标志位,计算出指向R2或R3的默认路由。

image-41

Level-1路由器的次优路径的问题

缺省时,R1只能通过指向R2或R3的默认路由到达区域外部,但是R1距离R2和R3路由器的Cost值相等,那么当R1发送数据包到192.168.20.0/24时,就有可能选择路径2,导致出现次优路径。

image-42

解决方案-路由渗透

缺省情况下,Level-1-2路由器不会将到达其他区域的路由通告本Level-1区域中。

通过路由渗透,可以将区域间路由通过Level-1-2路由器传递到Level-1区域,此时Level-1路由器可以学习到其他区域的详细路由,从而计算出最优路径。

image-43

实验

image-44

AR1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<Huawei>sys
[Huawei]int g0/0/0
[Huawei-GigabitEthernet0/0/0]ip add 12.1.1.1 24
[Huawei-GigabitEthernet0/0/0]int g0/0/1
[Huawei-GigabitEthernet0/0/1]ip add 13.1.1.1 24
[Huawei-GigabitEthernet0/0/1]int lo0
[Huawei-LoopBack0]ip add 1.1.1.1 32
[Huawei-LoopBack0]quit
[AR1]isis
[AR1-isis-1]network-entity 49.0123.0000.0000.0001.00
Oct 19 2025 15:32:02-08:00 AR1 %%01ISIS/4/START_ENABLE_ISIS(l)[2]:ISIS 256 enabl
ed all ISIS modules.
[AR1-isis-1]is-level level-1
Info: IS Level Changed, Resetting ISIS...
Oct 19 2025 15:32:24-08:00 AR1 %%01ISIS/4/START_DISABLE_ISIS(l)[3]:ISIS 256 disa
bled all ISIS modules.
Oct 19 2025 15:32:24-08:00 AR1 %%01ISIS/4/START_ENABLE_ISIS(l)[4]:ISIS 256 enabl
ed all ISIS modules.
[AR1-isis-1]quit
[AR1]int g0/0/0
[AR1-GigabitEthernet0/0/0]isis en
[AR1-GigabitEthernet0/0/0]int g0/0/1
[AR1-GigabitEthernet0/0/1]isis en
[AR1-GigabitEthernet0/0/1]int lo0
[AR1-LoopBack0]isis en

AR2

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<Huawei>sys
[Huawei]int g0/0/1
[Huawei-GigabitEthernet0/0/1]ip add 12.1.1.2 24
[Huawei-GigabitEthernet0/0/1]int g0/0/0
[Huawei-GigabitEthernet0/0/0]ip add 24.1.1.2 24
[Huawei-GigabitEthernet0/0/0]int lo0
[Huawei-LoopBack0]ip add 2.2.2.2 32
[Huawei-LoopBack0]quit
[AR2]isis
[AR2-isis-1]network-entity 49.0123.0000.0000.0002.00
Oct 19 2025 15:34:38-08:00 AR2 %%01ISIS/4/START_ENABLE_ISIS(l)[2]:ISIS 256 enabl
ed all ISIS modules.
[AR2-isis-1]quit
#[AR2]int g0/0/0
#[AR2-GigabitEthernet0/0/0]isis en
[AR2-GigabitEthernet0/0/0]int g0/0/1
[AR2-GigabitEthernet0/0/1]isis en
Oct 19 2025 15:35:08-08:00 AR2 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[3]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=GE
0/0/1, CurrentState=up, ChangeType=NEW_L1_ADJ, Level=Level-1)
[AR2-GigabitEthernet0/0/1]int lo0
[AR2-LoopBack0]isis en

AR3

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<Huawei>sys
[Huawei]int g0/0/0
[Huawei-GigabitEthernet0/0/0]ip add 13.1.1.3 24
[Huawei-GigabitEthernet0/0/0]int g0/0/1
[Huawei-GigabitEthernet0/0/1]ip add 35.1.1.3 24
[Huawei-GigabitEthernet0/0/1]int lo0
[Huawei-LoopBack0]ip add 3.3.3.3 32
[Huawei-LoopBack0]quit
[AR3]isis
[AR3-isis-1]network-entity 49.0123.0000.0000.0003.00
Oct 19 2025 15:36:10-08:00 AR3 %%01ISIS/4/START_ENABLE_ISIS(l)[2]:ISIS 256 enabl
ed all ISIS modules.
[AR3-isis-1]quit
[AR3]int g0/0/0
[AR3-GigabitEthernet0/0/0]isis en
Oct 19 2025 15:36:19-08:00 AR3 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[3]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L1_ADJ, Level=Level-1)
#[AR3-GigabitEthernet0/0/0]int g0/0/1
#[AR3-GigabitEthernet0/0/1]isis en
[AR3-GigabitEthernet0/0/1]int lo0
[AR3-LoopBack0]isis en

此时做完这些操作后,查看R1的isis的LSDB表,会发现ATT是没有置位为1的,同时查看路由表是没有外部路由的信息的,查看完后就对所有接口开启isis。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
[AR1-LoopBack0]quit
[AR1]dis isis lsdb

Database information for ISIS(1)
--------------------------------

Level-1 Link State Database

LSPID Seq Num Checksum Holdtime Length ATT/P/OL
-------------------------------------------------------------------------------
0000.0000.0001.00-00* 0x00000006 0xd315 1077 113 0/0/0
0000.0000.0002.00-00 0x00000005 0x5011 1024 102 0/0/0
0000.0000.0002.02-00 0x00000001 0x9deb 1024 55 0/0/0
0000.0000.0003.00-00 0x00000005 0xa34 1095 102 0/0/0
0000.0000.0003.01-00 0x00000001 0xadda 1095 55 0/0/0

Total LSP(s): 5
*(In TLV)-Leaking Route, *(By LSPID)-Self LSP, +-Self LSP(Extended),
ATT-Attached, P-Partition, OL-Overload
[AR1]dis ip rou
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 11 Routes : 11

Destination/Mask Proto Pre Cost Flags NextHop Interface

1.1.1.1/32 Direct 0 0 D 127.0.0.1 LoopBack0
12.1.1.0/24 Direct 0 0 D 12.1.1.1 GigabitEthernet
0/0/0
12.1.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
12.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
13.1.1.0/24 Direct 0 0 D 13.1.1.1 GigabitEthernet
0/0/1
13.1.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
13.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0

AR4

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<Huawei>SYS
[Huawei]SYS AR4
[AR4]int g0/0/1
[AR4-GigabitEthernet0/0/1]ip add 24.1.1.4 24
[AR4-GigabitEthernet0/0/1]int g0/0/0
[AR4-GigabitEthernet0/0/0]ip add 45.1.1.4 24
[AR4-GigabitEthernet0/0/0]int lo0
[AR4-LoopBack0]ip add 100.1.1.1 32
[AR4-LoopBack0]quit
[AR4]isis
[AR4-isis-1]network-entity 49.0045.0000.0000.0004.00
Oct 19 2025 15:58:49-08:00 AR4 %%01ISIS/4/START_ENABLE_ISIS(l)[0]:ISIS 256 enabl
ed all ISIS modules.
[AR4-isis-1]is-level level-2
Info: IS Level Changed, Resetting ISIS...
Oct 19 2025 15:59:21-08:00 AR4 %%01ISIS/4/START_DISABLE_ISIS(l)[1]:ISIS 256 disa
bled all ISIS modules.
Oct 19 2025 15:59:21-08:00 AR4 %%01ISIS/4/START_ENABLE_ISIS(l)[2]:ISIS 256 enabl
ed all ISIS modules.
[AR4-isis-1]quit
[AR4]int g0/0/0
[AR4-GigabitEthernet0/0/0]isis enable
Oct 19 2025 16:01:54-08:00 AR4 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[4]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0005, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)
[AR4-GigabitEthernet0/0/0]int g0/0/1
[AR4-GigabitEthernet0/0/1]isis enable
Oct 19 2025 16:01:25-08:00 AR4 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[3]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0002, InterfaceName=GE
0/0/1, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)
[AR4-GigabitEthernet0/0/1]int lo0
[AR4-LoopBack0]isis enable

AR5

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<Huawei>sys
[Huawei]sys AR5
[AR5]int g0/0/1
[AR5-GigabitEthernet0/0/1]ip add 45.1.1.5 24
[AR5-GigabitEthernet0/0/1]int g0/0/0
[AR5-GigabitEthernet0/0/0]ip add 35.1.1.5 24
[AR5-GigabitEthernet0/0/0]int lo0
[AR5-LoopBack0]ip add 200.1.1.1 32
[AR5-LoopBack0]quit
[AR5]isis
[AR5-isis-1]network-entity 49.0045.0000.0000.0005.00
Oct 19 2025 16:00:22-08:00 AR5 %%01ISIS/4/START_ENABLE_ISIS(l)[0]:ISIS 256 enabl
ed all ISIS modules.
[AR5-isis-1]is-level level-2
Info: IS Level Changed, Resetting ISIS...
Oct 19 2025 16:00:28-08:00 AR5 %%01ISIS/4/START_DISABLE_ISIS(l)[1]:ISIS 256 disa
bled all ISIS modules.
Oct 19 2025 16:00:28-08:00 AR5 %%01ISIS/4/START_ENABLE_ISIS(l)[2]:ISIS 256 enabl
ed all ISIS modules.
[AR5-isis-1]quit
[AR5]int g0/0/0
[AR5-GigabitEthernet0/0/0]isis enable
Oct 19 2025 16:01:47-08:00 AR5 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[3]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0003, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)
[AR5-GigabitEthernet0/0/0]int g0/0/01
[AR5-GigabitEthernet0/0/1]isis enable
Oct 19 2025 16:01:54-08:00 AR5 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[4]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0004, InterfaceName=GE
0/0/1, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)
[AR5-GigabitEthernet0/0/1]int lo0
[AR5-LoopBack0]isis enable

查看R1的isis lsdb,发现有两台记录分别是R2和R3的实节点的ATT置位为1了,再次查看R1的路由表,会发现多出两条缺省路由分别指向R2和R3,但是如果向方位R5的环回口的话,R1有两条路径可走,第一条是:R1-R2-R4-R5,第二条是:R1-R3-R5,这就会产生次优路径访问,解决方案是将R4和R5的明细路由导入R2和R3中即可解决次优路径访问问题。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
[AR1]dis isis lsdb 

Database information for ISIS(1)
--------------------------------

Level-1 Link State Database

LSPID Seq Num Checksum Holdtime Length ATT/P/OL
-------------------------------------------------------------------------------
0000.0000.0001.00-00* 0x00000006 0xbb2e 613 113 0/0/0
0000.0000.0002.00-00 0x00000008 0xfa5c 1002 102 1/0/0
0000.0000.0002.01-00 0x00000001 0xa4e5 613 55 0/0/0
0000.0000.0003.00-00 0x00000006 0x1025 1029 102 1/0/0
0000.0000.0003.01-00 0x00000001 0xadda 632 55 0/0/0

Total LSP(s): 5
*(In TLV)-Leaking Route, *(By LSPID)-Self LSP, +-Self LSP(Extended),
ATT-Attached, P-Partition, OL-Overload
[AR1]dis ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 16 Routes : 17

Destination/Mask Proto Pre Cost Flags NextHop Interface

0.0.0.0/0 ISIS-L1 15 10 D 12.1.1.2 GigabitEthernet
0/0/0
ISIS-L1 15 10 D 13.1.1.3 GigabitEthernet
0/0/1
1.1.1.1/32 Direct 0 0 D 127.0.0.1 LoopBack0
2.2.2.2/32 ISIS-L1 15 10 D 12.1.1.2 GigabitEthernet
0/0/0
3.3.3.3/32 ISIS-L1 15 10 D 13.1.1.3 GigabitEthernet
0/0/1
12.1.1.0/24 Direct 0 0 D 12.1.1.1 GigabitEthernet
0/0/0
12.1.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
12.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
13.1.1.0/24 Direct 0 0 D 13.1.1.1 GigabitEthernet
0/0/1
13.1.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
13.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
24.1.1.0/24 ISIS-L1 15 20 D 12.1.1.2 GigabitEthernet
0/0/0
35.1.1.0/24 ISIS-L1 15 20 D 13.1.1.3 GigabitEthernet
0/0/1
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0

AR2配置路由渗透

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
[AR2]acl 2000
[AR2-acl-basic-2000]rule permit source 100.1.1.1 0.0.0.0
[AR2-acl-basic-2000]rule permit source 200.1.1.1 0.0.0.0
[AR2-acl-basic-2000]quit
#如果没有配置acl,将所有明细路由导入的话,那么路由条目就会增多
[AR2]isis
[AR2-isis-1]import-route isis level-2 into level-1
#查看R1的路由表
[AR1]dis ip rou
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 19 Routes : 20

Destination/Mask Proto Pre Cost Flags NextHop Interface

0.0.0.0/0 ISIS-L1 15 10 D 12.1.1.2 GigabitEthernet
0/0/0
ISIS-L1 15 10 D 13.1.1.3 GigabitEthernet
0/0/1
1.1.1.1/32 Direct 0 0 D 127.0.0.1 LoopBack0
2.2.2.2/32 ISIS-L1 15 10 D 12.1.1.2 GigabitEthernet
0/0/0
3.3.3.3/32 ISIS-L1 15 10 D 13.1.1.3 GigabitEthernet
0/0/1
12.1.1.0/24 Direct 0 0 D 12.1.1.1 GigabitEthernet
0/0/0
12.1.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
12.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
13.1.1.0/24 Direct 0 0 D 13.1.1.1 GigabitEthernet
0/0/1
13.1.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
13.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
24.1.1.0/24 ISIS-L1 15 20 D 12.1.1.2 GigabitEthernet
0/0/0
35.1.1.0/24 ISIS-L1 15 20 D 13.1.1.3 GigabitEthernet
0/0/1
45.1.1.0/24 ISIS-L1 15 30 D 12.1.1.2 GigabitEthernet
0/0/0
100.1.1.1/32 ISIS-L1 15 20 D 12.1.1.2 GigabitEthernet
0/0/0
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
200.1.1.1/32 ISIS-L1 15 30 D 12.1.1.2 GigabitEthernet
0/0/0
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
#将acl规则用于R2路由渗透
[AR2]isis
[AR2-isis-1]import-route isis level-2 into level-1 filter-policy 2000
#再次查看R1路由表
[AR1]dis ip rou
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 18 Routes : 19

Destination/Mask Proto Pre Cost Flags NextHop Interface

0.0.0.0/0 ISIS-L1 15 10 D 12.1.1.2 GigabitEthernet
0/0/0
ISIS-L1 15 10 D 13.1.1.3 GigabitEthernet
0/0/1
1.1.1.1/32 Direct 0 0 D 127.0.0.1 LoopBack0
2.2.2.2/32 ISIS-L1 15 10 D 12.1.1.2 GigabitEthernet
0/0/0
3.3.3.3/32 ISIS-L1 15 10 D 13.1.1.3 GigabitEthernet
0/0/1
12.1.1.0/24 Direct 0 0 D 12.1.1.1 GigabitEthernet
0/0/0
12.1.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
12.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
13.1.1.0/24 Direct 0 0 D 13.1.1.1 GigabitEthernet
0/0/1
13.1.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
13.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
24.1.1.0/24 ISIS-L1 15 20 D 12.1.1.2 GigabitEthernet
0/0/0
35.1.1.0/24 ISIS-L1 15 20 D 13.1.1.3 GigabitEthernet
0/0/1
100.1.1.1/32 ISIS-L1 15 20 D 12.1.1.2 GigabitEthernet
0/0/0
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
200.1.1.1/32 ISIS-L1 15 30 D 12.1.1.2 GigabitEthernet
0/0/0
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0

如果想将属于L2的区域的路由条目也清除的话,可以在R2和R3的接口将isis的Level等级改掉。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
[AR2]int g0/0/1
[AR2-GigabitEthernet0/0/1]isis circuit-level level-1
Oct 19 2025 16:24:55-08:00 AR2 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[0]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=GE
0/0/1, CurrentState=down, ChangeType=L1_CIRCUIT_DOWN, Level=Level-1)
Oct 19 2025 16:24:55-08:00 AR2 %%01ISIS/4/PEER_DOWN_CIRC_DOWN(l)[1]:ISIS 256 nei
ghbor 0000.0000.0001 was Down because interface GE0/0/1 was down. The Hello pack
et was received at 16:20:03 last time; the maximum interval for sending Hello pa
ckets was 3657891840; the local router sent 570884096 Hello packets and received
67108864 packets; the type of the Hello packet was Lan Level-1.
Oct 19 2025 16:24:55-08:00 AR2 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[2]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=GE
0/0/1, CurrentState=up, ChangeType=NEW_L1_ADJ, Level=Level-1)
[AR2-GigabitEthernet0/0/1]int g0/0/0
[AR2-GigabitEthernet0/0/0]isis circuit-level level-2
Oct 19 2025 16:25:09-08:00 AR2 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[3]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0004, InterfaceName=GE
0/0/0, CurrentState=down, ChangeType=L2_CIRCUIT_DOWN, Level=Level-2)
Oct 19 2025 16:25:09-08:00 AR2 %%01ISIS/4/PEER_DOWN_CIRC_DOWN(l)[4]:ISIS 256 nei
ghbor 0000.0000.0004 was Down because interface GE0/0/0 was down. The Hello pack
et was received at 16:18:18 last time; the maximum interval for sending Hello pa
ckets was 438763520; the local router sent 4093968384 Hello packets and received
67108864 packets; the type of the Hello packet was Lan Level-2.
Oct 19 2025 16:25:09-08:00 AR2 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[5]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0004, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)


[AR3]int g0/0/0
[AR3-GigabitEthernet0/0/0]isis circuit-level level-1
Oct 19 2025 16:31:11-08:00 AR3 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[0]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=GE
0/0/0, CurrentState=down, ChangeType=L1_CIRCUIT_DOWN, Level=Level-1)
Oct 19 2025 16:31:11-08:00 AR3 %%01ISIS/4/PEER_DOWN_CIRC_DOWN(l)[1]:ISIS 256 nei
ghbor 0000.0000.0001 was Down because interface GE0/0/0 was down. The Hello pack
et was received at 16:28:31 last time; the maximum interval for sending Hello pa
ckets was 3657891840; the local router sent 2047344640 Hello packets and receive
d 83886080 packets; the type of the Hello packet was Lan Level-1.
Oct 19 2025 16:31:11-08:00 AR3 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[2]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0001, InterfaceName=GE
0/0/0, CurrentState=up, ChangeType=NEW_L1_ADJ, Level=Level-1)
[AR3-GigabitEthernet0/0/0]int g0/0/1
[AR3-GigabitEthernet0/0/1]isis circuit-level level-2
Oct 19 2025 16:31:25-08:00 AR3 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[3]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0005, InterfaceName=GE
0/0/1, CurrentState=down, ChangeType=L2_CIRCUIT_DOWN, Level=Level-2)
Oct 19 2025 16:31:25-08:00 AR3 %%01ISIS/4/PEER_DOWN_CIRC_DOWN(l)[4]:ISIS 256 nei
ghbor 0000.0000.0005 was Down because interface GE0/0/1 was down. The Hello pack
et was received at 16:30:39 last time; the maximum interval for sending Hello pa
ckets was 438763520; the local router sent 3087073280 Hello packets and received
318767104 packets; the type of the Hello packet was Lan Level-2.
Oct 19 2025 16:31:25-08:00 AR3 %%01ISIS/4/ADJ_CHANGE_LEVEL(l)[5]:The neighbor of
ISIS was changed. (IsisProcessId=256, Neighbor=0000.0000.0005, InterfaceName=GE
0/0/1, CurrentState=up, ChangeType=NEW_L2_ADJ, Level=Level-2)
[AR3-GigabitEthernet0/0/1]quit

查看R1的路由表,这里会发现24.1.1.0/24网段的路由条目还在,但是35.1.1.0/24的路由条目没有了,这是因为24.1.1.0/24网段的路由条目是做了路由渗透的路由条目

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
[AR1]dis ip rou
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 17 Routes : 18

Destination/Mask Proto Pre Cost Flags NextHop Interface

0.0.0.0/0 ISIS-L1 15 10 D 13.1.1.3 GigabitEthernet
0/0/1
ISIS-L1 15 10 D 12.1.1.2 GigabitEthernet
0/0/0
1.1.1.1/32 Direct 0 0 D 127.0.0.1 LoopBack0
2.2.2.2/32 ISIS-L1 15 10 D 12.1.1.2 GigabitEthernet
0/0/0
3.3.3.3/32 ISIS-L1 15 10 D 13.1.1.3 GigabitEthernet
0/0/1
12.1.1.0/24 Direct 0 0 D 12.1.1.1 GigabitEthernet
0/0/0
12.1.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
12.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
13.1.1.0/24 Direct 0 0 D 13.1.1.1 GigabitEthernet
0/0/1
13.1.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
13.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
24.1.1.0/24 ISIS-L1 15 20 D 12.1.1.2 GigabitEthernet
0/0/0
100.1.1.1/32 ISIS-L1 15 20 D 12.1.1.2 GigabitEthernet
0/0/0
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
200.1.1.1/32 ISIS-L1 15 30 D 12.1.1.2 GigabitEthernet
0/0/0
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0

R3再做路由渗透

1
2
3
4
5
6
7
[AR3]acl 2000
[AR3-acl-basic-2000]rule permit source 100.1.1.1 0.0.0.0
[AR3-acl-basic-2000]rule permit source 200.1.1.1 0.0.0.0
[AR3-acl-basic-2000]quit
[AR3]isis
[AR3-isis-1]import-route isis level-2 into level-1 filter-policy 2000
[AR3-isis-1]quit

再次查看R1的路由表,会发现100.1.1.1/32的路由条目走的是R2,200.1.1.1/32的路由条目走的是R3,同样也会多出35.1.1.0/24网段的路由条目。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
[AR1]dis ip rou
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 18 Routes : 19

Destination/Mask Proto Pre Cost Flags NextHop Interface

0.0.0.0/0 ISIS-L1 15 10 D 13.1.1.3 GigabitEthernet
0/0/1
ISIS-L1 15 10 D 12.1.1.2 GigabitEthernet
0/0/0
1.1.1.1/32 Direct 0 0 D 127.0.0.1 LoopBack0
2.2.2.2/32 ISIS-L1 15 10 D 12.1.1.2 GigabitEthernet
0/0/0
3.3.3.3/32 ISIS-L1 15 10 D 13.1.1.3 GigabitEthernet
0/0/1
12.1.1.0/24 Direct 0 0 D 12.1.1.1 GigabitEthernet
0/0/0
12.1.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
12.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/0
13.1.1.0/24 Direct 0 0 D 13.1.1.1 GigabitEthernet
0/0/1
13.1.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
13.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet
0/0/1
24.1.1.0/24 ISIS-L1 15 20 D 12.1.1.2 GigabitEthernet
0/0/0
35.1.1.0/24 ISIS-L1 15 20 D 13.1.1.3 GigabitEthernet
0/0/1
100.1.1.1/32 ISIS-L1 15 20 D 12.1.1.2 GigabitEthernet
0/0/0
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
200.1.1.1/32 ISIS-L1 15 20 D 13.1.1.3 GigabitEthernet
0/0/1
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0

Level-1-2路由器的路由计算

R2及R3都维护Level-1 LSDB,它们能够通过这些LSDB中的LSP计算出Area 49.0001的路由。

R2及R3都维护Level-2 LSDB,它们能够通过这些LSDB中的LSP计算出Area 49.0002的路由。

R2及R3将到达Area 49.0001的路由以Level-2 LSP的形式发送到Area 49.0002。

image-45

IS-IS认证

IS-IS认证的分类

IS-IS认证是基于网络安全性的要求而实现的一种认证手段,通过IS-IS报文中增加认证字段对报文进行认证。当本地路由器接收到远端路由器发送过来的IS-IS报文,如果发现认证密码不匹配,则将收到的报文进行丢弃,达到自我保护的目的。

根据报文的种类,认证可以分为以下三类:

  • 接口认证:在接口视图下配置,对Level-1和Level-2的Hello报文进行认证。
  • 区域认证:在IS-IS进程视图下配置,对Level-1和Level-2的CSNP、PSNP和LSA报文进行认证。
  • 路由域认证:在IS-IS进程视图下配置,对Level-2的CSNP、PSNP和LSP报文进行认证。

根据报文的认证方式,可以分为以下四类:

简单认证:将配置密码直接加入到报文中,这种加密方式安全性交其他两种方式低。

MD5认证:通过将配置的密码进行MD5算法加密之后再加入报文中,提高密码安全性。

Keychian认证:通过配置随时间变化的密码链表来进一步提升网络的安全性。

HMAC-SHA256认证:通过将配置的密码进行HMAC-SHA256算法加密之后再加入到报文中,提高密码的安全性。

IS-IS认证详解

接口认证

Hello报文使用的认证密码保存在接口下,发送带认证TLV的认证报文,互相连接的路由器接口必须配置相同的口令。

区域认证

区域内的每一台L1路由器都必须使用相同的认证模式和具有共同的钥匙串。

路由域认证

IS-IS域内的每一台L2和L1/L2类型的路由器都必须使用相同模式的认证,并使用共同的钥匙串。

对于区域和路由域认证,可以设置为SNP和LSP分开认证。

  • 本地发送的LSP报文和SNP报文都携带认证TLV,对收到的LSP报文和SNP报文都进行认证检查。
  • 本地发送的LSP报文携带认证TLV,对收到的LSP报文进行认证检查;发送的SNP报文携带认证TLV,但不对收到的SNP报文进行检查。
  • 本地发送的LSP报文携带认证TLV,对收到的LSP报文进行认证检查;发送的SNP报文不携带认证TLV,也不对收到的SNP报文进行认证检查。
  • 本地发送的LSP报文和SNP报文都携带认证TLV,对收到的LSP报文和SNP报文都不进行认证检查。

IS-IS认证的配置

配置IS-IS区域认证

simple指定密码以纯文本方式参与认证;keychain指定随时间变化的密钥链表;md5指定密码通过HMAC-MD5算法加密后参与认证。

snp-packet指定配置SNP报文相关的验证;authentication-avoid指定不对产生的SNP封装认证信息,也不检查收到的SNP,只对产生的LSP封装认证信息,并检查收到的LSP;send-only指定对产生的LSP和SNP封装认证信息,只检查收到的LSP,不检查收到的SNP;all-send-only指定对产生的LSP和SNP封装认证信息,不检查收到的LSP和SNP。

1
[Huawei-isis-1] area-authentication-mode {{simple|md5} {plain [plain]|[cipher] plain-cipher-text} keychain [keychain-name]|[hmac-sha256 key-id] key-id} [snp-packet {authentication-avoid | send only}|all-send-only]

配置IS-IS路由域认证

参数含义与区域认证一致。

1
[Huawei-isis-1] domain-authentication-mode {{simple|md5} {plain [plain]|[cipher] plain-cipher-text} keychain [keychain-name]|[hmac-sha256 key-id] key-id} [snp-packet {authentication-avoid | send only}|all-send-only]

配置IS-IS接口认证

level-1指定设置Level-1级别的认证;level-2指定设置Level-2级别的认证;send-only指定只对发送的Hello报文加载认证信息,不对接收的Hello报文进行认证。

1
[Huawei-GigabitEthernet0/0/0]isis authentication-mode [keychain|md5|simple] [level-1|level-2] [ip|osi] [send-only]

image-46