加载中...

IS-IS协议

一、IS-IS(中间系统到中间系统)协议简介

1.1 IS-IS协议特点

​ IS-IS 协议是 链路状态路由协议,设计用于为无连接网络协议CLNP(ConnectionLess Network Protocol),但也可通过 集成IS-IS(Dual Stack) 支持 IP 网络。其封装不依赖 IP 层,直接基于数据链路层

二、IS-IS(中间系统到中间系统)协议结构

2.1 IS-IS地址结构

2.1.1 NSAP

NSAP(Network Service Access Point)是OSI协议中用于定位资源的地址。

image-20250314031155136

字段 说明 示例值()
AFI Authority Format Identifier,地址授权标识(49 表示私有地址)。 49
IDI Initial Domain Identifier,与AFI共同定义路由域
HODSP High-Order DSP,区域标识,可变长度
Area ID 区域标识,可变长度(通常为 1-13 字节),用于划分 IS-IS 区域。 49.0010
System ID 固定 6 字节(通常用路由器 Loopback 地址转换),唯一标识设备。 1921.6800.1001
NSEL Network Selector,当为路由器时,固定为 00(标识网络层实体)。 00

2.1.2 NET

​ 网络实体名称NET(Network Entity Title),一类特殊的NSAP(SEL=0)NET(Network Entity Title) 是 IS-IS 协议中用于唯一标识一个路由器的 特殊NSAP 地址(SEL=0)

2.2 路由器结构

image-20250314040736559

​ 不同于OSPF,通过ABR设备来以路由器划分边界,ISIS的划分是以整个骨干区域(backbone)不仅包括Area 1中的所有L2路由器,还包括其它区域的L1/2路由器。

ISIS进程下配置 is-level决定了这台设备可以用什么等级

接口下 isis circuit-type去限制接口发出IIH的等级

2.2.1 L2的路由器

​ Level-2路由器负责区域间的路由可以与Level-2或其它区域的Level-1-2路由器形成Level-2邻居关系,不要求区域号一致,维护一个Level-2的LSDB,该LSDB包含区域间的路由信息。

​ 所有Level-2级别的路由器组成路由域的骨干网,负责在不同区域间通信,路由域中Level-2级别的路由器必须是连续的,以保证骨干网的连续性。只有Level-2级别的路由器才能直接与区域外的路由器交换数据报文或路由信息。

2.2.2 L1的路由器

​ Level-1路由器负责区域内的路由,它只与属于同一区域的Level-1和Level-1-2路由器形成Level-1邻居关系,建立前提区域号一致

​ 一个Level-1路由器只负责维护本区域内的LSDB(Link State Database,链路状态数据库),对于目的地不在本区域内的路由,Level-1路由器会将该路由的目的地标识为最近的Level-1-2路由器。

2.2.3 L1/2的路由器

​ 同时属于Level-1和Level-2的路由器称为Level-1-2路由器,可以与同一区域的Level-1路由器形成Level-1邻居关系,与其他区域的Level-2路由器形成Level-2邻居关系,华为设备的路由器默认是 L1/2的路由器

2.3 IS-IS报文结构

[!NOTE]

后续标题会用OSPF的报文来同化ISIS报文

ISIS报文封装在IEEE 802.3 LLC帧中,其中,DSAP字段值设为0xFE,SSAP字段值设为0xFE。

image-20250314035815876

2.3.1 IS-IS报文通用报文头

image-20250314040107741

image-20250314040319910

字段 长度 含义
Intradomain Routing Protocol Discriminator 1字节 域内路由选择协议鉴别符,设置为0x83。
Length Indicator 1字节 PDU头部的长度(包括通用头部和专用头部),以字节为单位。
Version/Protocol ID Extension 1字节 版本/协议标识扩展,设置为1(0x01)。
ID Length 1字节 NSAP地址或NET中System ID区域的长度。值为0时,表示System ID区域的长度为6字节。值为255时,表示System ID区域为空(即长度为0)。
R 1比特 保留(Reserved)位,设置为0。
PDU Type 5比特 PDU的类型。IS-IS PDU共有9种类型image-20250314040353305
Version 1字节 IS-IS版本号,设置为1(0x01)。
Maximum Area Addresses 1字节 支持的最大区域个数。设置为1~254的整数,表示该IS-IS进程实际所允许的最大区域地址数;设置为0,表示该IS-IS进程最大只支持3个区域地址数。
PDU Specific Header 变长 PDU专用头部,根据PDU类型不同而有所差别。
Variable Length Fields 变长 由多个CLV(Code-Length-Value)三元组组成。

2.3.2 IS-IS IIH消息(Hello消报文)

Hello消息用于建立和维持邻居关系

消息分类

广播网中的Level-1路由器使用Level-1 LAN IIH消息;广播网中的Level-2路由器使用Level-2 LAN IIH消息;非广播网络中则使用P2P IIH

目的MAC

P2P IIH消息,目的MAC为09:00:2b:00:00:05

image-20250314054107137

Brocast IIH 如果是L2,目的MAC为0180-c200-0015(所有L2 IS);如果是L1,目的MAC为0180-c200-0014(所有L1 IS)

image-20250314044448311

IS-IS的邻居不检查Hello/Hold时间,根据不同的Hello报文有不同的邻居建立方式。

