HCIP—ISIS

ISIS:中间系统到中间系统

由ISO组织开发完成,最初是为了服务于OSI七层模型中网络层的CLNP网络

ISIS工作在TCP/IP中的数据链路层位置

NSAP:网络服务访问点

可以用于标识一台具体的设备或者标识上层服务

由IDP和DSP两部分组成:

IDP:可以理解为OSI七层模型中IP地址的网络部分

AFI:地址分配机构

IDI:地址标识域

DSP:可以理解为OSI七层模型中IP地址的主机部分

High order DSP:可以理解为OSI地址中的子网位

System-id:OSI地址中的主机位,标识网络中的一台主机

SEL:标识服务类型,服务于IP网络是,值为00

NET:网络实体名称

为NSAP的一个具体应用

Area id:AFI + IDI + high order DSP

Area id:用于标识一个区域

System id:用于标识区域中的一台主机

SEL:标识服务类型,服务于IP网络是,值为00

一台设备可以最多配置三个NET地址,当配置多个NET地址时,地址的system-id必须一致

华为推荐计算方式:

将router-id每个点分处填充为三位,不足三位填0

在将新得到的字符串重新以四位每组进行点分

得到新的system-id,再加上area id和SEL组成网络实体名称(NET)

注:现实场景中,会直接按照项目拓扑进行网络实体名称规划,不参考华为计算方式

ISIS路由器的分类:

Level-1路由器:

1、只能于同一区域的level-1或者level-1/2路由器形成邻接关系:相同area id

2、只维护level-1区域的LSDB

3、只能通过level-1/2路由器连接骨干区域

Level-2路由器:

1、可以和相同区域或者不同区域的level-2或者level-1/2路由形成邻接关系:不要求area id

2、只维护level-2区域的LSDB

3、所有的level-2形成骨干区域

Level-1/2路由器:

1、类似于OSPF中 的ABR设备

2、同时维护骨干区域和非骨干区域的LSDB

3、可以与相同区域的level-1设备建立level 1邻接关系

4、可以与相同或者不同区域的level 2路由器建立level 2的邻接关系

5、与相同区域的level-1/2路由器可以同时形成level 1和level 2邻接关系

骨干区域与普通区域的划分:

骨干区域:连续的level 2邻接关系组成骨干区域,有且只有一个
非骨干区域:连续的level 1邻接关系组成非骨干区域,可以有多个

ISIS支持网络类型:

ISIS支持广播和点对点网络

如果需要在NBMA或者P2MP网络类型上运行ISIS,需要将网络类型强改为P2P网络

ISIS开销计算:

ISIS接口开销默认为10,跟接口的具体带宽无关

开销的修改方式:

1、直接在接口视图下进行修改接口开销

2、在协议视图下将所有接口开销进行修改

3、将开销计算方式与接口带宽进行关联

注:同时进行了上述三种操作,接口修改 > 协议视图修改开销 > 计算

开销的类型:

1、窄度量:0--63,默认10

2、宽度量:0--16777215,默认10

默认采用窄度量,需要在协议视图下进行修改

修改命令:cost-style wide

ISIS邻接关系建立条件:

1、只有同一层次的路由器相互之间才可能建立邻接关系(level-1/2路由器可能看作level-1或者level-2路由器)

2、对于level-1路由器来说,只有相同area id才能建立邻接关系

3、两台路由器相连接口网络类型必须一致

4、在广播型网络中,默认相连接口需要处于同一网段

注释:当接口下配置了主IP和多个从IP时,只需要其中一个IP地址处于相同网段即可

接口从IP地址配置命令:

ISIS报文头部:

ISIS报文直接封装在以太网头部之上

ISIS报文由ISIS报文头部和可变长两部分组成

ISIS报文头部由ISIS通用头部和ISIS专属头部组成

ISIS通用头部参数:所有ISIS报文都需要携带

