IS-IS总结
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
随机推荐
- 推荐一款轻量级堡垒机系统让你防护“rm -rf 删库跑路”
大家好,我是 Java陈序员. 我们在开发工作中,会经常与服务器打交道,而服务器的资源又是十分宝贵,特别是服务器里面的数据资源. 但是,偶尔会经常因为疏忽而导致服务器数据资源丢失,给自己和公司带来巨大 ...
- python性能分析line_profiler
在编程世界中,效率是王道.对于Python开发者来说,line_profiler 是一把锐利的剑,能够深入代码的每一行,找出性能瓶颈.今天,就让我们一起深入探索 line_profiler,学习如何用 ...
- 程序员天天 CURD,怎么才能成长,职业发展的思考(2)
接着上一篇:程序员天天 CURD,怎么才能成长,职业发展思考 上一篇写到了用年限来谈程序员的发展,在 4 - 6 年这个时间段需要做的一些事情,接着写这个时间段的. 第 4.5 年时候,你可能会做一些 ...
- gin框架获取参数
目录 httpext包 获取header头里的参数: scene := httpext.GetHeaderByName(ctx, "scene") // online / dev ...
- JDK源码阅读-------自学笔记(九)(常用类型Integer初探)
常用类 主要分为几部分需要学习: 包装类的介绍和使用 字符串的介绍和使用 时间类的介绍和使用 其他类型介绍和使用 包装类(Wrapper Class)基本知识: 1.基本数据类型不是对象,但有时需要将 ...
- 13-flask博客项目之restful api详解1-概念
一 传统的开发模式 前后端分类概念 前端只需要独立编写客户端代码,后端也只需要独立编写服务端代码提供数据接口即可前端通过AJAX请求来访问后端的数据接口,将Model展示到View中即可 前后端开发者 ...
- 重做贪吃蛇 万向移动型 蛇的移动和吃食部分C# wpf版
之前写了一个贪吃蛇,代码实在太乱了,上一个是用polyline做的,这次这个是用一个个的elipse来渲染蛇的身体,其中一个圆点,就是一个elipse了.蛇的移动是通过定时器来实现的,方向键 A D控 ...
- ThreadLocal原理详解——终于弄明白了ThreadLocal
目录 概述 API介绍 ThreadLocal的理解 ThreadLocal的原理分析 总结 概述 在java学习生涯中可能很多人都会听到ThreadLocal变量,从字面上理解ThreadLocal ...
- CSS操作——边框属性
1.border-style(边框风格) 定义边框的风格,值可以有: /* none:没有边框,当border的值为none的时候,系统将会忽略[border-color] hidden:隐藏边框,低 ...
- 很多人讲不明白HTTPS,但是我能
很多人讲不明白HTTPS,但是我能 今天我们用问答的形式,来彻底弄明白HTTPS的过程 下面的问题都是 小明和小丽两个人通信为例 可以把小明想象成服务端,小丽想象成客户端 1. https是做什么用的 ...