第三层用的是CLNS 层/ CLNP地址 我们用的是TCP/IP
CLNP就是被路由协议,ISIS就是路由协议,设计为了路由CLNP地址
ISIS的改进,用ISIS来支持IP 路由的传递 称为 integrated集成的ISIS
靠ISIS的UPDATE包传递路由,这种包本身就需要CLNP地址
用在大型ISP里面 由于美国政府最早需要再OSI 模型上支持
运营商喜欢用ISIS原因
1.是IGP 类似OSPF
2.ISIS是链路状态协议,也是SPF算法
运营商是为了跑BGP,IGP为BGP服务
运营商要求协议,稳定,简单好排错
优点:
ISIS有层次,还有地址迁移很方便(可以配多个地址在上面,建立多个邻居关系,不需要可以直接关掉,无缝割接)
例:ISIS 可以避免路由黑洞
OSPF比BGP快收敛会先转发数据,造成路由黑洞
ISIS会告诉其他路由器先别发数据,避免路由黑洞
通过OL字段-overload
IS:中间系统(路由器和路由器之间的协议)
OSI第三层 有CLNP IS-IS ES-IS
ES:终端系统,pc的路由器跑的
解决终端上网问题(终端系统和路由器的问题):ARP ,DHCP ,网关
LSPs 相当于LSU
两级关系
level 1的LSP
level 2 的LSP
路由器工作再level 1 ,level2,或level 1-2模式下
level1 类似非骨干区域内部路由器 只传递本区域的LSP
level 2 类似骨干区域内部路由器 只会交换区域间的地址
level1-2 类似ABR
默认情况下,ISIS每个接口metrics 10 类似跳数
有些IOS支持 wide metric 可以扩大
mpls TE 用到ISIS
ISIS的hello包
IIH,路由器和路由器之间的
ISH是ES -IS之间的,(不用关心,因为终端系统已经不跑路由协议了)
ISIS 和OSPF对比
相同点:
都是开放的链路状态协议
aging timers LSA老化时间
·aging times---LSP每隔15分钟发送一次,老化时间从20分钟倒计时到0。
ISIS 从小记到大
OSPF从大记到小
LSDB同步类似
SPF
UP 等都类似
区别:OSPF区域基于接口,一个路由器可以属于多个区域
对于ISIS区域划分
CLNS 是基于节点(基于路由器),而IP 是基于链路的(基于接口)
OSPF骨干区域是实际的,物理上
而ISIS骨干区域其实是个逻辑,只是一种邻接关系(靠地址划分)
ISIS的LSP:(L1,L2)
有路由器ID
网络网络号、掩码、metric
L1关注systemID
L2关注areaID
isis的metric不好,OSPF比较合理
OSPF被许多厂商所支持
建议每个路由器用唯一的systemID
CLNS地址有七八种不同规范
由AFI表示
记住一种规范:
AFI+area | System ID| NSEL
最少2字节,可以变长,AFI一字节+区域号|6字节|00
常见AFI 49
Route Leaking
路由泄露
解决办法:
把L2 的LSDB 注入L1的,这样L1就知道路怎么走了
·PDU(Protocol Data Unit)
从一个节点的OSI层到另一个节点对等的OSI层的数据单元称为PDU。
本身就是一种帧(这样封装安全)
IS-IS Data-link header|ISIS-header 0x83| ISIS TLVS
直接封装到数据链路层帧里面没有CLNP 或IP 头部
有几种包:HELLO(ESH,ISH,IIH)
LSP
PSNP(partical sequence number PDU部分序列号包)作用类似DBD
ISIS选DIS
DIS发CSNP
DIS详情图看书面笔记---MA网络 点到点网络
CSNP(complete sequence number PDU完整序列号包)完整的书目
ES-IS Data-link header| ES-IS 0x82| ES-IS TLVs
CLNP Data-link header |CLNP header| CLNS
IS-IS的四种报文
这四种报文都是直接封装在二层中的:
·Hello(ESH/ISH/IIH):用于建立和维护邻接关系。
·LSP(Link-State PDU):用于分发链路状态信息。是详细信息(类似LSA)
·PSNP(Partial Sequence Number PDU):用于请求和确认LSP,包含LSDB中的部分LSP的摘要信息。 (类似LSR/ACK)在点到点链路中,充当了ACK
·CSNP(Complete Sequence Number PDU):用于LSDB的同步,包含LSDB中的所有LSP的摘要信息。 (类似DBD)
以上每种报文都分为L1/L2,IIH多加一种P2P IIH.
在以太网中,LSP和hello报文是发向组播地址
在点到点链路上,是发向单播地址
DIS选举:1 、优先级 2、MAC地址
路由器不能靠DIS的MAC来区分链路,所以DIS的MAC+ID变成链路ID(LAN ID) ---一个路由器自己生成的编号而已(蛮理解)
与OSPF相比 DIS可以随时抢占
实验
:L1-2和L1建立邻居,这时L1-2发送的LSP 里有一个FLAG (ATT会置为1)。。L1就会产生一条默认路由指向L1-2路由器
L1-2只要database L1有就会告诉L2
路由泄露
L1-2路由器把
L-2引到L-1里
实验命令在书面笔记上
注:access-list是控制数据包的
distribute-list是用来控制路由更新的
补充:
·ISIS支持2种链路状态:Broadcast/P2P
·对于L1&L2分别选举DIS。
不存在Back DIS。
DIS具有抢占权。
DIS是接口概念。
<认证>仅支持明文
1)Link Authentication:
R2(config)#int s0
R2(config-if)#isis password wolf (默认L1)
L1和L2类型的邻接关系需要配置各自的认证。
2)Area Authentication:
R1(config)#router isis
R1(config-router)#area-password ccie
如果区域认证失败,仍然可以起邻居,但会导致L1 LSP交换失败,
最终将会有某些路由器路由不完整。
因为area-password是在L1 LSP/CSNP/PSNP中传递的。
所以只能用来验证L1层的信息交换。
3)ISIS Domain Authentication:
R1(config)#router isis
R1(config-router)#domain-password ccnp
如果ISIS域认证失败,仍然可以起邻居,但会导致L2 LSP交换失败,
最终将会有某些路由器路由不完整。
因为domain-password是在L2 LSP/CSNP/PSNP中传递的。
所以只能用来验证L2层的信息交换。
<区域迁移>
·一台ISIS路由器默认最多属于3个区域。
R3(config-router)#max-area-addresses (3-254)
配置多个NET地址,将原来NET地址删除。
高级特性OL:ISIS的特性 overload说明过载
OL可以手动设置为1
别台路由器收到我的LSP里面OL字段,只放入Database 收到数据不会给我转发