Intradomain Routing Protocol Discriminator:域内路由选择协议鉴别符,固定为0X83

Length header:ISIS报文头部长度,包含通用头部和专属头部

version:ISIS的版本,固定值为0X01

System ID length:基本为0,因为system-id长度通常为6字节

version:ISIS的版本,固定值为0X01

PDU type:用于标识报文具体为哪一类,HELLO、LSP、SNP

78a7aeecaf7c42c68295e9394b694057.png

Max.areas:支持最大区域数量,0--254,当为0是,最大支持3个区域

ISIS报文类型:

ISIS报文一共有三大类,九小类:

hello:用于发现、建立、维护邻接关系

L1 hello:用于在L1区域发现、建立、维护邻接关系

L2 hello:用于在L2区域发现、建立、维护邻接关系

hello报文格式:

Circuit Type:表示路由器的类型,01为L1,10为L2,11为L 1/2

Source ID:表示发送者的system-id

Holding time:保活时间间隔,当此时间结束没有收对端发送的hello报文,则认为邻接死亡

priority:优先级,用于选举DIS设备,当优先级为0时,可以参与DIS选举

LAN ID:为DIS设备的system-id和伪节点ID,只存在LAN hello报文中

Local circuit ID:用于标识点对点链路

使用Circuit Type、Source ID、TLV值为1的area id去判断建立哪种类型的邻接关系

广播网络中建立邻接关系的过程:

R1<--------------------->R2

1、两台路由器都处于down状态

2、R1以组播形式发送lan hello报文

3、R2收到R1发送的hello报文,检查路由器角色、area id、system id

4、将R1的system id加入邻接列表,以组播的形式发送lan hello报文,并且状态机跳转initial

5、R1收到R2发送的hello,检查路由器角色、area id、system id,查看R1发送的hello邻接列表存在自己的system id,将状态机跳转为up

6、R1将R2的system id加入邻接列表,发送hello报文

LAN hello报文通过组播形式进行发送:

L1路由器监听组播MAC地址:0180-C200-0014

L2路由器监听组播MAC地址:0180-C200-0015

点对点网络中建立邻接关系两次握手:

R1<--------------------->R2

1、R1以组播的形式向R2发送P2P hello,并且将状态机跳转为up

2、R2收到R1发送的hello,状态机跳转为initial,检查,将R1的system id加入邻接列表中

3、R2以组播形式发送P2P hello,并且将状态机跳转为up状态

注:现网几乎所有产生的ISISI中P2P网络都采用三次握手,可以通过命令修改为两次握手

修改命令:[Huawei-Serial1/0/0]isis ppp-negotiation 2-way

广播网络中的DIS设备:

广播网络中会选举出DIS设备,由DIS设备产生伪节点LSP,同时通过伪节点周期发送CSNP报文,用于同步区域中所有路由器的LSDB

注:L1区域和L2区域会产生不同的DIS设备

 

DIS选举规则:

1、比较DIS优先级,以大为优,优先级取值为0-127,注0能够参与选举

2、当优先级相同时,比较设备的MAC地址,以大为优

DIS设备发送hello报文的时间为普通路由器的1/3,也就是10/3S

DIS设备的作用:

周期发送CSNP(完全序列号)用于同步区域内路由器的LSDB

DIS和DR的区别:

区别

DIS

DR

抢占

支持抢占

不支持抢占

选举规则

先比优先级,再比MAC地址

先比优先级,再比router-id

优先为0时

优先级为0参与选举

优先级为0时不参与选举

作用

同步区域中的LSDB

减少邻接关系的建立

备份

不存在备份

存在BDR设备

默认优先级

默认优先级为64

默认优先级为1

hello时间

10/3S

10S/30S

死亡时间

10S

40S/120S

选举时间

两倍的hello时间

四倍的hello时间

 

LSP:链路状态信息报文,交互链路信息

L1 LSP:交互L1的链路信息

L2 LSP:交互L2的链路信息

