ISIS:中间系统到中间系统的路由协议
IS=router 一个中间系统就是一个路由器,一个路由器配置一个IP地址
协议适用范围:IGP
协议是否携带网络掩码:更新网络掩码
协议算法:与SPF算法一致,可以这么叫
协议封装:基于二层封装
一、 协议描述
二、 ISIS协议特点
五、ISIS地址
1.NSAP地址标识的是设备。可以称为system ID
2.IPV4/IPV6地址是定长的,NSAP地址是不定长的,范围在8字节至20字节,一般在配置为10字节
3.NSAP地址分为高位(higher-order,1-13字节)和低位(lower- order固定为7个节)
高位地址标识区域
低位地址标识system ID
NSAP地址
IDP:Initial Domain Part 初始域部分
DSP:Domain Specific Part 域指定部分,分为高位与低位
AFI:Authority Format ID,组织格式标识符,相当于 MAC地址中 的OUI,1字节,49—私有地址标识。
IDI:Initial Domain ID,初始域标识,在AFI的基础上进行划分,可变,相当于子网划分
High-Order DSP:HODSP,高位域指定,所属区域,长度可变,,一般为2字节
System ID:系统标识符,一般用于描述一个区域内的某个节点,固定为6字节,一般这样变化:
比如:192.168.1.1——192.168.001.001
再变为三组——1921.6800.1001
再加上高位域部分 49.1921.6800.1001.0.
当然也可以将MAC地址48位作为system-id。
NSEL:NSAP的选择位,类似IP+端口号,若为00代表设备本身,若不为0则代表某个应用程序标识, 描述该设备本身或者是该设备上的某个应用程序,定长为1个字节.
NET地址:网咯实体标题地址
NET地址network entity title,网络实体标识,实际上是NSAP地址中的NSEL地址全0.
SNPA地址:子网附属点,在NSAP中只能标识一个设备,无法标识一个接口,在标识一个设备的某个接口时使用 SNPA 地址,称为子网访问地址 。使用该接口的二层地址,例如MAC地址、DLCI号, 所有SNPA地址可以标识该设备上接口类型。
简单理解就是描述网络类型的,通过SNPA地址可以判断。
接口的唯一标识符使用电路标识符标识circuit ID,一般为一个字节,使用十六进制书写,是自动分配的。
在进行接口上地址标识时使用system ID + circuit ID标识,例如0000.0000.0001.01
在cisco设备上一般使用路由器的主机名+circuit ID组成,例如R1.01
六.ISIS中路由器工作模式
L1:只存在L-1的LSP信息(路由信息和拓扑信息)
L2:只存在L-2的LSP信息(仅仅存在路由信息)
L-1-2:存在L-1和L-2的LSP信息
默认情况下:所有设备L-1-2
例如:R1——R2 是1区域,R3——R4是2区域,那么R1与R4如果是L-1路由器,R2 R3就是L-1-2路由器,R1学习到达区域2的会有一条缺省,其实虽然说ISIS没有特殊区域,默认相当于是OSPF的stub区域了,但是并不是学习一条缺省路由,而是R2传递L-1-2信息,但是R1不可能识别L-2信息,所以R2会将里面的ATT为置为1,默认是0,那么R1就会向传递给自己ATT是1的路由器自动产生一条缺省。
但是如果R1是L-2路由器的话,那么R2会将L-1的信息复制到L-2中传递。
那么R2也收到了L-1信息,这个也不可能通过中间的链路传递给区域2,会将L-1的路由信息复制到L-2的database数据库中,传递过去。
L-1-2路由器收到数据包时候会检测去往的目标网段是否与自己在一个区域,如果是查看L-1信息,不是就查看L-2信息。
启用ISIS协议
指定NET地址
49表示组织格式标识符
0012表示区域12,16进制表示,高位区域
0000.0000.0001表示system-ID
00表示NSEL
开启邻居关系改变日志弹出
将接口进行network通告
ISIS metric值计算:
窄度量值:默认启用,默认一条链路的度量值为10,窄度量值中一条链路的metric值0-63,默认为8bit标识,整条链路度量值范围0-1023, 默认使用10bit标识。
宽度量值:默认一条链路的度量值为10,宽度量值一条链路metric使用24bit标识。整条链路度量值使用32bit标识。
一般改为宽度量值,这样计算就可以类似于OSPF的cost值计算metric值。
查看CLNS所有邻居
查看CLNS中ISIS邻居
查看ISIS邻居
在MA网络中L-1与L-2的信息分割开来
查看ISIS LSP数据库
八.ISIS 消息数据包
Hello :L1 hello L2 hello包 在FR或PPP中使用hello
作用:用于建立Level-1 或Level-2邻居关系 ,使用组播方式发送,
0180.C200.0014(Level-1 hello)或者0180.C200.0015(Level-2 hello )
LSP:链路状态协议数据单元,分为Level-1 Level-2 LSP,触发更新或 15分钟周期更新
PSNP:部分序列号网络协议单元,充当LSR(MA)或LSACK(P2P)
CSNP:完全序列号网络协议单元,充当DBD
九、ISIS网络类型
点对点网络类型:发送hello报文,hello时间为10s hold时间为30s
广播型网络类型:发送L-1和L-2 hello报文,hello时间为10s hold时间 为30s 注意DIS路由器发送hello时间为3.3s hold时间依然为30s
DIS:指定中间系统(相当于DR)
注意:1.DIS 是一种接口概念
2.DIS选举:较大的优先级(默认为 64,范围在1-127之间)、较大的SNPA地址 3.DIS中没有备份
4.DIS 抢占式开启的
5.在OSPF中DR选举若为0则失去选举资格,在ISIS中 DIS选举若为0,仅代表优先级较低
6.在OSPF中DR与所有router进行 LSA交互,在ISIS中广播网络中所有路由器都可以互相交互LSP信息,所以不会减少LSP数量
DIS作用:周期性10s发送CSNP报文,CSNP相当于DBD 接收PSNP请求,回复LSP应答(同时担当ACK确认)
NBMA:帧中继网络,ISIS默认不支持帧中继,可以在帧中继中的点对点子接口上配置ISIS
ISIS高级部署
修改ISIS路由器的角色
修改DIS优先级
默认L-1 L-2都修改
但是默认是窄度量值,不能改的很大
会发现对端收不到1.1.1.0的路由了
这是因为单根窄度量值的metric是有限的,所以R2这边也必须改为宽度量值才可以
这样做了以后收不到其他的路由了,所以我们说一般ISIS选择宽度量值,在R3 R4上都修改
修改发送hello包间隔时间
修改hold时间
修改这两个时间不影响邻居建立。
ISIS手工汇总,仅仅针对L2 LSP信息汇总
R1上创建3个地址,通告进入ISIS,R2上查看
并且与OSPF一致,会产生一条指向null0的防环路由
ISIS路由认证
版本老的IOS与EIGRP认证一致,新版本的IOS与OSPF认证一致
ISIS路由泄露
是因为ISIS存在路由逻辑是有问题的,L-1会有L-1-2路由器给的一条缺省,转发数据看的是到达;-1-2路由器的metric值。
但是L-2转发数据看的是真正的metric值,会把L-1的metric值复制作为自己的metric值,所以会导致转发逻辑错误。
R1只会走上面,上面10,下面20,但是R7回包会走下面,下面比上面小。这种方式是存在问题的。所以需要进行反向同步,把某些(有逻辑问题)L-2信息以L-1的方式重发布给L-1路由器,,这种操作就叫做路由泄露。
注意在路由泄漏中,使用route-map或distribute-list 都是用定义感兴 趣的路由信息(将那些Level-2路由进行泄漏)