Advertisement

HCIE----ISIS学习笔记

阅读量:

ISIS

  • ISIS的基本概念

    • ISIS的特点

      • 为什么ISP运行ISIS比较多,而园区网运行ospf比较多?:
    • ISIS的封装

      • 直接封装在数据链路层(stp类似)
      • NSAP地址:network service access point(总长度8-20byte,可变长)
      • NET地址:network entity titel (网络实体名称)
    • ISIS的简单配置

    • ISIS的报文

    • ISIS的路由器的分类

      • level1的路由器:
      • level2的路由器:
      • level1-2路由器:
    • 网络类型

  • ISIS的框架

    • 邻居表

      • 邻居关系建立的条件:
      • P2P建立邻居:
      • Broadcast建立邻居:
    • LSDB

      • LSP的种类
        • level1 非伪节点lsp
    • Level1 伪节点LSP

    • level2 非伪节点lsp

    • level2 伪节点LSP

    • lsp的序列号

    • lsp的生存期

    • lsp更新机制

    • lsp新旧的判断

    • 路由表

      • cost-style开销风格
  • ISIS的特性

    • 路由汇总

    • 过滤

      • 路由过滤
      • 过滤LSP的内容
    • tag

    • ATT 骨干区域连接符:(type字段)

      • ATT置位的条件:
      • 在isis中发布默认路由
    • P位(type字段)

    • OL 过载位(type字段)

    • 标识起始设备属于哪个区域(type字段)

    • rechability字段(tlv236)

    • 快速收敛

    • LSP的分片

    • 多拓扑

    • 防环

      • 区域内防环
      • 区域间防环
    • 路由撤销

      • 1、外部引入路由的撤销
      • 2、区域内宣告路由的撤销
  • ISIS和OSPF的不同点

ISIS的基本概念

ISIS的特点

纯的isis:iso为osi协议栈开发的路由协议,为CLNP服务的一种动态路由协议
集成的isis:即为osi协议栈服务,又为TCP/IP协议栈服务,可以传递CLNP和IP路由.因为ISIS是基于TLV(type length value)开发的
OSPF
相同点:SPF LINK-STATE IGP
不同点:OSPF为TCP/IP服务,传递ipv4、6的路由,而ISIS为osi服务,传递CLNP路由 IETF将ISIS进行了改造。

为什么ISP运行ISIS比较多,而园区网运行ospf比较多?:

  1. 1.isis比较ospf更为成熟。isis可支持更多的路由协议:clnp、ip、ipx等协议,而ospf只支持ip协议;
  2. isis支持的网络规模更大于ospf。isis支持的最大跳数路由器默认为1024个路由器,而ospf只有200个;
  3. isis扩展性更好,支持TLV。isis的层次结构与ospf不同,ospf是单一的骨干域,其他区域必需围绕area0,而isis有多个level2area,可以使骨干区域扩展更加容易。
  4. isis占用的网络资源较小,路由收敛和恢复的时间更快。
  5. 运营商设备异构性较小,设备之间性能差距不大,可以全level2的路由组成一个大的骨干区域;而园区设备异构性较大,而ospf支持更加灵活的特殊区域以满足设备性能不好的设备运行。

ISIS的封装

直接封装在数据链路层(stp类似)

NSAP地址:network service access point(总长度8-20byte,可变长)

IDP initial domain part (初始化域的部分)+DSP domain specific part(域指定部分)
IPD又包含:

  1. AFI(Authority and format identifier):表示分配机构,常用49表示私有地址
  2. IDI (Initial domain indetifier):表示域,可变长

DSP又包含:

  1. DSP高比特位(high order DSP):在一个域中进一步进行域划分
  2. 系统ID(system Identification):一个区域内唯一标识一台设备,固定长度6byte,用16进制,MAC地址也正好是6byte(固定6个字节)
  3. NSEL(NSAP-selector):长度1byte,表示上层类型或服务类型(固定1个字节)
    systemid固定6个字节,selector固定1个字节,前面的AFI+IDI+DSP高位是可变长的1-13个字节,所以地址总长度为可变长的8-20个字节。

NET地址:network entity titel (网络实体名称)

在网络层表示一台设备,可以看做nsel为0x00的nsap地址,因此不标识上层应用,只标识设备本身。在isis中,系统ID相当于是ospf的routerid(区域iD+系统id+00)

ISIS的简单配置

isis 1
network-entity 49.0001.0192.0168.0001.00