LSP报文格式:L1 和L2的LSP采用相同的报文格式

Remaining Lifetime :生存时间,初始为1200S,依次递减,直至减为0

LSP ID:用于唯一标识一条LSP

由system-id、伪节点id、LSP分片后的编号组成

Sequence Number:LSP的序列号,初始状态下的第一条LSP的序列号为1,后续更新LSP则序列号依次加1

Checksum:校验和,用于校验LSP的完整性

ATT:由Level-1/2路由器产生的LSP置位,用于告知区域内的路由器通过level-1/2路由器访问骨干区域或者其他区域

OL:过载位,用于告知其他路由器,自身硬件问题,在进行路由计算时,避免将路由计算到自身

IS-type:用于标识产生LSP的路由器角色

 

SNP:序列号报文,同步LSDB

CSNP:完全序列号,描述本地LSDB的摘要信息

L1 CSNP:描述L1区域的本地LSDB的摘要信息

L2 CSNP:描述L2区域本地LSDB的摘要信息

CSNP报文格式:

Source ID:DIS的system-id,发送者的system-id

Start LSP ID:在LSDB中的第一个LSP的ID

END LSP ID:在LSDB中的最后一个LSP的ID

还会携带相应TLV,用于携带LSP的生存时间、序列号、校验和

在广播型网络中,由DIS周期发送CSNP报文,周期为10S

在点对点网络类型中,只有刚建立邻接关系时才会发送CSNP报文

后续采用触发式更新,当某条LSP更新后,直接将更新的LSP发送到对端

PSNP:部分序列号,用于请求和确认自身所缺失的LSP

L1 PSNP:用于L1区域请求和确认自身所缺失的LSP

L2 PSNP:用于L2区域请求和确认自身所缺失的LSP

PSNP报文格式:

Source ID:发送者的system-id。

报文后还会携带对应的TLV,用于标识自身缺失或确认的LSP信息

3a4462991db9460793abf6739a3b2bc0.png

广播网络中新设备加入LSDB同步过程:

情况一:新设备不抢占DIS角色

1、当新设备加入到网络中,会直接发送ISIS lan hello报文

2、当新设备和网络中所有设备建立了邻接关系后,直接将自己的LSP向网络中以组播的形式发送,L1为0180-C200-0014,L2为0180-C200-0015

3、网络中的设备收到新设备发送的LSP后,都会将LSP加入到自己的LSDB中,DIS也会,并且触发DIS发送新的CSNP报文,用于同步网络中所有设备的LSDB

4、新设备收到DIS设备发送的CSNP报文后,对比自己的LSDB,通过PSNP报文向DIS设备请求自身所缺失的LSP

5、DIS收到新设备发送的PSNP报文后,将新设备请求的LSP发送通过LSP报文给新设备

6、新设备收到DIS发送的LSP后,将LSP放入LSDB中,并且回应PSNP报文用于确认

情况二:新设备抢占DIS角色

1、当新设备加入到网络中,会直接发送ISIS lan hello报文,由于新设备优先级或MAC地址大于原来的DIS设备,会对DIS设备进行抢占,成为新的DIS设备

2、所有设备朝组播MAC地址发送自己的LSP,L1为0180-C200-0014,L2为0180-C200-0015

3、新的DIS设备将收到的LSP加入到自己的LSDB中

4、新的DIS设备等在定时器结束后周期发送CSNP报文

点对点网络中LSDB的同步过程:

1、两端设备先发送p2p hello,用于建立邻接关系

2、两端设备发送CSNP报文,描述本地LSDB的摘要信息

3、如果不同步,则发送PSNP报文,用于请求自身所缺失的LSP

4、发送对端请求的LSP,

5、收到对端发送的LSP后,回应PSNP报文进行确认

假设稳定以后拓扑发生改变:

1、感知到拓扑发生改变的路由器生成新的LSP,发送给对方或者收到其他路由器的更新LSP后,发送给对端

