ISIS 技术资料

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

isis 推荐配置
!
interface Loopback0
isis metric 1 level -2
!
interface POS5/0
description P5/0: bb1-nye-P5-0-pop1-nye-P5-0 (66.p.x.y/31 direct-cabled)(T=pbNYE)
ip router isis
isis metric 503 level -2
isis password ISISPASSWORD level -2
!
router isis
passive-interface Loopback0
maximum-paths 6
net 39.752f.0100.0014.0000.5000.1668.router.id.inIPv4.00
is-type level-2-only
metric-style wide
external overload signalling #######! Ensure that IS-IS will tear down
adjacencies when dCEF is disabled on an interface
set-overload-bit on-startup wait-for-bgp !#### Avoid placing
#######router on IGP SPF before bgp
max-lsp-lifetime 65535
lsp-refresh-interval 65000
no hello padding ########! Hello padding to mtu is deprecated
log-adjacency-changes all
为便于处障,建议添加log-adjacency-changes
--maximum-paths 6-可以改为8。

于GSR上配置ISIS external overload signaling
由于在GSR上各LC采用CEF转发机制,如果LC上的CEF一旦关闭,LC将不能进行数据包转发,只有ISIS的HELLO包可以通过,这意味着在LC上CEF DISABLE的时候,即使在网络数据不能转发的情况下,ISIS邻居关系依然保持,这样造成路由依然存在,数据包不能转发的问题,整台路由器成为一个“黑洞”,为了避免这个问题,可以采用ISIS的external overload signalling,
[configuration]
router isis
external overload signalling
引起LC上CEF关闭的情况包括设备内存耗尽.......
一、IS-IS 协议概述
IS-IS域内路由协议是一类比较常用的域内路由协议,其全称为IntermediateSystem-Intermediate System Intra-domain Routing Protocol,即中间系统到中间系统的域内路由协议。

IS-IS路由协议是一种类似于OSPF的域内链路状态路由协议。

IS-IS路由协议的主要功能是在同一个自治域内交换路由信息和转发数据包。

IS-IS域内路由协议最初源于ISO DP 10589这一国际标准,发布于1990年2月随后这一标准被IETF 所接受,成为RFC1142《OSI IS-IS Intra-domain Routing Protocol》。

RFC1142即ISO DP 10589中所描述的IS-IS域内路由协议尚基于ISO(International Standards Organization,国际标准化组织)所提出的OSI参考模型(Open System Interconnection Reference Model),仅支持ISO 8473即无连接网络协议(Connectionless Network Protocol,CLNP)。

其后,在1990年12月,IETF在RFC1142的基础上发布了RFC1195 《Use of OSI IS-IS for Routing in TCP/IP and Dual Environments》,RFC1195提出了一种集成IS-IS域内路由协议(Integrated IS-IS),该协议同时支持基于OSI参考模型和TCP/IP协议族的网络环境,它可以运行在纯IP协议环境,纯OSI环境和两者混合的路由域内,由于它能够运行在OSI和TCP/IP两类协议族中,又被称为是Dual IS-IS。

由于OSI协议族逐渐退出了历史舞台,现在所提及的IS-IS域内路由协议往往是集成IS-IS域内路由协议。

在最初,IS-IS域内路由协议适用于传送ISO CLNP数据包的,所以IS-IS域内路由协议使用ISO NSAP (Network Service Access Point)地址格式,长度共20个字节。

在集成IS-IS域内路由协议继承了大量原始规范中的概念,其中包括仍旧延续使用ISO NSAP地址作为网络节点(端系统和中间系统)的地址。

所以,即使在集成IS-IS域内路由协议工作在纯IP网络环境中时,路由器仍然必须使用ISO NSAP地址或称为NET(Network Entity Title),它由三部分构成:
1) 区域识别号码(Area Identifier),5到18个字节。

2) 系统识别号码(System Identifier,ID),1到8个字节。

3) NSAP识别号码(NSAP-Selector,SEL),1个字节。

