0


ISIS原理与配置,详细

文章目录

1 IS-IS概述

(Intermediate System to Intermediate System,中间到中间系统)动态路由协议、链路状态路由协议,在服务提供商网络中被广泛应用。
每台运行 IS-IS 的设备都会产生 LSP,设备产生的 LSP 会被泛洪到网络中适当的范围, 所有的设备都将自己产生的以及网络中泛洪的 LSP 存储在自己的 LSDB 中。IS-IS 设 备基于自己的LSDB采用SPF(ShortestPathFirst,最短路径优先)算法进行计算,最终得到IS-IS 路由信息。另外,与 OSPF 一样,IS-IS 也支持层次化的网络架构,支持 VLSM(可变长子网掩码),支持手工路由汇总等功能。
相对于OSPF,ISIS协议具有的特点
1、报文的结构简单,邻居之间信息交互的效率较高,对网络资源占用较少
2、ISIS与OSPF都是链路状态路由协议,同样采用SPF算法计算路由
3、基于数据链路层工作,不依赖IP地址进行通信
4、对路由的控制更加灵活,适用于复杂的企业网络(×)

2 ISIS与OSPF 区别(同父异母)

同父:都属于IGP,基于LS,采用SPF算法
异母:

2.1 设备之间建立邻居的方式不同

OSPF互连接口必须在相同区域中激活OSPF,直连设备才能建立邻居
IS-IS中,不管设备在不在同一个区域,只要是同一个级别,就可以建立邻居(level 1 、level 2)

2.2 两个区域的交界地方不同(区域是NET地址中看到的)

OSPF两个区域的交界是在OSPF设备上
IS-IS的交界处不在设备上,而在链路上
协议所属协议栈路由器名称终端链路状态报文支持网络类型封装方式地址骨干区域IS-ISOSIIS(中间系统)ESLSPCLNP、IP数据链路层NSAP地址Level 2和level -1-2所在的区域(可能有多个area)OSPFTCP/IPRouterHostLSAIPIP报文IP地址Area 0

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

2.3 IP地址和NSAP

IP地址只用于标识设备,而不标识该设备的上层协议类型和服务类型
NSAP不仅标识设备,还标识上层协议服务类型和服务类型的内容
NSAP=IP+TCP/UDP
NSAP包括IDP及DSP,如下图所示:
在这里插入图片描述

IDP(Initial Domian Part)相当于IP地址中的主网络号。
DSP(Domian Specific Part)相当于IP地址中的子网号和主机地址。
AFI(Authority and Format Identifier,授权组织和格式标识符):长度为 1byte, 用于标识地址分配机构。另外,该字段值同时也指定了地址的格式。一个在实验室环境 中经常被使用到的 AFI 值是 49,该值表示本地管理,也即私有地址空间。
IDI(Initial Domain Identifier,初始域标识符):该字段用于标识域(Domain), 其长度是可变的。
DSP 高位部分(High Order DSP):也就是 DSP 中的高比特位部分(在二进制数值中,最靠近左边的比特位被视为高位),该字段的长度是可变的,它用于在一个域中进一步划分区域。
系统ID(System Identification):用于在一个区域内标识某台设备。在华为路由 器上,系统ID的长度固定为6byte,而且通常采用16进制格式呈现,例如 0122.a2f1.0031。 在网络部署过程中,必须保证域内设备的系统 ID 的唯一性。考虑到在以太网环境中, 设备的 MAC地址具有全局唯一性,而且正好长度也是6byte,因此使用设备的MAC地 址作为其系统 ID 也是一个不错的方案。
SEL(NSAP-Selector):长度为 1byte,用于标识上层协议类型或服务类型。 在 IS-IS 中,基于路由的目的,NSAP 的 IDP 及 DSP 高位部分加在一起被称为区域地址,该地址是可变长的,最短为 1byte。对于 IS-IS 而言,区域地址就 是区域ID(Area Identification,区域标识符)。

NET地址(重要):NET(Network Entity Title, 网络实体名称),NET 用于在网络层标识一台设备,可以简单地看作 NSEL 为 0x00 的 NSAP。由于 NSEL 为 0x00,因此NET不标识任何上层协议(或服务)类型,只用于标识该设备本身。即使在纯TCP/IP 环境中部署 IS-IS,我们也必须为每一台准备运行IS-IS 的设备分配NET,否则IS-IS将无法正常工作。一旦网络管理员为一台设备指定了NET, 该设备便可以从NET 中解析出区域 ID,以及设备的系统 ID。通常情况下,我们只会为 设备的一个IS-IS 进程指定一个NET,当然,在一些特殊场景中,我们也可能会为一个 IS-IS 进程指定多个NET,此时这些NET中的系统ID必须相同。在IS-IS中,系统ID 相当于 OSPF 中的 Router-ID。例如:
在这里插入图片描述

