IS-IS链路状态路由协议

root
233
文章
0
评论
2021年1月27日00:29:13 评论 5737字阅读19分7秒

IS-IS链路状态路由协议

 

IS-IS的由来

IS-IS是国际标准组织ISO为OSI中的无连接网络协议CLNP设计的一种动态路由协议。

现网使用TCP/IP协议,为了提供对IP路由的支持对IS-IS进行了扩充和修改,使它能够同时应用在TCP/IP和OSI环境中,称为集成IS-IS

IS-IS TLV协议,类型(TYPE),长度(LENGTH),值(VALUE)。使用TLV结构构建报文的好处是灵活性和扩展性好增加新特点只需要增加新TLV即可,不需要改变整个报文的整体结构。

 

中间系统到中间系统IS-IS,IS是指路由器,IS-IS是一种链路状态协议,使用最短路径优先SPF算法进行路由计算,osi7层模型,基于数据链路层封装,tcp/ip5层模型,基于网络层封装。

 

地址结构

Network Service Access Point,网络服务接入点,即OSI中的网络层地址,类似TCP/IP模型中的网络层IP地址。

NSAP由IDP(Initial Domain Part)和DSP(Domain Specific Part)组成。IDP相当于IP地址中的主网络号,DSP相当于IP地址中的子网号和主机号。IDP和DSP的长度都是可以变的。NSAP总长最多是20个字节,最少8个字节。

 

IDP部分是ISO规定的,由AFI(Authority and Format Identifler)与IDI(Initial Domain Indentfler)组成,AFI表示地址分配机构和地址格式,IDI用来标识域。

 

Area ID:IDP和DSP中的High Order DSP一起,既能够标识路由域,也能够标识路由域中的区域,因此,它们一起被称为区域地址(Area Address),相当于OSPF中的区域编号。同-->Level--1区域内的所有路由器必须具有相同的区域地址,Level--2区域内的路由器可以具有不同的区域地址。区域地址的长度是可以变化的,为1-13个字节。

 

System ID:系统ID,用来唯一标识区域内的IS,类似OSPF的RID。长度固定为48bit,可用MAC地址作为System ID,实际应用中,为了便于管理一般用RID对应System ID。实际SystemID的指定可以有不同的方法,但要保证能够唯一标识主机或路由器。

NSEL:(NSAP Selector,有时也写成N-SEL或者SEL)的作用类似IP中的“协议标识符”,标识上层使用的协议。不同的传输协议对应不同的NSEL。在IP中,NSEL均为00。

NET地址,Network Entity Title,网络实体名称,是一类特殊的NSAP,即SEL为0的NSAP地址。指的是IS本身的网络层信息,不包括传输层信息,所以SEL=0。因为ISIS进程中区域最多配置3个,所以NET最多可以配置3个,在配置多个NET时,必须保证System ID都相同。

 

ISIS和OSPF的区别

ospf的区域划分在路由器上,比如一个路由器可以配置不同的ospf区域

isis的区域是在边界上,比如一个路由器只能配置一个isis区域

 

IS-IS特性

  • 优先级:
    • 华为:15
    • cisco:115
  • 基于SPF算法生成最优无环路径
  • 默认IS-IS链路开销值为10
    • 当开销类型为narrownarrow-compatiblecompatible时取值范围是1~63
    • 当开销类型为widewide-compatible时,取值范围是1~16777214
    • 默认开销类型为narrow

 

IS-IS术语

 

IS-IS区域类型

IS-IS采用骨干区域与非骨干区域两级的分层结构。所有level-2和level1/2组成的 区域就是isis的骨干区域

Level-1路由器

  • 只有level-1路由器建立临接关系,必须所以路由器都在同一个区域,level-2,level-1-2没有要求
  • Level-1路由器(例如图中的R1)是一种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-2路由器

  • Level-2路由器(例如图中的R4、R5、R6、R7)是IS-IS骨干路由器,它可以与同一或者不同区域的Level-2路由器或者Level-1-2路由器形成邻接关系。Level-2路由器维护一个Level-2的LSDB,该LSDB包含整个IS-IS域的所有路由信息。
  • 所有Level-2级别(即形成Level-2邻接关系)的路由器组成路由域的骨干网,负责在不同区域间通信。路由域中Level-2级别的路由器必须是物理连续的,以保证骨干网的连续性。