具体见附件图,图l中颜色标识:
兰色部分为“区域识别号码”
红色部分为“系统识别号码”
绿色部分为“NSAP识别号码”
其中AFI、IDI的意义详见RFC
其中,在同一区域的所有路由器的区域识别号码是一样的,每个IS-IS路由器有一个独一无二的系统识别号码,最后一项NSAP-Selector制的是网络服务的使用者,于TCP协议中的端口号(port)相似。

当NSAP-Selector为十六进制00时,这三部分合起来的号码又成为路由器的NET(Network Entity Title)。

NSAP地址的长度最小为8个字节,最大为20字节。

另:每个路由器的NAT标识并不是唯一的,多NAT用来做区域的合并、分割和修复详见IS-IS协议补充文档。

另:每个路由器的NAT标识并不是唯一的,多NAT用来做区域的合并、分割和修复
详见IS-IS协议补充文档。

IS-IS域内路由协议规范中,将网络节点分为两大类:
1) 端系统(End System,ES),就是指计算机主机,工作站或服务器。

其特点是仅发送或接收数据包,不对数据包进行转发。

2) 中间系统(Intermediate System,IS),就是路由器,可以互相之间传送路由信息,也可转发端系统通信的数据包。

IS-IS域内路由协议使路由器收集并处理在同一路由域中的路由信息。

在ISO CLNP网络环境中,路由器可以使用ES-IS协议发现与自己直接连接的端系统;在IP网络环境中,路由器则通过ARP协议发现与自己直接连接的端系统。

通过IS-IS路由协议与ES-IS协议或ARP协议之间的配合,路由器便可以完成转发数据包的任务。

IS-IS路由协议采用分层结构(Hierarchical),将整个自治域分为两层。

整个IS-IS路由域被划分成很多区域(area),这里区域(area)的概念与OSPF中的十分相似通过区域的划分,增加了交换路由信息和转发数据包的效率。

***(IS-IS层次介绍图见附件图)****
在第一层,即一个IS-IS区域(area)内,其网络环境必须为纯IP或纯ISO,不能混用两种协议。

在第二层,则可以同时存在IP和ISO两种环境。

属于同一区域内,并且执行第1层路由功能的所有路由器,成为第1层路由器或者第1层中间系统(Level 1 IS)。

在ISO CLNP网络环境中,第1层路由功能是指收集区域内所有路由器与端系统的身份标识,以及它们之间的邻近关系。

位于不同区域内的路由器通过第2层路由功能交换路由信息,执行第2层路由功能的路由器被称为第2层路由器或第2层中间系统(Level 2 IS)。

在ISO CLNP网络环境中,第2层路由器交换彼此的区域号码。

在IP网络环境中,同一区域内的IP地址通过第1层路由功能在同一区域内交换,跨区域的IP地址则通过第2层路由器交换。

在IS-IS路由协议中,中间系统的角色可能是第1层路由器或第2层路由器,也可能同时为第1层和第2层路由器。

同时具有第1层和第2层路由功能的路由器就是区域边界路由器,它负责将2个或更多区域连接起来,所有的第2层路由器必须通过实体直接连接。

目前的IS-IS规范只要求第2层路由器提供本身自治域对外部的连接。

二、建立以及维护邻接关系
当路由器的局域网(LAN)接口启用IS-IS路由协议以后,路由器会立刻送出IS-IS Hello包,这个包中
的内容包括该路由器的系统识别号码(System Identifier,ID)和所在区域的区域识别号码(Area Identifier),这两者恰好构成该路由器的NET。

这个Hello包以组播的方式发送给所在LAN上的所有IS-IS路由器,并开始监听所有的End System Hello包(ESH)、Intermediate System Hello包(ISH)和IS-IS Hello包,从
而能够发现该链路上的所有网络节点。

路由器之间通过交换第1层局域网IS-IS Hello包以建立第1层邻近关系,通过交换第2层局域网IS-IS Hello包来建立第2层邻近关系,但不可能通过同一个Hello包同时建立两种邻近关系。

当路由器收到Hello包时,会检查是否已经与Hello包的发送方建立邻近关系。