字段 长度 含义
Reserved/Circuit Type 1字节 高位的6比特保留,值为0。低位的2比特表示路由器的类型(01表示L1,10表示L2,11表示L1/L2)。
Source ID ID Length 发出Hello报文的路由器的System ID。
Holding Time 2字节 保持时间。在此时间内如果没有收到邻居发来的Hello报文,则中止已建立的邻居关系。
PDU Length 2字节 PDU的总长度,单位是字节。
Priority 7比特 选举DIS的优先级,取值范围为0~127。数值越大,优先级越高。该字段只在广播网中的Hello消息(LAN IIH消息)
携带P2P网络的Hello消息(P2P IIH消息)没有此字段,也没有此字段之前的R保留位。
LAN ID ID Length + 1 包括DIS的System ID和一字节的伪节点ID。该字段只在广播网中的Hello消息(LAN IIH消息)携带
P2P网络的Hello消息(P2P IIH消息)没有此字段。
Local Circuit ID 1字节 本地链路ID。该字段只在P2P网络的Hello消息(P2P IIH消息)携带>
广播网中的Hello消息(LAN IIH消息)没有此字段。

image-20250314044512018

图 P2P Hello报文

image-20250314044955328

图 Brocast Hello报文

TLV关键说明

  1. TLV 1(Area Address)
    • 必须与同一Level-1区域内的其他路由器的Area ID至少部分重叠,否则无法建立邻接。
    • 示例:49.000149.0002
  2. TLV 6(IS Neighbor)
    • 仅用于广播网络(Broadcast),点对点链路不携带此TLV
    • 邻居系统ID基于路由器配置的NET(Network Entity Title)生成。
  3. TLV 129(Supported Protocols)
    • 协议代码:
      • 0xCC:IPv4
      • 0x8E:IPv6
    • 若未声明支持的协议,可能导致路由信息无法传播。
  4. TLV 132(Interface Address)
    • 可以是IPv4或IPv6地址,具体取决于网络层协议。
    • 多个接口地址可以在LSP中通过多个TLV 132携带。
  5. TLV 229(Multi-Protocol)
    • 用于多拓扑(Multi-Topology)场景,例如同时支持IPv4和IPv6的独立拓扑。
    • 扩展TLV结构,包含地址族标识(如IPv4=1IPv6=2)。
  6. TLV 240(P2P Adjacency State)
    • 仅在点对点链路的Hello报文中出现,携带邻接状态机信息(如UpInitDown)。
    • 邻接状态为三次握手过程中的关键字段。

2.3.3 IS-IS LSP消息(LSU报文)

​ 链路状态报文LSP(Link State PDUs)用于交换链路状态信息。LSP分为两种:Level–1 LSP和Level–2 LSP。

​ Level–1 LSP由Level-1路由器传送,Level–2 LSP由Level-2路由器传送,Level-1-2路由器则可传送以上两种LSP。

image-20250314050640052

字段 长度 含义
PDU Length 2字节 PDU的总长度,以字节为单位。
Remaining Lifetime 2字节 LSP的生存时间,以秒为单位。
LSP ID ID Length + 2 由三部分组成,System ID、伪节点ID(一字节)和LSP分片后的编号(一字节)。
Sequency Number 4字节 LSP的序列号。
Checksum 2字节 LSP的校验和。
P 1比特 自动修复(Partition Repair)位,仅与L2 LSP有关,表示路由器是否支持自动修复区域分割。
ATT 4比特 ATT(Attachment),由Level-1-2路由器产生,用来指明始发路由器是否与其它区域相连。虽然此标志位也存在于Level-1和Level-2的LSP中,但实际上此字段只和Level-1-2路由器始发的L1 LSP有关。
此字段有4bit,用来表明相连的区域所使用的度量方式。从右至左这4位依次表示如下所示:第4位:缺省度量;第5位:时延度量;第6位:代价度量;第7位:差错度量。
OL 1比特 过载标志OL(LSDB Overload)位。设置了过载标志位的LSP虽然还会在网络中扩散,但是在计算通过过载路由器的路由时不会被采用。即,对路由器设置过载位后,其它路由器在进行SPF计算时不会使用这台路由器做转发,只计算该节点上的直连路由。当路由器内存不足时,系统自动在发送的LSP报文中设置过载标志位。
IS Type 2比特 生成LSP的路由器的类型。用来指明是Level-1还是Level-2路由器(01表示Level-1,11表示Level-2)。
Variable Length Fields 变长 由多个CLV(Code-Length-Value)三元组组成。

2.3.4 IS-IS CSNP消息(DD报文)

​ IS-IS CSNP(Complete Sequence Number PDUs,全时序报文)通过描述全部数据库中的LSP来同步各LSDB(Link-State DataBase),从而维护LSDB,在相邻路由器间保持LSDB的同步。

​ 在广播网络上,CSNP由DIS定期发送(缺省的发送周期为10秒)

​ 在点到点链路上,CSNP只在第一次建立邻接关系时发送。

image-20250314051227355