2、对端收到更新后的LSP后,发送PSNP报文进行确认

如需要考虑丢包问题导致的重传:

1、假设没有收到对端发送的PSNP确认报文,则会等待重传计时器结束后进行重新发送LSP报文

2、对端设备重新收到LSP报文后,需要再次发送PSNP报文进行确认

LSP新旧比较:

1、收到多条LSP,他们的LSP ID一致,首先比较序列号,如果序列号不同则以大为优,如果相同则进行下一步比较

2、比较生存时间,如果出向有生存时间为0S的LSP则为最优,如果不存在则看差值是否大于600S,如果大于600S,则生存时间大的优先,负责进行下一步比较

3、比较校验和,如果校验和不同,则校验和以大为优,如果相同则不对该LSP进行处理

ATT置位的条件:

1、设备角色为level-1/2路由器

2、与相同区域的level-1路由建立了邻接关系

3、与其他区域的路由建立level 2的邻接关系

如果需要产生多条缺省路由:

还需满足设备到达多个level-1/2路由的开销相同

为什么需要ATT置位:

由于在level-1/2路由器上会将骨干区域产生的LSP进行屏蔽,导致level 1区域的路由LSDB中不存在骨干区域的链路信息,无法进行骨干区域的路由计算。

为什么需要路由渗透:

由于L1区域存在多个level-1/2设备,导致产生了多条默认路由指向不同的level-1/2路由,路由默认采用逐流负载分担,导致次优路径的产生

路由渗透原理:

将level 2区域的明细路由在level-1/2路由器进行渗透,使得level-1/2路由器的LSP携带level 2区域的路由信息(包括开销信息等),使得level 1区域中的路由可以通过比较开销等方式进行最优路径的选择。

配置命令:

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

ISIS的认证:

ISIS认证类型:

接口认证:配置接口认证后,会对接口发出和接收的IIH报文进行认证,如果认证不通过,则无法建立邻接关系

区域认证:配置区域认证后,会对所有接口发送和接收的level 1的CSNP、PSNP、LSP报文进行认证,认证不通过则无法交互LSP信息

路由域认证:配置区域认证后,会对所有接口发送和接收的level 2的CSNP、PSNP、LSP报文进行认证,认证不通过则无法交互LSP信息

ISIS认证方式:

简单明文认证:将密钥信息直接在链路上进行传递,安全性不高

MD认证:将密钥信息通过MD加密后,在链路上进行传递,收到对端发送的MD密文后,将自己的密钥信息通过MD5加密,并且将两个密文进行对比,如果一致,则认为密钥一致,认证通过,否则不通过

keychain认证:通过创建keychain字段,字段中包含多个key-id值,每一个key-id对应一个独立的密钥和算法,通过周期生效不同的key-id字段使得周期更换密钥和加密算法。安全性极高。

 

 

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2024-03-24 13:48:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-24 13:48:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-24 13:48:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-24 13:48:03       18 阅读

热门阅读

  1. 【MySQL】覆盖索引

    2024-03-24 13:48:03       18 阅读
  2. 【LeetCode-394.字符串解码】

    2024-03-24 13:48:03       15 阅读
  3. 24.3.24 《CLR via C#》 笔记10

    2024-03-24 13:48:03       13 阅读
  4. 优化 - 数据结构

    2024-03-24 13:48:03       18 阅读
  5. 100268. 最长公共后缀查询(字典树查询)

    2024-03-24 13:48:03       16 阅读
  6. 重新了解一下之前的單對象變化問題

    2024-03-24 13:48:03       16 阅读
  7. Bom,事件对象

    2024-03-24 13:48:03       18 阅读
  8. extern c 和extern c++

    2024-03-24 13:48:03       16 阅读
  9. cookie、session和token的区别

    2024-03-24 13:48:03       21 阅读
  10. 读《舞!舞!舞!》有感

    2024-03-24 13:48:03       19 阅读