如果邻近关系已经建立,该邻近关系的保持定时器被重至;如果尚未建立邻近关系,就会启动建立邻近关系的程序,将邻近关系对应的状态定为“初始(initializing)”,同时路由器会根据Hello包中的邻近关系类型决定该邻近关系的类型为第1层还是第2层,此后,回送一个Hello包给对方,等再次收到对方回馈的Hello包时,邻近关系就被正式建立起来,状态变为“启动(up)”。

邻近关系的相关信息以可选字段(TLV)的形式包含在Hello包中。

***(详细TLV参见RFC1195)***
在局域网(LAN)网络环境中,路由器会将网络接口的MAC地址放入Hello包当中,也会将所有邻居的MAC 地址保存在数据库当中,方便进行邻近关系的双向确认。

通过将路由器自身的网络接口MAC地址(在ISO 标准中有被称为SNAP,SubNetworkPoints of Attachment)保存在特定的可选字段(TLV)中,并在Hello 包中发送出去。

一旦接收到来自其他路由器的Hello包中明确指出自己的网络接口MAC地址包含在对方的邻近关系列表中,则路由器会认为邻近关系已经启动。

包含在Hello包中的邻近关系列表包含状态为“初始(initializing)”和“启动(up)”的所有邻近关系。

处于“初始(initializing)”状态的邻近关系,如果一直未能收到对方包含有自身MAC地址邻近关系的Hello包,那么该条邻近关系的有效时间超时后,该条邻近关系会被路由器删除。

一旦邻近关系建立,就会进行指定路由器选举。

选举的依据是在Hello包中包含的优先级字段,优先级大者被选为指定路由器。

当优先级相等时,会采用比较MAC地址的方式进行进一步比较,MAC地址值较大者当选为指定路由器。

指定路由器需要承担两个责任:
1:指定路由器需要制造和更新伪节点(Pseudo Node)的链路状态数据包(LSP)内容包含于所有其他路由器的链路信息;
2:指定路由器需要定时发送序号包(SNP,Sequence Number PDU)给所有的路由器。

当有新的路由器加入、原由邻近关系改变或超时事件发生等情况时,指定路由器就会发布新的伪节点链路状态数据包给所有的路由器。

IS-IS路由器会每隔一定时间发送Hello包,用来向其他路由器表示该路由器仍在运转。

Hello包中的有效时间则表明该Hello包携带信息的有效时间,当其他路由器超时一定时间仍然没有接收到新的Hello包,其他路由器会认为邻近关系已经中断。

在周期性发送Hello包的同时,出现以下情况时,IS-IS路由器会立刻发送Hello包。

1:网络拓扑发生变化,从而导致Hello包所携带的数据产生了变化。

这是IS-IS路由器会立刻发送一个携带
新数据的Hello包,起到立刻刷新网络拓扑的作用。

2:指定路由器需要重新选举时,所有IS-IS路由器都会立刻发送Hello包,以便能够立刻决定指定路由器由哪个路由器来担当。

三:交换路由信息
指定路由器使用洪泛(Flooding)的方式发送链路状态数据包(LSP)。

完整序号包(CSNP,Complete SNP)则用来通知其他路由器该路由器中所有链路状态数据包(LSP)的有效时间等相关信息。

部分序号包(PSNP,Partial SNP)则是用来向指定路由器索取某一链路状态路由信息,以及回送确认接收到某一个链路状态数据包(LSP)。

在建立邻近关系之后,路由器使用洪泛的方式发送链路状态数据包(LSP)与同一局域网上的其他路由器交换路由信息,并由序号包来控制包的信息更新和接收发送操作。

在与其他路由器交换路由信息时,IS-IS 路由协议将多点传播的链路,例如以太网,当作一个网路节点,称之为伪节点(Pseudo Nod)伪节点包含有当前局域网所有的链路信息,所有的路由器都与这个虚拟的节点交换信息即可获取伪节点所在局域网的链路信息,从而不必与该局域网内所有的路由器进行路由信息交换来构建网路拓扑信息。

当有新的路由器加入局域网中时,当它发送的Hello包中的优先级字段高于当前的指定路由器,则新的路由器会取而代之,成为新的指定路由器,承担相应的义务,而原来的指定路由器会放弃义务。

