IS-IS路由协议:
在iso规范中,一个路由器就是一个is(中间系统),一个主机就是一个es(末端系统),提供is和es之间通信的是es-is协议,提供is和is之间通信的协议就是路由协议叫is-is。
主要应用于大的isp的网络中,更适合IPV6,非常稳定。比ospf网络更简单,ospf网络仅支持ip,不支持osi,而集成的is-is协议支持osi和ip。它是针对于igp(internal gatway protocol)而设计的,收敛快速,对路由器的内存占用很少。
Is-is是一种链路状态路由协议,它也采用spf(shortest path first)算法。支持两个路由层次。级别一的层次,交换本区域内的拓扑信息,根据拓扑来计算区域内的路由信息。级别二的层次。交换两个区域间的前缀信息,负责区域间的路由,应用与is-is主干上。
在ospf网络中,一个abr router属于两个区域,区域的边界是abr router;在is-is网络中,以链路为边界,一个L1/L2路由器属于区域内部。在is-is网络中,当一个路由器和其他区域的路由器相连时,它就是L1/L2路由器;当一个路由器不和其他区域的路由器相连时它就是一个L1路由器。L1路由器负责区域内部的路由的计算,L2负责区域间的路由计算。
在is-si网络中,interface的metric值是用6个bit位来描述的,最大不能超过63;用10个bit位来描述路径的metric。有四种类型的metric值,default,delay,expense,error。而cisco的ios仅支持default。路由器缺省链路认为的metric是10。
NSAP(network service access point)网络服务访问点:
Nsap 地址的构成:
Variable-length area address(afi+idi+high order dsp)+system id+nsel
是osi协议的的地址表示方法, 不同的系统中的的他的nsap地址的格式是不一样的。Cisco把nsap地址分为三部分,变长区域id,系统id,nsel。其中变长区域id用于标识不同的区域,而系统id用于在系统内标识es或is,nsel是个服务标识,它的长度最小是8个字节,最长是20个字节。在路由器上,它的nsel值被设为0,这就构成了router的独特的地址:net。其中afi值围49的nsap值为私有nsap,而公有的nsap地址要到经过申请才能使用。
在一个is-is网络中,通信只能在同一区域中的is和es之间进行。区域id相当于ip网络中的网络号,系统id相当于ip网络中的主机id。数据在L1类型的路由器中路由的过程中,路由器先比较区域id,若和自己的区域id不同则把它发往离自己最近的L1/L2路由器,若相同则查找自己L1数据库中的系统id。
Osi is-is pdu:
Is-is的协议数据单元封装在数据链路层。包括hello,LSP(link status package),PSNP(partial sequence number PDU),CSNP(complete sequence number PDU)。其中hello数据包分为三类,esh 是es发出的hello包;ish是is发给es的hello包;iih是is发给is的hello包。路由器用lsp来描述自己的状态,lsp的头部包含pdu类型,长度,lsp id,队列号,剩余的生存时间,es的邻居和is的邻居。Lsp用顺序号来标识lsp的版本和进行同步,这个值从1开始增加。L1的lsp在区域内洪泛。L2的lsp在L2的子域内进行洪泛。数据比较大的pdu先进行分割再独立的进行洪泛。在is-is网络中,通过周期性的发送csnp数据包来保持lsdb的同步。
Net地址的规划:
即使在一个ip环境的网络中实施,is-is网络的clns(connectionless network services路由无连接服务)参数和net的规划也是必须的。
Osi区域路由的转发表:
当is-is网络中路由器的数据库同步完成后,会运行在lsdb上运行spf算法,进而产生spf tree。根据这个树产生到一目的地址的最优路径,并把这条路由放到转发表中。
Show clns 查看clns信息
Show clns protocol [tag] 查看clns的详细信息
Show clns interface [type number]查看接口的详细clns的信息
Show clns neighbors [type number] [detail]查看es和is的邻居
Show isis route 查看is-is的路由信息
Show clns route 查看clns路由信息
Show isis topology 查看is-is的拓扑结构
Show isis database 查看lsdb数据库
�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D
Is-is的配置步骤:
Step 1:定义区域,规划net地址。指定运行is-is的接口
Step 2:在路由器上enable is-is
Step 3:配置net地址
Step 4:在适当的接口上打开is-is功能
Router config#router isis [tag] 激活isis协议,tag用于指定进程名字。当需要进行clns路由时需要用clns routing 命令来激活clns包的路由功能。
Config-router#net network-entity-title 定义net地址
Config-if#ip router isis [tag] 激活ip的isis功能
Config-if#clns router isis [tag]激活clns的功能
例:
配置纯ip环境的isis路由协议
Router isis
Netr 49.0001.0000.0000.0002.00
Interface Ethernet 0
Ip add 10.1.1 .1 255.255.255.0
Ip router isis
Inter serial 0
Ip add 10.1.2 .1 255.255.255.0
Ip router isis
�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D
Router:
Config-fi#isis circuit-type {level-1 | level-1-2 | lener-2} 指定接口的类型,缺省状态是L1/L2
Config-if#isis metric metric {level-1 | level-2}指定接口的metric值,缺省是10,允许范围1~63。
Router 1�D�D�D�D�D�D�D�D�D�D�D�Drouter 5
/| area 49.0001 L2 area 49.0002
L1 / |L1
/ |
Router 1 router 4 area 49.0001
△ Area 49.0001
Configure:
Hostname r1
Riyter isis
Net 49.0001.0000.0000.0001.00
Is-type lener-1
Int s0
Ip router isis
Isis metric 35 level-1
Int s1
Ip router isis
Isis metric 35 level-1
Hostname r2
Router isis
Net 49.0001.0000.0000.0002.00
Int e0
Ip router isis
Isis circuit-type level-2-only
Int s0
Ip router isis
Isis circuit-type lenel-1
Isis metric 35 level-1
Int s1
Ip route isis
Isis circuit-type level-1
Isis metric 35 level-1
�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D�D
Router config-router#summary-address prefix mask [level-1 | nlevel-2 | level-1-2]定义路由汇总,缺省级别是 L2
例:
Summary-address 10.3.2 .0 255.255.254.0 level-2把10.3.2.0汇总为L2类路由器的路由信息。