ISIS的报文

  • hello:用于建立邻居
  • CSNP:(LSPID sequence remaining lifetime checksum) complete sequence number完全的序列号 PDU—类似于DD报文(link-stateid lstype adv sequence checksum)----发送的csnp包含这个设备lsdb中的所有lsp的摘要(头部)。csnp主要用于同步lsdb。lsp的摘要主要包含:lsp的lspID(设备系统ID、伪节点ID、分片编号,dis Isis lsdb的lspid),序列号(区分新旧),剩余生存时间,校验和
  • PSNP : part sequence number PDU 部分的序列号–类似LSR,是0代表请求
  • LSP: link-state packet 链路状态数据包—类似LSU
  • PSNP:如果csnp中的sequence是非0就是确认报文(只对P2P有确认,对broadcast没有)

分成三大类:
hello报文:LAN的level1的 hello;Lan的level2的hello;P2p的hello
SNP:CSNP的level1 level2 PSNP的level1 level2
LSP:LSP的level1 level2

ISIS的路由器的分类

ISIS的邻居的级别和路由器的级别的关系

level1的路由器:

类似于ospf的IR,区域内部路由器。它可以和同区域level1 的路由器形成level1的邻居关系。维护的就是level1的lsdb,能够计算的也是区域内部的路由。level1的路由器必需通过level2的路由器访问区域间的路由 。level1的区域类似ospf的totally的NSSA区域。

  • 如果是level1/2的路由器:接口下配置了circuit-level level1那么接口和isis进程下的level做交集
  • 如果是level2的路由器:接口下就算配置了circuit-level level1也是无效的,按照进程下配置的level2的方式发送isis报文
  • 如果是level1的路由器:接口下就算配置了circuit-level level2也是无效的,按照进程下配置的level1的方式发送isis报文
    总结:只要isis路由节点是level1/2的,circuit level才会有意义,取交集。

level2的路由器:

类似于ospf的BR,整个isisi的domain的路由,它可以和同区域、不同区域,level2的路由器形成level2的邻居关系,维护的是level2的邻居关系,能够计算整个isis域的路由。level2的路由器在网络中必需连续

level1-2路由器:

类似ospf的ABR,同时属于level1和llevel2的路由器称为level1-2路由器,既要维护level1的数据库又要维护level2的数据库,和同一个区域的level1的路由器形成level1的邻居关系,与同一个区域或者不同区域的level2的路由器形成level2的邻居关系

网络类型

只有p2p和broadcast两种。ppp hdlc默认是P2p;ethernet是broadcast。broadcast可以改为P2p。P2p不能改为broadcast
isis建立邻居的时候,接口IP地址必需在同一个网段,掩码可以不一样 可以用命令忽略检查

ISIS的框架

邻居表

邻居关系建立的条件:

  • 路由器的级别需要一样:level1的邻居来说,级别一样,区域也要一样。level2区域可以不一样
  • 网络类型需要一样:P2P携带TLV240(携带systemID);MA携带TLV6(携带MAC地址)
  • MA接口地址必需在同一个网段,掩码可以不一致;P2P可以用命令忽略网段的检查:接口下isis peer-ip-ignore
  • 接口的认证必需通过----接口认证、区域认证、域认证
  • sysid不能一样
  • 对协议的支持要一致(ipv6、v4)
  • 接口MTU要一致(发送IIH时会用TLV8把报文填满,用于比较MTU值)
  • P2p握手机制:3way only(240)和2way建立邻居会出现单通的情况(只有2way端看见邻居建立)

cost-type wide/narrow如果两端开销风格不一致,那么建立邻居和同步数据库是没问题的,但是计算路由会有问题

P2P建立邻居:

使用TLV240字段,携带的是邻居的systemID

  • 2way:发送的hello报文不携带TLV240(邻居的信息),接收也不检查对端hello报文的TLV240,一收到hello包就up,导致不安全的问题和单通(一端2way,一端3way only)的问题(一段UP一端down,up的一端就会不停的重传)
  • 3way(兼容2way):发送的hello报文携带tlv240.接收的时候对端的hello报文,如果有tlv240就检查,如果没有则不检查。
  • 3way only:发送的hello报文写到tlv240.接收的时候对对端的hello报文的tlv240必需检查。
    一端为3way,一端为2way时,3way一方发送tlv240时包里面没有邻居信息,并且状态为down
    一端为3way,一端为2way时,3way一方发送tlv240时包里面没有邻居信息,并且状态为down在这里插入图片描述
    两端都是3way时tlv240携带邻居的systemID号、邻居的状态信息、自己的接口ID、邻居的接口ID

