05-IS-IS配置
本章节下载: 05-IS-IS配置 (1.70 MB)
目 录
1.4.3 配置路由器的Level级别和接口的链路邻接关系类型
1.7.2 配置IS-IS通告给邻居的链路开销保持最大值的持续时间
1.7.8 配置IS-IS对接收的路由是否加入IP路由表进行过滤
1.7.11 配置允许设备将IS-IS链路状态信息发布到BGP
1.11.1 配置在P2P接口上建立邻接关系必须在同一网段的检查功能
1.12.4 配置IS-IS记录邻居关系断开的故障检测信息的最大个数
IS-IS属于IGP(Interior Gateway Protocol,内部网关协议),用于自治系统内部。IS-IS是一种链路状态协议,使用SPF(Shortest Path First,最短路径优先)算法进行路由计算。
· IS(Intermediate System):中间系统。相当于TCP/IP中的路由器,是IS-IS协议中生成路由和传播路由信息的基本单元。在下文中IS和路由器具有相同的含义。
· ES(End System):终端系统。相当于TCP/IP中的主机系统。ES不参与IS-IS路由协议的处理,ISO使用专门的ES-IS协议定义终端系统与中间系统间的通信。
· RD(Routing Domain):路由域。在一个路由域中多个IS通过相同的路由协议来交换路由信息。
· Area:区域,路由域的细分单元,IS-IS允许将整个路由域分为多个区域。
· LSDB(Link State DataBase):链路状态数据库。网络内所有链路的状态组成了链路状态数据库,在每一个IS中都至少有一个LSDB。IS使用SPF算法,利用LSDB来生成自己的路由。
· LSPDU(Link State Protocol Data Unit):链路状态协议数据单元,简称LSP。在IS-IS中,每一个IS都会生成LSP,此LSP包含了本IS的所有链路状态信息。
· NPDU(Network Protocol Data Unit):网络协议数据单元,是OSI中的网络层协议报文,相当于TCP/IP中的IP报文。
· DIS(Designated IS):广播网络上选举的指定中间系统,也可以称为指定IS。
· NSAP(Network Service Access Point):网络服务接入点,即OSI中网络层的地址,用来标识一个抽象的网络服务访问点,描述OSI模型的网络地址结构。
如图1-1所示,NSAP由IDP(Initial Domain Part)和DSP(Domain Specific Part)组成。IDP相当于IP地址中的主网络号,DSP相当于IP地址中的子网号和主机地址。
IDP部分是ISO规定的,它由AFI(Authority and Format Identifier)和IDI(Initial Domain Identifier)两部分组成:
· AFI表示地址分配机构和地址格式。
· IDI用来标识域。
DSP由HO-DSP(High Order Part of DSP)、SystemID和SEL三个部分组成:
· HO-DSP用来分割区域。
· SystemID用来区分主机。
· SEL有时也写成N-SEL(NSAP Selector),它的作用类似IP中的“协议标识符”,用于指示服务类型,不同的传输协议对应不同的SEL。
IDP和DSP的长度都是可变的,NSAP总长最多是20个字节,最少8个字节。
图1-1 IS-IS协议的地址结构示意图
IS-IS地址结构由以下三部分组成:
· 区域地址
IDP和DSP中的HO-DSP一起,既能够标识路由域,也能够标识路由域中的区域,被称为区域地址。两个不同的路由域中不允许有相同的区域地址。
一般情况下,一台路由器只需要配置一个区域地址,且同一区域中所有节点的区域地址都要相同。为了支持区域的平滑合并、分割及转换,一台路由器最多可配置3个区域地址。
· System ID
System ID用来在区域内唯一标识主机或路由器。它的长度固定为48比特。
在实际应用中,一般使用Router ID与System ID进行对应。假设一台路由器使用接口Loopback0的IP地址168.10.1.1作为Router ID,则它在IS-IS使用的System ID可通过如下方法转换得到:
¡ 将IP地址168.10.1.1的每一部分都扩展为3位,不足3位的在前面补0;
¡ 将扩展后的地址168.010.001.001重新划分为3部分,每部分由4位数字组成,得到的1680.1000.1001就是System ID。
实际System ID的指定可以有不同的方法,但要保证能够唯一标识主机或路由器。
· SEL
SEL用于指示服务类型,不同的传输协议对应不同的SEL。它的长度固定为8比特。在IP中,SEL均为00。
NET(Network Entity Title,网络实体名称)指示的是IS本身的网络层信息,不包括传输层信息,可以看作是一类特殊的NSAP,即SEL为0的NSAP地址。因此,NET的长度与NSAP的相同,为8~20个字节。
NET由三部分组成:
· 区域ID:它的长度可变的,为1~13个字节。
· System ID:用来在区域内唯一标识主机或路由器,它的长度固定为6个字节。
· SEL:为0,它的长度固定为1个字节。
例如NET为:ab.cdef.1234.5678.9abc.00,则其中区域ID为ab.cdef,System ID为1234.5678.9abc,SEL为00。
通常情况下,一台路由器配置一个NET即可,当区域需要重新划分时,例如将多个区域合并,或者将一个区域划分为多个区域,这种情况下配置多个NET可以在重新配置时仍然能够保证路由的正确性。由于一台路由器最多可配置3个区域地址,所以最多也只能配置3个NET。在配置多个NET时,必须保证它们的System ID都相同。
为了支持大规模的路由网络,IS-IS在路由域内采用两级的分层结构。一个大的路由域通常被分成多个区域(Areas)。一般来说,我们将Level-1路由器部署在区域内,Level-2路由器部署在区域间,Level-1-2路由器部署在Level-1路由器和Level-2路由器的中间。
Level-1路由器负责区域内的路由,它只与属于同一区域的Level-1和Level-1-2路由器形成邻居关系,维护一个Level-1的LSDB,该LSDB包含本区域的路由信息,到区域外的报文转发给最近的Level-1-2路由器。
属于不同区域的Level-1路由器不能形成邻居关系。
Level-2路由器负责区域间的路由,可以与同一区域或者其它区域的Level-2和Level-1-2路由器形成邻居关系,维护一个Level-2的LSDB,该LSDB包含区域间的路由信息。所有Level-2路由器和Level-1-2路由器组成路由域的骨干网,负责在不同区域间通信,骨干网必须是物理连续的。
Level-2路由器是否形成邻居关系与区域无关。
同时属于Level-1和Level-2的路由器称为Level-1-2路由器,可以与同一区域的Level-1和Level-1-2路由器形成Level-1邻居关系,也可以与同一区域或者其他区域的Level-2和Level-1-2路由器形成Level-2的邻居关系。Level-1路由器必须通过Level-1-2路由器才能连接至其他区域。Level-1-2路由器维护两个LSDB,Level-1的LSDB用于区域内路由,Level-2的LSDB用于区域间路由。
图1-2为一个运行IS-IS协议的网络,其中Area 1是骨干区域,该区域中的所有路由器均是Level-2路由器。另外4个区域为非骨干区域,它们都通过Level-1-2路由器与骨干路由器相连。
图1-2 IS-IS拓扑结构图之一
图1-3是IS-IS的另外一种拓扑结构图。在这个拓扑中,并没有规定哪个区域是骨干区域。所有Level-2路由器和Level-1-2路由器构成了IS-IS的骨干网,它们可以属于不同的区域,但必须是物理连续的。IS-IS的骨干网(Backbone)指的不是一个特定的区域。
图1-3 IS-IS拓扑结构图之二
IS-IS不论是Level-1还是Level-2路由,都采用SPF算法,分别生成最短路径树(Shortest Path Tree,SPT)。
通常情况下,区域内的路由通过Level-1的路由器进行管理。所有的Level-2路由器和Level-1-2路由器构成一个Level-2区域。因此,一个IS-IS的路由域可以包含多个Level-1区域,但只有一个Level-2区域。
Level-1区域必须且只能与Level-1-2区域相连,不同的Level-1区域之间并不相连。
Level-1区域内的路由信息通过Level-1-2路由器发布到Level-2区域,因此,Level-2路由器知道整个IS-IS路由域的路由信息。但是,在缺省情况下,Level-2路由器并不将自己知道的其它Level-1区域以及Level-2区域的路由信息发布到Level-1区域。这样,Level-1路由器将不了解本区域以外的路由信息,Level-1路由器只将去往其它区域的报文发送到最近的Level-1-2路由器,所以可能导致对本区域之外的目的地址无法选择最佳的路由。
为解决上述问题,IS-IS提供了路由渗透功能,使Level-1-2路由器可以将己知的其它Level-1区域以及Level-2区域的路由信息发布到指定的Level-1区域。
IS-IS只支持两种类型的网络,根据物理链路不同可分为:
· 广播链路:如Ethernet、Token-Ring等。
· 点到点链路:如PPP、HDLC等。
对于NBMA(Non-Broadcast Multi-Access)网络,如ATM,需对其配置子接口,并将子接口类型配置为点到点网络或广播网络。IS-IS不能在点到多点(Point-to-MultiPoint,P2MP)链路上运行。
在广播网络中,IS-IS需要在所有的路由器中选举一个路由器作为DIS。
Level-1和Level-2的DIS是分别选举的,用户可以为不同级别的DIS选举设置不同的优先级。DIS优先级数值越高,被选中的可能性就越大。如果优先级最高的路由器有多台,则其中SNPA(Subnetwork Point of Attachment,子网连接点)地址(广播网络中的SNPA地址是MAC地址)最大的路由器会被选中。不同级别的DIS可以是同一台路由器,也可以是不同的路由器。
与OSPF的不同点:
· 优先级为0的路由器也参与DIS的选举;
· 当有新的路由器加入,并符合成为DIS的条件时,这个路由器会被选中成为新的DIS,此更改会引起一组新的LSP泛洪。
在IS-IS广播网中,同一网段上的同一级别的路由器之间都会形成邻接关系,包括所有的非DIS路由器之间也会形成邻接关系。如图1-4所示。
图1-4 IS-IS广播网的DIS和邻接关系
DIS用来创建和更新伪节点(Pseudonodes),并负责生成伪节点的LSP,用来描述这个网络上有哪些路由器。
伪节点是用来模拟广播网络的一个虚拟节点,并非真实的路由器。在IS-IS中,伪节点用DIS的System ID和一个字节的Circuit ID(非0值)标识。
使用伪节点可以简化网络拓扑,减少SPF的资源消耗。
IS-IS广播网络上所有的路由器之间都形成邻接关系,但LSDB的同步仍然依靠DIS来保证。
IS-IS报文是直接封装在数据链路层的帧结构中的。PDU(Protocol Data Unit,协议数据单元)可以分为两个部分,报文头和变长字段部分。其中报文头又可分为通用报头和专用报头。对于所有PDU来说,通用报头都是相同的,但专用报头根据PDU类型不同而有所差别,如图1-5所示。
图1-5 PDU格式
表1-1 PDU类型对应关系表
|
类型值 |
PDU类型 |
简称 |
|
15 |
Level-1 LAN IS-IS Hello PDU |
L1 LAN IIH |
|
16 |
Level-2 LAN IS-IS Hello PDU |
L2 LAN IIH |
|
17 |
Point-to-Point IS-IS Hello PDU |
P2P IIH |
|
18 |
Level-1 Link State PDU |
L1 LSP |
|
20 |
Level-2 Link State PDU |
L2 LSP |
|
24 |
Level-1 Complete Sequence Numbers PDU |
L1 CSNP |
|
25 |
Level-2 Complete Sequence Numbers PDU |
L2 CSNP |
|
26 |
Level-1 Partial Sequence Numbers PDU |
L1 PSNP |
|
27 |
Level-2 Partial Sequence Numbers PDU |
L2 PSNP |
Hello报文:用于建立和维持邻居关系,也称为IIH(IS-to-IS Hello PDUs)。其中,广播网中的Level-1路由器使用Level-1 LAN IIH,广播网中的Level-2路由器使用Level-2 LAN IIH,点到点网络中的路由器则使用P2P IIH。
LSP报文:用于交换链路状态信息。LSP分为两种:Level-1 LSP和Level-2 LSP。Level-1路由器传送Level-1 LSP,Level-2路由器传送Level-2 LSP,Level-1-2路由器则可传送以上两种LSP。
SNP(Sequence Number PDU,时序报文)通过描述全部或部分数据库中的LSP来同步LSDB,从而维护LSDB的完整和同步。
SNP包括CSNP(Complete Sequence Number PDU,全时序报文)和PSNP(Partial Sequence Number PDU,部分时序报文),进一步又可分为Level-1 CSNP、Level-2 CSNP、Level-1 PSNP和Level-2 PSNP。
CSNP包括LSDB中所有LSP的概要信息,从而可以在相邻路由器间保持LSDB的同步。在广播网络上,CSNP由DIS定期发送(缺省的发送周期为10秒);在点到点链路上,CSNP只在第一次建立邻接关系时发送。
PSNP只列举最近收到的一个或多个LSP的序列号,它能够一次对多个LSP进行确认。当发现LSDB不同步时,也用PSNP来请求邻居发送新的LSP。
PDU中的变长字段部分是多个CLV(Code-Length-Value)三元组。其格式如图1-6所示:
图1-6 CLV格式
不同PDU类型所包含的CLV是不同的,如表1-2所示。
表1-2 PDU类型和包含的CLV名称
|
CLV Code |
名称 |
所应用的PDU类型 |
|
1 |
Area Addresses |
IIH、LSP |
|
2 |
IS Neighbors(LSP) |
LSP |
|
4 |
Partition Designated Level-2 IS |
L2 LSP |
|
6 |
IS Neighbors(MAC Address) |
LAN IIH |
|
7 |
IS Neighbors(SNPA Address) |
LAN IIH |
|
8 |
Padding |
IIH |
|
9 |
LSP Entries |
SNP |
|
10 |
Authentication Information |
IIH、LSP、SNP |
|
128 |
IP Internal Reachability Information |
LSP |
|
129 |
Protocols Supported |
IIH、LSP |
|
130 |
IP External Reachability Information |
L2 LSP |
|
131 |
Inter-Domain Routing Protocol Information |
L2 LSP |
|
132 |
IP Interface Address |
IIH、LSP |
|
222 |
MT-ISN |
LSP |
|
229 |
M-Topologies |
IIH,、LSP |
|
235 |
MT IP. Reach |
LSP |
|
237 |
MT IPv6 IP. Reach |
LSP |
其中,Code值从1到10的CLV在ISO 10589中定义(有2类未在上表中列出),128到132的CLV在RFC 1195中定义,多拓扑相关CLV在RFC 5120中定义。
IS-IS(Intermediate System-to-Intermediate System,中间系统到中间系统)支持多种网络层协议,其中包括IPv6协议,支持IPv6协议的IS-IS路由协议又称为IPv6 IS-IS动态路由协议。
IETF中规定了IS-IS为支持IPv6所新增的内容,主要是新添加的支持IPv6协议的两个TLV(Type-Length-Values)和一个新的NLPID(Network Layer Protocol Identifier,网络层协议标识符)。
TLV是LSP(Link State PDU,链路状态协议数据单元)中的一个可变长字段值。新增的两个TLV分别是:
· IPv6 Reachability:类型值为236(0xEC),通过定义路由信息前缀、度量值等信息来说明网络的可达性。
· IPv6 Interface Address:类型值为232(0xE8),它对应于IPv4中的“IP Interface Address”TLV,只不过把原来的32比特的IPv4地址改为128比特的IPv6地址。
NLPID是标识网络层协议报文的一个8比特字段,IPv6的NLPID值固定为142(0x8E)。
与IS-IS相关的协议规范有:
· ISO 8348:Ad2 Network Services Access Points
· ISO 9542:ES-IS Routing Protocol
· ISO 10589:ISO IS-IS Routing Protocol
· RFC 1195:Use of OSI IS-IS for Routing in TCP/IP and Dual Environments
· RFC 2763:Dynamic Hostname Exchange Mechanism for IS-IS
· RFC 2966:Domain-wide Prefix Distribution with Two-Level IS-IS
· RFC 2973:IS-IS Mesh Groups
· RFC 3277:IS-IS Transient Blackhole Avoidance
· RFC 3358:Optional Checksums in ISIS
· RFC 3359:Reserved Type, Length and Value (TLV) Codepoints in Intermediate System to Intermediate System
· RFC 3563:Cooperative Agreement Between the ISOC/IETF and ISO/IEC Joint Technical Committee 1/Sub Committee 6 (JTC1/SC6) on IS-IS Routing Protocol Development
· RFC 3373:Three-Way Handshake for IS-IS Point-to-Point Adjacencies
· RFC 3567:Intermediate System to Intermediate System (IS-IS) Cryptographic Authentication
· RFC 3719:Recommendations for Interoperable Networks using Intermediate System to Intermediate System (IS-IS)
· RFC 3786:Recommendations for Interoperable IP Networks using Intermediate System to Intermediate System (IS-IS)
· RFC 3787:Recommendations for Interoperable IP Networks using IS-IS
· RFC 3847:Restart signaling for IS-IS
· RFC 4444:Management Information Base for Intermediate System to Intermediate System (IS-IS)
· RFC 4972:Routing Extensions for Discovery of Multiprotocol (MPLS) Label Switch Router (LSR) Traffic Engineering (TE) Mesh Membership
· RFC 5029:Definition of an IS-IS Link Attribute Sub-TLV
· RFC 5089:IS-IS Protocol Extensions for Path Computation Element (PCE) Discovery
· RFC 5130:A Policy Control Mechanism in IS-IS Using Administrative Tags
· RFC 5301:Dynamic Hostname Exchange Mechanism for IS-IS
· RFC 5302:Domain-Wide Prefix Distribution with Two-Level IS-IS
· RFC 5303:Three-Way Handshake for IS-IS Point-to-Point Adjacencies
· RFC 5304:IS-IS Cryptographic Authentication
· RFC 5305:IS-IS Extensions for Traffic Engineering
· RFC 5306:Restart Signaling for IS-IS
· RFC 5308:Routing IPv6 with IS-IS
· RFC 5310:IS-IS Generic Cryptographic Authentication
· RFC 5311:Simplified Extension of Link State PDU (LSP) Space for IS-IS
· RFC 6165:Extensions to IS-IS for Layer-2 Systems
· RFC 6213:IS-IS BFD-Enabled TLV
· RFC 6232:Purge Originator Identification TLV for IS-IS
· RFC 6233:IS-IS Registry Extension for Purges
· RFC 6329:IS-IS Extensions Supporting IEEE 802.1aq Shortest Path Bridging
· RFC 6571:Loop-Free Alternate (LFA) Applicability in Service Provider (SP) Networks
· RFC 6823:Advertising Generic Information in IS-IS
· RFC 7142:OSI IS-IS Intra-domain Routing Protocol
· RFC 7356:IS-IS Flooding Scope Link State PDUs (LSPs)
· RFC 7370:Updates to the IS-IS TLV Codepoints Registry
· RFC 7602:IS-IS Extended Sequence Number TLV
· RFC 7645:The Keying and Authentication for Routing Protocol (KARP) IS-IS Security Analysis
· RFC 7775:IS-IS Route Preference for Extended IP and IPv6 Reachability
· RFC 7794:IS-IS Prefix Attributes for Extended IPv4 and IPv6 Reachability
· RFC 7810:IS-IS Traffic Engineering (TE) Metric Extensions
· RFC 7813:IS-IS Path Control and Reservation
· RFC 7917:Advertising Node Administrative Tags in IS-IS
· RFC 7981:IS-IS Extensions for Advertising Router Information
· RFC 7987:IS-IS Minimum Remaining Lifetime
表1-3 IPv4 IS-IS配置任务简介
|
配置任务 |
说明 |
详细配置 |
|
|
配置IS-IS基本功能 |
使能IPv4 IS-IS功能 |
必选 |
|
|
配置路由器的Level级别和接口的链路邻接关系类型 |
可选 |
||
|
配置接口网络类型 |
可选 |
||
|
开启IS-IS进程的多实例功能 |
可选 |
||
|
配置IS-IS路由信息控制 |
配置IS-IS链路开销 |
可选 |
|
|
配置IS-IS通告给邻居的链路开销保持最大值的持续时间 |
可选 |
||
|
配置IS-IS路由优先级 |
可选 |
||
|
配置IS-IS最大等价路由条数 |
可选 |
||
|
配置IS-IS路由聚合 |
可选 |
||
|
配置IS-IS发布缺省路由 |
可选 |
||
|
配置IS-IS引入外部路由 |
可选 |
||
|
配置IS-IS对接收的路由是否加入IP路由表进行过滤 |
可选 |
||
|
配置IS-IS对引入的路由信息进行过滤 |
可选 |
||
|
配置IS-IS路由渗透 |
可选 |
||
|
配置允许设备将IS-IS链路状态信息发布到BGP |
可选 |
||
|
配置IS-IS定时器 |
配置Hello报文发送时间间隔 |
可选 |
|
|
配置CSNP报文发送时间间隔 |
可选 |
||
|
配置LSP最大生存时间 |
可选 |
||
|
配置LSP刷新周期和LSP重新生成的时间间隔 |
可选 |
||
|
配置LSP发送时间间隔 |
可选 |
||
|
配置SPF参数 |
可选 |
||
|
配置IS-IS报文相关功能 |
配置接口的DIS优先级 |
可选 |
|
|
配置接口的Tag值 |
可选 |
||
|
配置Hello报文失效数目 |
可选 |
||
|
禁止接口发送和接收IS-IS报文 |
可选 |
||
|
配置接口发送小型Hello报文 |
可选 |
||
|
配置LSP报文长度 |
可选 |
||
|
配置LSP快速扩散功能 |
可选 |
||
|
配置LSP分片扩展功能 |
可选 |
||
|
限制LSP泛洪 |
可选 |
||
|
配置IS-IS高级功能 |
配置在P2P接口上建立邻接关系必须在同一网段的检查功能 |
可选 |
|
|
配置路由收敛的优先级 |
可选 |
||
|
配置LSDB过载标志位 |
可选 |
||
|
配置IS-IS isolate |
可选 |
||
|
配置IS-IS shutdown |
可选 |
||
|
配置ATT连接位 |
可选 |
||
|
配置IS-IS主机名映射 |
可选 |
||
|
配置IS-IS日志和告警功能 |
配置邻接状态变化的输出开关 |
可选 |
|
|
配置IS-IS网管功能 |
可选 |
||
|
配置IS-IS的日志功能 |
可选 |
||
|
配置IS-IS记录邻居关系断开的故障检测信息的最大个数 |
可选 |
||
|
配置IS-IS快速收敛 |
配置ISPF |
可选 |
|
|
配置前缀抑制 |
可选 |
||
|
配置PIC |
可选 |
||
|
配置IS-IS网络的安全性 |
配置邻居关系验证 |
可选 |
|
|
配置区域验证 |
可选 |
||
|
配置路由域验证 |
可选 |
||
|
配置IS-IS网络的可靠性 |
配置IS-IS GR |
可选 |
|
|
配置IS-IS NSR |
可选 |
||
|
配置IS-IS与BFD联动 |
可选 |
||
|
配置IS-IS LFA快速重路由 |
<|||