处于同一区域的两台IS-IS设备,其NET中的区域ID必须相同,而系统ID则必须不同

在华为路由器上,创建一个IS-IS 进程并为该进程分配 NET 的配置如下: 
[Router]isis 1 
[Router-isis-1]network-entity 49.ac21.32a1.00c0.fc43.f212.00  
                         49.ac21.32a1 系统ID  00c0.fc43.f212 区域ID

2.4 DR和DIS

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

3 IS-IS路由器的分类

级别所属区域负责维护的LSDB与哪些level邻接关系level 1(内部路由器)负责区域内的路由非骨干区自身的LSDB同一区域的L1 和L12level 2(骨干路由器)负责区域间的路由骨干区自身的LSDB同一区域或不同区域的L2 和L12level 1-2(类似ABR)骨干区L1和L2的,L1用于域内,L2用于域间同一区域和不同区域的L1 L2 L12
对于同时为level-1和level-2 类型的IS-IS路由器,我们称其为level-1-2路由器,实际上,并不是一类单独的路由器
每一个非骨干区域都通过Level-1-2路由器与骨干区域相连。
骨干区域和非骨干区域可能包括多个area

3.1 Level-1路由器

Level-1路由器是一种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骨干区域从而访问其他区域。
level-1区域与OSPF中的totally NSSA非常类似,原因如下:
在这里插入图片描述

在该网络中,R1、R2 及 R3 属于 Level-1 区域 Area 49.0001,R2与R1、R3与R1均建立Level-1的邻居关系。R1能够根据本区域内所 泛洪的 Level-1 LSP 计算出本区域内的网络拓扑,以及到达本区域内各网段的路由。而 缺省时,R2及R3不会将到达Area 49.0001 区域外部的路由信息注入到该区域中,R2 及R3都在其向49.0001区域下发的Level-1 LSP 中设置ATT比特位(关于该比特位,本 书将在后续的小节中介绍),而该区域内的 Level-1 路由器则基于该 Level-1 LSP 产生一 条指向R2及R3的默认路由。因此R1不会学习到去往Area 49.0002的路由,但是它可 以通过指向 R2 及 R3 的默认路由来到达 Area 49.0002 内的各个网段。与此同时,R1、 R2 及R3是允许将外部路由引入IS-IS的。因此从以上所描述的特性来看,IS-IS的常规 区域的确很像OSPF的Totally NSSA。

3.2 Level-2路由器

Level-2路由器是IS-IS骨干路由器,它可以与同一或者不同区域的Level-2路由器或者Level-1-2路由器形成Level-2的邻接关系。Level-2路由器维护一个Level-2的LSDB,该LSDB包含整个IS-IS域的所有路由信息。
所有Level-2级别(即形成Level-2邻接关系)的路由器组成路由域的骨干网,负责在不同区域间通信。路由域中Level-2级别的路由器必须是物理连续的,以保证骨干网的连续性。
只有Level-2级别的路由器才能直接与区域外的路由器交换数据报文或路由信息。

3.3 Level-1-2路由器

与OSPF中的ABR非常相似,它也是IS-IS骨干网络的组成部分。
Level-1-2路由器维护两个LSDB,Level-1的LSDB用于区域内路由,Level-2的LSDB用于区域间路由。
同时属于Level-1和Level-2的路由器称为Level-1-2路由器,它可以与同一区域的Level-1和Level-1-2路由器形成Level-1邻接关系,也可以与其他区域的Level-2和Level-1-2路由器形成Level-2的邻接关系。
**缺省情况下,华为的路由器全局level 为level 1-2 **

4 ISIS支持的网络类型

IS-IS只支持两种类型的网络,根据物理链路不同可分为:

  • 广播链路:如Ethernet、Token-Ring等
  • 点到点链路:如PPP、HDLC等

对于NBMA(Non-Broadcast Multi-Access)网络,如ATM,需对其配置子接口,并注意子接口类型应配置为P2P;IS-IS不能在点到多点链路P2MP(Point to MultiPoint)上运行

5 IS-IS邻居建立

在这里插入图片描述

  • 因为是广播网络,需要选举DIS,所以在邻居关系建立后,路由器会等待两个Hello报文间隔,再进行DIS的选举。Hello报文中包含Priority字段,Priority值最大的将被选举为该广播网的DIS。若优先级相同,接口MAC地址较大的被选举为DIS

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

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