Broadcast建立邻居:

使用的是TLV6 字段 携带的是邻居的mac地址(默认是3次握手,强制3次不能修改)

DIS degenerate intermediate system
DIS对比DR
选举:

  • DIS选举的时间是20秒,DR选举是40秒。接口DIS优先级默认是64,最大127,越大越优。如果优先级相同,那么比较mac地址;DIS接口优先级默认是1,最大255,如果优先级相同,比较RID.
  • DIS支持抢占,DR不支持抢占。DR不被抢占,如果DR能够抢占,那么伪节点就会发生变化,那么SPF会重新计算,影响网络的稳定性。
  • DIS优先级如果是0,仍然可以竞选DIS;DR优先级如果是0,那么不能竞选DR
  • DIS没有备份,DR是有备份
  • DIS分level1和level2的DIS
  • OSPFMA网络所有的节点都和DR,BDR形成邻接关系(FULL),DRother之间是邻居关系(2-way),ISIS的MA网络所有节点都是邻接关系(full)

LSDB

1111

1、P2P网络
在这里插入图片描述
2、MA网络-没有PSNP(=1)确认报文,通过10秒周期性发送CSNP来做隐含确认
“”“
例:
在这里插入图片描述

LSP的种类

level1 非伪节点lsp

内容:三元素 本节点有哪些邻居、到邻居的距离、链路信息 类似ospfv2的R
outerLSA
泛洪:只在一个区域泛洪

Level1 伪节点LSP

内容:level1 MA网络伪节点连接了多少实际节点,类似OSPFv3的network,但是level1伪节点不包含网络信息(MA网络中的设备把网络信息各挂在自己身上,ospf是挂在伪节点上)

level2 非伪节点lsp

内容:三元素 本节点有哪些邻居、到邻居的距离、链路信息(自己的直连+level1计算出来的路由) 类似ospfv2的RouterLSA+network summary(默认命令会将level1的路由引入level2中,level2通过默认路由向level2区域传递level1的路由明细)
泛洪:在逻辑的骨干区域泛洪

level2 伪节点LSP

内容:level2 MA网络伪节点连接了多少实际节点,类似OSPFv3的network,但是level2伪节点不包含网络信息(MA网络中的设备把网络信息各挂在自己身上,ospf是挂在伪节点上)

lsp的序列号

长度为4个字节;序列号从1开始递增;序列号越大越新;没产生一个新的lsp序列号+1

lsp的生存期

老化时间1200秒(倒计时,ospf顺计时)(ospf为3600秒age);lsp刷新的时间900秒(ospf为1800秒);无效的lsp remaining lifetime是等于0(ospf是3600)

lsp更新机制

1、触发更新:当链路状态发生变化的时候,区域间和外部路由的变化,邻居的变化.(sequence+1,checksum重新计算,remaining lifetime 1200)

  • 邻居的up/down
  • isis的接口的up/down
  • 引入外部路由的变化
  • 区域间的路由的变化
  • 接口开销值的变化

2、周期性更新:900秒更新一次.(sequence+1,checksum重新计算,remaining lifetime 1200)

lsp新旧的判断
  • sequence越大越新
  • remaining lifetime=0(因为等于0表示lsp已经失效,撤销路由,通知删除;书上说是越小的越优选)
  • checksum越大越优
  • 三者一样不转发

路由表

cost-style开销风格

默认是narrow,可选wide,两端开销风格必需一致,不然会邻居可以正常建立,但是学不到路由

对于ipv4:

narrow:level1>level2>leak>level1 import>level2 import
内部路由用TLV128携带,外部路由用TLV130携带
一般现网中不实用narrow模式,因为:
1、narrow接口开销最大修改值只能到63,整个链路最大1023(修改开销的位只有6位),对于想控制路由走向可修改的开销值过小,不便于控制数据走向。wide模式(修改开销的位TLV135有32bit,)所以一条链路最大可修改为4261412864
2、level1路由注入level2的时候,开销可能会有损失,因为最大携带63(域内可携带1023),域间端到端的开销计算有误差,影响选路的正确性;level2泄露到level1的时候也是如此。
3、不管带宽是多少,默认一跳开销是10;可以手动修改自动基于带宽去算cost–auto-cost enable

