ISIS
- 一、简述
- 二、常用命令总结
- 三、实验
一、简述
一、基本定义与历史背景
IS-IS
(Intermediate System to Intermediate System,中间系统到中间系统)是一种链路状态路由协议,最初由ISO设计用于OSI(开放系统互联)模型中的CLNP(无连接网络协议)网络。1990年代经IETF扩展后支持TCP/IP协议栈(RFC 1195),成为集成IS-IS(Integrated ISIS),广泛应用于运营商级网络和大型数据中心。
二、核心工作机制
链路状态数据库(LSDB)同步:
- IS-IS的PDU有4种类型:
IIH(IS-IS Hello
)
LSP(Link State PDU
,链路状态报文)
CSNP(Complete Sequence Number PDU,全序列号报文)
PSNP(Partial Sequence Number PDU,部分序列号报文) - 所有IS-IS路由器通过Hello报文建立邻居关系,交换LSP(链路状态报文),构建全网拓扑视图。
- 数据库同步基于泛洪机制,确保区域内路由信息一致性。
分层架构:
Level 1(L1)
:负责区域内路由(类似OSPF的普通区域),仅维护本地拓扑信息。Level 2(L2)
:负责区域间路由(类似OSPF骨干区域),连接不同L1区域。L1/L2路由器
:同时参与区域内外路由,承担边界转发角色。
SPF算法计算路径:
- 使用Dijkstra算法计算最短路径树(SPT),生成无环路由表。
二、常用命令总结
display isis peer #查看 IS-IS 邻居
display isis route #检查 IS-IS 路由表
display isis interface #查看 IS-IS 接口状态[R1-GigabitEthernet0/0/1] isis dis-priority 127 #修改 R1 的 GE0/0/1 DIS 优先级,默认优先级64
[R4-GigabitEthernet0/0/3] isis cost 15 #修改 R4 的 GE0/0/3 接口其 IS-IS Cost 值,默认是10[R5-isis-1] import-route direct #作为外部路由引入到 IS-IS 中
[R3-isis-1] import-route isis level-2 into level-1 #在 R3 上配置 IS-IS 路由渗透
三、实验
背景
某客户的网络使用 IS-IS 协议作为 IGP, R4 和 R5 运行在 49.0002 区域,都是 Level-2 路由器。R1、 R2、 R3 运行在 49.0001 区域, 其中 R1 是 Level-1 路由器, R2 和 R3 作为 Level-1-2 路由器。 R5 上引入了外部路由 192.168.1.0/24。
要求:
- R1 可以访问 R5 引入的外部路由;
- R1 的 GE0/0/1 接口作为 DIS;
- R1 与 R5 之间的双向流量要求沿着 R3、 R4 这条路径转发,可以通过 cost 和路由渗透进行选路控制。
拓扑
配置
R1
[V200R003C00]
#sysname R1
#
isis 1is-level level-1network-entity 49.0001.0000.0000.0001.00
#
interface GigabitEthernet0/0/0ip address 10.0.1.1 255.255.255.0 isis enable 1isis authentication-mode md5 cipher %$%$\/6cT+5'!C$)_oCow=48;bT;%$%$isis dis-priority 127
#
interface LoopBack0ip address 1.1.1.1 255.255.255.255 isis enable 1
#
return
R2
#sysname R2
#
isis 1network-entity 49.0001.0000.0000.0002.00
#
interface GigabitEthernet0/0/0ip address 10.0.1.2 255.255.255.0 isis enable 1isis authentication-mode md5 cipher %$%$,=1v2yy%Y,EA6PSqro{2;d=r%$%$
#
interface GigabitEthernet0/0/1ip address 10.0.3.2 255.255.255.0 isis enable 1isis authentication-mode md5 cipher %$%$gJ6X,cFZk@Bt^{(Ff95~;e8r%$%$
#
interface LoopBack0ip address 2.2.2.2 255.255.255.255 isis enable 1
#
return
R3
#sysname R3
#
isis 1network-entity 49.0001.0000.0000.0003.00import-route isis level-2 into level-1
#
interface GigabitEthernet0/0/0ip address 10.0.1.3 255.255.255.0 isis enable 1isis authentication-mode md5 cipher %$%$MJl<!7{mVM^=J<6Y$xe>;fgW%$%$
#
interface GigabitEthernet0/0/2ip address 10.0.4.3 255.255.255.0 isis enable 1isis authentication-mode md5 cipher %$%$`{kEA&"w6>gekYW+ccV%;f-1%$%$
#
interface LoopBack0ip address 3.3.3.3 255.255.255.255 isis enable 1
#
return
R4
#sysname R4
#
isis 1is-level level-2network-entity 49.0002.0000.0000.0004.00
#
interface GigabitEthernet0/0/0ip address 10.0.2.4 255.255.255.0 isis enable 1isis authentication-mode md5 cipher %$%$jX<t=,*GF);/ry-zbs#/;hJ&%$%$
#
interface GigabitEthernet0/0/1ip address 10.0.3.4 255.255.255.0 isis enable 1isis authentication-mode md5 cipher %$%$=aY_Du`lY:v.*UF5*2A5;gB\%$%$
#
interface GigabitEthernet0/0/2ip address 10.0.4.4 255.255.255.0 isis enable 1isis authentication-mode md5 cipher %$%$'a$j/&(`TGD\b%<N]sK~;hxZ%$%$isis cost 15
#
interface LoopBack0ip address 4.4.4.4 255.255.255.255 isis enable 1
#
return
R5
#sysname R5
#
isis 1is-level level-2network-entity 49.0002.0000.0000.0005.00import-route direct
#
interface GigabitEthernet0/0/0ip address 10.0.2.5 255.255.255.0 isis enable 1isis authentication-mode md5 cipher %$%$7;'jHS8)`UO"4W9)q`!!;il1%$%$
#
interface LoopBack0ip address 5.5.5.5 255.255.255.255 isis enable 1
#
interface LoopBack1ip address 192.168.1.1 255.255.255.255
#
return
总结
- 引入外部路由到ISIS要在isis进程中。
- 默认情况下 L1-2 路由器不会向其传递 L2 路由
(也是减少了L1区域路由器的路由表项(
, 所以在 R1 上无法看到引入的外部路由 192.168.1.1/32, 但 R1 上存在前往骨干区域的默认路由, 并且为负载均衡状态。 - 为了将 R1 发往 R5 的流量引导到 R3 进行转发,可以在 R3 上配置路由渗透
(通过L1-2级路由器将L2区域路由渗透给L1区域)
,由其将到达 L2 区域的路由渗透到 L1 区域,使得 R1 能够通过 IS-IS 学习到相关路由。