部分文章提炼自 CSDN

isis 的基本知识

  • ISIS:中间系统到中间系统

  • ISIS 是公有协议,属于 IGP 协议,主要应用于一个 AS(企业)自治系统内部

  • ISIS 是一种链路状态协议,使用 SPF 算法

  • 早期的 ISIS 是基于 CLNP(无网络连接协议)而开发的,为了继续追逐 TCP/IP 的发展,为了支持 IP 网络,ISIS 也升级称为了集成 ISIS

注:集成的 ISIS 工作在数据链路层,支持 CLNP 和 IP,而 OSPF 只支持 IP 协议

isis 协议的应用:

  • ISIS :骨干网,超大型网络,运营商数据中心、服务型网络 - 工作在数据链路层

  • OSPF:园区网,企业网等中大型网络,企业网数据中心, 云数据中心, 应用型网络 - 工作在网络层

骨干网和园区网的区别和特点

骨干网:服务型网络,由运营商(ISP)组建,为不同的企业用户提供互联网服务

特点:网络架构特别大,路由器数量特别多,流量特别大

园区网:应用型网络,主要面向企业

特点:路由器相对数量不是特别多,但是不同的企业, 不同的要求非常多, 需要满足不同的企业, 需求的精细化控制比较高

isis 工作过程(和 ospf 一样):

建立邻居表 - 同步数据库 - 计算最佳路由

isis 路由器的分类;

level-1 :区域内部路由器 level-1 只维护 level-1 的 lsdb

Level-2:骨干区域路由器 拥有整个 isis 区域的路由

Leve1-2:同时维护 leve-1 和 level-2 的 lsdb 默认等级 (类似于 ospf 的 abr)

isis 的报文类型

直接在数据链路层封装,isis 报文载荷封装在以太网数据帧,使用下面的 pdu 报文

iih 报文(hello 报文):

作用:用于建立维护邻居关系

level-1 路由器使用 level-1iih 报文

level-2 路由器使用 level-2 iih 报文

level-1-2 路由器使用 level-1-2 iih 报文

LSP 报文:

作用:传递路由信息,交换链路状态信息

独立的协议报文,存在 level-1 lsp 和 level-2 lsp ,当 A 和 B 同为 level-1-2 路由器,则会交互两种报文

csnp 报文(完全序列号报文):

作用:CSNP 包括 LSDB 中所有 LSP 的摘要信息,从而可以在相邻路由器间保持 LSDB 的同步。

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

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

psnp 报文(部分序列号报文):

作用:psnp 包含 lsdb 中部分 lsp 信息,主要是请求更新和对收到的 lsp 表示确认

存在 level-1 和 level-2 区分

集成 isis 的实验

拓扑:

 配置(运用 isis 协议实现互通):

<Huawei>sys
[Huawei]sys R1
[R1]isis 1       //开启ISIS功能
 
[R1-isis-1]network-entity 49.0010.0000.0000.0001.00    //配置NET地址
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip add 192.168.10.1 24
[R1-GigabitEthernet0/0/0]isis enable 1      //在接口上启用ISIS
 
 
<Huawei>sys
[Huawei]sys R2
[R2]isis 1
[R2-isis-1]network-entity 49.0010.0000.0000.0002.00
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip add 192.168.10.2 24
[R2-GigabitEthernet0/0/0]isis enable 1
[R2-GigabitEthernet0/0/1]ip add 192.168.20.2 24
[R2-GigabitEthernet0/0/1]isis enable 1
 
<Huawei>sys
[Huawei]sys R3
[R3]isis 1
[R3-isis-1]network-entity 49.0020.0000.0000.0003.00
[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]ip add 192.168.20.3 24
[R3-GigabitEthernet0/0/0]isis enable 1

NET 地址

49. 0010. 0000.0000.0001. 00

区域号 系统 ID 选择器

- 作用:在 ISIS 网络中,唯一的标识一台设备的网络信息(属于哪个区域,属于哪个路由器)

备注:

1. 在 ISIS 中, 这个 NET 地址, 你就可以理解为,OSPF 中的 Router-ID + Area ID

2.ISIS 中有一个很特殊的地址, 这个地址叫做 NSAP (网络服务访问点), NET 地址是一种非常特殊的 NSAP

这里给大家提供进制的转换

一个字节 =8 个 bit=8 个二进制数 =2 个 16 进制的数

&:区域号:Area ID(例:49 /49.0010/10.0010/20.0000.0010)

- 长度可变:1-13 字节【类似于 OSPF 中区域号】

&:系统 ID:System ID (例:0000.0000.0001)

- 长度固定:6 个字节 【类似于 OSPF 中 Router-ID】

&: 选择器:SEL (协议标识符)

- 长度:1 个字节,在 IPv4 和 IPv6 网络中,该字段为 00

1.NET 地址是通过 16 进制数组成的

