一、ISIS简介
二、ISIS路由器分类
1、level-1路由器:
2、level-2路由器
3、level-1-2路由器
三、ISIS邻居关系建立
三种Hello包
三、ISIS邻居关系建立
DIS(类似于OSPF的DR):
ISIS邻居关系:
四、ISIS报文类型(九种)
五、P2P和MA建立邻居过程
P2P建立邻居:
MA网络建立邻居:
六、ISIS路由计算过程:
SPF计算过程:
七、ISIS区域以及区域路由
ISIS网络分层区域路由:
区域间路由通信:
多区域实验:
八、ISIS与OSPF差异性
学习目标:
1、ISIS简介
2、ISIS路由器分类
3、ISIS邻居关系建立
4、ISIS报文类型
5、P2P和MA建立邻居过程
6、ISIS计算路由过程
7、ISIS区域以及区域路由 + 实验
8、ISIS与OSPF差异性
IS 中间系统(路由器/运行了ISIS协议的设备)
ES 终端系统
ISIS简介:IS-IS和OSPF一样也是一种基于链路状态并使用最短路径优先算法进行路由计算的一种IGP协议(和OSPF有很多相似的地方),最初为了支持OSI网络层的CLNP协议开发的协议。
网络功能模型:OSI(国际标准化组织ISO定义)、TCP/IP(事实标准,个人开发后功能强大被多厂家支持)。
网络层:对网络设备的编址以及寻址,IP协议。
OSI的网络层使用的是CLNP协议(无连接的网络协议,不需要建立连接,发数据直接进行转发)。
ISIS和OSPF是同父异母的兄弟,父亲:SPF算法 ,母亲:CLNP,IP。
OSI网络模型市场占有率不行,导致ISIS没有存在感,不过ISIS(多栈路由协议,支持CLNP、IPv4、IPv6,集成的ISIS协议)扩展性比较好,后续支持的IP协议,优点比较多:节省设备资源、收敛快、扩展性强(第一个支持IPv6的协议)、学习难度低,运营商市场得到广泛应用。
ISIS是工作在链路层之上的协议(独立性很强,扩展性好)。
OSPF是工作在网络层之上的协议(OSPF依赖于IP的协议,鱼与水的关系)。
ISIS路由计算三部曲(和OSPF大的框架上一样,实施有细节差异):
1、建立邻居关系
2、同步LSDB数据库
3、执行SPF路由计算
OSPF协议对路由器的定位:Area ID + Router ID。
ISIS协议对路由的定位: Area ID + System ID + 00 = NET地址(网络实体标识符,最小8字节,最大20字节)
Area ID:可变1-13字节
System ID:固定6字节
SEL:固定1字节
ISIS - NET地址配置:
Area ID:
System ID:
SEL始终等于00
NET地址(NSAP地址)
IDP相当于IP地址中的网络号
AFI地址分配结构:分配给组织的
IDI:表示域,自治系统
AFI 50 中国 IDI 0001 内蒙古
DSP相当于IP地址中的子网号和主机地址
High Order DSP高位DSP:用来分割区域,在域下再划分区域
System ID:标识某一台设备
High Order DSP 0001 乌兰察布市 0002 呼市
System ID 0000.0000.0001 集宁区 ,0000.0000.0002 赛罕区
SEL类别服务选择器:相当于协议号,SEL等于0就是设备本身。
50.0001.0001.0000.0000.0001.00 中国.内蒙古.乌兰察布市.集宁区的一台主机
50.0001.0002.0000.0000.0002.00 中国.内蒙古.呼市.赛罕区的一台主机
NSAP地址会透露出网络结构,不太安全。
项目中如果配置多个NET地址(最多三个,配置多个地址是做区域变更的时候【变区域号的时候,网络不中断】,可以保证网络不中断)的时候,Area ID可以不同,System ID要一致。
level-1路由器(相当于OSPF的非骨干区域的IR路由器【IR所有接口在同一区域的路由器】):只能创建level-1的LSDB(维护非骨干区域的LSA)
level-2路由器(相当于OSPF的骨干区域IR路由器):只能创建level-2的LSDB(相当于骨干区域的LSA)
level-1-2路由器(相当于OSPF的ABR路由器):路由器的默认类型,可以同时创建level1和level2的LSDB
4、华为路由器默认为level-1-2
5、L1的邻居建立前提:区域ID一致,L2的邻居对区域ID不做要求。
Hello建立,Hello有三种报文:
1、P2P Hello:点到点链路上建立邻居关系(level1或level2的邻居),建立邻居组播目的MAC地址为09-00-2b-00-00-05。
2、L1 Hello:广播型的链路上建立level1的邻居关系,建立邻居组播目的MAC地址为0180-c200-0014。
3、L2 Hello:广播型的链路上建立level2的邻居关系,建立邻居组播目的MAC地址为0180-c200-0015。
ISIS仅支持2种网络类型P2P(PPP、HDLC),broadcast(Ethernet)。
level1的hello包:
level2的hello包:
改为点到达网络类型:
[R1-GigabitEthernet0/0/0]isis circuit-type p2p
hello包MAC:
Hello包分level-1和level-2的原因是路由器的级别有三种。
广播链路上,需要维护多个邻居,level-1的Hello维护level-1的邻居,level-2的Hello维护level-2的邻居。
点到点链路上,只需要维护一个邻居,要么级别level-1或者level-2、level-1-2。
Hello包默认周期性每隔10s发一次(DIS路由器默认10/3,3.3s周期发送,失效时间为10s),邻居失效时间3倍hello时间。
ISIS不要求Hello时间一致、失效时间一致(OSPF规定时间要一致)。
P2P链路上建立邻居关系:(P2P默认使用三次握手,兼容两次握手)
1、两次握手建立邻居:
只要你发Hello包给我,参数协商成功就我跟你建立邻居,不要求你跟我建立邻居,容易出现单向邻居风险。
2、三次握手建立邻居:(在broadcast链路上建立邻居关系有2种方式)
A----------------B
第一次,A向B发送Hello包,携带自己System ID,邻居为null,这个时候邻居状态是Down的。
第二次,B向A回Hello包,携带自己System ID,邻居为邻居的System ID,这个时候A的邻居状态是UP。
第三次,A向B回Hello包,携带自己System ID,邻居为邻居的System ID,这个时候B的邻居状态是UP。
1、ISIS协议在broadcast链路上会进行DIS选举。
2、DIS类似于OSPF的DR。
3、DIS优先级的取值范围0-127,默认值为64,越大越优先称为DIS,0可以参与选举。
4、DIS优先级相同,则比较接口的MAC地址,MAC地址大的优先成为DIS。
5、DIS具备抢夺性,L1 DIS,L2 DIS。
6、DIS每隔10s周期性发送CSNP报文,用来同步这条链路上其他ISIS路由器的LSDB。
ISIS广播都是建立到up。
ISIS的报文类型一共有九种:
1、Hello报文:
(1)、L1 Hello
(2)、L2 Hello
(3)、P2P Hello
2、LSP(链路状态PDU,类似于OSPF的LSU)
(1)、L1 LSP:L1的邻居之间用于交换LS
(2)、L2 LSP:L2的邻居之间用于交换LS
3、SNP(序列号PDU)
(1)、CSNP:完全序列号PDU(类似OSPF的DD报文)
1)、L1 CSNP
2)、L2 CSNP
(2)、PSNP:部分序列号PDU(类似于OSPF的LSR、LSACK报文)
1)、L1 PSNP
2)、L2 PSNP
ISIS基于TLV模块化结构:T类型、L长度、V取值,TVL用来实现某一个功能,TLV易于扩展。
ISIS没有携带任何认证的信息,报文都是TLV框架设计的:(框架搭建好,功能有设计了,可以选择性携带功能)
ISIS接口认证:
认证前,报文不携带认证的TLV:
做完认证后,报文携带认证TLV:
isis authentication-mode md5 plain huawei
以太网链路修改为P2P后,这条链路上所有ISIS报文组播MAC都为09:00:2b:00:00:05。
以太网链路为broadcast,L1的报文使用0180-c200-0014,L2的报文使用0180-c200-0015
OSPF 学习了六种LSA
ISIS 学习两种LSA
实节点LSP和伪节点LSP:
1、实节点LSP(类似OSPF的1类LSA)
2、伪节点LSP(类似OSPF的2类LSA)
LSP周期性刷新是每隔15分钟、老化时间是20分钟,20分钟到了还需要等一分钟的零老化延时,LSP的重传时间为5秒(发了一份LSP,对方没有回应PSNP,会在5s后重传)。
链路状态信息的交互:建立邻居up后直接互相发CSNP。
up后直接互相发CSNP。
A----------------------B
1、A发CSNP摘要给B。
2、B收到A的CSNP,把自己需要的摘要头部信息发PSNP进行请求。
3、A把B需要的头部摘要详细信息通过LSP发给B。
4、如果B没有回PSNP做确认
5、A5秒后LSP会重传再发B
6、B收到会发PSNP给A做确认
A和B的LSDB是一致的,C加入MA后,和A、B建立邻居,如果没有抢占DIS,C只会发LSP(不用发CSNP),MA只有DIS有权利发CSNP,A收到就接收了C的不做确认(最后收到B路由器DIS发的CSNP做确认同步),B收到后放到LSDP,最后B通过CSNP整个发出去,最后A和C通过PSNP向B请求自己没有的。
如何查看LSP:(OSPF需要通过三个参数去标识LSA,而ISIS只需要一个LSPID就能标识一条LSP)
LSPID由System ID、伪节点标识符-分片标识符,长度分别为6字节、1字节、1字节。
System ID:表明LSP的产生者,标识LSP的产生路由器。
伪节点标识符:标识LSP的类型是实节点(00代表实节点,类似1类LSA)还是伪节点(非00,代表伪节点LSP,DIS产生,类似2类LSA)
分片标识符:LSP携带的内容过多,而产生分片,对分片进行编号(没有分片就是00,有的话就是01、02.....)
Seq Num序列号、Checksum校验和、Holdtime老化时间,这三个参数用来判断LSP的新旧。
Seq Num序列号:越大越新(序列号一样比较Holdtime)。
Checksum校验和:序列号和老化时间一样,校验和大的新,校验和一样则认为是一致的。
Holdtime老化时间:是倒计时,从20分钟开始(1200s)倒计时,= 0代表最新(既删除一条LSP)。
摘要信息:(PSNP、CSNP携带的就是摘要)
链路状态具体信息:(LSP携带链路状态具体信息)
“*”号代表自己产生:
设备默认接口开销值都为10(不管带宽多大)。
环回口默认是0:
1、单区域的LSDB同步完成
2、生成全网拓扑结构图
3、以本路由器为根计算最短路径树
4、默认跨越每个节点开销一样
ISIS的区域ID不能去区分地位,仅仅是物理意义上的位置。
由连续的level-2路由器连接起来的区域就是骨干区域,level-1路由器连接的区域就是非骨干区域。
ISIS每台level-1产生一条实节点LSP,两个DIS会产生两条伪节点LSP
想让R1抢占DIS:
[R1-GigabitEthernet0/0/0]isis dis-priority 127 level-1
路由:L1 非骨干区域路由
看邻居:
R3 leve1-1-2路由器的路由表:
level-1的表:
level-2的表:
邻居表:
非骨干路由在骨干区域都能计算到,非骨干区域只能看到level-1和一条缺省路由。
默认情况下:默认情况下level-1-2将非骨干区域的level-1的路由转换成level-2的路由在骨干区域泛洪(非骨干区域的ABR把level-1的路由挂在自己身上成为叶子路由,转换为level-2泛洪骨干区域)。
ISIS运载路由能力强,一条LSP包含所有的路由,每次对比LSP新旧就能对比路由(OSPF一条LSA携带一条路由,得一条一条的对比路由)。
level-1默认就是Stub区域,level-2路由进不来,统一通过默认路由去访问。
ATT骨干区域连接符:level-1-2路由器在自己的L1 LSP中将ATT bit置1,用于描述自身连接着骨干区域。
L1的路由器根据ATT=1的标识,产生一条去往level-1-2路由器的缺省路由(ATT=1,L1路由器自己去生成缺省路由)。
ISIS可以进行路由泄露,可以把level-2的路由泄露到level-1:
泄露前level-1路由:
路由泄露:
[R3-isis-1]import-route isis level-2 into level-1
泄露后:level-2的明细进入level-1
ISIS和OSPF的差异:
网络类型:ISIS支持两种、OSFP四种
开销方式:ISIS有宽度量值、窄、宽兼容型、窄兼容型、兼容型,五种开销风格,开销计算也有不同,默认是10。
区域类型:ISIS两种,OSPF六种。
路由报文类型:ISIS两种L1和L2,OSPF目前学到的有1、2、3、4、5、7类LSA。
路由负载能力:如果OSPF100条3类,ISIS一条LSP搞定。
ISIS运营商使用多,OSPF企业网使用多。