Level-1-2路由器

  • Level-1-2路由器与OSPF中的ABR非常相似,它也是IS-IS骨干网络的组成部分。
  • Level-1-2路由器维护两个LSDB,Level-1的LSDB用于区域内路由,Level-2的LSDB用于区域间路由。
  • 同时属于Level-1和Level-2的路由器称为Level-1-2路由器(例如图中的R2和R3),它可以与同一区域的Level-1和Level-1-2路由器形成Level-1邻接关系,也可以与其他区域的Level-2和Level-1-2路由器形成Level-2的邻接关系。

IS-IS简单配置练习

R1配置ip

[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip add 192.168.10.1 24
[R1]int l 0
[R1-LoopBack0]ip add 1.1.1.1 32

R2配置ip

[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip add 192.168.10.2 24
[R2]int g0/0/1
[R2-GigabitEthernet0/0/1]ip add 192.168.20.1 24
[R2]int l 0
[R2-LoopBack0]ip add 2.2.2.2 32

R2配置ip

[R3]int g0/0/1
[R3-GigabitEthernet0/0/1]ip add 192.168.20.2 24
[R3]int l 0
[R3-LoopBack0]ip add 3.3.3.3 32

Level-1配置

[R1]isis 1
//配置NET的地址【49.0001表示区域号】
[R1-isis-1]network-entity 49.0001.0000.0000.0001.00

//配置Level级别
[R1-isis-1]is-level ?
  level-1    Level-1
  level-1-2  Level-1-2
  level-2    Level-2
[R1-isis-1]is-level level-1

//isis在接口下宣告
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]isis enable 1 (1是isis 的进程号)
[R1]int l 0
[R1-LoopBack0]isis enable 1

Leve-1/2配置

[R2]isis 1
[R2-isis-1]network-entity 49.0001.0000.0000.0002.00
[R2-isis-1]is-level level-1-2

[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]isis enable 1
[R2]int g0/0/1
[R2-GigabitEthernet0/0/1]isis enable 1

[R2]int l 0
[R2-LoopBack0]isis enable 1

level-2

[R3]isis 1
[R3-isis-1]network-entity 49.0002.0000.0000.0003.00
[R3-isis-1]is-level level-2
[R3]int g0/0/1
[R3-GigabitEthernet0/0/1]isis enable 1

 

isis路由引入

因为level-1无法学习到leve-2的路由,会产生一条默认路由,就会产生次优路径的问题,所以leve-1-2上要做level-2路由引入level-1

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

Level-1上就能学到level-2的路由了

 

isis修改网络类型

[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]isis circuit-type ?
  p2p  Change the network type of the circuit to P2P

isis只有两种网络类型,想要改回去就undo 掉就行了

 

OSPF的DR和isis的DIS

ospfisis
取值范围0-2551-127
默认值164
为0不参与参与
备份
抢占不抢占抢占
选举时间建邻居时建立邻居过程中
状态2-way,FULLup
选举规则RIDMAC
[R2]dis isis int 

                       Interface information for ISIS(1)
                       ---------------------------------
 Interface       Id      IPV4.State          IPV6.State      MTU  Type  DIS   
 GE0/0/0         001         Up                 Down         1497 L1/L2 No/No 
 Loop0           001         Up                 Down         1500 L1/L2 -- 
 GE0/0/1         002         Up                 Down         1497 L1/L2 No/No 


[R3]dis isis int 

                       Interface information for ISIS(1)
                       ---------------------------------
 Interface       Id      IPV4.State          IPV6.State      MTU  Type  DIS   
 GE0/0/1         001         Up                 Down         1497 L1/L2 No/Yes
 Loop0           001         Up                 Down         1500 L1/L2 --

 

isis数据库

[R3]dis isis lsdb

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

                          Level-2 Link State Database

LSPID                 Seq Num      Checksum      Holdtime      Length  ATT/P/OL
-------------------------------------------------------------------------------
0000.0000.0002.00-00  0x0000001c   0x85bb        918           114     0/0/0   
0000.0000.0003.00-00* 0x00000018   0x2a30        875           86      0/0/0   
0000.0000.0003.01-00* 0x00000015   0xa1d1        875           55      0/0/0   

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

 

 

IS-IS工作原理

邻居关系建立

  • 广播链路邻居关系的建立
    • 三次握手
    • 当收到的hello报文不包括自己的时候为init,当包括自己的时候为UP
  • P2P链路邻居关系的建立
    • 两次握手
    • 三次握手
      • 与广播链路建立邻居一致
  • 邻居关系的建立原则
    • 同一层次的相邻路由器才有可能成为邻居
    • 对于level-1路由器来说,区域号必须一致
    • 链路两端IS-IS接口的网络类型必须一致
    • 链路两端IS-IS接口的地址必须处于同一网段

 

同步LSDB

  • 广播网络类型
    • 邻居UP后,为了加快LSDB同步,先向邻居发送自己LSDB中所以的LSP
    • DIS周期性(10s)发送CSNP报文,保证区域内所以IS具有相同的LSDB
    • 邻居路由器收到CSNP后,如果发现自己的LSDB域DIS不同步,那么就发送PSNP请求需要的LSP
    • DIS发送对应的LSP,后续周期10s再发送CSNP
  • P2P网络类型
    • 邻居UP后,为了加快LSDB同步,先向邻居发送自己LSDB中所有的LSP,且发送CSNP报文,CSNP报文只发送一次
    • 邻居如有需要的LSP,就发送PSNP报文请求
    • 发送对于的LSP给邻居,等待邻居发送PSNP确认

 

通过SPF进行路由计算

ISIS报文类型

Hello 报文=====IIH

  • Hello PDU,也称为IIH
  • 发现,建立,维护邻居关系
  • 广播网中的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字段

LSP===ospf里的LSU

  • Link State PDUs链路状态报文,用于交换链路状态信息。分为两种:Level-1 LSP和Level-2 LSP
  • Level-1 LSP由Level-1 路由器传送
  • Level-2 LSP由Level-2 路由器传送
  • Level-1-2 路由器则可传送以上两种LSP
  • LSP 报文中包含了两个重要字段是ATT字段, IS-Type字段。其中ATT字段用于标识该路由是Level-1-2路由器发送的,IS-Type用来指明生成此LSP的IS-IS类型是Level-1还是Level-2 IS-IS

SNP

  • CSNP====ospf里的DD
    • Complete Sequence Number PDU,包括LSDB中所有LSP的摘要信息,用于同步LSP,保证相邻路由器间保存LSDB同步,类似OSPF DBD报文
  • PSNP====ospf里的LSR/LSack
    • Partial Sequence Number PDU,包括部分LSDB中的LSP摘要信息,用于请求需要的LSP和确认LSP, 类似OSPF LSR或者LSAck

 

 

 

 

 

 

 

继续阅读
weinxin
我的微信
这是我的微信扫一扫
  • 文本由 发表于 2021年1月27日00:29:13
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接
OSPF综合练习 Route

OSPF综合练习

OSPF综合练习   IP地址规划 R5/R6/R7之间的网段为:172.16.146.X R5/R6/R2之间的网段为:172.16.100.X 所有路由器都有一个Loopbacck 0接...
路由引入 Route

路由引入

路由引入 什么情况下需要路由引入 不同的路由协议需要互相学习到对方的路由信息 外部路由协议的优先级全都按照OSPF外部路由优先级150计算   情况有很多种 单点单向重分发 单点双向重分发 ...
OSPF其它特性 Route

OSPF其它特性

OSPF其它特性 只要有5类 LSA或7类 LSA产生就会产生LSA 静默接口/被动接口 启用找接口,PC机不会收到hello包了,不收到LSA报文了 ospf silent-interface g0...
OSPF特殊区域 Route

OSPF特殊区域

OSPF特殊区域 为什么需要特殊区域? 减少LSA泛洪,减少路由表 OSPF的特殊区域一定是配置在OSPF区域中的非骨干区域里的末梢区域   有哪些特殊区域? Stub末梢区域 【除了区域-...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: