IS-IS
    管理距离115
    ISIS是链路状态协议
    封装在数据链路层,所以没有协议号
    使用SPF算法计算最短路径
    没有骨干区的概念
    使用IIH(ISIS Hello)包来发现邻居
    和OSPF不同,ISIS一个路由器属于一个区域(也可以一个路由器属于多个区域)
    L1/2路由器向L1路由器通告自己是出口,若有多个则负载均衡
IS-IS术语
    CLNS 无连接网络服务
    CLNP 无连接网络协议 相当于TCP/IP中的IP,提供尽力而为的传输
    PDU  数据单元 相当于包Packet
    NSAP 网络服务访问点 相当于IP+端口
    NSEL NSAP地址的最后一个字节,相当于接口号
    NET  这是一个用于标识路由器的地址,相当于IP(NSAP最后一个字节为0)
    SNPA 相当于MAC地址
    SysID相当于OSPF中的router-id
    LSP  相当于OSPF中的LSA
    LSPDB  LSP数据库
    DIS  指定中间系统,相当于OSPF中的DR
ISO编址(NET地址)
    49.0f01.0002.0000.0c00.1111.00
        49.0f01可变长,一般固定为49(私有地址)
        0002为区域ID
        0000.0c00.1111为系统ID
        最后的00为端口号,但是不在这里使用端口号,所以为00
IS-IS路由器类型
    Level 1
        用于区域内部,只能和内部路由器建立邻居
        无法学习到其他区域的路由,相当于OSPF中的T-stub
        生成一个指向最近L1/2的默认路由(可能造成次优路径)
    Level 2
        只能跟L2建立邻居
        L2路由器可以学习全网路由
    Level 1/2
        以上的功能都有
        同时拥有两个独立的数据库,L1数据库和L2数据库
        会通告给L1路由器自己是出口(在LSP中ATT bit置位)
DIS
    DIS可以抢占,没有备份。DIS故障,立即重新选举。
    DIS发送hello包的时间是普通路由器的1/3(3.3s),确保故障时能快速被发现。
    DIS会产生一个伪节点,伪节点负责与同区域路由器连接
    DIS选举
        1.比较接口优先级(默认64),与OSPF不同,ISIS中接口优先级为0也参与选举。
        2.SNPA(相当于MAC地址)比大。
        3.系统ID比大。
        修改接口优先级:isis priority 100 level-1
IS-IS的MTU隐含检查
    //1.各台IS的ISDB应保持一致,这样才能保证计算出来的最小生成树是基于同一个拓扑的,
        从而防止环路的发生。
    //2.IS-IS作为数据链路层的协议,是没有分片的概念的。如果MTU超过了最大值,则会丢包
        从而导致ISDB不一致。
    //3.在IIH里填满padding,如果有一台超过了MTU值,则丢包,不能建立邻居。
        然后修改MTU→邻居建立。
    //补充:普通路由器10秒钟发一次hello包。如果两台同时发就会产生突发流量,
            以25%的抖动来减少网络中IIH同步传输的可能性(也就是2.5秒)
    //no isis hello padding  //在两台路由器接口上关闭路由器填充
IS-IS metric
    default metric //每经过一台路由器metric加10
    其他metric计算方式厂家都不支持
LSP Holdtime
    1200s的老化时间
    900s刷新一次
特殊置位
    Attached-bit
        L1/2路由器向L1路由器通告自己是出口,则将ATT置位
    Overload-bit
        过载位,置位后其他路由器应尽量避开此路由器
        手动设置set-overload-bit
IS-IS配置
    接口下:ip router isis  //在接口上激活ISIS!!!
    router isis
        net 49.0001.0000.0000.0001.00  //最多配置3个NET地址
        is-type level-1
        log-adjacency-changes  //开启日志向控制台发送的功能(默认不开启)
    接口下:isis circuit-type level-2
        L1/L2路由器会通告给L1自己的直连(哪怕是连接L2路由器)
        这样就不会向L1通告此接口所在的网段了
    sh isis database
        R3.01-00中的1表示这是一个PSN(伪节点)
主机名到NSAP地址映射
    分静态映射和动态映射
    静态映射
        router isis  //每一台路由器都要设置
            net 49.0001.1111.2222.3333.00
            exit
        clns host RouterA 49.0001.1111.2222.3333.00
        clns host RouterB 49.0001.4444.5555.6666.00
    show isis hostname [detail] //查看地址映射关系
    show isis neighbors
    show clns neighbors
默认路由
    router isis
        default information-originate  //下发默认路由,L1路由器不能产生
路由汇总
    只能把本区域的路由汇总到其他区域
    router isis
        summary-address 172.16.0.0 255.255.0.0 level-1
认证
    明文:
        接口(接口模式下):
            isis password {密码}
        区域(isis进程下):
            area-password {密码}
    密文:
        1.设置key-chain
        2.接口下isis authentication key-chain {钥匙链名}
        3.接口下isis authentication mode md5
坑 
    L1/2路由器与其他L2路由器断开连接时依然会将ATT置位,导致L1丢包
    解决方案:
        自动检测,与L2断连时取消ATT置位
        ip prefix-list test seq 5 permit 5.5.5.0/24
        route-map test permit 10
            match ip address prefix-list test
        router isis
            set-attached-bit route-map test
    所有L1/2路由器都会将ATT置位,可能导致L1路由产生次优路径
    解决方案:路由泄露
        access-list 100 permit ip host 5.5.5.0 host 255.255.255.0  //匹配子网掩码(隐含用法)
        router isis
            redistribute isis ip level-2 into level-1 distribute-list 100

随机推荐

  1. (数据科学学习手札160)使用miniforge代替miniconda

    本文已收录至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 大家好我是费老师,conda作为Python数据科学领域 ...

  2. 第3讲-Cadence分裂元件的制作方法

    笔记3-Cadence分裂元件的制作方法 1.Homogeneous和heterogeneous的区别: 2.创建homogeneous类型元件: 3.创建heterogeneous类型元件. 把元件 ...

  3. JavaWeb 中 “转发”与 “重定向”的区别

    JavaWeb 中 "转发"与 "重定向"的区别 每博一文案 人生的常态,就是有聚有散,有得有失,就像山峰一样,总有高低,起伏不断. 曾经,我们是鲜衣怒马的少年 ...

  4. github、gitee冲突配置ssh key

    背景 当有多个git账号时,比如: a. 两个gitee,一个账号是用于公司内部的工作开发,一个账号是自己学习的个人账号: b. 一个github,用于自己进行一些开发活动: 操作: 生成不同的key ...

  5. NVCC编译选项含义解析

    NVCC编译 nvcc 是cuda程序的编译器. 1. 编译阶段 用于指定编译阶段最基本的编译参数. -c: 同gcc,只预处理.编译和汇编为.o文件,不link -lib:生成一个库文件,windo ...

  6. 用 C 语言开发一门编程语言 — S-表达式

    目录 文章目录 目录 前文列表 使用 S-表达式进行重构 读取并存储输入 实现 S-Expression 语法解析器 实现 S-Expression 存储器 实现 lval 变量的构造函数 实现 lv ...

  7. PCF 的 Npcf_PolicyAuthorization 服务化接口

    目录 文章目录 目录 引用 前文列表 术语 PCF Npcf_PolicyAuthorization 服务化操作类型 服务化接口参数类型 创建 Application Session Context: ...

  8. 高效运维_AIRIOT智慧电力运维解决方案

    可再生能源的引入带来了能源生产的去中心化和分散化趋势,同时也带来了能源输出的波动性和不确定性.电力运维因此需要更加灵活.智能的解决方案,以适应可再生能源的集成,确保电力系统的稳定运行,传统的电力运维管 ...

  9. 基于webapi的websocket聊天室(三)

    上一篇处理了超长消息的问题.我们的应用到目前为止还是单聊天室,这一篇就要处理的多聊天室的问题. 思路 第一个问题,怎么访问不同聊天室 这个可以采用路由参数来解决.我把路由设计成这样/chat/{roo ...

  10. 微信小程序,wx.getUserProfile接口将被收回,新的头像获取方式永久保存

    微信文档:https://developers.weixin.qq.com/miniprogram/dev/framework/ 新的获取头像方式:https://developers.weixin. ...