字段 长度 含义
PDU Length 2字节 PDU的总长度,单位是字节。
Source ID ID Length + 1字节 发出CSNP报文的路由器的System ID。
Start LSP ID ID Length + 2字节 CSNP报文中第一个LSP的ID值。如果一个CSNP报文就能描述完整的数据库信息,则LSP ID开始于0000.0000.0000.00.00,结束于ffff.ffff.ffff.ff.ff。
End LSP ID ID Length + 2字节 CSNP报文中最后一个LSP的ID值。如果一个CSNP报文就能描述完整的数据库信息,则LSP ID开始于0000.0000.0000.00.00,结束于ffff.ffff.ffff.ff.ff。
Variable Length Fields 变长 由多个CLV(Code-Length-Value)三元组组成。

2.3.5 IS-IS PSNP消息(LSR报文\LSAck报文)

​ IS-IS PSNP(Partial Sequence Number PDUs,部分时序报文)通过描述部分数据库中的LSP来同步各LSDB(Link-State DataBase),从而维护LSDB。

​ PSNP只列举最近收到的一个或多个LSP的序号,它能够一次对多个LSP进行确认,当发现LSDB不同步时,也用PSNP来请求邻居发送新的LSP。

image-20250314051646241

字段 长度 含义
PDU Length 2字节 PDU的总长度,单位是字节。
Source ID ID Length + 1字节 发出PSNP报文的路由器的System ID。
Variable Length Fields 变长 由多个CLV(Code-Length-Value)三元组组成。CLV也称为TLV(Type-Length-Value)

image-20250314051804721

TLV关键说明

  1. TLV 9(LSP entries)

    Sequence Number 为 0 时请求,非0是回应某个LSP报文

2.4 TLV信息

由多个CLV(Code-Length-Value)三元组组成。

TLV类型 名称 功能描述 应用场景 报文类型 示例/备注
TLV 1 Area Address 携带路由器的区域地址(Area ID),用于区域划分和邻接关系建立。 Level-1区域内路由器的邻接建立 Hello/LSP Area ID: 49.0001
TLV 6 IS Neighbor 广播网络中邻居的路由器System ID及MAC地址。 Broadcast网络的邻接状态同步 LSP Neighbor: 1921.6800.1001
TLV 10 Authentication 携带认证信息(明文、MD5、HMAC等),验证报文合法性。 防止非法设备接入网络 Hello/LSP Authentication: HMAC-SHA-256, Key-ID 1
TLV 22 Extended IS Reachability 扩展IS邻居可达性信息,支持多度量值和子TLV(如带宽、延迟)。 流量工程(TE)和多拓扑路由 LSP Metric: 100, Sub-TLV 6 (Admin Group: 0x01)
TLV 128 IP Internal Reachability 描述IPv4内部路由的可达性(已逐渐被TLV 135替代)。 传统IPv4路由传播 LSP IPv4 Prefix: 10.1.1.0/24, Metric: 10
TLV 129 Protocols Supported 声明路由器支持的网络协议(如IPv4、IPv6)。 多协议环境下的能力协商 Hello Supported Protocols: IPv4 (0xCC), IPv6 (0x8E)
TLV 132 IP Interface Address 携带接口的IPv4地址。 链路状态数据库中的接口地址同步 LSP Interface Address: 10.1.45.5
TLV 135 Extended IP Reachability 扩展的IPv4路由可达性信息,支持更长的前缀和32位度量值。 现代IPv4路由传播 LSP IPv4 Prefix: 192.168.1.0/24, Metric: 200
TLV 137 Dynamic Hostname 携带路由器的动态主机名,便于管理识别。 给静态的LSP取名 自己也能看到别人而的动态主机名 仅在本地生效 LSP Hostname: R1-NYC
TLV 229 Multi-Protocol Topology 支持多协议(IPv4/IPv6)和多拓扑路由(如独立IPv4/IPv6拓扑)。 多协议双栈网络环境 LSP Topology ID: 0 (IPv4), 2 (IPv6)
TLV 232 IPv6 Interface Address 携带接口的IPv6地址。 IPv6链路状态数据库同步 LSP Interface Address: 2001:db8::1
TLV 240 P2P Adjacency State 点对点链路的邻接状态(如三次握手阶段)。 点对点网络的邻接关系维护 Hello (P2P专用) Adjacency State: Up
TLV 242 Router Capability 声明路由器的扩展能力(如Segment Routing、Flex-Algo)。 高级功能(SRv6、SDN)的协商 LSP

三、IS-IS(中间系统到中间系统)协议机制

3.1 网络类型

特性 Broadcast(广播网络) Point-to-Point(点对点网络)
适用场景 多设备共享的链路(如以太网) 两台设备直接相连的链路(如PPP、HDLC、广域网专线)
DIS 选举 ✅ 需要选举DIS(优先级高且MAC地址大的设备胜出) ❌ 无需选举DIS
DIS 作用 生成伪节点LSP,简化广播网络拓扑的泛洪和计算
Hello报文类型 组播发送(目的MAC:01-80-C2-00-00-14/15 单播或组播(直接发给邻居)
LSP 泛洪方式 DIS 负责泛洪所有LSP到广播域内的设备 直接发送给对端设备
默认自动检测 以太网接口默认识别为Broadcast类型 PPP/HDLC接口默认识别为Point-to-Point类型

3.2 邻居建立的先要条件

System-id要唯一

​ Hello报文中携带system-id字段

image-20250314041647374


**Maximum Area Addresses **

image-20250314041723582

方便不同品牌的设备进行对接,多个地址可以在同区域ID进行分离时,使得业务不中断


Level等级要一致


认证需要通过

TLV10中携带认证数据


网络接口类型

双方接口的网络类型必须一致(Broadcast或Point-to-Point)。


Mtu要一致


P2P链路邻居关系建立的两种方式要相同


IP地址在同一网段

isis peer-ip-ignore
# IS-IS会对收到的Hello报文进行IP地址检查,只有这个地址和本地接收报文的接口地址在同一网段时,才会建立邻居。

接口没有被Silent,Silent接口是不收不发ISIS Hello报文

3.3 P2P网络的建立

P2P IIH消息,目的MAC为09:00:2b:00:00:05

image-20250314055003940

3.3.1 2-way

只要设备收到IS-IS Hello报文,就会单方向建立起邻居关系,优点是快速建立邻居,缺点是容易造成单向邻居。不携带TLV240

[Huawei-GigabitEthernet0/0/1]isis ppp-negotiation 2-way

3.3.2 3-way

image-20250314054508029

在华为设备中默认2way与3way可以兼容建立,但如果配置如下,会检查TlV240

[Huawei-GigabitEthernet0/0/1]isis ppp-negotiation 3-way only #仅接受3-way	

3.3.3 P2P的数据库同步

image-20250314054801476

在第一次建立时,一台设备发送CSNP摘要信息,另一台设备进行PSNP请求,后续参考下面

后续一端发送LSP报文,另一端发送PSNP报文回应。 PSNP通过Seq序列号来回应

image-20250314054902551

3.3 Brocast网络的建立

L1的DMAC地址是01:80:c2:00:00:14

L2的DMAC地址是01:80:c2:00:00:15

image-20250314055051256

image-20250314055115769

邻居建后的DIS选举和交互

DIS:周期发送CSNP摘要信息给各个LAN中

3.4 DIS

3.3.1 DIS简介

DIS(Designated Intermediate System,指定中间系统)

DIS(Designated Intermediate System)发送Hello报文(IIH)的间隔默认为普通路由器的 1/3。此机制用于快速感知DIS状态变化,确保网络收敛速度。

角色 Hello间隔(秒) 保持时间(秒)
普通路由器 10 30(3倍Hello间隔)
DIS 3.3(10/3) 10(3倍DIS Hello间隔)

3.3.2 DIS选举规则

​ DIS优先级数值最大的被选为DIS(默认64)。如果优先级数值最大的路由器有多台,则其中MAC地址最大的路由器会被选中。

  1. DIS会被抢占
  2. DIS 优先级=0也参加选举

3.3.3 DIS的意义

步骤 DIS的行为 DISother的行为 报文类型
1. DIS发送CSNP 周期性(默认每10秒)广播CSNP,携带所有LSP的ID、序列号、校验和等摘要信息。 收到CSNP后,与本地LSDB进行对比。 CSNP
2. LSDB对比 - 若本地LSDB与CSNP完全一致:不响应 -
3. 发现本地缺少LSP - 发送PSNP(Partial SNP)请求缺失的LSP,并等待DIS回复。 PSNP
4. DIS回复缺失LSP 收到PSNP后,立即发送请求的LSP。 收到LSP后,不回复PSNP确认(隐式通过下一轮CSNP验证)。 LSP
5. 发现本地有额外LSP - 立即泛洪该LSP(通过LSP报文广播),其他路由器(包括DIS)接收后更新LSDB。无需等待确认 LSP
6. 下一周期CSNP检查 发送新的CSNP(包含更新后的LSP摘要)。 再次对比本地LSDB与最新CSNP,重复上述流程。 CSNP

image-20250314060629180

3.5 ISIS认证

通过TLV10来进行认证,认证方式分为明文认证和MD5认证。

明文认证

​ 用于需快速部署认证但安全性要求较低的场景(如内部可控网络),密码明文传输,易被截获,仅适用于非敏感环境。

MD5认证

​ 用于安全性要求较高的生产网络,需防篡改和伪造。

认证类型 认证方式 配置命令示例 作用范围 应用场景 注意事项
邻居(接口)认证 基于接口的认证 interface s1/0/1
isis authentication-mode [simple/md5] [plain/cipher] <密码>
仅保护该接口的Hello报文(邻接关系建立)。 点对点链路或广播网络中需单独保护某接口。 认证失败会导致邻居无法建立,需确保两端配置一致。
Level-1区域认证 区域级LSP认证 isis
area-authentication-mode [simple/md5] [plain/cipher] <密码>
保护Level-1 LSP、CSNP、PSNP报文。 同一Level-1区域内的路由信息保护(区域边界隔离)。 区域内所有路由器需配置相同认证参数,否则LSDB无法同步。
Level-2域认证 域级LSP认证 isis
domain-authentication-mode [simple/md5] [plain/cipher] <密码>
保护Level-2 LSP、CSNP、PSNP报文。 骨干区域(Level-2)的路由信息保护,防止跨域攻击。 Level-2路由器需统一配置,否则区域间路由计算失败。

3.6 开销风格

IS-IS支持三种开销风格(Cost Style),用于定义链路度量(Metric)的范围和计算方式

开销风格 描述 范围 适用场景
Narrow(窄度量) 传统度量方式,接口开销范围为 1~63,总路径开销最大为 1023 1~63(接口级) 简单网络,兼容老旧设备。
Wide(宽度量) 扩展度量方式,接口开销范围为 1~16777215,总路径开销无上限。 1~16777215(接口级) 复杂网络,支持流量工程(TE)。
Compatible(兼容) 同时支持Narrow和Wide度量,用于过渡场景。 - 网络从Narrow向Wide迁移阶段。

3.6.1 Narrow

接口开销和总路径开销范围有限,无法适应大规模网络。

仅支持 TLV 2(IS Neighbor)TLV 128(IP Internal Reachability)

3.6.1 Wide

支持更大的开销值,适用于复杂网络设计和精细流量调度。

使用 TLV 22(Extended IS Reachability)TLV 135(Extended IP Reachability)

isis
 cost-style narrow  # 默认即为narrow,可不配置

3.7 IS-IS Overload

​ IS-IS Overload是指对设备设置过载标志位,这样其它设备在进行SPF计算时不会在该节点下再有子树,即通过该节点到达的路由不计算。

L1/2设置OL bit后,将不在执行路由泄露功能。无论是否配置泄露功能。

set-overlord

四、LSP

4.1 LSP简介

LSP(Link State PDU) 是IS-IS协议的核心数据单元,用于描述网络中路由器的链路状态信息,类似OSPF的LSA。

4.2 LSP的泛洪机制

Level-1 LSP:仅在Level-1区域内泛洪。

Level-2 LSP:在Level-2骨干区域泛洪。

4.3 LSP ID

区分NSAP地址,NSAP地址System ID后的SEL位,而LSP ID是如下

字段 说明 示例
System ID 路由器的唯一标识符,通常为6字节(如华为设备的1921.6800.1001)。 1921.6800.1001
伪节点标识符 标识是否为伪节点LSP(非0表示伪节点,由DIS生成;0表示普通LSP)。 .00(普通LSP).01(为节点)
分片号 当LSP内容超过MTU时,分片号标记分片顺序(未分片时为00)。 -00(未分片)

4.4 LSP分片

OSPF不需要分片是因为OSPF封装在IP报文之上,IP报文自带分片功能,但ISIS封装在802.3帧之上。

LSP的分片数量最多为256个,2bit0x00-0xFF

节点分片示例1921.6800.1001.00-01

4.4.1 LSP虚系统(Mode 2)

​ LSP分片的扩展功能,通过TLV 24(IS Alias ID TLV)来扩展LSP分片的数量

Mode-1方式

用于网络中的部分设备不支持LSP分片扩展特性的情况。

Mode-2方式

用于网络中所有设备都支持LSP分片扩展特性的情况。

特性 Mode-1 Mode-2
分片数量 最大256(分片号00-FF 理论上无限制
依赖TLV 必须使用TLV 24
度量支持 窄度量(Narrow Metric) 宽度量(Wide Metric)
典型场景 简单网络、小规模LSP 大规模网络、复杂TLV扩展需求

4.5 伪节点

类似于OSPF的伪节点,无区别

伪节点示例1921.6800.1001.01-00

4.6 LSP老化

LSP(链路状态协议数据单元) 通过 剩余生存时间(Remainning Lifetime)刷新机制 确保链路状态数据库(LSDB)的时效性。老化的核心目的是移除过时或无效的拓扑信息,保持网络状态的一致性。

阶段 行为 时间参数
生成 路由器在启动或拓扑变化时生成LSP,初始生存时间设为 1200秒(20分钟) Lifetime = 1200
老化倒计时 LSP的剩余生存时间(Remaining Lifetime)每秒减1,直到归零。 Remaining Lifetime -= 1
刷新 在LSP过期前,路由器每 900秒(15分钟) 重新生成LSP,重置生存时间。 Refresh Interval = 900
过期移除 当剩余生存时间为0时,该LSP从LSDB中删除,并泛洪剩余时间为0的LSP通知全网。

五、SPF计算

[!NOTE]

Narrow

​ TLV132 (IPV4接口IP)TLV128 130(内部/外部叶子信息)| TLV2 (对端设备地址)

Wide

​ TLV132 (IPV4接口IP)TLV135(内部/外部叶子信息)| TLV22 (对端设备地址)

下一跳/叶子/NET标志

5.1 P2P-SPF计算

5.1.1 narrow风格

image-20250314070633652

image-20250314070637696

对方
# 星号表示是自己的LSP
[Huawei]display isis lsdb level-1 verbose

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

                          Level-1 Link State Database

LSPID                 Seq Num      Checksum      Holdtime      Length  ATT/P/OL
-------------------------------------------------------------------------------
0000.0000.0004.00-00* 0x00000003   0xadae        875           70      0/0/0   
 SOURCE       0000.0000.0004.00
 NLPID        IPV4   TLV129
 AREA ADDR    49.0045   TLV1
 INTF ADDR    10.1.45.4   TVL132
 NBR  ID      0000.0000.0005.00  COST: 10         TLV2 
 IP-Internal  10.1.45.0       255.255.255.0    COST: 10         TLV128

0000.0000.0005.00-00  0x00000003   0xacae        865           70      0/0/0   
 SOURCE       0000.0000.0005.00
 NLPID        IPV4
 AREA ADDR    49.0045 
 INTF ADDR    10.1.45.5
 NBR  ID      0000.0000.0004.00  COST: 10        
 IP-Internal  10.1.45.0       255.255.255.0    COST: 10        

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

image-20250314070732031

5.1.2 wide风格

image-20250314070826314

image-20250314070830660

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

                          Level-1 Link State Database

LSPID                 Seq Num      Checksum      Holdtime      Length  ATT/P/OL
-------------------------------------------------------------------------------
0000.0000.0004.00-00* 0x00000005   0x61cd        985           65      0/0/0   
 SOURCE       0000.0000.0004.00
 NLPID        IPV4
 AREA ADDR    49.0045 
 INTF ADDR    10.1.45.4
+NBR  ID      0000.0000.0005.00  COST: 10        
+IP-Extended  10.1.45.0       255.255.255.0    COST: 10        

0000.0000.0005.00-00  0x00000003   0x68c7        996           65      0/0/0   
 SOURCE       0000.0000.0005.00
 NLPID        IPV4
 AREA ADDR    49.0045 
 INTF ADDR    10.1.45.5
+NBR  ID      0000.0000.0004.00  COST: 10                          TLV22
+IP-Extended  10.1.45.0       255.255.255.0    COST: 10        TLV135

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

image-20250314070913016

5.2 Brocast-SPF计算

5.2.1 narrow风格

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

                          Level-2 Link State Database

LSPID                 Seq Num      Checksum      Holdtime      Length  ATT/P/OL
-------------------------------------------------------------------------------
0000.0000.0001.00-00  0x0000000a   0xb031        840           70      0/0/0   
 SOURCE       0000.0000.0001.00
 NLPID        IPV4           TLV129
 AREA ADDR    49.0123    TLV1
 INTF ADDR    10.1.123.1  TLV132
 NBR  ID      0000.0000.0002.01  COST: 10        TLV2
 IP-Internal  10.1.123.0      255.255.255.0    COST: 10         TLV128

0000.0000.0002.00-00* 0x0000000b   0xd5e4        1049          97      0/0/0   
 SOURCE       0000.0000.0002.00
 NLPID        IPV4
 AREA ADDR    49.0123 
 INTF ADDR    10.1.123.2
 INTF ADDR    10.1.234.2
 NBR  ID      0000.0000.0002.02  COST: 10        
 NBR  ID      0000.0000.0002.01  COST: 10        
 IP-Internal  10.1.123.0      255.255.255.0    COST: 10        

0000.0000.0002.01-00* 0x00000006   0x6c89        1049          66      0/0/0    伪节点
 SOURCE       0000.0000.0002.01
 NLPID        IPV4                         TLV129 
 NBR  ID      0000.0000.0002.00  COST: 0          TLV2 
 NBR  ID      0000.0000.0003.00  COST: 0          TLV2
 NBR  ID      0000.0000.0001.00  COST: 0          TLV2

0000.0000.0003.00-00  0x0000001c   0xd99         793           97      0/0/0   
 SOURCE       0000.0000.0003.00
 NLPID        IPV4
 AREA ADDR    49.0123 
 INTF ADDR    10.1.123.3
 INTF ADDR    10.1.234.3
 NBR  ID      0000.0000.0002.01  COST: 10        
 NBR  ID      0000.0000.0002.02  COST: 10        
 IP-Internal  10.1.123.0      255.255.255.0    COST: 10          


image-20250314071039152

Wide风格略

六、路由相关

6.1 路由泄露

​ 在L1区域中,L1设备不会同步L2的LSP,导致无法计算路由,所以ISIS设备会默认路由泄露

[Huawei-isis-1]import-route isis level-1 into level-2 # 自动产生

6.1.1 ATT

ATT位(Attach Bit) 是IS-IS协议中 Level-1 LSP(链路状态协议数据单元) 的头部标志位(第8位),用于指示 Level-1-2路由器是否连接到Level-2骨干区域。其核心作用是为Level-1区域内(ATT比特位只会在L1的LSP置1)的路由器提供访问外部区域(Level-2或其他自治系统)的默认路由。

6.1.2 ATT产生条件

当L1/2的路由器至少存在一个不在相同区域的L2的邻居时,ATT才会置1

ATT比特位只会在L1的LSP置1

image-20250314072210245

6.1.3 ATT的影响

​ 当level-1的设备发现level-1 lsdb中 ATT=1,就自动计算出一条默认路由指向最近(Cost开销最小)的level-1-2设备

image-20250314072302723

6.2 反向泄露

​ 为了防止L1区域去往L2区域会产生次优路径,有时候需要泄露L2的路由到L1的路由中。

Basic ACL 2000, 1 rule
Acl's step is 5
 rule 5 permit source 2.2.2.2 0 (1 matches)

isis 
 import-route isis level-2 into level-1 filter-policy 2000

6.2.1 DN

DN位(Down Bit) 是IS-IS协议中LSP(链路状态协议数据单元)的一个标志位,标记在 TLV 135(Extended IP Reachability)TLV 236(IPv6 Reachability) 的路由前缀中。其核心作用是 防止路由环路

6.2.2 DU产生条件

​ 为当路由器将 非IS-IS原生路由(如反向ISIS/BGP/OSPF/静态路由)引入IS-IS时,会给路由打上DN置位

image-20250314073241345

6.2.3 DN现象

image-20250314073327448

6.3 路由汇聚

在IS-IS协议中,Level-1与Level-2之间的路由渗透(Route Leaking)通常是基于叶子信息(Leaf Information,即具体的IP前缀路由)进行的。由于这些泄露的明细路由具有连续性和可聚合性(如属于同一CIDR地址块),因此可以通过手动配置路由汇总(Route Summarization)在区域边界(如Level-1-2路由器)进行聚合,以优化路由表规模。

Level-1汇总到Level-2:由Level-1-2路由器(ABR)将Level-1区域的明细路由汇总后发布到Level-2骨干区域。

Level-2汇总到Level-1:较少使用,通常不建议(可能破坏Level-1区域的连通性)。

# mmary ip-address mask [ avoid-feedback | generate_null0_route | tag tag-value | [ level-1 | level-1-2 | level-2 ] ] 
# level-1 是Level-2汇总到Level-1
# level-2 是Level-1汇总到Level-2

@ 可选 generate_null0_route 产生防环黑洞路由
@ Summary xxxx 修改汇总cost 默认继承最大的路由

七、IS-IS v6简介

​ IS-IS是一个集成协议,通过TLV 229(Multi-Topology Identifier)扩展 实现,专门为IPV6地质族定制的多个拓扑,可以区分各个业务的SPF数,使用TLV 237(可达性)、TLV 222(邻居)来进行计算新拓扑。

img

MT ID

​ 在TLV 229(Multi-Topology Identifier中,如果两个邻居之间没有任何共同的MT ID,那么这两个邻居将不会形成邻接关系,并在TLV237中也会携带对比。

7.1 IS-IS MT

TLV 232(IPv6接口地址)作为接口下一跳的地址不变,其余的变化如下。

禁用TLV236字段,新增TLV 237的格式支持多拓扑隔离(含Topology ID

因为SPF的计算,新增TLV222邻居字段,即拥有TLV22和TLV222两个字段,拥有多邻居达到多拓扑目地。

特性 单拓扑模式 多拓扑模式
协议支持 所有接口必须同时支持IPv4和IPv6 接口可仅支持IPv4或IPv6
拓扑独立性 IPv4和IPv6共享同一拓扑 IPv4本身不同TLV区分IPv6,IPv6可以分别使用独立拓扑
TLV类型 TLV 236(IPv6叶子)、TLV22(邻居) TLV 237(IPv6叶子)、TLV 222(邻居)
典型场景 双栈网络,接口均支持IPv4/IPv6 部分接口仅支持IPv4或IPv6

7.1.1 单拓扑配置

[Huawei-isis-1]ipv6 enable 

7.1.1 多拓扑配置

[Huawei-GigabitEthernet0/0/0]isis ipv6 enable 

7.2 IS-IS v6-SPF计算

7.2.1 IPv6单拓扑

新增TLV232 (IPV6接口IP)TLV128/130/135(IPV4叶子信息) / TLV236(IPV6叶子信息)| 原本TLV2/22 (对端设备地址)

黄色部分是wide风格

image-20250314075922369

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

                          Level-2 Link State Database

LSPID                 Seq Num      Checksum      Holdtime      Length  ATT/P/OL
-------------------------------------------------------------------------------
0000.0000.0001.00-00  0x0000000c   0x8519        1046          109     0/0/0   
 SOURCE       0000.0000.0001.00
 NLPID        IPV4
 NLPID        IPV6
 AREA ADDR    49.0123 
 INTF ADDR    10.1.123.1
 INTF ADDR V6 2001:123::1                       # TLV232
 Topology     Standard                        # TLV229
 NBR  ID      0000.0000.0002.01  COST: 10      # TLV2  
 IP-Internal  10.1.123.0      255.255.255.0    COST: 10        #TLV128
 IPV6         2001:123::/64                    COST: 10        #  TLV236

0000.0000.0002.00-00* 0x0000000f   0x1fb3        950           152     0/0/0   
 SOURCE       0000.0000.0002.00
 NLPID        IPV4
 NLPID        IPV6
 AREA ADDR    49.0123 
 INTF ADDR    10.1.123.2
 INTF ADDR    10.1.234.2
 INTF ADDR    2.2.2.2
 INTF ADDR V6 2001:123::2                    
 Topology     Standard
 NBR  ID      0000.0000.0002.02  COST: 10        
 NBR  ID      0000.0000.0002.01  COST: 10        
 IP-Internal  10.1.123.0      255.255.255.0    COST: 10        
 IP-Internal  10.1.234.0      255.255.255.0    COST: 10        
 IP-Internal  2.2.2.2         255.255.255.255  COST: 0         
 IPV6         2001:123::/64                    COST: 10        

0000.0000.0002.01-00* 0x00000008   0xf86b        950           67      0/0/0   
 SOURCE       0000.0000.0002.01
 NLPID        IPV4
 NLPID        IPV6
 NBR  ID      0000.0000.0002.00  COST: 0         
 NBR  ID      0000.0000.0001.00  COST: 0         
 NBR  ID      0000.0000.0003.00  COST: 0         

0000.0000.0003.00-00  0x0000000e   0xcaa6        935           136     0/0/0   
 SOURCE       0000.0000.0003.00
 NLPID        IPV4
 NLPID        IPV6
 AREA ADDR    49.0123 
 INTF ADDR    10.1.123.3
 INTF ADDR    10.1.234.3
 INTF ADDR V6 2001:123::3                    
 Topology     Standard
 NBR  ID      0000.0000.0002.01  COST: 10        
 NBR  ID      0000.0000.0002.02  COST: 10        
 IP-Internal  10.1.123.0      255.255.255.0    COST: 10        
 IP-Internal  10.1.234.0      255.255.255.0    COST: 10        
 IPV6         2001:123::/64                    COST: 10        

image-20250314080048774

7.2.2 IPv6多拓扑

​ 新增TLV232 (IPV6接口IP)TLV128/130/135(IPV4叶子信息)/TLV237(叶子信息)| 新增TLV2/22 TLV222(对端设备地址)

组件 作用 与TLV 229的关系
TLV 237 描述多拓扑IPv6可达性信息。 TLV 229声明拓扑存在后,TLV 237携带路由细节。
TLV 222 描述多拓扑邻居关系。 TLV 229声明的MT ID需与邻居TLV 222中的MT ID一致。

image-20250314080214755

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

                          Level-2 Link State Database

LSPID                 Seq Num      Checksum      Holdtime      Length  ATT/P/OL
-------------------------------------------------------------------------------
0000.0000.0001.00-00* 0x00000010   0xa8ed        1177          128     0/0/0   
 SOURCE       0000.0000.0001.00
 NLPID        IPV4
 NLPID        IPV6
 AREA ADDR    49.0123 
 INTF ADDR    10.1.123.1
 INTF ADDR V6 2001:123::1                      TLV232
 Topology     Standard, IPV6                     TLV229
 NBR  ID      0000.0000.0002.01  COST: 10                 TLV2
+MT NBR ID    0000.0000.0002.01  COST: 10         	MT: 2 (IPV6)  TLV222
 IP-Internal  10.1.123.0      255.255.255.0    COST: 10        TVL1228
 IPV6         2001:123::/64                    COST: 10         MT: 2     TLV237

0000.0000.0002.00-00  0x00000013   0x18b2        1186          171     0/0/0   
 SOURCE       0000.0000.0002.00
 NLPID        IPV4
 NLPID        IPV6
 AREA ADDR    49.0123 
 INTF ADDR    10.1.123.2
 INTF ADDR    10.1.234.2
 INTF ADDR    2.2.2.2
 INTF ADDR V6 2001:123::2                    
 Topology     Standard, IPV6
 NBR  ID      0000.0000.0002.02  COST: 10        
 NBR  ID      0000.0000.0002.01  COST: 10        
+MT NBR ID    0000.0000.0002.01  COST: 10         	MT: 2 (IPV6)
 IP-Internal  10.1.123.0      255.255.255.0    COST: 10        
 IP-Internal  10.1.234.0      255.255.255.0    COST: 10        
 IP-Internal  2.2.2.2         255.255.255.255  COST: 0         
 IPV6         2001:123::/64                    COST: 10         MT: 2   

0000.0000.0002.01-00  0x00000009   0xf66c        902           67      0/0/0   
 SOURCE       0000.0000.0002.01
 NLPID        IPV4
 NLPID        IPV6
 NBR  ID      0000.0000.0002.00  COST: 0         
 NBR  ID      0000.0000.0001.00  COST: 0         
 NBR  ID      0000.0000.0003.00  COST: 0         

0000.0000.0002.02-00  0x0000000a   0x4519        902           67      0/0/0   
 SOURCE       0000.0000.0002.02
 NLPID        IPV4
 NLPID        IPV6
 NBR  ID      0000.0000.0002.00  COST: 0         
 NBR  ID      0000.0000.0004.00  COST: 0         
 NBR  ID      0000.0000.0003.00  COST: 0         

0000.0000.0003.00-00  0x00000013   0x942e        1178          185     0/0/0   
 SOURCE       0000.0000.0003.00
 NLPID        IPV4
 NLPID        IPV6
 AREA ADDR    49.0123 
 INTF ADDR    10.1.123.3
 INTF ADDR    10.1.234.3
 INTF ADDR V6 2001:123::3                    
 INTF ADDR V6 2003::1                        
 Topology     Standard, IPV6
 NBR  ID      0000.0000.0002.01  COST: 10        
 NBR  ID      0000.0000.0002.02  COST: 10        
+MT NBR ID    0000.0000.0002.01  COST: 10         	MT: 2 (IPV6)
 IP-Internal  10.1.123.0      255.255.255.0    COST: 10        
 IP-Internal  10.1.234.0      255.255.255.0    COST: 10        
 IPV6         2001:123::/64                    COST: 10         MT: 2   
 IPV6         2003::/64                        COST: 0          MT: 2   

0000.0000.0004.00-00  0x00000013   0xf312        808           98      0/0/0   
 SOURCE       0000.0000.0004.00
 NLPID        IPV4
 AREA ADDR    49.0045 
 INTF ADDR    10.1.234.4
 INTF ADDR    10.1.45.4
 NBR  ID      0000.0000.0002.02  COST: 10        
 IP-Internal  10.1.234.0      255.255.255.0    COST: 10        
 IP-Internal  10.1.45.0       255.255.255.0    COST: 10        
 IP-Internal  9.9.9.9         255.255.255.255  COST: 10        

Total LSP(s): 6
    *(In TLV)-Leaking Route, *(By LSPID)-Self LSP, +-Self LSP(Extended), 
           ATT-Attached, P-Partition, OL-Overload
posted @ 2025-03-18 19:34  江寒雨  阅读(302)  评论(0)    收藏  举报