<IS-IS(Intermediate System - Intermediate System)>

 

                           |->CLNP (类似IP,IPX)

                  |->CLNS->|->IS-IS (Routing,IGP(rip eigrp  ospf))

ISO->OSI->Network->|      |->ES-IS (ARP/ICMP/IGMP)用于pc终端系统到中间系统

                  |->CONS->CONP  

 

CLNS(ConnectionLess Network Service)无连接的服务

CLNP(ConnectionLess Network Protocol)无连接的网络协议(三层)

CONS(Connection Oriented Network Service)面向连接的服务

CONP(Connection Oriented Network Protocol)

 

·理论上OSPF只支持1万条路由条目,IS-IS支持2万条路由条目。

 

·IS-IS工作在3层,其协议报文直接封装在 的帧结构中。跟三层无关。

 

·要在网络中使用IS-IS,还必须要部署CLNS地址

 

·IS-IS也采用了分层的结构,分为L1和L2两种路由区域

 L1区域相当于OSPF的普通区域

 L2区域相当于OSPF的核心区域

 

·在IS-IS中路由器分为三类

 L1路由器获悉域内路由

 L2路由器获悉域间路由

 L1/2路由器获悉域内/间路由(相当于OSPF中的ABR)。

 

·普通区域需要手工配置,有区域号

 而L2区域是由其他普通区域的L1/2路由器以及L2路由器自动构成的,不需要手动去配置。

 

·在CISCO的路由器上,IS-IS的metric值分两种,窄的和宽的

 默认采用Narrow Metric:

 Max Interface Metric=63 (6bit) / Max Path Metric=1023 (10bit)

 

 Cisco路由器中所有ISIS接口默认Metric=10

 

·OSI规范定义了4种类型的路由选择操作:(0-3)

    ·在ES和IS之间建立邻接关系

  ·创建数据链路层地址和网络地址的映射。

 

    

   ·域内路由选择。

 

    

   ·域间路由选择。

 

    

  ·不同自治系统之间的路由选择,IDRP(InterDomain Routing Protocol)

  ·IDRP功能类似于BGP,Cisco不支持IDRP。

 

----------------------------------------------------------------------------------------

·与IP地址不同,CLNS地址用于整个节点而不是接口。

 路由器使用的CLNS地址被称为NSAP(Network Service Access Point)。

 

 NSAP=Area + System ID + NSEL    (8-20Bytes)

      (1-13)     (6)       (1)

 

NSEL--NSAP选择符

 

   ·AFI(Authority and Format ID 机构和格式标识符)  指定该地址的格式以及分配给该地址的机构

   47:国际代码指示符。

   49:本地管理(私有地址)

 ·IDI(Initial Domain ID)

   AFI下的子域。 

 e.g :47.0005分配给美国非军事部门 / 47.0006分配给美国国防部

 

  [IDP相当于一个IP的主类]

 

   ·HODSP(High Order DSP)

   将一个AS划分成多个Area。

   [HODSP相当于IP子网]

 ·System ID

   唯一标识某台设备。

   [System ID相当于Router-ID]

 ·NSEL(NSAP Selector)

   标识设备中的进程。

   [相当于端口号]

   在路由选择中,  ·当NSEL=00时,被称为NET(Network Entity Title)

 

·与OSPF不同,ISIS路由器只能是一个Area的成员,

 其NET地址有如下限制:

 1)同一Area的所有路由器必须使用相同的区域地址。

 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),用于区分不同接口。本地有效。

 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。

 

这四种报文都是直接封装在二层中的:

·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)

 

  在以太网中,LSP和hello报文是发向组播地址

在点到点链路上,是发向单播地址

 

·aging 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)

 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

  Broadcast 由DIS每隔10S发送一次     请求缺少的LSP/确认已收到的LSP

  P2P    只在邻居建立的时候发送一次   请求缺少的LSP/确认已收到的LSP

             之后只发送描述拓扑变化的LSP

-----------------------------------------------------------------------------------------

 

R2(config)#router isis

R2(config-router)#net 49.0001.0000.0000.0002.00

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 neighbors

 

R1#show isis hostname   看systemID和主机名的映射关系

R1#show ip protocols

R1#show clns protocol   显示路由器中特定IS-IS进程信息

R1#show isis topology   显示L1或L2的拓扑表

R1#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#debug isis adj-pack

 

R1#clear clns *

R1#clear clns neighbors

R1#clear isis *        清除数据库中所有邻居的LSP

 

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必须和其他区域路由器形成邻接关系。

   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)#isis priority 65(设置接口优先级)

 

 

R4(config-router)#passive-interface loopback 3

 

R4(config-router)#passive-interface ethernet 0

 (不发Hello包,邻居关系Down)

 

在本区域的边界路由上做汇总。(类似于OSPF的域间汇总)

 

R3(config)#router isis

R3(config-router)#summary-address 3.0.0.0 255.0.0.0 (默认L2)

 

本地产生 i su   3.0.0.0/8 [115/10] via 0.0.0.0, Null0

 

只发送汇总路由出去。

 

access-list 100 permit ip 100.1.1.0 0.0.0.0 any 只能用扩展访问列表

 

router isis

 redistribute isis ip level-2 into level-1 distribute-list 100

 

泄露的路由前面会打上ia

漏给L1的路由默认COST值是148

 

在frame-delay下运行ISIS,要按下面来做

router(config-if)#frame-delay map clns * broadcast

 

1)Link Authentication:

 R2(config)#int s0

 R2(config-if)#isis password wolf (默认L1)

 

 L1和L2类型的邻接关系需要配置各自的认证。

 

 R1(config)#router isis

 R1(config-router)#area-password ccie

 

 如果区域认证失败,仍然可以起邻居,但会导致L1 LSP交换失败,

 最终将会有某些路由器路由不完整。

 因为area-password是在L1 LSP/CSNP/PSNP中传递的。

 所以只能用来验证L1层的信息交换。

 

 R1(config)#router isis

 R1(config-router)#domain-password ccnp

 

 如果ISIS域认证失败,仍然可以起邻居,但会导致L2 LSP交换失败,

 最终将会有某些路由器路由不完整。

 因为domain-password是在L2 LSP/CSNP/PSNP中传递的。

 所以只能用来验证L2层的信息交换。

 

authentication key-chain name-of-chain [level-1 | level-2]

authentication mode {md5 | text} [level-1 | level-2]

 

·一台ISIS路由器默认最多属于3个区域。

 

 R3(config-router)#max-area-addresses (3-254)

 

 配置多个NET地址,将原来NET地址删除。

 

==================================================================================

 

 

 

 

 

 

 

 

 

 

 

 

 

 

默认路由是根椐下面的表找的下一跳:

 

 

可以将L2重分布进L1

 

 

 

=====================================

 

=============================================