1、<IS-IS(Intermediate System - Intermediate System)> |->CLNP (类似IP,IPX) |->CLNS->|->IS-IS (Routing,IGP) ISO->OSI->Network->| |->ES-IS (ARP/ICMP/IGMP)用于终端系统到中间系统 |->CONS->CONP CLNS(ConnectionLess Network Service)无连接的服务 CLNP(ConnectionLess Network Protocol)无连接的网络协议(三层) CON
2、S(Connection Oriented Network Service)面向连接的服务 CONP(Connection Oriented Network Protocol) ·理论上OSPF只支持1万条路由条目,IS-IS支持2万条路由条目。 ·IS-IS工作在3层,协议报文直接封装在数据链路层的帧结构中。 ·L1路由器获悉域内路由 L2路由器获悉域间路由 L1/2路由器获悉域内/间路由(相当于OSPF中的ABR)。 ·属于不同区域的L1路由器不能形成邻接关系。 L2路由器是否形成邻接关系与区域无关。 ISIS的BackBone区域是由所有相连的L2、L1/2路由
3、器组成。 ·默认采用Narrow Metric: Max Interface Metric=63 (6bit) / Max Path Metric=1023 (10bit) Cisco所有ISIS接口默认Metric=10 ·OSI规范定义了4种类型的路由选择操作:(0-3) IS-IS L0路由选择: ·在ES和IS之间建立邻接关系 ·创建数据链路层地址和网络地址的映射。 IS-IS L1路由选择: ·域内路由选择。 IS-IS L2路由选择: ·域间路由选择。 IS-IS L3路由选择: ·不同自治系统之间的路由
4、选择,IDRP(InterDomain Routing Protocol) ·IDRP功能类似于BGP,Cisco不支持IDRP。 ISIS和OSPF的比较: ---------------------------------------------------------------------------------------- CLNS地址规划: ·与IP地址不同,CLNS地址用于整个节点而不是接口。 路由器使用的CLNS地址被称为NSAP(Network Service Access Point)。 NSAP=Area + System ID + NSEL
5、 (8-20Bytes) (1-13) (6) (1) IDP(Initial Domain Part) ·AFI(Authority and Format ID 机构和格式标识符) 指定该地址的格式以及分配给该地址的机构 47:国际代码指示符。 49:本地管理(私有地址) ·IDI(Initial Domain ID) AFI下的子域。 e.g :47.0005分配给美国非军事部门 / 47.0006分配给美国国防部 [IDP相当于一个IP的主类] DSP(Domain-Specific Part)
6、 ·HODSP(High Order DSP) 将一个AS划分成多个Area。 [HODSP相当于IP子网] ·System ID 唯一标识某台设备。 [System ID相当于Router-ID] ·NSEL(NSAP Selector) 标识设备中的进程。 [相当于端口号] 在路由选择中,NSEL=00 ·当NSEL=00时,被称为NET(Network Entity Title) ·与OSPF不同,ISIS路由器只能是一个Area的成员, 其NET地址有如下限制: 1)同一Area的所有路由器必须使用相同的区域
7、地址。 2)ES只能识别同一子网具有相同区域地址的IS/ES。 3)L1路由器域内路由选择基于Sys ID。因此,同一Area每个ES/IS必须有唯一的Sys ID。 4)所在骨干区域的L2、L1/L2路由器也必须有唯一的Sys ID。 5)NET地址的起始和结束都必须为1Byte.(49.xxxxxxxxx.00) ·SNPA(SubNetwork Point of Attachment) 就是3层NET地址对应的2层地址。通常为MAC/HDLC/DLCI ·Circuit ID 为每个接口分配一个Circuit ID (1Byte),用于区分不同接口。本地有效。
8、 P2P: 0x00 / LAN: 1921.6800.0001.01 (R1.01 CISCO路由器上使用主机名表示,而不是system ID来表示) ·域间路由选择使用Area ID 域内路由选择使用System ID ·L1路由器不知道L2的数据库,它只知道如何到达最近的L1/L2路由器。 在L1/L2路由器上算出最短路径。 ·PDU(Protocol Data Unit) 从一个节点的OSI层到另一个节点对等的OSI层的数据单元称为PDU。 IS-IS的四种报文 这四种报文都是直接封装在二层中的: ·Hello(ESH/ISH/IIH):用于建立和维护邻接关
9、系。 ·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报文是发向组播地址 在点到点链路上,是发向单播地址 ·ag
10、ing times---LSP每隔15分钟发送一次,老化时间从20分钟倒计时到0。 ·TLV(Type Length Value) CLV(Code Length Value) ISIS的协议报文:通用的LSP头部+TLV TLV可灵活的将数据添加到LSP中,从而增加了扩展性,支持多种其他协议。(IPV6/MPLS) ·ISIS支持2种链路状态:Broadcast/P2P ·在Broadcast模式下,所有路由器彼此都形成邻接关系。 但每台路由器只通告它与伪节点的邻接关系。 由DIS代表整个LAN发送LSP信息。 ·选举DIS顺序: 1)接口优先级(默认64)
11、 2)最大MAC地址 ·对于L1&L2分别选举DIS。 不存在Back DIS。 DIS具有抢占权。 DIS是接口概念。 ·P2P:Unicast 使用单播发送hello Broadcast:Multicast MAC组播地址 使用二层MAC组播地址发送hello ·L1 IIH发向:0180.C200.0014 ·L2 IIH发向:0180.C200.0015 Hello=10S Hold=3*Hello=30S DIS's Hello : 3.3S (10/3) CSNP PSNP
12、 Broadcast 由DIS每隔10S发送一次 请求缺少的LSP/确认已收到的LSP P2P 只在邻居建立的时候发送一次 请求缺少的LSP/确认已收到的LSP 之后只发送描述拓扑变化的LSP ----------------------------------------------------------------------------------------- <IS-IS> R2(config)#router isis R2(config-router)#net 49.0001.0000.0000.0002.00
13、R2(config-router)#int s0 R2(config-if)#ip router isis (接口启用ISIS) R1#show clns neighbors 显示IS或ES邻居 R1#show clns is-neighbors 和第一条命令的显示内容不一样,互相之间互补, R1#show isis hostname 看systemID和主机名的映射关系 R1#show ip protocols R1#show clns protocol 显示路由器中特定IS-IS进程信息 R1#show isis topology 显示L1或L2的拓扑表 R
14、1#show isis database 显示LSP信息 R1#show clns interface s0 显示接口的CLNS信息,可以显示hello时间,metric,优先级 R1#show clns is-neighbors 如果是在LAN链路上,可以看到伪节点的电路号,它不属于任何一个真实的路由器 默认都是L1/L2路由器 R2(config)#router isis R2(config-router)#log-adjacency-changes all(显示邻居变化信息)需要手工做,其它路由协议默认就有这一命令 R1#clear clns neighbors R
15、1#clear isis * 清除数据库中所有邻居的LSP <改Hello/Hold> R2(config)#int s0 R2(config-if)#isis hello-interval 1 R2(config-if)#isis hello-multiplier 10 修改乘数值 ·不会影响邻居建立。 优化 R2(config)#router isis R2(config-router)#is-type level-1 (设置为L1路由器) L1/L2路由器会自动下发默认路由给域内的L1路由器。 条件:1、L1/L2必须和其他区域路由器形成邻接关系。
16、 2、此L1/L2路由器将LSP的ATT=1,通告给区域内的L1,也即和本区域内的路由器形成L1关系 3、表明此L1/L2有到达其他区域的路径。 默认路由Seed Metric=0 R2(config)#int s0 R2(config-if)#isis metric 8 (接口改Metric,可单独针对L1或L2来改) 还是遵循:路由流向入口改Metric。 R2(config)#int s0 R2(config-if)#isis circuit-type level-1(接口设置Level) R4(config)#int e0 R4(config-if)#is
17、is priority 65(设置接口优先级) <被动接口> R4(config-router)#passive-interface loopback 3 (宣告Loopback3,而且不计算Loopback3的Metric) R4(config-router)#passive-interface ethernet 0 (不发Hello包,邻居关系Down) <路由汇总> 在本区域的边界路由上做汇总。(类似于OSPF的域间汇总) R3(config)#router isis R3(config-router)#summary-address 3.0.0.0 255.
18、0.0.0 (默认L2) 本地产生 i su 3.0.0.0/8 [115/10] via 0.0.0.0, Null0 只发送汇总路由出去。 路由泄露Route-Leaking router isis redistribute isis ip level-2 into level-1 distribute-list 100 access-list 100 permit ip 100.1.1.0 0.0.0.0 any 只能用扩展访问列表 泄露的路由前面会打上ia 漏给L1的路由默认COST值是148 在frame-delay下运行ISIS,要按下面来做 router(
19、config-if)#frame-delay map clns * broadcast <认证>仅支持明文 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交换失败, 最终将会有某些路由
20、器路由不完整。 因为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地址删除。