2.NET 地址是已 2 个 16 进制数开始(一个字节开始),和 2 个 16 进制数结束(一个字节结束)

3.NET 地址中间的部分是由 4 个 16 进制数组成,每组与每组之间用「.」分割

4.NET 地址长度是可变的,是 8-20 个字节,最低是 8 个字节

- 在一台设备上,NET 地址最多可以配置 3 个 ,在配置 NET 地址的时候,必须保证 System ID 相同(在不同的设备上,System ID 不能相同)

dis 和伪节点

dis 作用:记录该广播网络内所有 isis 协议的路由器,保证数据库的同步

dis 是一个和 ospf 的 dr 相似的概念,他主要用于 lan(区域)中虚拟一个伪节点,从而产生伪节点,伪节点是一台虚拟的设备,为了确保 lsdb 的同步,dis(伪节点)会在 lan 里面周期性的泛洪 csnp 报文,确保 lsdb 和 dis 同步

dis 选举:

先比较优先级,优先级一样再比较 mac 地址,优先级越大越好,mac 地址越大越好,且 dis 具有抢占性,且优先级为 0 也可以进行选举

isis 建立邻居过程

广播:

1.r1 在接口上激活 isis,他将在接口上周期性的发送 level1 hello 报文 ,这些 pdu 报文以组播的形式发送,hello 报文记录了 r1 的系统 id,此外还含有多个 tlv,记录了 r1 的区域 id

注:level-1 路由器的发送的 hello 报文的组播地址是:01:80:c2:00:00:14

level-2 路由器的发送的 hello 报文的组播地址是:01:80:c2:00:00:15

2.r2 收到 r1 的发送的 hello 报文,然后会进行 pdu 检查(例如区域 id 是否一样),检查通过后,r2 在 isis 邻居表里面将 r1 的状态设置为 init 状态,在自己的接口发送 hello 报文,并在 tlv 中,写下 r1 的 mac 地址,用于告诉 r1:我发现你了

3.r1 收到 r2 的 hello 报文后,将 r2 的状态设置为 up 状态,并在 tlv 中的写下 r2 的接口地址的 mac 地址,

4.r2 收到 r1 的 hello 报文后,将 r1 的状态设置为 up 状态,这样两台路由器的 isis 邻居就建立起来了

TLV(类型 + 长度 + 版本)

LSP(Link State PDU)包含多个 TLVs,用于描述邻居节点和它们之间的联系。

IIH(IS-IS Hello PDU)包含多个 TLVs,用于发现邻居节点和建立邻居关系。

CSNP(Complete Sequence Number PDU)包含多个 TLVs,用于在网络中广播链路状态变化,csnp 报文是用 tlv 来承载 lsp 条目

PSNP(Partial Sequence Number PDU)包含多个 TLVs,用于请求邻居节点发送缺失的 LSP。

点对点:

收到对方的 hello 报文,就将对方的状态设置为 up 状态

isis 骨干和非骨干区域的实验

拓扑图:

配置:

 sysname R6
#
isis 1
 is-level level-1     //设置为level-1路由器
 network-entity 49.0010.0000.0000.0006.00
#
interface GigabitEthernet0/0/0
 ip address 192.168.46.6 255.255.255.0 
 isis enable 1
#
interface LoopBack0
 ip address 192.168.1.1 255.255.255.0 
 isis enable 1
 
 sysname R4
#
isis 1
 network-entity 49.0010.0000.0000.0004.00
#
interface GigabitEthernet0/0/0
 ip address 192.168.14.4 255.255.255.0 
 isis enable 1
#
interface GigabitEthernet0/0/1
 ip address 192.168.46.4 255.255.255.0 
 isis enable 1
 
  sysname R1
#
isis 1
 is-level level-2
 network-entity 49.0020.0000.0000.0001.00
#
interface GigabitEthernet0/0/0
 ip address 192.168.12.1 255.255.255.0 
 isis enable 1
#
interface GigabitEthernet0/0/1
 ip address 192.168.14.1 255.255.255.0 
 isis enable 1
 
  sysname R2
#
isis 1
 is-level level-2
 network-entity 49.0020.0000.0000.0002.00
#
interface GigabitEthernet0/0/0
 ip address 192.168.12.2 255.255.255.0 
 isis enable 1
#
interface GigabitEthernet0/0/1
 ip address 192.168.23.2 255.255.255.0 
 isis enable 1
 
  sysname R3
#
isis 1
 is-level level-2
 network-entity 49.0020.0000.0000.0003.00
#
interface GigabitEthernet0/0/0
 ip address 192.168.23.3 255.255.255.0 
 isis enable 1
#
interface GigabitEthernet0/0/1
 ip address 192.168.35.3 255.255.255.0 
 isis enable 1
#
 
 sysname R5
#
isis 1
 network-entity 49.0030.0000.0000.0005.00
#
interface GigabitEthernet0/0/0
 ip address 192.168.35.5 255.255.255.0 
 isis enable 1