wide: level1>level2>leak
不管内外部都是用TLV135携带,所以就区分不出来到底是内部还是外部路由(纯看开销),leak可以区分,因为有up,down置位

ISIS的特性

路由汇总

路由的汇总
isis进程下:ipv6 summary 2:: 16 level-1 avoid-feedback //向一个级别下发布一条汇总路由,avoid-feedback可以阻止发布的设备再通过SPF学习到此条汇总路由
在这里插入图片描述
在level1引入level2时如果其他level1/2的设备做了2引入1的动作同样也会出现环路;同样用命令avoid-feedback进行防环。也可以手工配置静态路由指向null 0,优先级调低

黑洞路由的作用:
防环;做路由过滤

总结:
1、ospf做区域间汇总时,开销取的是最大的那条明细;isis做level1 into level2汇总时,开销取值是最小的一条明细的开销,汇总路由在明细路由全部消失后,汇总路由才会消失
3、isis汇总的时候可以对接口下isis enable的路由或者通过import的路由进行汇总(ospf只能对import和ABR上进行汇总,network不可以)

过滤

路由过滤

矢量特性:如果进行了路由过滤。仍然会把lsp发出去就没有矢量特性,不发出去就有矢量特性

@只能在进程下的入方向做过滤,在同一个级别下isisv6没有矢量特性 (isis的路由表还有路由,是在放入ipv6的全局路由表里进行的过滤就没有了),任然会把lsp通告出去,其他路由器可以计算路由。其实严谨说也不能说是矢量特性的问题,是因为同个区域下的lsdp是同步的,只过滤路由仍然会全区域下的lsdp同步,所有其他路由才能计算出路由

@在不同的级别下(在level1-2下)就有矢量特性 ,在level1-2中做路由过滤,不会把lsp继续通告给level2的设备,自己全局路由表没有的路由,也会相应在lsdp的lsp中剔除过滤的路由
ospf:ospfv3在ABR上做路由过滤,ABR仍然会把lsa传播出去,区域间的设备可以计算路由(与isisv6不同,isisv6不会传播出去了);ospfv2在ABR上过滤后ABR不会传播lsa出去了,(与isisv6又是相同的具有矢量特性)
(isisv4,v6在isis中是一样的,不会通告出去)
(ospfv3会继续通告出去,v2不会通告出去)

总结就是:
isis的v4、v6在level1-2上做路由过滤都是有矢量特性,做了过滤路由就不会通告lsp
ospf的ABR在v4中也是有矢量特性,做了过滤就不会通告lsa;v6中没有矢量特性,ABR做了过滤仍然会通告LSA给其他区域

过滤LSP的内容

命令:isis全局下:ipv6 import-route isis level-1 into level-2 filter-policy 2000//在level1引入到level2的时候做过滤,完成过滤lsp

tag

ATT 骨干区域连接符:(type字段)

ATT置位的条件:

在这里插入图片描述

1、level1/2路由器
2、有其他区域的level2的lsp
满足以上两个条件,那么level1/2的路由器在自己产生的levle1的lsp中ATT置位,(level1的路由器收到的lsp中的ATT置位,自己就知道可以通过这台路由器去往其他区域)
3、通过命令ATT置位
@ attached advertise always //无论连接level2或者没有level2的lsp始终ATT为1
@ attached advertise never //无论连接level2或者有level2的lsp始终ATT为0
@ @ attached advertise avoid-learning //即使受到ATT置位1,也不生成默认路由

在isis中发布默认路由

isis进程下
@default-route-advertise level-2 cost 10 //发布一条默认路由,缺省进level2,命令后面油条隐藏语句always,是否有默认路由都无条件发布
@default-route-advertise match default level-2 cost 10 //如果在路由表中存在其他路由协议或其它IS-IS进程生成的缺省路由,则在LSP中发布该缺省路由。

P位(type字段)

vlink的修复位,因为厂家没有vlink的部署,所以永远置0

OL 过载位(type字段)

OL使用isis过载标记来表示自己过载状态。进行ospf的算法的时候,那么该设备就是一个末节节点,不能用该设备作为转发设备,但是还是会计算此设备的直连路由。
相当于ospf的option中的R位。R=1是表示路由器,R=0时表示终端,不能转发lsa
命令:isis进程下—set overload

三个可选项:
external --允许通过此设备计算引入的外部节点

