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协议中用于定位资源的地址。
字段 说明 示例值() AFI Authority Format Identifier,地址授权标识( 49表示私有地址)。49IDI Initial Domain Identifier,与AFI共同定义路由域 HODSP High-Order DSP,区域标识,可变长度 Area ID 区域标识,可变长度(通常为 1-13 字节),用于划分 IS-IS 区域。 49.0010System ID 固定 6 字节(通常用路由器 Loopback 地址转换),唯一标识设备。 1921.6800.1001NSEL 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 路由器结构
不同于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。
2.3.1 IS-IS报文通用报文头
字段 长度 含义 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种类型 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
Brocast IIH 如果是L2,目的MAC为
0180-c200-0015(所有L2 IS);如果是L1,目的MAC为0180-c200-0014(所有L1 IS)
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消息)没有此字段。
图 P2P Hello报文
图 Brocast Hello报文
TLV关键说明
- TLV 1(Area Address)
- 必须与同一Level-1区域内的其他路由器的Area ID至少部分重叠,否则无法建立邻接。
- 示例:
49.0001、49.0002。- TLV 6(IS Neighbor)
- 仅用于广播网络(Broadcast),点对点链路不携带此TLV。
- 邻居系统ID基于路由器配置的NET(Network Entity Title)生成。
- TLV 129(Supported Protocols)
- 协议代码:
0xCC:IPv40x8E:IPv6- 若未声明支持的协议,可能导致路由信息无法传播。
- TLV 132(Interface Address)
- 可以是IPv4或IPv6地址,具体取决于网络层协议。
- 多个接口地址可以在LSP中通过多个TLV 132携带。
- TLV 229(Multi-Protocol)
- 用于多拓扑(Multi-Topology)场景,例如同时支持IPv4和IPv6的独立拓扑。
- 扩展TLV结构,包含地址族标识(如
IPv4=1,IPv6=2)。- TLV 240(P2P Adjacency State)
- 仅在点对点链路的Hello报文中出现,携带邻接状态机信息(如
Up、Init、Down)。- 邻接状态为三次握手过程中的关键字段。
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。
字段 长度 含义 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只在第一次建立邻接关系时发送。
字段 长度 含义 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。
字段 长度 含义 PDU Length 2字节 PDU的总长度,单位是字节。 Source ID ID Length + 1字节 发出PSNP报文的路由器的System ID。 Variable Length Fields 变长 由多个CLV(Code-Length-Value)三元组组成。CLV也称为TLV(Type-Length-Value)
TLV关键说明
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.0001TLV 6 IS Neighbor 广播网络中邻居的路由器System ID及MAC地址。 Broadcast网络的邻接状态同步 LSP Neighbor: 1921.6800.1001TLV 10 Authentication 携带认证信息(明文、MD5、HMAC等),验证报文合法性。 防止非法设备接入网络 Hello/LSP Authentication: HMAC-SHA-256, Key-ID 1TLV 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: 10TLV 129 Protocols Supported 声明路由器支持的网络协议(如IPv4、IPv6)。 多协议环境下的能力协商 Hello Supported Protocols: IPv4 (0xCC), IPv6 (0x8E)TLV 132 IP Interface Address 携带接口的IPv4地址。 链路状态数据库中的接口地址同步 LSP Interface Address: 10.1.45.5TLV 135 Extended IP Reachability 扩展的IPv4路由可达性信息,支持更长的前缀和32位度量值。 现代IPv4路由传播 LSP IPv4 Prefix: 192.168.1.0/24, Metric: 200TLV 137 Dynamic Hostname 携带路由器的动态主机名,便于管理识别。 给静态的LSP取名 自己也能看到别人而的动态主机名 仅在本地生效 LSP Hostname: R1-NYCTLV 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::1TLV 240 P2P Adjacency State 点对点链路的邻接状态(如三次握手阶段)。 点对点网络的邻接关系维护 Hello (P2P专用) Adjacency State: UpTLV 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字段
**Maximum Area Addresses **
方便不同品牌的设备进行对接,多个地址可以在同区域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
3.3.1 2-way
只要设备收到IS-IS Hello报文,就会单方向建立起邻居关系,优点是快速建立邻居,缺点是容易造成单向邻居。不携带TLV240
[Huawei-GigabitEthernet0/0/1]isis ppp-negotiation 2-way
3.3.2 3-way
在华为设备中默认2way与3way可以兼容建立,但如果配置如下,会检查TlV240
[Huawei-GigabitEthernet0/0/1]isis ppp-negotiation 3-way only #仅接受3-way
3.3.3 P2P的数据库同步
在第一次建立时,一台设备发送CSNP摘要信息,另一台设备进行PSNP请求,后续参考下面
后续一端发送LSP报文,另一端发送PSNP报文回应。 PSNP通过Seq序列号来回应
3.3 Brocast网络的建立
L1的DMAC地址是
01:80:c2:00:00:14L2的DMAC地址是
01:80:c2:00:00:15
邻居建后的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地址最大的路由器会被选中。
- DIS会被抢占
- 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
3.5 ISIS认证
通过TLV10来进行认证,认证方式分为明文认证和MD5认证。
明文认证
用于需快速部署认证但安全性要求较低的场景(如内部可控网络),密码明文传输,易被截获,仅适用于非敏感环境。
MD5认证
用于安全性要求较高的生产网络,需防篡改和伪造。
认证类型 认证方式 配置命令示例 作用范围 应用场景 注意事项 邻居(接口)认证 基于接口的认证 interface s1/0/1isis authentication-mode [simple/md5] [plain/cipher] <密码>仅保护该接口的Hello报文(邻接关系建立)。 点对点链路或广播网络中需单独保护某接口。 认证失败会导致邻居无法建立,需确保两端配置一致。 Level-1区域认证 区域级LSP认证 isisarea-authentication-mode [simple/md5] [plain/cipher] <密码>保护Level-1 LSP、CSNP、PSNP报文。 同一Level-1区域内的路由信息保护(区域边界隔离)。 区域内所有路由器需配置相同认证参数,否则LSDB无法同步。 Level-2域认证 域级LSP认证 isisdomain-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个,2bit
0x00-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风格
对方 # 星号表示是自己的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
5.1.2 wide风格
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
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
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
6.1.3 ATT的影响
当level-1的设备发现level-1 lsdb中 ATT=1,就自动计算出一条默认路由指向最近(Cost开销最小)的level-1-2设备
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置位
6.2.3 DN现象
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(邻居)来进行计算新拓扑。
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风格
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
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一致。
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







































浙公网安备 33010602011771号