#
interface GigabitEthernet0/0/1
 ip address 192.168.57.5 255.255.255.0 
 isis enable 1
#
 
 sysname R7
#
isis 1
 is-level level-1
 network-entity 49.0030.0000.0000.0007.00
#
interface GigabitEthernet0/0/0
 ip address 192.168.57.7 255.255.255.0 
 isis enable 1
#
interface LoopBack0
 ip address 192.168.2.1 255.255.255.0 
 isis enable 1

注:就相当于把路由器等级设置为 level-1-2,level-2 等级

路由渗透

Level1 路由器的数据库里面只有 level1 lan 的路由条目 ,level 2 的路由器的数据库里面只有 level2 lan 的路由条目,相互隔离,要让 level 2 的路由条目进入 level 1 就要进行路由渗透

命令:

[r4]isis 1
 
 [r4-isis-1]import-route isis level-2 into level-1

注:为什么要进行路由渗透,因为 isis 协议里面没有像 ospf 的 3 类 lsa,只能进行路由渗透

IS-IS(Intermediate System to Intermediate System)协议是一种链路状态路由协议,广泛用于大型网络尤其是运营商网络中。以下是 IS-IS 协议的核心概念和内容。

1. IS-IS 协议的概述

IS-IS 协议属于 IGP(Interior Gateway Protocol)协议,用于同一自治系统(AS)内的路由选择。它和 OSPF 类似,都是链路状态协议,但 IS-IS 最初是为 OSI 模型设计的,适用于 IPv4 和 IPv6。IS-IS 依赖 CLNP(Connectionless Network Protocol)来进行路由信息的传播。

2. IS-IS 协议的网络结构

IS-IS 协议的网络结构基于两个主要的层级(Level):

  • Level-1:适用于同一区域内的路由器,用来维护区域内部的链路状态数据库。

  • Level-2:跨区域进行通信,Level-2 路由器形成一个「骨干」来实现不同区域之间的通信。

这两种层级构成了 IS-IS 的分层结构,使网络设计可以具有更高的扩展性和稳定性。

3. IS-IS 路由器类型

在 IS-IS 中,路由器的角色根据所处的层级有所不同,主要有以下三种类型:

  • Level-1 路由器:只进行区域内的路由学习和转发。

  • Level-2 路由器:负责不同区域之间的路由学习和转发,类似于 OSPF 中的骨干路由器。

  • Level-1-2 路由器:同时具备 Level-1 和 Level-2 功能,可以在区域内部和跨区域之间进行路由信息的交换。

4. IS-IS 协议的报文类型

IS-IS 协议的链路状态信息通过以下三类报文传递:

  • IIH(IS-IS Hello)报文:用于在相邻的 IS 之间建立和维持邻接关系。

  • LSP(Link State PDU)报文:用来通告链路状态信息。

  • CSNP(Complete Sequence Number PDU)和 PSNP(Partial Sequence Number PDU)报文:用于数据库的同步,确保所有路由器拥有一致的链路状态信息。

5. IS-IS 路由更新和算法

IS-IS 使用 SPF(Shortest Path First)算法,通过链路状态数据库计算最短路径。当网络拓扑变化时,IS-IS 会通过 Flooding 机制快速传播更新的 LSP,触发全网的 SPF 重计算。

6. IS-IS 协议的配置

在配置 IS-IS 时,需要为路由器指定其所处的层级并设置系统 ID,同时在接口上启用 IS-IS。常见的配置步骤包括:

  1. 配置 IS-IS 的进程和网络层级。

  2. 为各接口指定 IS-IS 协议并设置合适的度量值。

  3. 设置认证、路由过滤等高级功能以提高网络的安全性和可靠性。

7. IS-IS 协议的优缺点

优点

  • 扩展性强:适合大型网络,并在不同区域间灵活管理路由信息。

  • 快速收敛:链路状态协议的特性使 IS-IS 在拓扑变化时能迅速收敛。

缺点

  • 配置复杂:相对于 RIP 等简单协议,IS-IS 配置和维护要求较高。

  • 兼容性问题:虽然支持 IPv4 和 IPv6,但 IS-IS 主要用于运营商环境,不适合小型网络。

8. IS-IS 和 OSPF 的比较

  • 协议模型:OSPF 基于 IP 层(TCP/IP),而 IS-IS 基于 OSI 模型。

  • 扩展能力:IS-IS 更适合大规模运营商网络,OSPF 在企业网络中应用更广泛。

  • 功能特性:OSPF 支持更多的网络区域类型和认证机制,但 IS-IS 的协议结构更简单,便于维护。

学习 IS-IS 时,建议您对比 OSPF 协议,掌握它们之间的异同点,加深对 IS-IS 协议的理解。同时,多做实验和配置练习,将帮助您掌握 IS-IS 在实际场景中的应用。希望这些信息对您的 HCIP 备考有所帮助!