interlevel –允许通过此设备计算区域间的路由,前提是要做区域间的泄露,那么此可选项是允许学到泄露进来的区域间路由(level1还是没有默认路由)

on-startup wait-for-bgp --等待BGP的建立,可以设置时间,默认为600s(5-86400),意思是设置一个等待的时间,这个时间之内ol是置位1,时间一到置位0,如果中途BGP起来了,也马上置回0
ospfv2v3也是可以—stub-router on-startup —相当于把自己所有接口的metric调成最大-65535
说明:ol和ATT置位是互排斥的,不能同时置位

标识起始设备属于哪个区域(type字段)

type of intermediate system:level1(1)

rechability字段(tlv236)

up,down位 :(U位)down置1标识从level2渗透进level1的,用于区域间防环
external位 :(x位)置1标识此路由从外部引入的
sub-tlv :S(位)置1表示带有没有SUB的TLV,带了tag会置位,下面会有一个sub带tag的TLV
在这里插入图片描述

快速收敛

LSP的分片

多拓扑

防环

区域内防环

区域内通过SPF算法计算出一颗无环的树,用于区域内防环

区域间防环

默认路由防环
level1/2的路由器收到本区域其他level1/2路由器的level1的lsp的ATT置位不计算路由(即使该路由器到level2的链路断开,也不会计算默认路由)

路由泄露
当使用泄露命令将level2的路由泄露到level1的数据库,此时level1-2的路由器将该路由的down置位,不会将该路由注入回level2(此时不计算路由,因为泄露进来的level1的lsp中的down置位,只是放入isis路由表,但是当level2侧的链路断开就会通过level1的泄露的路由到达level2)

level1的路由注入到level2的防环
当level1/2的路由器将level1计算出来的路由通告给level2设备的时候,该路由不会从另一个level1/2的路由器泄露回来(做了泄露命令,而且level1的设备已经有从level1到达的路由,同一条路由level1优越level2的)
在这里插入图片描述
聚合防环
在level1/2的路由器上做汇总进level1,此路由器通过另外一台level1/2注入到level2又学习到该汇总路由,形成环路,改路由器通过命令防环
summary 192.168.0.0 255.255.0.0 level-1 avoid-feedback// 阻止该路由器学习到这条汇总
在这里插入图片描述

路由撤销

开销风格
narrow
ipv4:
TLV 128携带内部路由
TLV 130携带外部路由
ipv6:
TLV 230携带内外部路由
多拓扑:
TLV 237携带内外部路由
wide
ipv4:
TLV 135携带内外部路由
ipv6:
TLV 236携带内外部路由
多拓扑:
TLV 237携带内外部路由

1、外部引入路由的撤销

在这里插入图片描述
第一种,发送更新的LSP,新的LSP序列号增加,age=1200,但是新的LSP已经取消了10.0网段的前缀
第二种,发送一个LSP,age时间置为0,类似于OSPF LSA3600秒超时。

2、区域内宣告路由的撤销

在这里插入图片描述
发送更新的LSP,新的lsp序列号+1,age=1200(最新)

ISIS和OSPF的不同点

封装 :isis是封装在二层,属于三层协议 ;ospf是封装在ip,protocol=89
报文的类型 :isis-IIH CSNP LSP;ospf-hello DD LSP LSU LSACK
路由的类型 :isis-区域内和区域间;ospf-区域内,区域间,区域外
状态机 :isis-up针对于数据库的同步并没有相关的状态对应;ospf-full和2way
网络类型 :isis-P2P和broadcast;ospf-P2P,broadcast,NBMA,P2MP
认证 :isis-接口认证,区域认证,域认证;ospf-接口认证,区域认证
路由器的类型:isis-level1和level2;ospf-asbr,abr,br,ir
区域 :isis-骨干区域和非骨干区域(骨干区域是连续的level2的路由器,可以是不同的区域);ospf-骨干区域(area0)和非骨干区域(非area0:stub,nsaa,totally nsaa)
边界的不同:isis的区域边界在链路上,ospf的区域边界在路由器上
虚链路:isis不支持虚链路,ospf支持虚链路
标识路由器:isis-sysid;ospf-routerid
建立邻居的方式:isis-2way,3way;ospf-3way
lsdb的同步:isis-P2p,broadcast不同 ospf-都是一样
lsa和lsp的老化:isis1200秒老化(倒计时)900秒更新;ospf-3600秒老化(正计时)1800秒更新

全部评论 (0)

还没有任何评论哟~