6 IS-IS数据库同步

  • 首先通过IIH报文,建立邻居关系,并选举DIS
  • 不同level的路由器产生相应的LSP,并发送给组播地址

Level-1:01-80-C2-00-00-14Level-2:01-80-C2-00-00-15

  • DIS会将LSP放到LSDB中,并发送CSNP
  • 路由器收到CSNP,对比自己的LSDB,向DIS发送PSNP请求自己没有的LSP
  • 同步完成

7 ISIS报文类型

7.1 IIH =Level-1 LAN IIH +Level-2 LAN IIH+P2P IIH(Hello)

  • Hello PDUHello报文用于建立和维持邻居关系,也称为IIH(IS-to-IS Hello PDUs)。
  • 广播网中的Level-1 IS-IS使用Level-1 LAN IIH;广播网中的Level-2 IS-IS使用Level-2 LAN IIH
  • 非广播网络中则使用P2P IIH
  • 它们的报文格式有所不同。P2P IIH中相对于LAN IIH来说,多了一个表示本地链路ID的Local Circuit ID字段,缺少了表示广播网中DIS的优先级的Priority字段以及表示DIS和伪节点System ID的LAN ID字段。

7.2 LSP =Level-1 LSP+Level-2 LSP(LSA)

  • LSP链路状态报文LSP(Link State PDUs)用于交换链路状态信息。LSP分为两种:Level-1 LSPLevel-2 LSP。Level-1 LSP由Level-1 IS-IS传送,Level-2 LSP由Level-2 IS-IS传送,Level-1-2 IS-IS则可传送以上两种LSP。

7.3 SNP=CSNP(DD)+PSNP(LSACK、LSR)

SNP序列号报文SNP(Sequence Number PDUs)通过描述全部或部分数据库中的LSP来同步各LSDB(Link-State DataBase),从而维护LSDB的完整与同步。
SNP包括全序列号报文CSNP(Complete SNP)部分序列号报文PSNP(Partial SNP),进一步又可分为Level-1 CSNP、Level-2 CSNP、Level-1 PSNP和Level-2 PSNP。
CSNP包括LSDB中所有LSP的摘要信息,从而可以在相邻路由器间保持LSDB的同步。在广播网络上,CSNP由DIS定期发送(缺省的发送周期为10秒);在点到点链路上,CSNP只在第一次建立邻接关系时发送。PSNP只列举最近收到的一个或多个LSP的序号,它能够一次对多个LSP进行确认,当发现LSDB不同步时,也用PSNP来请求邻居发送新的LSP。

8 IS-IS协议的基本配置

//配置进程
//配置网络实体名称.通常情况下,一个IS-IS进程下配置一个NET即可。当区域需要重新划分时,例如将多个区域合并,或者将一个区域划分为多个区域,这种情况下配置多个NET可以在重新配置时仍然能够保证路由的正确性。由于一个IS-IS进程中区域地址最多可配置3个,所以NET最多也只能配3个。在配置多个NET时,必须保证它们的System ID都相同。
//配置全局level的级别
//使能ISIS进程
//配置接口级别.缺省情况下,接口的Level级别为level-1-2。
两台Level-1-2设备建立邻居关系时,缺省情况下,会分别建立Level-1和Level-2邻居关系。如果只希望建立Level-1或者Level-2的邻居关系,可以通过修改接口的Level级别实现。
//配置接口的网络类型,默认时由物理接口决定
//修改接口的优先级,DIS优先级默认64
[Huawei] isis [process-id ][Huawei-isis-1] network-entity net
[Huawei-isis-1] is-level { level-1 | level-1-2 | level-2 }[Huawei-GigabitEthernet0/0/1] isis enable [process-id ][Huawei-GigabitEthernet0/0/1] isis circuit-level [ level-1 | level-1-2 | level-2 ][Huawei-GigabitEthernet0/0/1] isis circuit-type p2p
[Huawei-GigabitEthernet0/0/1] isis dis-priority priority [ level-1 | level-2 ]

常用查看命令:
display Isis peer  查看Isis邻居表
display isis lsdb 查看链路状态数据库
display isis route  查看isis路由表
display ip routing-table protocol isis 查看全局路由表,可以看到Isis路由的类型

本文转载自: https://blog.csdn.net/weixin_63539487/article/details/124736159
版权归原作者 火锅就要吃红锅 所有, 如有侵权,请联系我们删除。

“ISIS原理与配置,详细”的评论:

还没有评论