******下面是路由交换的过程***具体路由交换图例见附加件***
1、双方建立邻居关系后,DIS也同时选举出来(发送2 个Hello报文后),双方开始向对端发送本地的链路状态报文(LSP)。

为了保证同步和减少报文流量,每个路由器并不与广播网上每一台路由器同步数据库,而是只与DIS同步。

LSP报文的序列号从1开始,到达最大值后,IS-IS进程停止至少21分钟(maxAge+ZeroAgeLifetime)以使其他路由器上的LSP超时并且被删除。

2、当DIS选举出来并且经过交换LSP报文后,DIS将发送CSNP报文,该报文只包括本地数据库中LSP 摘要信息(并不包含实际LSP),每一条摘要信息用LSPID 标识一条LSP。

3、当接收到CSNP报文后,将和本地数据库中的LSP 对比,如果有缺少的那么将用PSNP向DIS请求,如果本地有更多的LSP,则直接发送该LSP给DIS。

4、当DIS接收到PSNP后,发送该PSNP请求的LSP来同步数据库。

经过一定时间后,整个网络的LSDB 完全同步,网络处于稳定状态,只定时发送hello报文。

5、当有新的链路建立或者原有的链路断开时,由发现该事件的IS生成LSP并在area内洪泛。

当一台路由器接收到一个新的LSP时,它将该LSP洪泛到它的除了发送端之外的所有邻居。

在点到点的网络中,接收方通过PSNP报文确认接收到新的LSP。

在LAN中,就不通过明确的PSNP报文确认,因为如果在广播网络中对一个IS发出的LSP报文其他所有路由器都一一确认,将产生很大的不必要的流量,所以广播网络中采用的方法是:定期(每隔3秒)DIS将发送一个CSNP报文,其他路由器对比该报文,如果发现自己缺少哪条,就发送PSNP报文向DIS请求。

如果本地有更多的LSP,则直接发送该LSP给DIS。

6、即使在一段时间内链路状态没有发生变化,每个IS也会定期的生成LSP报文(一般是每隔1200秒),注意这样的LSP的内容是与序号在它前面的LSP的内容一致的,报文内部的路由信息列表最好保持顺序也一致,其他IS收到后可以直接按顺序比较,比较完毕后没有变化可以避免重新进行路由计算。

如果area 内部的其他路由器在超时间隔内没有收到来自某一路由器的更新,那么该LSP将再被继续保留在链路状态数据库中1分钟(也就是ZeroAgeLifetime),如果在这一分钟内还是没有收到LSP,则将它删掉。

四:基本命令汇总
***具体命令的作用我就不敲上来了,参见CISCO手册吧~:)*** [no] router isis [area-tag]
[no] net network-entity-title
[no] is-type (level-1|level-1-2|level-2-only)
[no] metric-style (narrow|wide)
[no] clns host <hostname> <NSAP>
[no] hostname dynamic
[no] area-password WORD
[no] domain-password WORD
[no] lsp-gen-interval [level-1|level-2] <1-120>
[no] lsp-lifetime [level-1|level-2] <380-65535>
[no] spf-interval [level-1|level-2] <1-120>
[no] (ip|ipv6) router isis [area-tag]
[no] isis circuit-type (level-1|level-2|level-2-only)
[no] isis csnp-interval <0-65535> [level-1|level-2]
[no] isis hello-interval (<10-4294967>|minimal) [level-1|level-2] [no] isis hello-multiplier <3-1000> [level-1|level-2]
[no] isis metric <0-63>
[no] isis password WORD
[no] isis priority <0-127> [level-1|level-2]
[no] redistribute [connect|static|ripng|bgp|ospf]
show isis database [detail]
show isis hostname
show isis neighbors [detail]
show isis topology [level-1 | level-2]
[no] debug isis adj-packets
[no] debug isis checksum-errors
[no] debug isis events
[no] debug isis local-updates
[no] debug isis protocol-errors
[no] debug isis route-events
[no] debug isis snp-packets
[no] debug isis spf-events
[no] debug isis spf-statistics
[no] debug isis spf-triggers
[no] debug isis update-packets
***************************************************************。

相关文档
最新文档