• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

07-三层技术-IP路由配置指导

目录

05-IS-IS配置

本章节下载 05-IS-IS配置  (1.93 MB)

05-IS-IS配置

  录

1 IS-IS

1.1 IS-IS简介

1.1.1 IS-IS基本术语

1.1.2 IS-IS地址

1.1.3 NET

1.1.4 IS-IS区域

1.1.5 IS-IS拓扑结构

1.1.6 路由渗透

1.1.7 IS-IS的网络类型

1.1.8 DIS和伪节点

1.1.9 IS-IS报文

1.1.10 IPv6 IS-IS

1.1.11 IS-IS GR

1.1.12 IS-IS NSR

1.1.13 协议规范

1.2 IPv4 IS-IS配置任务简介

1.3 IPv6 IS-IS配置任务简介

1.4 配置IS-IS基本功能

1.4.1 使能IPv4 IS-IS功能

1.4.2 使能IPv6 IS-IS功能

1.4.3 启动轻量级IS-IS进程

1.4.4 配置路由器的Level级别和接口的链路邻接关系类型

1.4.5 配置接口网络类型

1.5 开启IS-IS进程的多实例功能

1.6 配置IS-IS支持IPv6单播拓扑

1.7 配置IS-IS路由信息控制

1.7.1 配置IS-IS链路开销

1.7.2 配置在聚合接口的带宽低于阈值时改变接口的链路开销值

1.7.3 配置IS-IS通告给邻居的链路开销保持最大值的持续时间

1.7.4 配置IS-IS路由优先级

1.7.5 配置IS-IS最大等价路由条数

1.7.6 配置IS-IS路由聚合

1.7.7 配置IS-IS发布缺省路由

1.7.8 配置IS-IS引入外部路由

1.7.9 配置IS-IS对接收的路由是否加入IP路由表进行过滤

1.7.10 配置IS-IS路由渗透

1.7.11 配置允许设备将IS-IS链路状态信息发布给其他协议

1.7.12 配置IPv6 IS-IS链路标记功能

1.8 配置IS-IS发布网络性能参数

1.8.1 功能简介

1.8.2 配置限制和指导

1.8.3 配置IS-IS发布LSP时携带链路属性

1.8.4 配置IS-IS时延发布功能

1.8.5 配置IS-IS带宽发布功能

1.8.6 配置IS-IS丢包率发布功能

1.9 配置IS-IS Flex-Algo

1.9.1 功能简介

1.9.2 IS-IS Flex-Algo配置任务简介

1.9.3 配置准备

1.9.4 配置亲和属性名称和亲和属性比特位之间的映射关系

1.9.5 配置链路的亲和属性

1.9.6 配置Flex-Algo算法

1.9.7 配置Flex-Algo算法的度量类型

1.9.8 配置Flex-Algo算法的快速重路由功能

1.9.9 配置Flex-Algo算法的TI-LFA FRR

1.9.10 配置Flex-Algo算法的快速重路由备份路径优选方案的优先级

1.9.11 配置SR-MPLS应用Flex-Algo算法

1.9.12 配置基于Color引流

1.9.13 配置SRv6应用Flex-Algo算法

1.10 配置IS-IS定时器

1.10.1 配置Hello报文发送时间间隔

1.10.2 配置CSNP报文发送时间间隔

1.10.3 配置LSP最大生存时间

1.10.4 配置LSP刷新周期和LSP重新生成的时间间隔

1.10.5 配置LSP发送时间间隔

1.10.6 配置LSP重复到达的时间间隔

1.10.7 配置老化的LSP在LSDB里的存活时间

1.10.8 配置SPF参数

1.11 配置IS-IS报文相关功能

1.11.1 配置接口的DIS优先级

1.11.2 配置IS-IS管理标记

1.11.3 配置Hello报文失效数目

1.11.4 禁止接口发送和接收IS-IS报文

1.11.5 配置接口发送小型Hello报文

1.11.6 配置LSP报文长度

1.11.7 配置LSP快速扩散功能

1.11.8 配置LSP分片扩展功能

1.12 控制LSP的生成、发布与接收

1.12.1 限制LSP泛洪

1.12.2 配置路由震荡更新抑制

1.13 配置IS-IS高级功能

1.13.1 配置在P2P接口上建立邻接关系必须在同一网段的检查功能

1.13.2 配置路由收敛的优先级

1.13.3 配置LSDB过载标志位

1.13.4 配置LSDB过载时调整接口开销值

1.13.5 配置IS-IS isolate

1.13.6 配置IS-IS shutdown

1.13.7 配置ATT连接位

1.13.8 配置IS-IS主机名映射

1.14 配置IS-IS的BIER能力

1.15 配置IS-IS日志和告警功能

1.15.1 配置邻接状态变化的输出开关

1.15.2 配置IS-IS的日志功能

1.15.3 配置LSP更新日志发布源的最大个数

1.15.4 配置IS-IS记录邻居关系断开的故障检测信息的最大个数

1.15.5 配置IS-IS网管功能

1.16 配置IS-IS快速收敛

1.16.1 配置ISPF

1.16.2 配置前缀抑制

1.16.3 配置PIC

1.17 提高IS-IS网络的安全性

1.17.1 配置邻居关系验证

1.17.2 配置区域验证

1.17.3 配置路由域验证

1.18 配置IS-IS GR

1.19 配置IS-IS BFD相关功能

1.19.1 开启IS-IS与BFD联动功能

1.19.2 配置IS-IS根据BFD会话状态调整接口开销值

1.19.3 开启BFD抑制IS-IS建立和保持邻接关系的功能

1.20 配置IS-IS FRR

1.20.1 功能简介

1.20.2 配置任务简介

1.20.3 配置IS-IS LFA快速重路由

1.20.4 配置Remote LFA快速重路由

1.20.5 配置快速重路由备份路径优选方案的优先级

1.21 配置IS-IS根据链路质量等级调整接口开销值

1.22 配置IS-IS邻居震荡抑制功能

1.23 配置成员接口震荡抑制功能

1.24 IS-IS显示和维护

1.24.1 IPv4 IS-IS显示和维护

1.24.2 IPv6 IS-IS显示和维护

1.25 IS-IS典型配置举例

1.25.1 IS-IS基本功能配置举例

1.25.2 IS-IS的DIS选择配置举例

1.25.3 IS-IS引入外部路由配置举例

1.25.4 IS-IS验证配置举例

1.25.5 IS-IS GR配置举例

1.25.6 IS-IS与BFD联动配置举例

1.25.7 IS-IS快速重路由配置举例

1.25.8 IS-IS Remote LFA快速重路由配置举例

1.25.9 IS-IS多实例进程基本功能配置举例

1.26 IPv6 IS-IS典型配置举例

1.26.1 IPv6 IS-IS基本组网配置举例

1.26.2 IPv6 IS-IS与BFD联动配置举例

1.26.3 IPv6 IS-IS快速重路由配置举例

1.26.4 IS-IS SRv6应用Flex-Algo算法配置举例

 


1 IS-IS

1.1  IS-IS简介

IS-IS属于IGP(Interior Gateway Protocol,内部网关协议),用于自治系统内部。IS-IS是一种链路状态协议,使用SPF(Shortest Path First,最短路径优先)算法进行路由计算。

1.1.1  IS-IS基本术语

·     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.2  IS-IS地址

图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)、System ID和SEL三个部分组成:

·     HO-DSP用来分割区域。

·     System ID用来区分主机。

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

1.1.3  NET

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都相同。

1.1.4  IS-IS区域

为了支持大规模的路由网络,IS-IS在路由域内采用两级的分层结构。一个大的路由域通常被分成多个区域(Areas)。一般来说,我们将Level-1路由器部署在区域内,Level-2路由器部署在区域间,Level-1-2路由器部署在Level-1路由器和Level-2路由器的中间。

1. Level-1路由器

Level-1路由器负责区域内的路由,它只与属于同一区域的Level-1和Level-1-2路由器形成邻居关系,维护一个Level-1的LSDB,该LSDB包含本区域的路由信息,到区域外的报文转发给最近的Level-1-2路由器。

属于不同区域的Level-1路由器不能形成邻居关系。

2. Level-2路由器

Level-2路由器负责区域间的路由,可以与同一区域或者其他区域的Level-2和Level-1-2路由器形成邻居关系,维护一个Level-2的LSDB,该LSDB包含区域间的路由信息。所有Level-2路由器和Level-1-2路由器组成路由域的骨干网,负责在不同区域间通信,骨干网必须是物理连续的。

Level-2路由器是否形成邻居关系与区域无关。

3. Level-1-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.1.5  IS-IS拓扑结构

图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)。

1.1.6  路由渗透

通常情况下,区域内的路由通过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区域。

1.1.7  IS-IS的网络类型

IS-IS只支持两种类型的网络,根据物理链路不同可分为:

·     广播链路:如Ethernet、Token-Ring等。

·     点到点链路:如PPP、HDLC等。

说明

对于NBMA(Non-Broadcast Multi-Access)网络,如ATM,需对其配置子接口,并将子接口类型配置为点到点网络或广播网络。IS-IS不能在点到多点(Point-to-MultiPoint,P2MP)链路上运行。

 

1.1.8  DIS和伪节点

在广播网络中,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来保证。

·     由于Circuit ID为一个字节,因此广播网络中设备能够建立的邻居数量不能超过255个。当所需要建立邻居的广播链路数量超过255个时,则超出部分的广播链路上不能建立IS-IS邻居关系。

 

1.1.9  IS-IS报文

1. PDU

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

 

2. Hello报文

Hello报文:用于建立和维持邻居关系,也称为IIH(IS-to-IS Hello PDUs)。其中,广播网中的Level-1路由器使用Level-1 LAN IIH,广播网中的Level-2路由器使用Level-2 LAN IIH,点到点网络中的路由器则使用P2P IIH。

3. LSP报文

LSP报文:用于交换链路状态信息。LSP分为两种:Level-1 LSP和Level-2 LSP。Level-1路由器传送Level-1 LSP,Level-2路由器传送Level-2 LSP,Level-1-2路由器则可传送以上两种LSP。

4. SNP报文

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。

5. CLV

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中定义。

1.1.10  IPv6 IS-IS

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

1.1.11  IS-IS GR

GR(Graceful Restart,平滑重启)是一种在主备切换或协议重启时保证转发业务不中断的机制。其核心在于:设备进行协议重启时,能够通知其周边设备,使到该设备的邻居关系和路由在一定时间内保持稳定。在协议重启完毕后,周边设备协助其进行信息(包括支持GR的相关协议所维护的各种拓扑、路由和会话信息)同步,在尽量短的时间内恢复到重启前的状态。在协议重启过程中不会产生路由震荡,报文转发路径也没有任何改变,整个系统可以实现不间断运行。

IS-IS GR可以保证运行IS-IS协议的设备在进行主备切换或IS-IS协议重启时,转发业务正常进行。

1.1.12  IS-IS NSR

IS-IS NSR(Nonstop Routing,不间断路由)是一种通过在IS-IS协议主备进程之间备份必要的协议状态和数据(如IS-IS邻居信息和链路状态信息),使得IS-IS协议的主进程中断时,备份进程能够无缝地接管主进程的工作,从而确保邻居感知不到IS-IS协议中断,保持IS-IS路由,并保证转发不会中断的技术。

GR特性需要周边设备配合才能完成路由信息的恢复,在网络应用中有一定的限制。NSR特性不需要周边设备的配合,网络应用更加广泛。

1.1.13  协议规范

与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 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 3719:Recommendations for Interoperable Networks using Intermediate System to Intermediate System (IS-IS)

·     RFC 3787:Recommendations for Interoperable IP Networks using Intermediate System to Intermediate System (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.2  IPv4 IS-IS配置任务简介

IPv4 IS-IS配置任务如下:

(1)     配置IS-IS基本功能

¡     使能IPv4 IS-IS功能

¡     (可选)启动轻量级IS-IS进程

¡     (可选)配置路由器的Level级别和接口的链路邻接关系类型

¡     (可选)配置接口网络类型

¡     (可选)开启IS-IS进程的多实例功能

(2)     (可选)配置IS-IS路由信息控制

¡     配置IS-IS链路开销

¡     配置在聚合接口的带宽低于阈值时改变接口的链路开销值

¡     配置IS-IS通告给邻居的链路开销保持最大值的持续时间

¡     配置IS-IS路由优先级

¡     配置IS-IS最大等价路由条数

¡     配置IS-IS路由聚合

¡     配置IS-IS发布缺省路由

¡     配置IS-IS引入外部路由

¡     配置IS-IS对接收的路由是否加入IP路由表进行过滤

¡     配置IS-IS路由渗透

¡     配置允许设备将IS-IS链路状态信息发布给其他协议

(3)     (可选)配置IS-IS发布网络性能参数

¡     配置IS-IS发布LSP时携带链路属性

¡     配置IS-IS时延发布功能

¡     配置IS-IS带宽发布功能

¡     配置IS-IS丢包率发布功能

(4)     (可选)配置IS-IS Flex-Algo

(5)     (可选)配置IS-IS定时器

¡     配置Hello报文发送时间间隔

¡     配置CSNP报文发送时间间隔

¡     配置LSP最大生存时间

¡     配置LSP刷新周期和LSP重新生成的时间间隔

¡     配置LSP发送时间间隔

¡     配置LSP重复到达的时间间隔

¡     配置老化的LSP在LSDB里的存活时间

¡     配置SPF参数

(6)     (可选)配置IS-IS报文相关功能

¡     配置接口的DIS优先级

¡     配置IS-IS管理标记

¡     配置Hello报文失效数目

¡     禁止接口发送和接收IS-IS报文

¡     配置接口发送小型Hello报文

¡     配置LSP报文长度

¡     配置LSP快速扩散功能

¡     配置LSP分片扩展功能

(7)     (可选)控制LSP的生成、发布与接收

¡     限制LSP泛洪

¡     配置路由震荡更新抑制

(8)     (可选)配置IS-IS高级功能

¡     配置在P2P接口上建立邻接关系必须在同一网段的检查功能

¡     配置路由收敛的优先级

¡     配置LSDB过载标志位

¡     配置LSDB过载时调整接口开销值

¡     配置IS-IS isolate

¡     配置IS-IS shutdown

¡     配置ATT连接位

¡     配置IS-IS主机名映射

(9)     (可选)配置IS-IS日志和告警功能

¡     配置邻接状态变化的输出开关

¡     配置IS-IS的日志功能

¡     配置LSP更新日志发布源的最大个数

¡     配置IS-IS记录邻居关系断开的故障检测信息的最大个数

¡     配置IS-IS网管功能

(10)     (可选)配置IS-IS快速收敛

¡     配置ISPF

¡     配置前缀抑制

¡     配置PIC

(11)     (可选)提高IS-IS网络的安全性

¡     配置邻居关系验证

¡     配置区域验证

¡     配置路由域验证

(12)     (可选)提高IS-IS网络的可靠性

¡     配置IS-IS GR

¡     配置IS-IS BFD相关功能

¡     开启IS-IS与BFD联动配置IS-IS FRR

¡     配置IS-IS根据链路质量等级调整接口开销值

¡     配置IS-IS邻居震荡抑制功能

¡     配置成员接口震荡抑制功能

1.3  IPv6 IS-IS配置任务简介

IPv6 IS-IS配置任务如下:

(1)     配置IS-IS基本功能

¡     使能IPv6 IS-IS功能

¡     (可选)启动轻量级IS-IS进程

¡     (可选)配置路由器的Level级别和接口的链路邻接关系类型

¡     (可选)配置接口网络类型

¡     (可选)开启IS-IS进程的多实例功能

(2)     (可选)配置IS-IS支持IPv6单播拓扑

(3)     (可选)配置IS-IS路由信息控制

¡     配置IS-IS链路开销

¡     配置在聚合接口的带宽低于阈值时改变接口的链路开销值

¡     配置IS-IS通告给邻居的链路开销保持最大值的持续时间

¡     配置IS-IS路由优先级

¡     配置IS-IS最大等价路由条数

¡     配置IS-IS路由聚合

¡     配置IS-IS发布缺省路由

¡     配置IS-IS引入外部路由

¡     配置IS-IS对接收的路由是否加入IP路由表进行过滤

¡     配置IS-IS路由渗透

¡     配置允许设备将IS-IS链路状态信息发布给其他协议

¡     配置IPv6 IS-IS链路标记功能

(4)     (可选)配置IS-IS发布网络性能参数

¡     配置IS-IS发布LSP时携带链路属性

¡     配置IS-IS时延发布功能

¡     配置IS-IS带宽发布功能

¡     配置IS-IS丢包率发布功能

(5)     (可选)配置IS-IS Flex-Algo

(6)     (可选)配置IS-IS定时器

¡     配置Hello报文发送时间间隔

¡     配置CSNP报文发送时间间隔

¡     配置LSP最大生存时间

¡     配置LSP刷新周期和LSP重新生成的时间间隔

¡     配置LSP发送时间间隔

¡     配置LSP重复到达的时间间隔

¡     配置老化的LSP在LSDB里的存活时间

¡     配置SPF参数

(7)     (可选)配置IS-IS报文相关功能

¡     配置接口的DIS优先级

¡     配置IS-IS管理标记

¡     配置Hello报文失效数目

¡     禁止接口发送和接收IS-IS报文

¡     配置接口发送小型Hello报文

¡     配置LSP报文长度

¡     配置LSP快速扩散功能

¡     配置LSP分片扩展功能

(8)     (可选)控制LSP的生成、发布与接收

¡     限制LSP泛洪

¡     配置路由震荡更新抑制

(9)     (可选)配置IS-IS高级功能

¡     配置在P2P接口上建立邻接关系必须在同一网段的检查功能

¡     配置路由收敛的优先级

¡     配置LSDB过载标志位

¡     配置LSDB过载时调整接口开销值

¡     配置IS-IS isolate

¡     配置IS-IS shutdown

¡     配置ATT连接位

¡     配置IS-IS主机名映射

(10)     (可选)配置IS-IS的BIER能力

(11)     (可选)配置IS-IS日志和告警功能

¡     配置邻接状态变化的输出开关

¡     配置IS-IS的日志功能

¡     配置LSP更新日志发布源的最大个数

¡     配置IS-IS记录邻居关系断开的故障检测信息的最大个数

¡     配置IS-IS网管功能

(12)     (可选)配置IS-IS快速收敛

¡     配置ISPF

¡     配置前缀抑制

¡     配置PIC

(13)     (可选)提高IS-IS网络的安全性

¡     配置邻居关系验证

¡     配置区域验证

¡     配置路由域验证

(14)     (可选)提高IS-IS网络的可靠性

¡     配置IS-IS GR

¡     配置IS-IS BFD相关功能

¡     开启IS-IS与BFD联动配置IS-IS FRR

¡     配置IS-IS根据链路质量等级调整接口开销值

¡     配置IS-IS邻居震荡抑制功能

¡     配置成员接口震荡抑制功能

1.4  配置IS-IS基本功能

1.4.1  使能IPv4 IS-IS功能

(1)     进入系统视图。

system-view

(2)     启动IS-IS,并进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

缺省情况下,系统没有运行IS-IS。

(3)     配置网络实体名称。

network-entity net

缺省情况下,未配置NET。

注意

批量执行cost-styleis-levelnetwork-entity命令时,建议最后执行network-entity命令,以避免因配置顺序不正确引发IS-IS进程重启,以及重启期间可能导致的配置丢失。

 

(4)     退回系统视图。

quit

(5)     进入接口视图。

interface interface-type interface-number

(6)     配置指定接口上使能IS-IS功能。

isis enable [ process-id ]

缺省情况下,接口上的IS-IS功能处于关闭状态,且没有任何IS-IS进程与其关联。

1.4.2  使能IPv6 IS-IS功能

(1)     进入系统视图。

system-view

(2)     启动IS-IS路由进程,进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

缺省情况下,系统没有运行IS-IS。

(3)     配置网络实体名称(NET)。

network-entity net

缺省情况下,未配置NET。

注意

批量执行cost-styleis-levelnetwork-entity命令时,建议最后执行network-entity命令,以避免因配置顺序不正确引发IS-IS进程重启,以及重启期间可能导致的配置丢失。

 

(4)     创建并进入IPv6地址族视图。

address-family ipv6 [ unicast ]

(5)     退回IS-IS视图。

quit

(6)     退回系统视图。

quit

(7)     进入接口视图。

interface interface-type interface-number

(8)     使能接口IS-IS路由进程的IPv6能力并指定要关联的IS-IS进程号。

isis ipv6 enable [ process-id ]

缺省情况下,接口上IS-IS的IPv6能力处于关闭状态。

1.4.3  启动轻量级IS-IS进程

1. 功能简介

在用户需要启动大量IS-IS进程的场景中,为了避免设备内存资源紧张,可以启动轻量级IS-IS进程,以减少IS-IS进程对内存的占用。轻量级IS-IS进程虽然减少了内存占用,但在邻居数量、路由条目较多时会出现性能下降的情况。请根据设备的资源的使用情况合理规划启动轻量级IS-IS进程的数量。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     启动轻量级IS-IS进程,并进入轻量级IS-IS进程视图。

isis [ process-id ] lite [ vpn-instance vpn-instance-name ]

1.4.4  配置路由器的Level级别和接口的链路邻接关系类型

1. 功能简介

建议用户在配置IS-IS时配置路由器类型:

·     如果只有一个区域,建议用户将所有路由器设置为Level-1或者Level-2,因为没有必要让所有路由器同时维护两个完全相同的LSDB。

·     在IP网络中使用时,建议将所有的路由器都设置为Level-2,这样有利于以后的扩展。

当路由器类型是Level-1(Level-2)时,接口的链路邻接类型只能为Level-1(Level-2),当路由器类型是Level-1-2时,接口的链路邻接类型缺省为Level-1-2,当路由器只需要与对端建立Level-1(Level-2)的邻接关系时,可以将接口的链路邻接类型配置为Level-1(Level-2)来限制接口上所能建立的邻接关系,如Level-1的接口只能建立Level-1的邻接关系,Level-2的接口只能建立Level-2的邻接关系,让接口只发送和接收Level-1(Level-2)类型的Hello报文,既减少了路由器的处理时间又节省了带宽。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置路由器的Level级别。

is-level { level-1 | level-1-2 | level-2 }

缺省情况下,路由器的Level级别为Level-1-2。

(4)     退回系统视图。

quit

(5)     进入接口视图。

interface interface-type interface-number

(6)     配置接口的链路邻接关系类型。

isis circuit-level [ level-1 | level-1-2 | level-2 ]

缺省情况下,接口既可以建立Level-1的邻接关系,也可以建立Level-2的邻接关系。

1.4.5  配置接口网络类型

1. 功能简介

接口网络类型不同,其工作机制也略微不同,如:当网络类型为广播网时,需要选举DIS、通过泛洪CSNP报文来实现LSDB同步;当网络类型为P2P时,不需要选举DIS,LSDB同步机制也不同。

当只有两台路由器接入到同一个广播网时,通过将接口网络类型配置为P2P可以使IS-IS按照P2P而不是广播网的工作机制运行,避免DIS选举以及CSNP的泛洪,既可以节省网络带宽,又可以加快网络的收敛速度。

2. 配置限制和指导

对于NBMA(Non-Broadcast Multi-Access)网络,如ATM,需对其配置子接口,并将子接口类型配置为点到点网络或广播网络。

本端和对端发送Hello报文的目的MAC地址不同时,可能会导致邻居关系建立失败。为了避免上述问题的产生,请使用isis circuit-type p2p mac-by-level命令修改设备发送Hello报文的目的MAC地址,确保两端发送Hello报文的目的MAC地址相同。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置接口的网络类型为P2P。

isis [ process-id process-id ] circuit-type p2p

缺省情况下,接口网络类型根据物理接口决定。

仅当接口的网络类型为广播网,且只有两台路由器接入该广播网时才需要进行该项配置,并且两台路由器都要进行此项配置。

(4)     (可选)配置P2P接口根据Level级别决定发送的Hello报文的目的MAC地址。

isis circuit-type p2p mac-by-level

缺省情况下,P2P接口发送的Level-1 Hello报文或者Level-2 Hello报文的目的MAC地址均为0900-2b00-0005。

配置本命令后,P2P接口发送的Level-1 Hello报文的目的MAC地址为0180-c200-0014;Level-2 Hello报文的目的MAC地址为0180-c200-0015。

1.5  开启IS-IS进程的多实例功能

1. 功能简介

说明

本文中将未开启多实例功能的IS-IS进程称为传统IS-IS进程;将开启了多实例功能的IS-IS进程称为IS-IS多实例进程。

 

传统的IS-IS协议限制在一台设备的一个接口上只能使能一个IS-IS进程,如果需要在这台设备上使能多个IS-IS进程,则需要增加接口数量和接口配置过程。为了减少接口数量和接口配置过程,可以在IS-IS视图下开启IS-IS进程的多实例功能,这样就可以在同一个接口下使能多个IS-IS多实例进程。同时,还可以在该接口下使能一个传统IS-IS进程。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     开启IS-IS进程的多实例功能,并指定该进程的实例ID。

multi-instance enable iid iid-value

缺省情况下,IS-IS进程的多实例功能处于关闭状态。

(4)     在接口下使能IS-IS多实例进程。

a.     退回系统视图。

quit

b.     进入接口视图。

interface interface-type interface-number

c.     配置指定接口关联IS-IS多实例进程。

(IPv4网络)

isis enable [ process-id ]

缺省情况下,接口上的IS-IS功能处于关闭状态,且没有关联任何IS-IS进程。

(IPv6网络)

isis ipv6 enable [ process-id ]

缺省情况下,接口上IS-IS的IPv6能力处于关闭状态,且没有关联任何IS-IS进程。

1.6  配置IS-IS支持IPv6单播拓扑

1. 功能简介

IPv6 IS-IS和IPv4 IS-IS使用同样的最短路径进行路由计算,IPv4和IPv6的混合拓扑被看成是一个集成的拓扑,这就要求所有IPv4和IPv6的拓扑信息必须一致。但是IPv4和IPv6协议在网络中的部署可能不一致,IPv4和IPv6的拓扑信息可能不同。当一些路由器和链路不支持IPv6协议时,支持双协议栈的路由器因为无法感知到这些路由器和链路不支持IPv6,仍然会把IPv6报文转发给它们,这就导致IPv6报文由于无法转发而被丢弃。

IS-IS MTR(Multi-Topology Routing,多拓扑路由)的功能之一就是实现IS-IS支持IPv6单播拓扑,即IPv4和IPv6分拓扑计算,从而解决上面的问题。

图1-7 IS-IS支持IPv6单播拓扑功能示意图

 

图1-7所示,图中的数值表示对应链路上的开销值;Router A、Router B和Router D支持IPv4和IPv6双协议栈;Router C只支持IPv4协议,不能转发IPv6报文。

在Router A、Router B、Router C、Router D上都配置IS-IS支持IPv6单播拓扑,所有的路由器对于IPv4、IPv6都分为两个拓扑进行计算,则Router A能够感知到Router B和Router C之间,Router C和Router D之间的链路不支持IPv6,即不会将到达Router D的IPv6报文转发给Router B而造成报文丢弃。

2. 配置限制和指导

当IS-IS网络中同时存在IPv4和IPv6拓扑时,建议用户配置此功能,否则可能导致路由计算错误。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置IS-IS开销值的类型。

cost-style { compatible | wide | wide-compatible }

缺省情况下,IS-IS只收发采用narrow方式的报文。

(4)     进入IPv6地址族视图。

address-family ipv6 [ unicast ]

(5)     配置IS-IS支持IPv6单播拓扑。

multi-topology [ compatible ]

缺省情况下,IS-IS不支持IPv6单播拓扑。

1.7  配置IS-IS路由信息控制

1.7.1  配置IS-IS链路开销

1. 功能简介

IS-IS有三种方式来配置接口的链路开销值,按照选择顺序依次为:

·     在接口视图下为指定接口配置的链路开销值。

·     在系统视图下全局配置的链路开销值,该配置将对该IS-IS进程关联的接口同时生效。

·     自动计算开销值:将根据带宽参考值自动计算接口的链路开销值。当开销值的类型为widewide-compatible时,可以根据公式“开销=(带宽参考值÷接口期望带宽)×10”计算接口的链路开销值,取值范围为1~16777214。当开销值类型为其他类型时,具体情况如下:接口带宽≤10Mbps时,值为60;接口带宽≤100Mbps时,值为50;接口带宽≤155Mbps时,值为40;接口带宽≤622Mbps时,值为30;接口带宽≤2500Mbps时,值为20;接口带宽>2500Mbps时,值为10。接口期望带宽通过命令bandwidth进行配置。

如果没有采用上述三种方式中的任一种进行开销值的配置,接口的链路开销值将取系统设置的缺省值10。

2. 配置IPv4 IS-IS接口的链路开销值

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     (可选)配置IS-IS开销值的类型。

cost-style { narrow | wide | wide-compatible | { compatible | narrow-compatible } [ relax-spf-limit ] }

缺省情况下,IS-IS开销值的类型为narrow。

(4)     退回系统视图。

quit

(5)     进入接口视图。

interface interface-type interface-number

(6)     配置IS-IS接口的链路开销值。

isis [ process-id process-id ] cost cost-value [ level-1 | level-2 ]

缺省情况下,未配置IS-IS接口的链路开销值。

3. 全局配置IPv4 IS-IS链路开销值

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     全局配置IS-IS的链路开销值。

circuit-cost cost-value [ level-1 | level-2 ]

缺省情况下,未全局配置IS-IS的链路开销值。

4. 配置IPv4 IS-IS自动计算链路开销值

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     使能自动计算接口链路开销值功能。

auto-cost enable

缺省情况下,自动计算接口链路开销值功能处于关闭状态。

(4)     (可选)配置IS-IS自动计算链路开销值时依据的带宽参考值。

bandwidth-reference value

缺省情况下,带宽参考值为100Mbps。

5. 配置IPv6 IS-IS接口的链路开销值

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     (可选)配置IS-IS开销值的类型。

cost-style { narrow | wide | wide-compatible | { compatible | narrow-compatible } [ relax-spf-limit ] }

缺省情况下,IS-IS只收发采用narrow方式的报文。

(4)     进入IPv6地址族视图。

address-family ipv6 [ unicast ]

(5)     退回IS-IS视图。

quit

(6)     退回系统视图。

quit

(7)     进入接口视图。

interface interface-type interface-number

(8)     使能接口IS-IS的IPv6能力。

isis ipv6 enable [ process-id ]

缺省情况下,接口上IS-IS的IPv6能力处于关闭状态。

(9)     配置接口的IPv6链路开销值。

isis [ process-id process-id ] ipv6 cost cost-value [ level-1 | level-2 ]

缺省情况下,未配置接口的IPv6链路开销值。

6. 全局配置IPv6 IS-IS链路开销值

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     全局配置IPv6 IS-IS的链路开销值。

circuit-cost cost-value [ level-1 | level-2 ]

缺省情况下,未全局配置IPv6 IS-IS的链路开销值。

7. 配置IPv6 IS-IS自动计算链路开销值

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     (可选)配置IS-IS开销值的类型。

cost-style { narrow | wide | wide-compatible | { compatible | narrow-compatible } [ relax-spf-limit ] }

(4)     进入IPv6地址族视图。

address-family ipv6 [ unicast ]

(5)     使能自动计算接口链路开销值功能。

auto-cost enable

缺省情况下,自动计算接口链路开销值功能处于关闭状态。

(6)     (可选)配置IPv6 IS-IS自动计算链路开销值时依据的带宽参考值。

bandwidth-reference value

缺省情况下,带宽参考值为100Mbps。

1.7.2  配置在聚合接口的带宽低于阈值时改变接口的链路开销值

1. 功能简介

三层聚合组的某个成员端口状态为Down时,剩余带宽可能无法满足用户需求,导致用户业务受损。本功能用来解决上述问题,其工作机制为:

·     当三层聚合接口的带宽小于带宽阈值时,设备将该聚合接口的链路开销值调整为用户设置的值。通常该值大于原始的链路开销值,以便IS-IS选择更优的路径转发流量。

·     当三层聚合接口的带宽大于或等于带宽阈值时,该聚合接口使用原始的链路开销值。

关于IS-IS链路开销值的详细介绍,请参见“1.7.1  配置IS-IS链路开销”。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     接入接口视图。

¡     进入三层聚合接口视图。

interface route-aggregation interface-number [ pex ]

¡     进入三层聚合子接口视图。

interface route-aggregation interface-number.subnumber

(3)     配置在聚合接口的带宽低于阈值时改变接口的链路开销值。

(IPv4网络)

isis cost-fallback cost-value threshold bandwidth-value [ level-1 | level-2 ]

(IPv6网络)

isis ipv6 cost-fallback cost-value threshold bandwidth-value [ level-1 | level-2 ]

缺省情况下,聚合接口使用原始链路开销值。

1.7.3  配置IS-IS通告给邻居的链路开销保持最大值的持续时间

1. 功能简介

IS-IS网络中,链路发生故障并从故障中恢复,或接口状态变化时,IS-IS会重新建立邻接关系,路由会重新进行收敛。在路由重新收敛的过程中,由于各个节点的路由收敛速度不一致,可能会形成环路,造成流量丢失。为了在路由收敛过程中保持转发路径不变,可以使用本功能使IS-IS在一段时间内向邻居通告最大链路开销,这段时间结束后IS-IS向邻居通告的链路开销从最大值恢复为原始开销值,IS-IS重新进行路由优选。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置IS-IS通告给邻居的链路开销保持最大值的持续时间。

isis peer hold-max-cost duration time

缺省情况下,未配置IS-IS通告给邻居的链路开销值保持最大值的持续时间。

1.7.4  配置IS-IS路由优先级

1. 功能简介

一台路由器可同时运行多个路由协议,当多个路由协议都发现到同一目的地的路由时,将选用高优先级路由协议所发现的路由。

以下配置用来为IS-IS路由设置优先级,使用路由策略可以为特定的路由设置特定的优先级,路由策略的相关知识请参见“三层技术-IP路由配置指导”中的“路由策略”。

2. 配置IPv4 IS-IS路由优先级

(1)     进入系统视图。

system-view

(2)     进入IS-IS IPv4单播地址族视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

address-family ipv4 [ unicast ]

(3)     配置IS-IS协议的路由优先级。

preference { preference | route-policy route-policy-name } *

缺省情况下,IPv4 IS-IS协议的路由优先级为15。

3. 配置IPv6 IS-IS路由优先级

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     配置IPv6 IS-IS路由优先级。

preference { preference | route-policy route-policy-name } *

缺省情况下,IPv6 IS-IS路由优先级为15。

1.7.5  配置IS-IS最大等价路由条数

1. 功能简介

如果到一个目的地有几条开销相同的路径,可以通过等价路由负载分担来提高链路利用率。该配置用以设置IS-IS协议的最大等价路由条数。

2. 配置IPv4 IS-IS最大等价路由条数

(1)     进入系统视图。

system-view

(2)     进入IS-IS IPv4单播地址族视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

address-family ipv4 [ unicast ]

(3)     配置在负载分担方式下IS-IS最大等价路由条数。

maximum load-balancing number

缺省情况下,IS-IS支持的等价路由的最大条数为64。

3. 配置IPv6 IS-IS最大等价路由条数

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     配置在负载分担方式下IPv6 IS-IS等价路由的最大数量。

maximum load-balancing number

缺省情况下,IPv6 IS-IS可用的等价路由最大条数与系统支持的最大等价路由的条数相同。

1.7.6  配置IS-IS路由聚合

1. 功能简介

通过配置路由聚合,可以减小路由表规模,还可以减少本路由器生成的LSP报文大小和LSDB的规模。其中,被聚合的路由可以是IS-IS协议发现的路由,也可以是引入的外部路由。

路由器只对本地生成的LSP中的路由进行聚合。

2. 配置IPv4 IS-IS路由聚合

(1)     进入系统视图。

system-view

(2)     进入IS-IS IPv4单播地址族视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

address-family ipv4 [ unicast ]

(3)     配置聚合路由。

summary ip-address { mask-length | mask } [ avoid-feedback | generate_null0_route | [ level-1 | level-1-2 | level-2 ] | tag tag ] *

缺省情况下,不对路由进行聚合。

聚合后路由的开销值取所有被聚合路由中最小的开销值。

3. 配置IPv6 IS-IS路由聚合

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     配置IPv6 IS-IS聚合路由。

summary ipv6-prefix prefix-length [ avoid-feedback | generate_null0_route | [ level-1 | level-1-2 | level-2 ] | tag tag ] *

缺省情况下,未配置IPv6 IS-IS聚合路由。

1.7.7  配置IS-IS发布缺省路由

1. 功能简介

对于运行IS-IS的路由器来说,无法引入缺省路由,因此也无法通过将目的地为0.0.0.0/0的路径信息(即缺省路由)通过LSP发布给其他路由器,可以通过配置发布一条缺省路由,将目的地为0.0.0.0/0的路径信息通过LSP发布出去,其他同级别的路由器中将在自己的路由表中新增一条缺省路由。

当现网中有大量设备时,配置IS-IS发布缺省路由的方式比配置缺省静态路由的方式更灵活。例如,如果在IS-IS路由域中存在多台边界设备,那么可以通过配置路由策略,使某台边界设备在满足条件时才发布缺省路由,从而避免造成路由黑洞。

2. 配置IPv4 IS-IS发布缺省路由

(1)     进入系统视图。

system-view

(2)     进入IS-IS IPv4单播地址族视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

address-family ipv4 [ unicast ]

(3)     配置IS-IS发布Level-1或Level-2级别的缺省路由。

default-route-advertise [ avoid-learning | [ level-1 | level-1-2 | level-2 ] | route-policy route-policy-name | tag tag ] *

缺省情况下,IPv4 IS-IS不发布Level-1或Level-2级别的缺省路由。

产生的缺省路由只被发布到同级别的路由器。

3. 配置IPv6 IS-IS发布缺省路由

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     配置IPv6 IS-IS发布缺省路由。

default-route-advertise [ avoid-learning | [ level-1 | level-1-2 | level-2 ] | route-policy route-policy-name | tag tag ] *

缺省情况下,不生成IPv6 IS-IS缺省路由。

1.7.8  配置IS-IS引入外部路由

1. 功能简介

在IS-IS路由域边界设备上配置IS-IS发布缺省路由后,IS-IS域内的其他设备将去往外部路由域的流量转发到该设备,然后通过该设备去往外部路由域。当大量流量被转发到发布缺省路由的边界设备时,会导致该设备负担过重。另外,IS-IS域中有多台边界设备时,会存在去往其他路由域的最优路由的选择问题。通过让IS-IS域内的其他设备获悉全部或部分外部路由的方法可以解决上述问题。

IS-IS引入IGP路由协议的路由或BGP路由协议的路由时,可指定引入路由的缺省开销。IS-IS通过ACL、IP地址前缀列表或路由策略可以对引入的路由信息进行过滤,只有满足条件的路由信息才能加入到IS-IS路由表中,否则不能加入到IS-IS路由表中。没有加入IS-IS路由表的路由将不会通过LSP发布出去。

在实际组网环境中,每台路由器的性能即处理能力不同,如果在处理能力强的高端设备上引入大量外部路由,那么可能会对网络上其他低端设备的性能造成较大的冲击,网络管理员可以通过配置支持的最大引入路由条数,限制引入外部路由的条数,从而最终限制发布路由的数量。

2. 配置IPv4 IS-IS引入外部路由

(1)     进入系统视图。

system-view

(2)     进入IS-IS IPv4单播地址族视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

address-family ipv4 [ unicast ]

(3)     从其他路由协议或其他IS-IS进程引入路由信息。

import-route bgp [ as-number ] [ allow-ibgp ] [ cost cost-value | cost-type { external | internal } | [ level-1 | level-1-2 | level-2 ] | route-policy route-policy-name | tag tag ] *

import-route bgp [ as-number ] [ allow-ibgp ] inherit-cost [ [ level-1 | level-1-2 | level-2 ] | route-policy route-policy-name | tag tag ] *

import-route { direct | static | unr } [ cost cost-value | cost-type { external | internal } | [ level-1 | level-1-2 | level-2 ] | route-policy route-policy-name | tag tag ] *

import-route { direct | static | unr } inherit-cost [ [ level-1 | level-1-2 | level-2 ] | route-policy route-policy-name | tag tag ] *

import-route eigrp [ eigrp-as | all-as ] [ allow-direct | cost cost-value | cost-type { external | internal } | [ level-1 | level-1-2 | level-2 ] | route-policy route-policy-name | tag tag ] *

import-route eigrp [ eigrp-as | all-as ] inherit-cost [ allow-direct | [ level-1 | level-1-2 | level-2 ] | route-policy route-policy-name | tag tag ] *

import-route rip [ process-id | all-processes ] [ allow-direct | cost cost-value | cost-type { external | internal } | [ level-1 | level-1-2 | level-2 ] | route-policy route-policy-name | tag tag ] *

import-route rip [ process-id | all-processes ] inherit-cost [ allow-direct | [ level-1 | level-1-2 | level-2 ] | route-policy route-policy-name | tag tag ] *

import-route { isis | ospf } [ process-id | all-processes ] [ allow-direct | cost cost-value | cost-type { external | internal } | [ level-1 | level-1-2 | level-2 ] | no-sid | route-policy route-policy-name | tag tag ] *

import-route { isis | ospf } [ process-id | all-processes ] inherit-cost [ allow-direct | [ level-1 | level-1-2 | level-2 ] | no-sid | route-policy route-policy-name | tag tag ] *

缺省情况下,IPv4 IS-IS不从其他路由协议或其他IS-IS进程引入路由信息。

只能引入路由表中状态为active的路由,是否为active状态可以通过display ip routing-table protocol命令来查看。

(4)     (可选)配置引入Level1/Level2的IPv4路由最大条数。

import-route limit number

缺省情况下,没有配置引入路由的最大条数。

(5)     (可选)配置IPv4 IS-IS对引入的路由信息进行过滤。

filter-policy { ipv4-acl-number | prefix-list prefix-list-name | route-policy route-policy-name } export [ bgp | direct | eigrp eigrp-as | { isis | ospf | rip } process-id | static | unr ]

缺省情况下,IPv4 IS-IS不对引入的路由信息进行过滤。

(6)     (可选)配置IPv4 IS-IS引入的路由不参与路由计算。

import-route no-route-calculate

缺省情况下,IPv4 IS-IS引入的路由参与路由计算。

3. 配置IPv6 IS-IS引入外部路由

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     配置IPv6 IS-IS引入外部路由信息。

import-route protocol [ as-number | process-id ] [ allow-ibgp ] [ allow-direct | [ cost cost-value | inherit-cost ] | [ level-1 | level-1-2 | level-2 ] | route-policy route-policy-name | tag tag ] *

缺省情况下,IPv6 IS-IS不引入外部路由信息。

(5)     (可选)配置引入Level1/Level2的IPv6路由最大条数。

import-route limit number

本命令的缺省值与设备的型号有关,请以设备的实际情况为准。

(6)     (可选)配置IPv6 IS-IS对引入的路由进行过滤。

filter-policy { ipv6-acl-number | prefix-list prefix-list-name | route-policy route-policy-name } export [ bgp4+ | direct | { isisv6 | ospfv3 | ripng } process-id | static | unr ]

缺省情况下,IPv6 IS-IS不对引入的路由信息进行过滤。

(7)     (可选)配置IPv6 IS-IS引入的路由不参与路由计算。

import-route no-route-calculate

缺省情况下,IPv6 IS-IS引入的路由参与路由计算。

1.7.9  配置IS-IS对接收的路由是否加入IP路由表进行过滤

1. 功能简介

运行IS-IS的路由器会把从邻居收到的LSP保存到自己维护的链路状态数据库中,使用SPF算法计算出以自己为根的最短路径树,并把计算好的路由信息加入到IS-IS路由表中,最终把最优路由加入到IP路由表中。

通过ACL、IP地址前缀列表或路由策略可以对将要加入到IP路由表中的路由进行过滤,满足条件则加入到IP路由表中,否则将不能加入到IP路由表中。没有加入IP路由表的路由仍然在IS-IS路由表中,可以通过LSP发布出去。

2. 配置IPv4 IS-IS对接收的路由是否加入IP路由表进行过滤

(1)     进入系统视图。

system-view

(2)     进入IS-IS IPv4单播地址族视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

address-family ipv4 [ unicast ]

(3)     配置IS-IS对接收的路由信息进行过滤。

filter-policy { ipv4-acl-number | prefix-list prefix-list-name | route-policy route-policy-name } import

缺省情况下,IPv4 IS-IS不对接收的路由信息进行过滤。

3. 配置IPv6 IS-IS对接收的路由是否加入IPv6路由表进行过滤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     配置IPv6 IS-IS对接收的路由进行过滤。

filter-policy { ipv6-acl-number | prefix-list prefix-list-name | route-policy route-policy-name } import

缺省情况下,IPv6 IS-IS不对接收的路由进行过滤。

1.7.10  配置IS-IS路由渗透

1. 功能简介

当网络中同时部署了Level-1区域和Level-2区域时,缺省情况下,Level-2路由器不会将自己知道的其他Level-1区域以及Level-2区域的路由信息发布到Level-1区域。这样,Level-1路由器不了解本区域以外的路由信息,只将去往其他区域的报文发送到最近的Level-1-2路由器,所以可能导致对本区域之外的目的地址无法选择最佳的路由。

路由渗透功能通过在Level-1-2路由器上定义路由策略、Tag标记等方式,将符合条件的路由筛选出来,然后将其他Level-1区域和骨干区域的部分路由信息发布到自己所在的Level-1区域,使得Level-1区域能够获得全网的路由信息。

例如,如图1-8所示,Device A发送报文给Device F的最佳路径应该是Device A->Device B-> Device D-> Device E-> Device F,该路径的开销值为40。但是Device A上查看到达Device F的路径是Device A->Device C-> Device E-> Device F,其开销值为70,是一条次优路径。

这是由于Device A不知道本区域外部的路由,所以发往非本区域网段的报文都是由最近的Level-1-2路由器转发出去。这种情况下,分别在Device C和Device D上配置路由渗透功能后,Device A到达Device F的路径将变为Device A->Device B-> Device D-> Device E-> Device F。

图1-8 路由渗透典型组网图

 

通过IS-IS路由渗透功能(Level-2 to Level-1),可以将Level-2级别的路由信息和其他区域的Level-1级别的路由信息渗透到Level-1区域。

通过控制IS-IS路由渗透(Level-1 to Level-2),可以控制Level-1区域的IS-IS路由信息不向Level-2渗透,达到有效控制Level-2级别的路由信息的目的。

2. 配置IPv4 IS-IS路由渗透

(1)     进入系统视图。

system-view

(2)     进入IS-IS IPv4单播地址族视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

address-family ipv4 [ unicast ]

(3)     配置将Level-1区域的路由信息引入到Level-2区域。

import-route isis level-1 into level-2 [ filter-policy { ipv4-acl-number | prefix-list prefix-list-name | route-policy route-policy-name } | no-sid | tag tag ] *

缺省情况下,Level-1区域的路由信息向Level-2区域发布。

(4)     配置将Level-2区域的路由信息引入到Level-1区域。

import-route isis level-2 into level-1 [ filter-policy { ipv4-acl-number | prefix-list prefix-list-name | route-policy route-policy-name } | no-sid | tag tag ] *

缺省情况下,Level-2区域的路由信息不向Level-1区域发布。

3. 配置IPv6 IS-IS路由渗透

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     配置从Level-2向Level-1进行路由渗透。

import-route isisv6 level-2 into level-1 [ filter-policy { ipv6-acl-number | prefix-list prefix-list-name | route-policy route-policy-name } | tag tag ] *

缺省情况下,不从Level-2向Level-1进行路由渗透。

(5)     配置从Level-1向Level-2进行路由渗透。

import-route isisv6 level-1 into level-2 [ filter-policy { ipv6-acl-number | prefix-list prefix-list-name | route-policy route-policy-name } | tag tag ] *

缺省情况下,从Level-1向Level-2进行路由渗透。

1.7.11  配置允许设备将IS-IS链路状态信息发布给其他协议

1. 功能简介

本功能允许设备将链路状态信息发布给其他协议,由其他协议(如BGP和SR-MPLS TE Policy等)向外发布,以满足需要知道链路状态信息的应用的需求。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置允许设备将IS-IS链路状态信息发布到BGP。

distribute { bgp-ls | link-state } [ instance-id id ] [ level-1 | level-2 ]

缺省情况下,不允许设备将IS-IS链路状态信息发布给其他协议。

1.7.12  配置IPv6 IS-IS链路标记功能

1. 功能简介

配置接口链路标记的设备和开启IPv6 IS-IS链路标记继承功能的设备相互配合,可以实现路由筛选。具体机制如下:

(1)     设备上配置了IPv6 IS-IS接口的链路标记后,该设备将发布携带链路标记的LSP。

(2)     开启IPv6 IS-IS链路标记继承功能的设备收到携带链路标记的LSP时,设备将提取并继承LSP中的链路标记值。如果设备提取到了多个链路标记值(假设为tag 1tag 2tag n),设备将根据一定的规则选取其中一个(假设为tag 1)进行继承。设备计算出来的到达某个目的地的路径包含携带链路标记的链路时,将该路由的路由标记设置为tag 1,借助路由标记可以实现路由筛选。

上述机制通常用于域内SAVA(Source Address Validation Architecture,源地址验证架构)场景。该场景中,如果局域网存在多个网关设备,那么这些设备上的IPv6 SAVA表项需要保持一致,以避免用户的合法报文被错误丢弃。具体机制如下:

(3)     需要发布IPv6 SAVA表项的网关设备上,在靠近用户侧接口上开启接口链路标记功能。

(4)     在接收IPv6 SAVA表项的网关设备上开启链路标记继承功能。当该设备计算出来的IPv6 IS-IS路由条目的路由标记与自身为远端路由指定的路由标记相同时,设备将使用IPv6 IS-IS路由的目的前缀生成IPv6 SAVA表项,从而实现IPv6 SAVA表项的同步。

关于SAVA功能以及IPv6 SAVA表项的详细介绍,请参见“安全配置指导”中的“SAVA”。

2. 配置接口的链路标记

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置IPv6 IS-IS接口的链路标记。

isis ipv6 link-tag tag

缺省情况下,未配置接口的链路标记。

3. 开启IPv6 IS-IS的链路标记继承功能

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     开启IPv6 IS-IS的链路标记继承功能。

link-tag inherit enable

缺省情况下,IPv6 IS-IS链路标记继承功能处于关闭状态。

1.8  配置IS-IS发布网络性能参数

1.8.1  功能简介

在使用控制器进行路径计算且对网络性能比较敏感的场景中,需要使用能够反映网络性能的参数作为路径计算的开销值。配置IS-IS发布网络性能参数功能后,IS-IS将收集和扩散路由域内链路时延、带宽、丢包率信息,并通过BGP-LS上报给控制器,由控制器基于时延、带宽、丢包率计算最优路径。

网络性能参数包括:

·     时延(Delay)——单向链路时延性能指标,具体包括:

¡     Average link delay:单向链路平均时延。

¡     Min/Max link delay:单向链路最小/最大时延。

¡     Average link delay variation:单向链路平均时延容差,即单向链路平均时延变化。

·     带宽(Bandwidth)——单向链路带宽性能指标,具体包括:

¡     Remaining bandwidth:单向链路剩余带宽。

¡     Available bandwidth:单向链路可用带宽。

¡     Utilized bandwidth:单向链路带宽利用率。

·     丢包率(Link loss)——单向链路丢包率性能指标。

1.8.2  配置限制和指导

执行如下配置可以使IS-IS在发布的LSP中携带链路属性,从而保证时延发布功能和带宽发布功能能够生效。请根据实际情况至少选择其中一项进行配置。

·     通过advertise link-attributes命令配置IS-IS发布LSP时携带链路属性。

·     在运行IPv4 IS-IS的设备和使能IPv4 IS-IS功能的接口上开启MPLS TE能力。配置方法请参见“MPLS配置指导”中的“MPLS TE”。

·     在运行IPv6 IS-IS的设备上开启IPv6 TE功能。配置方法请参见“Segment Routing配置指导”中的“SRv6”。

·     通过te attribute enable命令开启IS-IS进程发布TE属性的能力。

1.8.3  配置IS-IS发布LSP时携带链路属性

1. 功能简介

配置本功能后,IS-IS可以使用扩展IS可达性TLV(类型为22)来携带不同类型的子TLV,这些子TLV携带了不同的网络性能参数。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv4地址族视图或IS-IS IPv6地址族视图。

¡     进入IS-IS IPv4地址族视图。

address-family ipv4 [ unicast ]

¡     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     配置IS-IS发布LSP时携带链路属性。

advertise link-attributes

缺省情况下,IS-IS发布LSP时不会携带链路属性。

1.8.4  配置IS-IS时延发布功能

1. 功能简介

开启IS-IS时延发布功能后,IS-IS将收集和扩散路由域内链路时延信息,并通过BGP-LS上报给控制器,由控制器基于时延计算路径,从而满足最优路径时延最小的需求。

IS-IS接口的时延参数可通过如下两种方式获取:

·     静态配置:通过isis link-delay命令配置接口的时延参数。

·     动态获取:使用test-session bind interface命令将TWAMP-light测试与开启IS-IS功能的接口绑定,当TWAMP-light测量到有效统计数据时,就会将时延信息发布给绑定的接口。绑定接口获取到TWAMP-light发布的时延信息后立即向IS-IS上报。关于TWAMP-light的详细介绍,请参见“网络管理和监控配置指导”中的“NQA TWAMP-light”。

动态获取时延参数时NQA TWAMP-light向绑定接口发布时延信息的周期较短,导致NQA TWAMP-light的绑定接口会频繁向IS-IS上报时延信息。IS-IS需要处理接口上报的时延信息,并通过BGP-LS向控制器上报链路信息,导致设备和网络资源被过多占用。时延发布抑制功能可以用来解决上述问题。

时延发布抑制功能的工作机制为:

(1)     开启时延发布抑制功能后,NQA TWAMP-light按照时延发布抑制定时器设置的时间间隔将时延信息发布给NQA TWAMP-light绑定的接口,然后由绑定接口向IS-IS上报时延信息。

(2)     IS-IS按照时延发布抑制定时器设置的时间间隔通过BGP-LS发布接口上报的时延信息。即IS-IS在定时器超时前不能发布时延信息,以下两种情况除外:

¡     IS-IS收到接口上报的前后两次最小时延的变化率大于或等于时延变化率抑制阈值。

¡     IS-IS收到接口上报的前后两次最小时延差值的绝对值大于或等于时延变化绝对值抑制阈值。

2. 配置限制和指导

如果同时通过两种方式获取到了接口的某个时延参数,则以静态配置的参数为准。

建议配置的时延发布抑制定时器的值要大于或等于NQA时延测量的时间间隔。

3. 配置IS-IS接口的时延参数

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置IS-IS接口的时延参数。

isis link-delay { average average-delay-value | min min-delay-value max max-delay-value | variation variation-value } *

缺省情况下,未配置IS-IS接口时延信息。

4. 开启IS-IS的时延发布功能

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv4地址族视图或IS-IS IPv6地址族视图。

¡     进入IS-IS IPv4地址族视图。

address-family ipv4 [ unicast ]

¡     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     开启IS-IS时延发布功能。

metric-delay advertisement enable [ level-1 | level-2 ]

缺省情况下,IS-IS的时延发布功能处于关闭状态。

5. 配置IS-IS时延发布抑制功能

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     开启IS-IS的时延发布抑制功能,并设置抑制参数。

metric-delay suppression timer time-value percent-threshold percent-value absolute-threshold absolute-value

缺省情况下,IS-IS的时延发布抑制功能处于开启状态。

将某个抑制参数设置为0,则相应的抑制机制不再生效。各抑制参数均设置为0时,表示关闭时延发布抑制功能。

1.8.5  配置IS-IS带宽发布功能

1. 功能简介

开启IS-IS带宽发布功能后,IS-IS将收集接口上报的链路带宽信息,并通过BGP-LS上报给控制器,由控制器基于带宽计算路径,从而满足最优路径带宽最大的需求。

通常情况下,接口上报带宽信息的周期较短,例如每隔100ms向IS-IS上报一次带宽信息,IS-IS需要频繁处理接口上报的带宽信息,并通过BGP-LS向控制器频繁上报链路信息,导致设备和网络资源被过多占用。带宽发布抑制功能可以用来解决上述问题。

带宽发布抑制功能的工作机制为:

(1)     开启带宽发布抑制功能后,接口按照与IS-IS协商的周期向IS-IS上报带宽信息。

(2)     IS-IS按照带宽发布抑制定时器设置的时间间隔通过BGP-LS发布接口上报的带宽信息,即IS-IS在定时器超时前不能发布带宽信息。

2. 配置限制和指导

建议将带宽发布抑制定时器的值配置为大于或等于以太网接口带宽测量的时间间隔。

3. 开启IPv4 IS-IS的带宽发布功能

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv4地址族视图或IS-IS IPv6地址族视图。

¡     进入IS-IS IPv4地址族视图。

address-family ipv4 [ unicast ]

¡     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     开启IS-IS带宽发布功能。

metric-bandwidth advertisement enable [ level-1 | level-2 ]

缺省情况下,IS-IS的带宽发布功能处于关闭状态。

4. 配置IS-IS带宽发布抑制功能

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     开启IS-IS的带宽发布抑制功能,并设置抑制参数。

metric-bandwidth suppression timer time-value

缺省情况下,IS-IS的带宽发布抑制功能处于开启状态。

将抑制参数设置为0时,表示关闭带宽发布抑制功能。

1.8.6  配置IS-IS丢包率发布功能

1. 功能简介

开启IS-IS丢包率发布功能后,IS-IS将收集和扩散路由域内链路丢包率信息,并通过BGP-LS上报给控制器,由控制器基于丢包率计算路径,从而满足最优路径丢包率最小的需求。

IS-IS接口的丢包率参数可通过如下两种方式获取:

·     静态配置:通过isis link-loss命令配置接口的丢包率参数。

·     动态获取:使用test-session bind interface命令将TWAMP-light测试与开启IS-IS功能的接口绑定,当TWAMP-light测量到有效统计数据时,就会将丢包率信息发布给绑定的接口。绑定接口获取到TWAMP-light发布的丢包率信息后立即向IS-IS上报。关于TWAMP-light的详细介绍,请参见“网络管理和监控配置指导”中的“NQA TWAMP-light”。

动态获取丢包率参数时,NQA TWAMP-light向绑定接口发布丢包率信息的周期较短,导致NQA TWAMP-light的绑定接口会频繁向IS-IS上报丢包率信息。IS-IS需要处理接口上报的丢包率信息,并通过BGP-LS向控制器上报链路信息,导致设备和网络资源被过多占用。丢包率发布抑制功能可以用来解决上述问题。

丢包率发布抑制功能的工作机制为:

(1)     开启丢包率发布抑制功能后,NQA TWAMP-light按照丢包率发布抑制定时器设置的时间间隔将丢包率信息发布给NQA TWAMP-light绑定的接口,然后由绑定接口向IS-IS上报丢包率信息。

(2)     IS-IS按照丢包率发布抑制定时器设置的时间间隔通过BGP-LS发布接口上报的丢包率信息。即IS-IS在定时器超时前不能发布丢包率信息,以下两种情况除外:

¡     IS-IS收到接口上报的前后两次丢包率的变化率大于或等于丢包率变化率抑制阈值。

¡     IS-IS收到接口上报的前后两次丢包率变化的绝对值大于或等于丢包率变化绝对值抑制阈值。

2. 配置限制和指导

如果同时通过两种方式获取到了接口的某个丢包率参数,则以静态配置的参数为准。

建议配置的丢包率发布抑制定时器的值要大于或等于NQA丢包率测量的时间间隔。

3. 配置IS-IS接口的丢包率参数

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置IS-IS接口的丢包率参数。

isis link-loss loss-value

缺省情况下,未配置IS-IS接口丢包率信息。

4. 开启IS-IS的丢包率发布功能

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv4地址族视图或IS-IS IPv6地址族视图。

¡     进入IS-IS IPv4地址族视图。

address-family ipv4 [ unicast ]

¡     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     开启IS-IS丢包率发布功能。

metric-link-loss advertisement enable [ level-1 | level-2 ]

缺省情况下,IS-IS的丢包率发布功能处于关闭状态。

5. 配置IS-IS丢包率发布抑制功能

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     开启IS-IS的丢包率发布抑制功能,并设置抑制参数。

metric-link-loss suppression timer timer-value percent-threshold percent-value absolute-threshold absolute-value

缺省情况下,IS-IS的丢包率发布抑制功能处于开启状态。

将某个抑制参数设置为0,则相应的抑制机制不再生效。各抑制参数均设置为0时,表示关闭丢包率发布抑制功能。

1.9  配置IS-IS Flex-Algo

1.9.1  功能简介

IS-IS通常基于所有链路的开销值来计算到达目的地的最优路径,某些情况下,这种方式计算出来的路径无法反应用户的意图。Flex-Algo(Flexible Algorithm,灵活算法)允许用户根据自己的需求自定义路径计算方法,从而灵活地控制路径的选择。

1. Flex-Algo基本概念

Flex-Algo涉及如下基本概念:

·     FAD(Flexible Algorithm Definition,Flex-Algo算法定义):Flex-Algo算法的内容,包括算法类型、优化目标和约束条件的组合。

·     算法类型:计算路径使用的算法。当前仅支持SPF算法。

·     优化目标:使用Flex-Algo算法基于特定度量类型计算到达目的地的最小开销路径。

Flex-Algo算法支持的度量类型包括:

¡     使用IS-IS的链路开销作为度量类型。

¡     使用链路时延作为度量类型。

¡     使用TE度量值作为度量类型。关于TE度量值的详细介绍,请参见“MPLS配置指导”中的“MPLS TE”。

·     约束条件:Flex-Algo算法生成算法拓扑时遵循的规则,即包含或排除具有特定链路属性的链路。Flex-Algo算法生成算法拓扑使用的链路属性包括亲和属性和SRLG(Shared Risk Link Group,共享风险链路组)。

¡     亲和属性:链路的一种属性,也称为链路颜色。IS-IS使用包含扩展管理组(Extended Administrative Group)子TLV的LSP来通告FAD的约束条件,包括Flexible Algorithm Exclude Admin Group Sub-TLV、Flexible Algorithm Include-Any Admin Group Sub-TLV和Flexible Algorithm Include-All Admin Group Sub-TLV,分别对应Exclude-Any、Include-Any和Include-All规则,表明FAD要排除或包含的亲和属性。

¡     SRLG:具有相同故障风险的一组链路的集合。即如果其中一条链路失效,那么组内的其他链路也可能失效。IS-IS使用包含Flexible Algorithm Exclude SRLG Sub-TLV的LSP来通告FAD要排除的SRLG。关于SRLG的详细介绍,请参见“MPLS配置指导”中的“MPLS TE”。

·     Flex-Algo算法标识符:Flex-Algo算法的唯一标识,取值为128~255之间的数字。

2. Flex-Algo算法拓扑的生成

Flex-Algo算法拓扑指的是Flex-Algo算法计算路径的范围。当Flex-Algo算法生成拓扑时,会判断链路的亲和属性是否与扩展管理组匹配,匹配的链路才会被Flex-Algo算法加入拓扑或从拓扑中排除。具体步骤如下:

(1)     如果节点未配置FAD,表明该节点不参与Flex-Algo算法,那么该节点被Flex-Algo算法删除。

(2)     检查FAD中是否存在Exclude-Any规则。如果存在Exclude-Any规则,只要链路有一个亲和属性和Exclude-Any规则中的亲和属性相同,那么该链路被Flex-Algo算法排除。

(3)     检查FAD中是否存在共享风险链路组的Exclude SRLG规则。如果存在Exclude SRLG规则,则Flex-Algo算法排除属于Exclude SRLG规则描述的共享风险链路组的链路。

(4)     检查FAD中是否存在Include-any规则。如果存在Include-any规则,链路的亲和属性不包含Include-any规则中的任意一个亲和属性,那么该链路被Flex-Algo算法排除。

(5)     检查FAD中是否存在Include-all规则。如果存在Include-all规则,但是链路不具有Include-all规则中的所有亲和属性,那么该链路被Flex-Algo算法排除。

(6)     FAD的度量类型不是IS-IS的链路开销,且链路没有对FAD使用的度量类型的开销值进行通告,那么该链路被Flex-Algo算法排除。

图1-9所示,未使用Flex-Algo算法时,所有节点基于IS-IS链路开销计算到达目的地的最优路径。使用Flex-Algo算法130计算路径时,除了Router F以外,其他节点都配置了Flex-Algo算法130。Flex-Algo算法130的FAD为:

·     使用SPF算法。

·     基于IS-IS链路开销计算到达目的地的最小开销路径。

·     排除亲和属性为“红色”的链路。

图1-9 未使用Flex-Algo算法的拓扑

 

生成的Flex-Algo算法130的拓扑如图1-10所示。生成Flex-Algo算法130的拓扑后,各节点根据算法类型和优化目标进行路径计算。

图1-10 Flex-Algo算法130的拓扑

 

1.9.2  IS-IS Flex-Algo配置任务简介

(1)     配置Flex-Algo算法的FAD

a.     配置亲和属性名称和亲和属性比特位之间的映射关系

b.     配置链路的亲和属性

c.     配置Flex-Algo算法

d.     (可选)配置Flex-Algo算法的度量类型

(2)     (可选)提高Flex-Algo的可靠性

¡     配置Flex-Algo算法的快速重路由功能

¡     配置Flex-Algo算法的TI-LFA FRR

¡     配置Flex-Algo算法的快速重路由备份路径优选方案的优先级

(3)     配置SR-MPLS中的Flex-Algo

¡     配置SR-MPLS应用Flex-Algo算法

¡     配置基于Color引流

(4)     配置SRv6应用Flex-Algo算法

1.9.3  配置准备

配置IS-IS Flex-Algo算法之前,需要配置Segment Routing相关功能。关于SR-MPLS的详细介绍,请参见“Segment Routing配置指导”中的“SR-MPLS”;关于SRv6的详细介绍,请参见“Segment Routing配置指导”中的“SRv6”。

1.9.4  配置亲和属性名称和亲和属性比特位之间的映射关系

1. 功能简介

本功能用来管理亲和属性名称和亲和属性比特位之间的映射关系。IS-IS支持256个亲和属性比特位,比特位的编号为0~255。如图1-11所示,将亲和属性比特位的第一位命名为“blue”,第五位命名为“red”。可以将256个亲和属性比特位定义成不同的名称。

配置亲和属性名称和亲和属性比特位的映射关系后,IS-IS可以方便地通过亲和属性名称来配置链路的亲和属性,或者定义Flex-Algo算法拓扑。

图1-11 亲和属性名称和亲和属性比特位映射关系示例

 

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置亲和属性名称和亲和属性比特位之间的映射关系。

affinity-map affinity-name bit-position bit

缺省情况下,未配置亲和属性名称和亲和属性比特位之间的映射关系。

1.9.5  配置链路的亲和属性

1. 功能简介

在IS-IS接口上配置本功能后,该接口去往邻接节点的链路将具有指定亲和属性名称映射的亲和属性。IS-IS接口所在节点参与Flex-Algo算法计算时,如果Flex-Algo算法定义了约束条件,那么Flex-Algo算法会根据约束条件将具有特定亲和属性的链路加入Flex-Algo算法拓扑,或从Flex-Algo算法拓扑中排除。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置IS-IS接口的链路具有特定的亲和属性。

isis process-id affinity flex-algo { affinity-name }&<1-32>

缺省情况下,IS-IS的接口链路不具有任何亲和属性。

1.9.6  配置Flex-Algo算法

1. 功能简介

节点配置Flex-Algo算法后,该节点将有资格参与Flex-Algo算法的路径计算。需要保证IS-IS路由域内至少有一个节点使用包含FAD子TLV的LSP来通告FAD,否则即便节点配置了Flex-Algo算法也无法使用Flex-Algo算法计算路径。

为了避免环路,在FAD的通告范围内,使用相同标识符的Flex-Algo算法的节点必须选择一致的FAD,选择机制如下:

(1)     从本区域的FAD通告中(包括本地产生和接收到的通告),选择具有最高优先级的FAD。如果本地未通告FAD,则从接收到的通告中选择具有最高优先级的FAD。

(2)     如果存在多个具有相同最高优先级的FAD,则选择System ID最大的设备通告的FAD。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     创建Flex-Algo算法,并进入Flex-Algo视图。

flex-algo flex-algo-id

(4)     配置Flex-Algo算法的优先级。

priority priority-value

缺省情况下,Flex-Algo算法的优先级为128。

(5)     配置Flex-Algo算法的约束条件。

¡     配置Flex-Algo算法拓扑排除具有任意一个指定亲和属性的链路。

affinity exclude-any affinity-name&<1-32>

¡     配置Flex-Algo算法拓扑包含具有任意一个指定亲和属性的链路。

affinity include-any affinity-name&<1-32>

¡     配置Flex-Algo算法拓扑包含具有所有指定亲和属性的链路。

affinity include-all affinity-name&<1-32>

¡     配置Flex-Algo算法拓扑排除SRLG链路。

exclude-srlg srlg-value&<1-32>

缺省情况下,参与Flex-Algo算法计算的所有节点的链路都会加入拓扑。

(6)     开启本节点对Flex-Algo算法定义的通告功能。

advertise-definition enable

缺省情况下,本节点对Flex-Algo算法定义的通告功能处于关闭状态。

1.9.7  配置Flex-Algo算法的度量类型

1. 功能简介

缺省情况下,IS-IS使用链路开销作为度量类型来计算到达目的地的最优路径。但是,对于某些流量,这种方式计算出来的路径可能并不总是最好的路径。使用本功能可以根据业务需求选取合适的度量类型。Flex-Algo算法支持如下三种度量类型:

·     IS-IS的链路开销。

·     链路时延。Flex-Algo使用链路的最小时延作为度量值。

·     TE度量值。Flex-Algo可以使用MPLS TE上报的TE度量值,也可以使用接口为Flex-Algo算法设置的TE度量值。同时存在上述两种方式产生的TE度量值时,Flex-Algo优先使用接口设置的TE度量值。

2. 配置限制和指导

使用链路时延(delay)作为度量类型时,需要保证参与Flex-Algo算法的接口的时延发布功能处于生效状态。

使用MPLS TE上报的TE度量值(te-cost)作为度量类型时,需要保证:

·     参与Flex-Algo算法的节点的MPLS TE能力处于开启状态。

·     参与Flex-Algo算法的接口的MPLS能力和MPLS TE能力处于开启状态。

·     通过te attribute enable命令开启IS-IS进程发布TE属性的能力,或者通过router-id命令开启IPv6 TE功能。

·     通过advertise application link-attributes命令开启IS-IS为特定的应用发布链路属性信息的功能。

3. 配置Flex-Algo算法的度量类型为链路时延

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv4地址族视图或IS-IS IPv6地址族视图。

¡     进入IS-IS IPv4地址族视图。

address-family ipv4 [ unicast ]

¡     进入IS-IS IPv6地址族视图

address-family ipv6 [ unicast ]

(4)     开启IS-IS时延发布功能。

metric-delay advertisement enable [ level-1 | level-2 ]

缺省情况下,IS-IS的时延发布功能处于关闭状态。

(5)     开启IS-IS为特定的应用发布链路属性信息的功能。

advertise application link-attributes { bandwidth | delay | link-loss | unidirectional-bandwidth | srlg | te } [ asla-only ]

advertise application link-attributes { te [ suppression ] | srlg [ suppression ] } *

缺省情况下,IS-IS为特定应用发布链路属性信息的功能处于关闭状态。

(6)     退回IS-IS视图。

quit

(7)     进入Flex-Algo视图。

flex-algo flex-algo-id

(8)     配置Flex-Algo算法使用链路时延作为度量类型。

metric-type delay

缺省情况下,Flex-Algo算法使用IS-IS的链路开销作为度量类型。

4. 配置Flex-Algo算法的度量类型为MPLS TE上报的TE度量值

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     开启IS-IS进程发布TE属性的能力。

te attribute enable [ level-1 | level-2 ]

缺省情况下,IS-IS进程发布TE属性的能力处于关闭状态。

(4)     进入IS-IS IPv4地址族视图或IS-IS IPv6地址族视图。

¡     进入IS-IS IPv4地址族视图。

address-family ipv4 [ unicast ]

¡     进入IS-IS IPv6地址族视图

address-family ipv6 [ unicast ]

(5)     开启IS-IS为特定的应用发布链路属性信息的功能。

advertise application link-attributes { bandwidth | delay | link-loss | unidirectional-bandwidth | srlg | te } [ asla-only ]

advertise application link-attributes { te [ suppression ] | srlg [ suppression ] } *

缺省情况下,IS-IS为特定应用发布链路属性信息的功能处于关闭状态。

(6)     退回IS-IS视图。

quit

(7)     进入Flex-Algo视图。

flex-algo flex-algo-id

(8)     配置Flex-Algo算法使用TE度量值作为度量类型。

metric-type te-cost

缺省情况下,Flex-Algo算法使用IS-IS的链路开销作为度量类型。

5. 配置Flex-Algo算法的度量类型为IS-IS接口链路的TE度量值

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入Flex-Algo视图。

flex-algo flex-algo-id

(4)     配置Flex-Algo算法使用TE度量值作为度量类型。

metric-type te-cost

缺省情况下,Flex-Algo算法使用IS-IS的链路开销作为度量类型。

(5)     退回IS-IS视图。

quit

(6)     退回系统视图。

quit

(7)     进入接口视图。

interface interface-type interface-number

(8)     为Flex-Algo算法指定IS-IS接口链路的TE度量值。

isis te-metric flex-algo metric-value

缺省情况下,没有为Flex-Algo算法指定IS-IS接口链路的TE度量值。

1.9.8  配置Flex-Algo算法的快速重路由功能

1. 功能简介

Flex-Algo算法的快速重路由功能与IS-IS LFA快速重路由功能类似。Flex-Algo算法使用LFA(Loop Free Alternate)基于Flex-Algo算法拓扑计算出一条开销最小且无环的备份链路。

图1-12所示,所有节点都配置了Flex-Algo算法130。Flex-Algo算法130的FAD为:

·     使用SPF算法。

·     基于IS-IS链路开销计算到达目的地的最小开销路径。

·     排除亲和属性为“红色”的链路。

图1-12 未使用Flex-Algo算法的拓扑

 

生成Flex-Algo算法130的拓扑后,Flex-Algo算法使用LFA计算出来的从Router A到Router D的主、备路径如图1-13所示。

图1-13 使用Flex-Algo算法的拓扑

 

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入Flex-Algo视图。

flex-algo flex-algo-id

(4)     开启Flex-Algo算法的快速重路由功能。

fast-reroute enable

缺省情况下,Flex-Algo算法的快速重路由功能处于开启状态。

如果网络中不存在备份路径,可以使用undo fast-reroute enable命令关闭Flex-Algo算法的快速重路由功能,节省设备资源。

1.9.9  配置Flex-Algo算法的TI-LFA FRR

1. 功能简介

TI-LFA FRR(Topology-Independent Loop-free Alternate Fast Reroute,拓扑无关无环备份快速重路由)是LFA的增强方案。TI-LFA FRR完全继承了Remote LFA计算P空间和Q空间的算法,可以在网络拓扑中不存在PQ节点的情况下,实现任意拓扑的保护。关于P空间和Q空间的详细介绍,请参见“1.20.4  配置Remote LFA快速重路由”。关于TI-LFA FRR路径计算的详细过程,请参见“Segment Routing配置指导”中的“SRv6”。

2. Flex-Algo的TI-LFA FRR保护类型

Flex-Algo的TI-LFA流量保护分为以下两种类型:

·     链路保护:当需要保护的对象是经过特定链路的流量时,流量保护类型为链路保护。

·     节点保护:当需要保护的对象是经过特定设备的流量时,流量保护类型为节点保护。

节点保护优先级高于链路保护。

3. Flex-Algo的TI-LFA FRR路径计算

Flex-Algo的TI-LFA FRR路径计算和普通的TI-LFA FRR路径计算方式是相同的,唯一差别在于Flex-Algo的TI-LFA FRR基于FAD,在Flex-Algo拓扑中计算备份路径。

图1-14所示,所有节点未使用Flex-Algo算法。Router B为源节点,Router A为目的节点,链路中间的数字表示开销值。流量路径为Router B->Router A,为避免Router B故障导致流量丢失,TI-LFA计算出来的备份路径为Router B->Router C-> Router E-> Router F-> Router A。

图1-14 未使用Flex-Algo的TI-LFA备份路径

 

图1-15所示,所有节点都配置了Flex-Algo算法130。Flex-Algo算法130的FAD为:

·     使用SPF算法。

·     基于IS-IS链路开销计算到达目的地的最小开销路径。

·     排除亲和属性为“红色”的链路。

此时,TI-LFA计算出来的备份路径为Router B->Router C-> Router D-> Router E-> Router F-> Router A。

图1-15 使用Flex-Algo的TI-LFA备份路径

 

4. Flex-Algo的正切防微环

通常情况下,正切是指网络发生故障后,数据流量从主路径切换到备份的重路由路径。正切微环(Microloop)指的是紧邻故障节点的节点收敛后引发的环路。

图1-16所示,全网节点部署Flex-Algo的TI-LFA,FAD为:

·     使用SPF算法。

·     基于IS-IS链路开销计算到达目的地的最小开销路径。假设所有链路的开销值均为10。

·     排除亲和属性为“红色”的链路。

正常情况下,Device A到Device C的路径为Router A->Router B->Router C。当Device B故障时,到Device C的流量将切换到TI-LFA计算的备份路径转发。Device A收敛后,到Device C的流量将沿着收敛后路径转发。此时,如果Device D还没有收敛,仍按照收敛前的路径转发流量,则Device A到Device D之间形成环路。

通过正切防微环功能可以解决上述问题。在Device A上开启该功能后,可以使Device A延迟一段时间收敛,在此期间Device A不响应拓扑变化,仍然使用TI-LFA备份路径转发流量;网络中的其他节点正常收敛。等待Device D和Device F收敛完成后,Device A再开始收敛。Device A收敛完成后,到Device C的流量沿将着收敛后路径转发,从而避免发生环路。

图1-16 正切防微环故障场景

 

5. Flex-Algo的SR防微环

Flex-Algo的正切防微环仅能解决正切微环的问题。Flex-Algo的SR防微环功能可以解决正切微环和回切微环的问题。

使用Flex-Algo进行路径计算的场景中,在网络故障或故障恢复期间,路由都会重新收敛,由于网络节点之间转发状态短暂不一致,各个设备收敛速度不同,可能存在转发微环现象。配置Flex-Algo的SR防微环功能后,在IS-IS收敛期间,设备会按照指定路径转发流量,转发过程不依赖于各设备的路由收敛,从而避免产生环路。为了保证IS-IS收敛有足够的时间,可以配置Flex-Algo的SR防微环延迟时间,在此期间设备按照指定路径转发流量。在网络故障恢复IS-IS完成收敛后,流量再通过IS-IS计算的路径转发。

Flex-Algo SR防微环的正切防微环机制与Flex-Algo的正切防微环机制相似,本节只介绍Flex-Algo SR防微环的回切防微环功能。

图1-17所示,全网节点部署Flex-Algo的TI-LFA,FAD为:

·     使用SPF算法。

·     基于IS-IS链路开销计算到达目的地的最小开销路径。假设所有链路的开销值均为10。

·     排除亲和属性为“红色”的链路。

Device B和Device C之间的链路故障恢复前,数据流量沿着备份路径转发。当Device B和Device C之间的链路故障恢复后,如果Device A先于Device B收敛,则Device A会将流量转发给Device B,但是Device B没有收敛,仍旧沿着备份路径转发,这样Device A和Device B之间就会形成环路。

通过SR防微环功能可以解决上述问题。Device A在故障回切以后,会自动计算一条最优路径达到Device C,并按照该路径转发流量,即Device A在转发时为报文添加端到端路径信息(例如Device B到Device C的邻接标签),这样Device B收到报文后,根据报文的路径信息将报文转发给Device C,避免环路的产生。

经过SR防微环延迟时间后,Device B节点完成收敛,Device A去除额外添加的路径信息,按正常转发的方式将报文转发到Device C。

图1-17 回切防微环故障场景

 

6. 配置限制和指导

同时配置Flex-Algo算法的正切防微环功能和SR防微环功能,则SR防微环功能生效。

7. 开启TI-LFA FRR功能

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入Flex-Algo视图。

flex-algo flex-algo-id

(4)     开启TI-LFA(Topology-Independent Loop-free Alternate,拓扑无关无环备份)快速重路由功能。

fast-reroute ti-lfa enable

缺省情况下,TI-LFA快速重路由功能处于开启状态。

(5)     (可选)开启Level-1区域的TI-LFA使用Level-2的路径作为备份路径的功能。

a.     退回IS-IS视图。

quit

b.     进入IS-IS IPv4地址族视图或IS-IS IPv6地址族视图。

address-family { ipv4 | ipv6 } [ unicast ]

c.     开启Level-1区域的TI-LFA使用Level-2的路径作为备份路径的功能。

inter-level-tilfa level-1 enable [ prefer ]

缺省情况下,Level-1区域的TI-LFA使用Level-2的路径作为备份路径的功能处于关闭状态。

在IS-IS IPv4单播地址族视图下配置了fast-reroute lfa ecmp-shared命令后,IS-IS IPv4单播地址族视图下配置的本命令将会失效;在IS-IS IPv6单播地址族视图下配置了fast-reroute lfa ecmp-shared命令后,IS-IS IPv6单播地址族视图下配置的本命令将会失效。

8. 配置正切防微环功能

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入Flex-Algo视图。

flex-algo flex-algo-id

(4)     开启FRR正切防微环功能。

fast-reroute microloop-avoidance enable

缺省情况下,正切防微环功能处于开启状态。

(5)     配置FRR正切防微环延迟时间。

fast-reroute microloop-avoidance rib-update-delay delay-time [ level-1 | level-2 ]

缺省情况下,FRR正切防微环延迟时间为5000毫秒。

9. 配置SR防微环功能

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入Flex-Algo视图。

flex-algo flex-algo-id

(4)     开启Flex-algo算法的SR防微环功能。

segment-routing microloop-avoidance enable

缺省情况下,Flex-algo算法的SR防微环功能处于开启状态。

(5)     配置Flex-algo算法的SR防微环延迟时间。

segment-routing microloop-avoidance rib-update-delay delay-time [ level-1 | level-2 ]

缺省情况下,Flex-algo算法的SR防微环延迟时间为5000毫秒。

(6)     (可选)配置Flex-Algo SR防微环在SID列表中封装严格SID。

segment-routing microloop-avoidance strict-sid-only

缺省情况下,未配置Flex-Algo SR防微环在SID列表中封装严格SID。

1.9.10  配置Flex-Algo算法的快速重路由备份路径优选方案的优先级

1. 功能简介

IS-IS Flex-Algo算法的快速重路由备份路径选择方式为:

·     节点保护:选择网络中特定节点转发流量。

·     最小路径开销:选择网络中链路开销最小的链路转发流量。

图1-18所示,所有节点使用Flex-Algo算法,算法的FAD为:

·     使用SPF算法。

·     基于IS-IS链路开销计算到达目的地的最小开销路径。

·     排除亲和属性为“蓝色”的链路。

Device A到Device H的主路径为Device A->Device E->Device F->Device G->Device H,备份路径有Device A->Device B->Device C->Device D->Device H、Device A->Device B->Device C->Device F->Device G>Device H和Device A->Device E->Device F->Device C->Device D>Device H三种选择:

·     当主要求备份路径通过特定网络节点转发流量时,例如由Device E转发流量,则选择节点保护方式,备份路优选为Device A->Device E->Device F->Device C->Device D>Device H。

·     当主要求备份路径通过链路开销最小链路转发流量时,则选择最小路径开销方式,备份路优选为Device A->Device B->Device C->Device F->Device G>Device H。

图1-18 IS-IS FRR备份路径选择示意图

2. 配置限制和指导

优先采用节点保护方式计算备份路径时,如果不能计算出备份路径,则再通过最小开销路径方式计算备份路径。如果仍不能计算备份路径,则主链路故障后无法保证可靠性。

优先采用最小开销路径方式计算备份路径时,如果不能计算出备份路径,则不会再通过节点保护方式计算备份路径,主链路故障后无法保证可靠性。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入Flex-Algo视图。

flex-algo flex-algo-id

(4)     配置Flex-algo算法的快速重路由备份路径优选方案的优先级。

fast-reroute tiebreaker { lowest-cost | node-protecting } preference preference [ level-1 | level-2 ]

缺省情况下,最小开销路径优选方案的优先级为20,节点保护优选方案的优先级为40。

1.9.11  配置SR-MPLS应用Flex-Algo算法

1. 功能简介

IS-IS通告Prefix SID时,会携带对应的算法信息,通过算法ID标识该Prefix SID使用的算法。缺省情况下,Prefix SID关联的算法ID为0,表示节点使用SPF算法基于IS-IS链路开销计算到达Prefix SID对应前缀的最优路径。

Prefix SID关联Flex-Algo算法后,节点将使用Flex-Algo算法计算到达Prefix SID对应前缀的最优路径。例如,Prefix SID关联Flex-Algo算法130,该算法的FAD为:

·     使用SPF算法。

·     基于IS-IS链路开销计算到达目的地的最小开销路径。

·     排除亲和属性为“蓝色”的链路。

将索引值201分配给Router F上的Loopback地址1.1.1.1/32,Router F上标签转发表项的入标签为16201。Router A使用Flex-Algo算法130计算出来的到达1.1.1.1/32的标签转发表项的入标签为16201,出标签为16201,下一跳为Router C。最终建立的Router A到Router F的SRLSP如图1-19所示。

图1-19 Flex-Algo算法计算Router A到Router F的路径

 

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入Loopback接口视图。

interface loopback interface-number

(3)     配置前缀SID关联Flex-Algo算法。

isis [ process-id process-id ] prefix-sid algorithm algorithm-id { absolute absolute-value | index index-value } [ n-flag-clear | { explicit-null | no-php } ] *

缺省情况下,未配置IS-IS前缀SID关联Flex-Algo算法。

关于本命令的详细介绍,请参见“Segment Routing命令参考”中的“SR-MPLS”。

1.9.12  配置基于Color引流

1. 功能简介

当SR MPLS网络的源节点和目的节点之间存在多条路径时,如果SR节点希望通过特定Flex-algo算法计算出的路径转发报文,则需要配置本功能将流量引到Flex-Algo算法计算出来的路径上,通过该路径的标签信息转发流量。

配置本功能后,当SR节点收到携带Color扩展团体属性的BGP路由时,查找Color属性映射的Flex-Algo算法,根据BGP路由的目的地址查找该Flex-Algo算法计算出来的路径,并将BGP路由迭代到该路径上。当SR节点收到匹配该BGP路由的报文时,会通过迭代后的路径上的标签信息转发报文。

如果SR节点接收到的BGP路由未携带扩展团体属性,BGP可以通过如下两种方式为路由指定Color扩展团体属性:

·     通过配置路由策略为路由添加Color值。

·     通过default-color命令为路由指定缺省Color值。关于default-color命令的详细介绍,请参见“Segment Routing命令参考”在中的“SR-MPLS TE Policy”。

路由优先采用路由策略中指定的Color值。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入Segment Routing视图。

segment-routing

(3)     创建并进入SR Flex-Algo视图。

flex-algo

(4)     配置BGP路由的Color扩展团体属性和灵活算法之间的映射关系。

color-mapping color-value flex-algo flex-algo-id

缺省情况下,未配置BGP路由的Color扩展团体属性和灵活算法之间的映射关系。

1.9.13  配置SRv6应用Flex-Algo算法

1. 功能简介

配置IS-IS SRv6功能后,IS-IS会使用包含SRv6 Locator TLV的LSP发布SRv6 Locator信息。SRv6 Locator TLV包含算法字段,通过算法ID标识该Locator使用的算法。缺省情况下,SRv6 Locator TLV中的算法ID为0,表示节点使用SPF算法基于IS-IS链路开销计算到达SRv6 Locator前缀的最优路径。

Locator段关联Flex-Algo算法后,节点将使用Flex-Algo算法计算到达SRv6 Locator前缀的最优路径。例如,SRv6 Locator关联Flex-Algo算法130,该算法的FAD为:

·     使用SPF算法。

·     基于IS-IS链路开销计算到达目的地的最小开销路径。

·     排除亲和属性为“蓝色”的链路。

Router A在Flex-Algo算法拓扑中使用SPF计算出来的到达Locator前缀2001:0:8:6::/64的路径如图1-20所示。

图1-20 Flex-Algo算法计算Router A到Router F的路径

 

2. 配置限制和指导

Locator段需要关联已经存在的Flex-Algo算法,否则IS-IS不会发布SRv6 Locator信息。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启SRv6功能,并进入SRv6视图。

segment-routing ipv6

缺省情况下,SRv6功能处于关闭状态。

关于本命令的详细介绍,请参见“Segment Routing配置指导”中的“SRv6”。

(3)     配置Locator段,并进入SRv6 Locator视图

locator locator-name [ ipv6-prefix ipv6-address prefix-length [ args args-length | static static-length ] * ]

关于本命令的详细介绍,请参见“Segment Routing配置指导”中的“SRv6”。

(4)     配置Locator段关联Flex-Algo算法。

flex-algo algorithm algo-id

缺省情况下,Locator段未关联Flex-Algo算法。

关于本命令的详细介绍,请参见“Segment Routing配置指导”中的“SRv6”。

1.10  配置IS-IS定时器

1.10.1  配置Hello报文发送时间间隔

1. 功能简介

IS-IS协议通过收发Hello报文来维护与相邻设备的邻居关系,如果路由器在邻居关系保持时间内(即Hello报文失效数目与Hello报文发送时间间隔的乘积)没有收到来自邻居路由器的Hello报文时将宣告邻居关系失效。通过设置Hello报文失效数目和Hello报文的发送时间间隔,可以调整邻居关系保持时间,即邻居路由器要花多长时间能够监测到链路已经失效并重新进行路由计算。

2. 配置限制和指导

DIS发送Hello报文的时间间隔是isis timer hello设置的时间的1/3。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置Hello报文的发送时间间隔。

isis timer hello seconds [ level-1 | level-2 ]

缺省情况下,Hello报文的发送时间间隔为10秒。

1.10.2  配置CSNP报文发送时间间隔

1. 功能简介

当网络类型为广播网时,DIS使用CSNP报文来进行LSDB同步,因此只有在被选举为DIS的路由器上进行该项配置才有效。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置DIS在广播网络上发送CSNP报文的时间间隔。

isis timer csnp seconds [ level-1 | level-2 ]

缺省情况下,CSNP报文的发送时间间隔为10秒。

1.10.3  配置LSP最大生存时间

1. 功能简介

每个LSP都有一个最大生存时间,随着时间的推移最大生存时间将逐渐减小,当LSP的最大生存时间为0时,IS-IS将启动清除过期LSP的过程。用户可根据网络规模对LSP的最大生存时间进行调整。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置LSP最大生存时间。

timer lsp-max-age seconds

缺省情况下,LSP最大生存时间为1200秒。

1.10.4  配置LSP刷新周期和LSP重新生成的时间间隔

1. 功能简介

路由器必须定时刷新自己生成的LSP,防止LSP的最大生存时间减小为0。另外,通过定时刷新LSP可以使整个区域中的LSP保持同步。用户可对LSP的刷新周期进行配置,提高LSP的刷新频率可以加快网络收敛速度,但是将占用更多的带宽。

除了定时刷新可以重新生成LSP外,当网络拓扑发生变化,如邻居路由器up或down,接口Metric值、System ID或区域地址发生变化等,将触发路由器重新生成LSP。为了防止网络拓扑频繁变化而导致LSP频繁重新生成,用户可配置LSP生成时间间隔,以抑制网络变化频繁导致的带宽资源和路由器资源被过多占用的问题。

2. 配置限制和指导

LSP重新生成的时间间隔的变化规则如下:

·     如果只指定了maximum-interval参数,那么LSP重新生成的时间间隔固定为maximum-interval

·     如果未指定incremental-interval参数,LSP重新生成的时间间隔最大为maximum-interval,最小为minimum-interval

·     如果指定了incremental-interval参数,那么在网络变化频繁的情况下将LSP重新生成的时间间隔按照incremental-interval×2n-2(n为连续触发路由计算的次数)进行延长,最大不超过maximum-interval。在网络变化不频繁的情况下将LSP重新生成时间间隔缩小到minimum-interval

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置LSP刷新周期。

timer lsp-refresh seconds

缺省情况下,LSP刷新周期为900秒。

(4)     配置LSP重新生成的时间间隔。

timer lsp-generation maximum-interval [ minimum-interval [ incremental-interval ] ] [ level-1 | level-2 ]

缺省情况下,LSP重新生成的最大时间间隔为5秒,最小时间间隔为50毫秒,时间间隔惩罚增量为200毫秒。

1.10.5  配置LSP发送时间间隔

1. 功能简介

当LSDB的内容发生变化时,IS-IS将把发生变化的LSP扩散出去,用户可以对LSP的最小发送时间间隔进行调节。

请合理配置LSP发送时间间隔,当存在大量IS-IS接口或大量路由时,会发送大量的LSP报文,导致LSP风暴的出现。

在点到点链路上,发送的LSP需要得到对端的应答,否则将在指定的时间间隔内重新发送该LSP,重传时间间隔决定了当一个LSP在P2P链路上丢失时它被重传需要等待的时间。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置发送LSP的最小时间间隔以及一次最多可以发送的LSP报文数目。

isis timer lsp time [ count count ]

缺省情况下,LSP的发送最小时间间隔为33毫秒,一次最多可以发送5个LSP报文。

(4)     配置LSP在点到点链路上的重传时间间隔。

isis timer retransmit seconds

缺省情况下,LSP在点到点链路上的重传时间间隔为5秒。

1.10.6  配置LSP重复到达的时间间隔

1. 功能简介

在网络变化不频繁的情况下,将接收LSP的时间间隔缩小到minimum-interval,而在网络变化频繁的情况下可以进行相应的惩罚,将接收LSP的时间间隔按照配置的惩罚增量延长,最大不超过maximum-interval

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置LSP重复到达的时间间隔。

timer lsp-arrival maximum-interval [ minimum-interval [ incremental-interval ] ] [ level-1 | level-2 ]

缺省情况下,未配置LSP重复到达的时间间隔。

1.10.7  配置老化的LSP在LSDB里的存活时间

1. 功能简介

IS-IS生成LSP时,会在LSP中填写此LSP的最大有效时间。当此LSP被其它设备接收后,它的有效时间会随着时间的推移不断减小。如果设备一直没有收到更新的LSP,而此LSP的有效时间已经减少到0,那么此LSP成为老化LSP。老化LSP继续存活一段时间后,若还未收到新的LSP,那么IS-IS将此LSP从LSDB中删除。

IS-IS建立了大量的邻居关系,且LSDB中存在大量LSP时,某些LSP可能还未泛洪出去就被老化,且超过老化LSP存活时间而被删除。发布源未能收到这些老化LSP,且不存在其他因素触发发布源重新生成LSP,则需要等待LSP更新周期到达后再重新生成LSP,这样可能会导致LSP更新不及时,IS-IS需要较长时间才能完成路由学习。为了解决上述问题,建议使用本功能将老化LSP在本地LSDB中的存活时间调大,使得老化LSP在存活时间超时前能够被IS-IS泛洪出去,触发发布源及时更新LSP,减少路由学习时间。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置老化的LSP在LSDB里的存活时间。

timer aging-lsp-lifetime { non-self-originate | self-originate } lifetime

缺省情况下,本地产生的LSP老化后在LSDB里存活的时间为1200秒;非本地产生的LSP老化后在LSDB里存活的时间为60秒。

1.10.8  配置SPF参数

1. 功能简介

根据本地维护的LSDB,运行IS-IS协议的路由器通过SPF算法计算出以自己为根的最短路径树,并根据这一最短路径树决定到目的网络的下一跳。通过调节SPF的计算间隔,可以抑制网络频繁变化可能导致的带宽资源和路由器资源被过多占用的问题。

本命令在网络变化不频繁的情况下将连续路由计算的时间间隔缩小到minimum-interval,而在网络变化频繁的情况下可以进行相应惩罚,增加incremental-interval×2n-2(n为连续触发路由计算的次数),将等待时间按照配置的惩罚增量延长,最大不超过maximum-interval

2. 配置IPv4 SPF参数

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置IPv4 IS-IS路由计算时间间隔。

timer spf { maximum-interval [ minimum-interval [ incremental-interval [ conservative ] ] ] | millisecond millisecond-interval } [ exclude-prc ]

缺省情况下,IPv4 IS-IS路由计算的最大时间间隔为5秒,最小时间间隔为50毫秒,时间间隔惩罚增量为200毫秒。

3. 配置IPv6 SPF参数

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     配置IPv6 IS-IS路由计算的时间间隔。

timer spf { maximum-interval [ minimum-interval [ incremental-interval [ conservative ] ] ] | millisecond millisecond-interval } [ exclude-prc ]

缺省情况下,IPv6 IS-IS路由计算的最大时间间隔为5秒,最小时间间隔为50毫秒,时间间隔惩罚增量为200毫秒。

1.11  配置IS-IS报文相关功能

1.11.1  配置接口的DIS优先级

1. 功能简介

在广播网络中,IS-IS需要在所有的路由器中选举一个路由器作为DIS。

对于IS-IS,Level-1和Level-2的DIS是分别选举的,可以为不同级别的DIS选举设置不同的优先级。优先级数值越高,被选中的可能性就越大。如果所有路由器的DIS优先级相同,将会选择MAC地址最大的路由器作为DIS。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置接口的DIS优先级。

isis dis-priority priority [ level-1 | level-2 ]

缺省情况下,接口的DIS优先级为64。

1.11.2  配置IS-IS管理标记

1. 功能简介

管理标记特性允许在IS-IS域中通过管理标记对地址前缀进行控制,达到简化管理的目的。

图1-21所示,Device A需要与处于其他Level-1区域的Device B、Device C、Device D相互通信。为了保证信息安全,其他Level-1区域内的设备不能收到Device A发送的报文。为了达到此目的,可以在Device B、Device C、Device D上使能了IS-IS的接口配置相同的管理标记值tag。然后在Area 4的Level-1-2设备上将Level-2区域的路由信息渗透到Level-1区域时,需要匹配指定的tag。这样就可以满足Device A仅与其他Level-1区域中的Device B、Device C、Device D进行通信的目的。此时,在Device A上形成的拓扑结构如图1-22所示。

图1-21 IS-IS组网示意图

 

图1-22 IS-IS管理标记应用示意图

 

2. 配置IPv4 IS-IS接口的管理标记值

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置接口的管理标记值。

isis tag tag

缺省情况下,未配置接口的管理标记值。

仅当IS-IS开销值类型为widewide-compatiblecompatible时,IS-IS才会在发布的LSP的IPv4网段地址信息中携带tag值。

3. 配置IPv6 IS-IS接口的管理标记值

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置接口的管理标记值。

isis ipv6 tag tag

缺省情况下,未配置接口的管理标记值。

无论IS-IS使用何种开销值类型,IS-IS均会在发布的LSP的IPv6地址前缀信息中携带tag值。

1.11.3  配置Hello报文失效数目

1. 功能简介

Hello报文失效数目,即宣告邻居失效前IS-IS没有收到的邻居Hello报文的数目。

如果路由器在邻居关系保持时间内(即Hello报文失效数目与Hello报文发送时间间隔的乘积)没有收到来自邻居路由器的Hello报文时将宣告邻居关系失效。通过设置Hello报文失效数目和Hello报文的发送时间间隔,可以调整邻居关系保持时间,即邻居路由器要花多长时间能够监测到链路已经失效并重新进行路由计算。

在广播链路上,Level-1和Level-2 Hello报文会分别发送,Hello报文失效数目需要分别设置;在点到点链路中,Level-1和Level-2的Hello报文是在同一个点到点Hello报文中发送,因此不需要指定Level-1或Level-2。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置Hello报文失效数目。

isis timer holding-multiplier value [ level-1 | level-2 ]

缺省情况下,Hello报文失效数目为3。

1.11.4  禁止接口发送和接收IS-IS报文

1. 功能简介

通过禁止接口发送和接收IS-IS报文,禁止了该接口与相邻路由器建立邻居关系,但仍然可以把该接口直连网络的路由信息放在LSP中从其他接口宣告出去。由于不用建立邻居关系,可以节省带宽和路由器处理时间,同时,其他路由器也可以知道到达该接口直连网络的路由信息。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     禁止接口发送和接收IS-IS报文。

isis silent

缺省情况下,接口既发送也接收IS-IS报文。

1.11.5  配置接口发送小型Hello报文

1. 功能简介

IS-IS协议报文直接封装在链路层报文头后面,无法实现协议报文在IP层的自动分片。因此,运行IS-IS的路由器与对端路由器建立邻居关系时,会发送达到链路MTU大小的Hello报文,双方进行MTU大小的通信协商,来保证建立邻居双方接口MTU的一致性,从而避免双方MTU大小不一致导致较小的PDU可以通过,但是较大的PDU无法通过。

当邻居路由器双方MTU大小一样的时候,为了避免发送过大的Hello报文浪费带宽,可以配置接口发送不加入填充CLV的小型Hello报文。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置接口发送不加入填充CLV的小型Hello报文。

isis small-hello

缺省情况下,接口发送标准Hello报文。

1.11.6  配置LSP报文长度

1. 功能简介

IS-IS协议报文直接封装在链路层报文头后面,无法实现协议报文在IP层的自动分片。

为了不影响LSP的正常扩散,要求同一区域内所有IS-IS路由器生成LSP报文的最大长度不能超过该区域内所有路由器IS-IS接口MTU的最小值。

如果IS-IS运行的区域中各IS-IS接口的MTU值不一致,建议用户对IS-IS生成LSP报文的最大长度进行配置,将同一区域内所有IS-IS路由器生成LSP报文的最大长度配置为该区域内所有路由器IS-IS接口MTU的最小值。如果不进行配置,系统将根据当前设备IS-IS接口最小MTU值的变化而自动重启IS-IS进程动态调整生成LSP报文的最大长度,会在一定程度上影响业务的正常运行。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置生成的Level-1 LSP和Level-2 LSP的最大长度。

lsp-length originate size [ level-1 | level-2 ]

缺省情况下,生成的Level-1 LSP和Level-2 LSP的最大长度为1497字节。

(4)     配置可以接收LSP的最大长度。

lsp-length receive size

缺省情况下,接收的LSP报文的最大长度为1497字节。

1.11.7  配置LSP快速扩散功能

1. 功能简介

通过使能LSP快速扩散功能,当LSP发生变化而导致SPF重新计算时,在SPF重新计算前,把导致SPF重新计算的LSP快速扩散出去,将大大缩短路由器之间由于进行LSP同步而导致LSDB不一致的时间,提高全网的快速收敛性能。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置LSP快速扩散功能。

flash-flood [ flood-count flooding-count | max-timer-interval flooding-interval | [ level-1 | level-2 ] ] *

缺省情况下,LSP快速扩散功能处于关闭状态。

1.11.8  配置LSP分片扩展功能

1. 功能简介

当LSP容量不足时,新引入的路由以及新增的TLV均无法添加到LSP中。此时,可以使用LSP分片扩展功能扩大LSP容量,当LSP容量扩大时,IS-IS会自动尝试将引入失败的路由以及添加失败的TLV重新添加到LSP中。

LSP分片扩展功能可以使IS-IS设备生成更多的LSP分片,用来携带更多的IS-IS信息。

LSP分片扩展功能涉及如下基本概念:

·     初始系统(Originating System):实际运行IS-IS协议的进程。

·     初始系统ID(Normal System ID):初始系统的系统ID。

·     虚拟系统ID(Additional System ID):虚拟系统ID由用户配置。虚拟系统ID和初始系统ID一样,在整个路由域中必须唯一。

·     虚拟系统(Virtual System):由虚拟系统ID标识的系统,用来生成扩展LSP分片。扩展LSP分片的LSP ID中携带虚拟系统ID。

·     24号TLV(IS Alias ID TLV):用来表示初始系统与虚拟系统的关系。

一个IS-IS进程最多可以产生256个分片,能够携带的路由数量有限。分片扩展功能通过增加虚拟系统ID,IS-IS进程可以生成更多的LSP分片。每个虚拟系统ID都允许生成256个扩展的LSP分片。配置虚拟系统和分片扩展功能后,IS-IS会将初始系统发布的LSP报文无法装下的内容,放入虚拟系统的LSP中发出,并在LSP中添加IS Alias ID TLV来声明此虚拟系统和初始系统的关系。

图1-23所示,Device A和Device B均支持LSP分片扩展功能。在Device A上配置LSP分片扩展功能后,Device A将一部分路由信息放入Device A1和Device A2的LSP报文中向外发送。当Device B收到Device A1和Device A2发送的LSP时,Device B通过IS Alias ID TLV判断出报文的初始系统是Device A,则把Device A1和Device A2发布的信息均视为Device A的信息。这种情况下,虚拟系统不参与路由计算。

图1-23 IS-IS LSP分片扩展

 

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     使能IS-IS进程的LSP分片扩展功能。

lsp-fragments-extend [ level-1 | level-1-2 | level-2 ]

缺省情况下,LSP分片扩展功能处于关闭状态。

使能分片扩展功能后,使能该IS-IS进程的所有接口的MTU不能小于512,否则LSP分片扩展功能将不会生效。

(4)     配置IS-IS进程的虚拟系统ID。

virtual-system virtual-system-id

缺省情况下,未配置IS-IS进程的虚拟系统ID。

为了使路由器生成扩展LSP分片,应至少配置一个虚拟System ID。

1.12  控制LSP的生成、发布与接收

1.12.1  限制LSP泛洪

1. 功能简介

在ATM、FR等NBMA网络中,如果网络联通程度较高、网络中存在多条点到点链路时,如图1-24所示,Router A、Router B、Router C和Router D均使能了IS-IS,Router A新生成一个LSP时,将把该LSP分别从Serial3/1/1:0、Serial3/1/2:0和Serial3/1/3:0泛洪出去,Router D从Serial3/1/3:0收到Router A发送的LSP后,也会把该LSP从Serial3/1/1:0和Serial3/1/2:0发送给Router B和Router C,而Router B和Router C已经从Serial3/1/1:0、Serial3/1/2:0收到了Router A发送的LSP。LSP的重复扩散会导致带宽的浪费。

图1-24 联通程度较高网络示意图

为了避免这种情况的发生,可以将一些接口配置属于一个Mesh-Group,也可以配置接口阻塞。

·     将设备的几个接口配置属于一个Mesh-Group后,如果从其中的一个接口接收到一个新的LSP,IS-IS只把该LSP扩散到没有配置Mesh-Group的接口以及与当前接口不属于同一个Mesh-Group的接口,而不会扩散到同Mesh-Group中的其他接口。

·     配置接口阻塞后,只有该接口从邻居路由器收到要求发送LSP的请求时才会发送LSP,否则不会主动向外发送LSP。

2. 配置限制和指导

设置接口加入Mesh-Group或对接口进行阻塞时应注意保留一定的冗余度,以免由于链路故障影响LSP报文的正常扩散。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     限制LSP泛洪。请选择其中一项进行配置。

¡     配置接口属于Mesh-Group。

isis mesh-group mesh-group-number

¡     配置接口阻塞。

isis mesh-group mesh-blocked

缺省情况下,接口不属于任何Mesh-Group且接口不阻塞。

以上配置只对点到点类型链路的接口起作用。

1.12.2  配置路由震荡更新抑制

1. 功能简介

当IS-IS网络中发生路由震荡时,设备会将不断生成的LSP在全网泛洪,这样可能会进一步加剧网络的恶化。同时,设备收到LSP后会因进行频繁的路由计算而占用过多的CPU资源,导致性能下降。配置此功能可有效避免上述情况的发生。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置路由震荡更新抑制。请选择其中一项进行配置。

¡     配置当路由震荡时抑制IS-IS LSP的重新生成。

timer lsp-generation suppress-flapping delay-interval [ threshold threshold-value] [ level-1 | level-2 ]

缺省情况下,不会抑制IS-IS LSP的重新生成。

¡     配置当路由震荡时抑制IS-IS泛洪LSP。

timer lsp-flood suppress-flapping delay-interval [ threshold threshold-value ] [ level-1 | level-2 ]

缺省情况下,不会抑制IS-IS泛洪LSP。

¡     配置当路由震荡时抑制IS-IS启动路由计算。

timer route-calculate suppress-flapping delay-interval [ threshold threshold-value ] [ level-1 | level-2 ]

缺省情况下,不会抑制IS-IS的路由计算。

¡     配置收到分片号为00的LSP清除报文后启动路由计算的延迟时间。

timer purge-zero-lsp route-calculate-delay delay-interval [ level-1 | level-2 ]

缺省情况下,收到分片号为00的LSP清除报文后启动路由计算的延迟时间为10秒。

1.13  配置IS-IS高级功能

1.13.1  配置在P2P接口上建立邻接关系必须在同一网段的检查功能

1. 功能简介

当接口的网络类型为P2P时,对端的IP地址与当前接口不在同一网段也可以建立邻接关系。通过配置与对端路由器建立邻接关系必须在同一网段的检查功能,即接口上接收Hello报文时,对端的IP地址与当前接口必须在同一网段才可以建立邻接关系。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置在P2P接口上建立邻接关系必须在同一网段的检查功能。

isis peer-ip-check

缺省情况下,在网络类型为P2P的接口上建立邻接关系时,不对接口是否处于同一网段进行检查。

1.13.2  配置路由收敛的优先级

1. 功能简介

IS-IS协议中,当网络拓扑发生变化时,路由要重新收敛。IS-IS路由收敛的优先级由高到低包括:

·     Critical:最高优先级。

·     High:高优先级。

·     Medium:中优先级。

·     Low:低优先级。

IS-IS路由收敛的优先级越高收敛的速度越快。

配置IS-IS路由收敛优先级后,IS-IS按照如下机制设置路由的收敛优先级。

·     对于已经存在的IS-IS路由,IS-IS按照prefix-priority命令重新设置路由的收敛优先级。

·     对于新增加的IS-IS路由,IS-IS按照prefix-priority命令的过滤结果设置路由的收敛优先级。

·     如果一条路由符合多个收敛优先级的匹配规则,则这些收敛优先级中最高者当选为路由的收敛优先级。

2. 配置IPv4 IS-IS路由收敛的优先级

(1)     进入系统视图。

system-view

(2)     进入IS-IS IPv4单播地址族视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

address-family ipv4 [ unicast ]

(3)     配置IPv4 IS-IS路由收敛的优先级。请选择其中一项进行配置。

¡     配置指定前缀列表的IPv4 IS-IS路由收敛的优先级。

prefix-priority { critical | high | medium } { prefix-list prefix-list-name | tag tag-value }

¡     通过路由策略指定IPv4 IS-IS路由收敛的优先级。

prefix-priority route-policy route-policy-name

缺省情况下,IPv4 IS-IS路由收敛的优先级为低优先级。

3. 配置IPv6 IS-IS路由收敛的优先级

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     配置IPv6 IS-IS路由收敛的优先级。

prefix-priority { critical | high | medium } { prefix-list prefix-list-name | tag tag-value }

prefix-priority route-policy route-policy-name

缺省情况下,IPv6 IS-IS路由收敛的优先级为低优先级。

1.13.3  配置LSDB过载标志位

1. 功能简介

IS-IS使用过载标志位来标识过载状态。IS-IS过载标志位是指LSP报文中的OL位。对设备设置过载标志位后,其他设备在进行SPF计算时不会使用这台设备做转发,只计算该设备上的直连路由。

当运行IS-IS的路由器因为内存不足或其他原因无法记录完整的LSDB时,将会导致区域路由的计算错误,在故障排除过程中,通过给怀疑有问题的路由器设置过载标志位,可以将其从IS-IS网络中暂时隔离,便于进行故障定位。

图1-25所示,正常情况下,Device A到达IP network网段的报文由Device D转发。当Device D发送的LSP报文中的过载标志位置位后,Device A到达IP network网段的报文将通过Device B、Device C转发到IP network网段,但转发到Device D直连网段的报文则不受影响。

图1-25 LSDB过载示意图

 

2. 配置IPv4 LSDB过载标志位

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置过载标志位。

set-overload [ on-startup [ [ start-from-nbr system-id [ timeout1 [ nbr-timeout ] ] ] | timeout2 | wait-for-bgp [ timeout3 ] ] [ route-delay-distribute delay-time ] [ send-sa-bit [ duration ] ] [ route-max-metric ] ] [ allow { external | interlevel } * ]

缺省情况下,未配置过载标志位。

3. 配置IPv6 LSDB过载标志位

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     配置IPv6拓扑的LSDB过载标志位。

set-overload [ on-startup [ [ start-from-nbr system-id [ timeout1 [ nbr-timeout ] ] ] | timeout2 | wait-for-bgp4+ [ timeout3 ] ] [ route-delay-distribute delay-time ] [ send-sa-bit [ duration ] ] [ route-max-metric ] ] [ allow { external | interlevel } * ]

缺省情况下,未配置过载标志位。

1.13.4  配置LSDB过载时调整接口开销值

1. 功能简介

本功能用于Anycast场景中避免邻居将流量发往overload设备。设备进入overload状态后,会向邻居发送OL位置位的LSP,邻居收到此LSP进行路径计算后,对于目的地不是overload设备直连网段的报文,不会将报文发送给overload设备转发;对于目的地是overload设备直连网段的报文,邻居会将报文发送给overload设备。在Anycast场景中,对于目的地为Anycast的报文,邻居会将报文发送到开销值最小的Anycast节点,而这个节点可能已经进入overload状态。在overload设备上配置本功能后,系统将设备的IS-IS接口开销值调大,邻居优选其他节点进行报文转发。

本功能仅在设备进入overload状态后才会生效,具体机制如下:

·     设备处于overload状态期间,系统将设备上IS-IS接口的开销值调大,以便IS-IS选择更优的路径转发流量。

·     设备退出overload状态,或执行undo overload adjust-cost命令后,系统将IS-IS接口的开销值恢复为调整前的值。

2. 配置限制和指导

IPv4和IPv6未分拓扑计算的情况下,在IS-IS视图下配置本功能后,将影响IPv4 IS-IS接口和IPv6 IS-IS接口的开销值。在IPv6地址族视图下配置本功能后,该配置不生效。

IPv4和IPv6分拓扑计算的情况下,在IS-IS视图下配置本功能后,仅影响IPv4 IS-IS接口的开销值。在IPv6地址族视图下配置本功能后,仅影响IPv6 IS-IS接口的开销值。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图或IPv6地址族视图。

¡     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

¡     请依次执行以下命令进入IPv6地址族视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

address-family ipv6 [ unicast ]

(3)     调整设备进入overload状态时所有IS-IS接口的开销值。

overload adjust-cost { cost-offset | max }

缺省情况下,设备进入overload状态时不会调整IPv4 IS-IS接口的开销值。

1.13.5  配置IS-IS isolate

1. 功能简介

Isolate是一种对网络设备进行软件或硬件维护的方式。Isolate使用网络中的冗余路径,平滑移除需要维护的设备。当完成设备维护后,关闭Isolate功能可以让该设备重新投入使用。

当用户需要对网络中某台设备的IS-IS协议进行升级时,为了不对当前网络中通过该设备发布的IS-IS路由指导转发的流量产生影响,可以使用IS-IS isolate功能把该设备上的IS-IS协议从当前网络中隔离出来。具体工作机制如下:

(1)     开启IS-IS isolate功能后,IS-IS发布的LSP报文中的过载标志位置位,并将IS-IS接口的链路开销值调整为最大值,以便邻居重新进行路径优选。

(2)     邻居收到LSP完成路由计算后,将选择更优的路径转发流量,不再将流量发往IS-IS isolate设备。此时,设备的IS-IS协议完全从当前组网中隔离出来,可以对该设备上的IS-IS协议进行升级处理。

(3)     对IS-IS协议的维护结束后,关闭IS-IS isolate功能清除过载标志位,并将链路度量值恢复为调整前的值,从而让该设备的IS-IS协议重新加入网络。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     使用IS-IS isolate功能对设备的IS-IS协议进行维护。

a.     开启IS-IS协议的隔离功能,将设备的IS-IS协议从网络中隔离出来。

isolate enable

b.     IS-IS协议维护结束后,关闭IS-IS协议的隔离功能,让设备的IS-IS协议重新加入网络。

undo isolate enable

缺省情况下,IS-IS协议的隔离功能处于关闭状态。

1.13.6  配置IS-IS shutdown

1. 功能简介

当用户需要对某台设备进行调试或升级等维护操作时,可以使用IS-IS shutdown功能暂时关闭设备的IS-IS进程,邻居设备将流量切换到备份路径上,不再通过该设备转发流量,从而降低设备维护对网络的影响。具体工作机制如下:

·     使用IS-IS shutdown功能的IS-IS进程将本端邻居关系置为down。

·     停止收发IS-IS协议报文,清除邻居信息、LSDB(包括自己产生的LSP和接收到的LSP)以及IS-IS路由等信息。

邻居设备在邻居关系保持时间内没有收到来自上述设备的Hello报文,将断开与上述设备的邻居关系。

当完成对网络设备的维护后,通过undo shutdown process命令重新开启IS-IS进程,以便IS-IS重新建立邻居关系。

undo isis命令相比,本功能在关闭IS-IS进程后,不会删除该进程下的配置,降低了用户维护设备的成本。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置IS-IS shutdown功能。

a.     关闭IS-IS进程。

shutdown process

b.     IS-IS协议维护结束后,重新开启IS-IS进程,让设备的IS-IS进程重新建立邻居关系。

undo shutdown process

缺省情况下,IS-IS进程处于开启状态。

1.13.7  配置ATT连接位

1. 功能简介

ATT连接位由Level-1-2路由器产生,但仅与L1 LSP有关,表示产生此LSP的路由器(Level-1-2路由器)与多个区域相连接。ATT连接位的缺省置位规则如下:

·     Level-1-2路由器在其生成的Level-1 LSP中将ATT比特位置位,用来通知同一区域中的Level-1设备自己与其他区域相连,也就是说与Level-2骨干区域相连。当Level-1区域中的设备收到Level-1-2路由器发送的ATT比特位被置位的Level-1 LSP后,它将生成一条目的地为Level-1-2路由器的缺省路由,实现和其他区域相互通信。

·     如果Level-1-2路由器只连接了一个区域,Level-1-2路由器发送的Level-1 LSP中的ATT比特位不会置位。

通过本功能可以改变缺省置位规则,具体方式如下:

·     如果希望发布的Level-1 LSP的ATT比特位一直置位,请使用set-att always命令。

·     如果不希望Level-1-2路由器所连接的Level-1路由器都因为ATT比特位生成缺省路由,可以通过如下两种方式实现:

¡     在Level-1-2路由器相连的Level-1路由器上配置ignore-att命令。

¡     在Level-1-2路由器上配置set-att never命令,该设备将不再发布ATT比特位置位的LSP。

2. 配置IS-IS不采用ATT位计算缺省路由

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置IS-IS不采用ATT位计算缺省路由。

ignore-att

缺省情况下,IS-IS采用ATT位计算缺省路由。

3. 设置系统自身发布的IPv4 Level-1 LSP的ATT位

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置系统自身发布的Level-1 LSP的ATT位置位。

set-att { always | never }

缺省情况下,Level-1-2路由器根据缺省置位规则来决定是否置位。

4. 设置系统自身发布的IPv6 Level-1 LSP的ATT位

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     配置系统自身发布的Level-1 LSP的ATT位置位。

set-att { always | never }

缺省情况下,Level-1-2路由器根据缺省置位规则来决定是否置位。

1.13.8  配置IS-IS主机名映射

1. 功能简介

IS-IS用System ID来在区域内唯一标识主机或路由器,System ID长度固定为6字节。当网络管理员检查IS-IS邻居关系的状态、IS-IS路由表以及LSDB中的内容时,十六进制表示的System ID以及LSP标识符不够直观,查看也不方便。

主机名映射提供了一种将System ID映射到主机名的服务,运行IS-IS的路由器维护一个主机名到System ID的映射关系表,在维护和管理以及网络故障诊断时,使用主机名比使用System ID会更直观,也更容易记忆。

可以通过静态配置和动态生成两种方式生成和维护此关系映射表:

·     静态配置,要求网络中的每一台路由器为其他路由器配置System ID和主机名的映射关系。当网络中路由器数目增多时,网络中每新增一台路由器或修改某台路由器的主机名映射关系,其他路由器都要做相应配置,增加了维护工作量。

·     动态生成,IS-IS网络中的每台路由器只需要在本机上配置自己的主机名称即可,配置的主机名称将通过动态主机名CLV发布出去,最后IS-IS网络中使能动态主机名映射功能的路由器都将收集到其他路由器System ID与主机名称的映射关系并生成映射表。同时还可以为广播网中的DIS配置局域网名称来代表这个广播网中的伪节点,便于网络管理员查看LSDB内容时判断LSP是由哪个DIS产生的。

2. 配置限制和指导

只有使能动态主机名映射功能后,使用display isis lsdb等命令才可以看到路由器的主机名而不是System ID。

倘若网络中的一台路由器使能了动态主机名映射功能且在当前路由器也通过静态方式为那台路由器配置了主机名,动态配置的主机名将覆盖当前路由器为其静态配置的主机名称。

3. 配置IS-IS静态主机名映射

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     为远端IS配置System ID与主机名称的映射关系。

is-name map sys-id map-sys-name

缺省情况下,没有为远端IS配置System ID与主机名称的映射关系。

每个System ID只能对应一个主机名称。

4. 配置IS-IS动态主机名映射

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     使能动态主机名映射功能并为当前路由器配置主机名称。

is-name sys-name

缺省情况下,动态主机名映射功能处于关闭状态且没有为当前路由器配置主机名称。

(4)     退回系统视图。

quit

(5)     进入接口视图。

interface interface-type interface-number

(6)     配置本地局域网名称。

isis dis-name symbolic-name

缺省情况下,未配置本地局域网名称。

该命令只有在使能了动态主机名进程的路由器上有效。该命令在点到点链路的接口上无效。

1.14  配置IS-IS的BIER能力

1. 功能简介

在使用BIER(Bit Index Explicit Replication,基于比特索引的显示复制)进行组播流量转发的场景中,节点需要通过BFR ID(Bit Forwarding Router-Identifier,BIER转发路由器标识)等信息建立转发表。为了帮助节点建立转发表,需要开启IS-IS进程的BIER能力。关于本命令和BIER的关系,以及BIER的详细介绍,请参见“BIER配置指导”中的“BIER”。

开启IS-IS的BIER能力后,IS-IS会在LSP中携带BIER边缘设备的BFR ID信息,以及其他信息(例如节点的IP地址),并在网络中泛洪。网络中的各个节点根据该LSP建立BIER转发表,以指导节点根据BIER报文中的BitString转发报文。

2. 配置限制和指导

开启IS-IS进程的BIER能力时,需要注意:

·     仅支持开启位于公网中的IS-IS进程的BIER能力。

·     同一台设备上,只能为一个IS-IS进程开启BIER能力。

·     只有开启BIER功能,开启IS-IS BIER能力的配置才能生效。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启BIER功能,并进入BIER视图。

bier

缺省情况下,BIER功能处于关闭状态。

关于本命令的详细介绍,请参见“BIER命令参考”中的“BIER”。

(3)     退回系统视图。

quit

(4)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(5)     配置IS-IS开销值类型。

cost-style { compatible | wide | wide-compatible }

(6)     开启IS-IS进程的BIER能力。

bier enable

缺省情况下,IS-IS进程的BIER能力处于关闭状态。

(7)     (可选)配置IS-IS引入其他协议的BIER信息。

a.     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

b.     配置IS-IS引入其他协议的BIER信息。

import-bier bgp4+ [ as-number ]

缺省情况下,IS-IS不引入其它协议的BIER信息。

在跨越AS域转发BIER流量的场景中,需要配置本命令。

1.15  配置IS-IS日志和告警功能

1.15.1  配置邻接状态变化的输出开关

1. 功能简介

在IS-IS网络中,邻居关系震荡会导致网络不稳定、网络频繁收敛消耗设备资源,甚至可能会造成用户流量丢失。因此,当出现邻居关系震荡时,必须尽快定位并解决。

为了方便在出现邻居关系震荡时及时定位问题,可以打开IS-IS邻接状态变化的输出开关,将邻居状态变化信息记录到日志中。

打开邻接状态输出开关后,IS-IS邻接状态变化时会生成日志信息发送到设备的信息中心,通过设置信息中心的参数,最终决定日志信息的输出规则(即是否允许输出以及输出方向)。(有关信息中心参数的配置请参见“网络管理和监控配置指导”中的“信息中心”。)

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     打开邻接状态变化的输出开关。

log-peer-change

缺省情况下,邻接状态变化的输出开关处于打开状态。

1.15.2  配置IS-IS的日志功能

1. 功能简介

IS-IS的日志信息包括接收和发送Hello报文的日志信息以及邻居状态改变的日志信息。使用本功能可以设置IS-IS记录各类日志信息的最大个数。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置IS-IS记录日志信息的最大个数。

event-log { hello { peer-change | received-abnormal | received-dropped | sent-abnormal | sent-failed } | lsp | peer | spf } size count

缺省情况下,IS-IS记录各类日志信息的最大个数均为100。

1.15.3  配置LSP更新日志发布源的最大个数

1. 功能简介

设备开始运行后,缺省情况下,每隔15分钟记录一次LSP更新日志,且仅记录最新的200个发布源生成的LSP更新日志。记录LSP更新日志会占用设备的内存空间,使用本功能可以对记录多少个发布源生成的LSP更新日志进行调整,从而在一定程度上调整LSP更新日志对内存空间的占用。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置LSP更新日志发布源的最大个数。

event-log updated-lsp size count

缺省情况下,LSP更新日志发布源的最大个数为200个。

1.15.4  配置IS-IS记录邻居关系断开的故障检测信息的最大个数

1. 功能简介

IS-IS会对邻居关系断开的故障检测信息进行记录,通过本功能可以设置记录故障检测信息的最大条数。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置IS-IS记录邻居关系断开的故障检测信息的最大个数。

isis troubleshooting max-number number

缺省情况下,IS-IS记录邻居关系断开的故障检测信息的最大个数为100。

1.15.5  配置IS-IS网管功能

1. 功能简介

配置IS-IS进程绑定MIB功能后,可以通过网管软件对指定的IS-IS进程进行管理。

开启IS-IS模块的告警功能后,该模块会生成告警信息,用于报告该模块的重要事件。生成的告警信息将发送到设备的SNMP模块,通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关属性。(有关告警信息的详细介绍,请参见“网络管理和监控配置指导”中的“SNMP”。)

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置IS-IS进程绑定MIB。

isis mib-binding process-id

缺省情况下,MIB绑定在进程号最小的IS-IS进程上。

(3)     开启IS-IS的告警功能。

snmp-agent trap enable isis [ adjacency-state-change | area-mismatch | authentication | authentication-type | buffsize-mismatch | id-length-mismatch | lsdboverload-state-change | lsp-corrupt | lsp-parse-error | lsp-size-exceeded | manual-address-drop | max-seq-exceeded | maxarea-mismatch | own-lsp-purge | protocol-support | rejected-adjacency | skip-sequence-number | system-id-conflict | version-skew ] *

缺省情况下,IS-IS的告警功能处于开启状态。

(4)     (可选)对标准格式的IS-IS邻居状态变化告警信息进行私有扩展。

snmp-agent trap isis adjacency-state-change extended

缺省情况下,系统发送的IS-IS邻居状态变化告警信息的格式为标准格式,不对其进行私有扩展。

(5)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(6)     配置管理IS-IS的SNMP实体所使用的上下文名称。

snmp context-name context-name

缺省情况下,未配置管理IS-IS的SNMP实体所使用的上下文名称。

1.16  配置IS-IS快速收敛

1.16.1  配置ISPF

1. 功能简介

ISPF(Incremental Shortest Path First,增量最短路径优先)计算是对IS-IS中最短路径树的增量计算,当网络的拓扑结构发生变化,即影响到最短路径树的结构时,只对受影响的部分节点进行重新计算拓扑结构,对最短路径树中受影响的部分进行修正,而不需要重建整棵最短路径树。

2. 配置IPv4 IS-IS ISPF

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     使能IPv4 IS-IS ISPF功能。

ispf enable

缺省情况下,IPv4 IS-IS ISPF功能处于开启状态。

3. 配置IPv6 IS-IS ISPF

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     使能IPv6 IS-IS ISPF功能。

ispf enable

缺省情况下,IPv6 IS-IS ISPF功能处于开启状态。

1.16.2  配置前缀抑制

1. 功能简介

接口上配置本功能后,设备将禁止在LSP中携带此接口的前缀,屏蔽内部节点,提高安全性,加快路由收敛。

2. 配置IPv4 IS-IS前缀抑制

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置接口的前缀抑制功能。

isis prefix-suppression

缺省情况下,未配置接口的前缀抑制功能。

本命令对接口从地址同样生效。

3. 配置IPv6 IS-IS前缀抑制

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置接口的前缀抑制功能。

isis ipv6 prefix-suppression

缺省情况下,未配置接口的前缀抑制功能。

1.16.3  配置PIC

1. 功能简介

PIC(Prefix Independent Convergence,前缀无关收敛),即收敛时间与前缀数量无关,加快收敛速度。传统的路由计算快速收敛都与前缀数量相关,收敛时间与前缀数量成正比。

2. 配置限制和指导

PIC和IS-IS快速重路由功能同时配置时,IS-IS快速重路由功能生效。

邻居发送的LSP才会进行PIC。

3. 使能PIC

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     使能前缀无关收敛功能。

pic [ additional-path-always ]

缺省情况下,前缀无关收敛功能处于关闭状态。

4. 配置PIC支持BFD检测功能(Ctrl方式)

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     使能IS-IS协议中主用链路的BFD(Ctrl方式)检测功能。

isis primary-path-detect bfd ctrl

缺省情况下,IS-IS协议中主用链路的BFD(Ctrl方式)检测功能处于关闭状态。

配置本功能后,可以加快IS-IS协议的收敛速度。使用control报文双向检测方式时,需要建立IS-IS邻居的两端设备均支持BFD配置。

5. 配置PIC支持BFD检测功能(Echo方式)

(1)     进入系统视图。

system-view

(2)     (可选)配置BFD Echo报文源地址。

bfd echo-source-ip ip-address

缺省情况下,未配置BFD Echo报文源地址。

建议配置本命令,且配置的源IP地址不属于该设备任何一个接口所在网段,以避免对端发送大量的ICMP重定向报文造成网络拥塞。

本命令的详细情况请参见“可靠性命令参考”中的“BFD”。

(3)     进入接口视图。

interface interface-type interface-number

(4)     使能IS-IS协议中主用链路的BFD(Echo方式)检测功能。

isis primary-path-detect bfd echo

缺省情况下,IS-IS协议中主用链路的BFD(Echo方式)检测功能处于关闭状态。

配置本功能后,可以加快IS-IS协议的收敛速度。使用echo报文单跳检测方式时,仅需要一端设备支持BFD配置。

1.17  提高IS-IS网络的安全性

在安全性要求较高的网络中,可以通过配置IS-IS验证来提高IS-IS网络的安全性。IS-IS验证特性分为邻居关系的验证和区域或路由域的验证。

1.17.1  配置邻居关系验证

1. 功能简介

配置邻居关系验证后,验证密钥将会按照设定的方式封装到Hello报文中,并对接收到的Hello报文进行验证密钥的检查,通过检查才会形成邻居关系,否则将不会形成邻居关系,用以确认邻居的正确性和有效性,防止与无法信任的路由器形成邻居。

两台路由器要形成邻居关系必须配置相同的验证方式和验证密钥。

切换密钥时可以通过配置发送报文携带验证信息,接收报文时不进行验证,实现认证密钥无缝切换。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置邻居关系验证方式和验证密钥。

isis [ process-id process-id ] authentication-mode { { gca key-id { hmac-sha-1 | hmac-sha-224 | hmac-sha-256 | hmac-sha-384 | hmac-sha-512 } [ nonstandard ] | md5 | simple } { cipher | plain } string | keychain keychain-name } [ level-1 | level-2 ] [ ip | osi ]

缺省情况下,接口没有配置邻居关系验证方式和验证密钥。

(4)     (可选)配置对收到的Hello报文忽略认证信息检查。

isis authentication send-only [ level-1 | level-2 ]

缺省情况下,如果配置了接口验证方式和验证密钥,对收到的报文执行认证信息检查。

1.17.2  配置区域验证

1. 功能简介

通过配置区域验证,可以防止将从不可信任的路由器学习到的路由信息加入到本地Level-1的LSDB中。

配置区域验证后,验证密钥将会按照设定的方式封装到Level-1报文(LSP、CSNP、PSNP)中,并对收到的Level-1报文进行验证密钥的检查。

同一区域内的路由器必须配置相同的验证方式和验证密钥。

切换密钥时可以通过配置发送报文携带验证信息,接收报文时不进行验证,实现认证密钥无缝切换。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置区域验证方式和验证密钥。

area-authentication-mode { { gca key-id { hmac-sha-1 | hmac-sha-224 | hmac-sha-256 | hmac-sha-384 | hmac-sha-512 } [ nonstandard ] | md5 | simple } { cipher | plain } string | keychain keychain-name } [ ip | osi ]

缺省情况下,系统没有配置区域验证方式和验证密钥。

(4)     (可选)配置对收到的Level-1报文(包括LSP、CSNP、PSNP)忽略认证信息检查。

area-authentication send-only

缺省情况下,如果配置了区域验证方式和验证密钥,对收到的报文执行认证信息检查。

1.17.3  配置路由域验证

1. 功能简介

通过配置路由域验证,可以防止将不可信的路由信息注入当前路由域。

配置路由域验证后,验证密钥将会按照设定的方式封装到Level-2报文(LSP、CSNP、PSNP)中,并对收到的Level-2报文进行验证密钥的检查。

切换密钥时可以通过配置发送报文携带验证信息,接收报文时不进行验证,实现认证密钥无缝切换。

2. 配置限制和指导

设备配置了路由域验证后,可以和未配置路由域验证的设备建立邻接关系,但是会将未携带验证信息的LSP丢弃,导致路由学习与预期不符。建议在所有骨干层(Level-2)设备上配置相同的验证方式和验证密钥,避免产生上述问题。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     配置路由域验证方式和验证密钥。

domain-authentication-mode { { gca key-id { hmac-sha-1 | hmac-sha-224 | hmac-sha-256 | hmac-sha-384 | hmac-sha-512 } [ nonstandard ] | md5 | simple } { cipher | plain } string | keychain keychain-name } [ ip | osi ]

缺省情况下,系统未配置路由域验证方式和验证密钥。

(4)     (可选)配置对收到的Level-2报文(包括LSP、CSNP、PSNP)忽略认证信息检查。

domain-authentication send-only

缺省情况下,如果配置了路由域验证方式和验证密钥,对收到的报文执行认证信息检查。

1.18  配置IS-IS GR

1. 功能简介

GR(Graceful Restart,平滑重启)是一种通过备份IS-IS配置信息,在协议重启或主备倒换时IS-IS进行平滑重启,保持邻接关系,并对LSDB进行同步,从而保证转发业务不中断的机制。

GR有两个角色:

·     GR Restarter:发生协议重启或主备倒换事件且具有GR能力的设备。

·     GR Helper:和GR Restarter具有邻居关系,协助完成GR流程的设备。

只需要在作为GR Restarter的设备上进行以下配置,设备缺省都是GR Helper。

T1、T2和T3定时器用来控制GR流程,分别如下:

·     T1定时器:用来控制发送带有RR标志位的Restart TLV的次数。重启路由器发送带有RR标志位的Restart TLV,如果在超时时间内收到对端回复的带有RA标志的Restart TLV,才能正常进入GR流程;否则GR流程失败。

·     T2定时器:用来控制LSDB同步时间。每个LSDB都有一个T2定时器,对于Level-1-2路由器来说,就需要有两个T2定时器,一个为Level-1的T2定时器,另外一个为Level-2的T2定时器。如果Level-1和Level-2的T2定时器都超时,LSDB同步还没有完成,则GR失败。

·     T3定时器:用来控制路由器的重启时间间隔。重启时间间隔在IS-IS的Hello PDU中设置为保持时间,这样在该路由器重启的时间内邻居不会断掉与其的邻接关系。如果T3定时器超时后GR还没有完成,则GR失败。

2. 配置限制和指导

配置GR定时器时请遵循以下规则,否则将导致定时器配置失败:

·     T1定时器超时值×超时次数小于T2定时器的超时值。

·     T2定时器超时值小于T3定时器的超时值。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     使能IS-IS路由进程,进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     使能IS-IS协议的GR能力。

graceful-restart

缺省情况下,IS-IS协议的GR能力处于关闭状态。

(4)     (可选)配置重启时抑制SA位。

graceful-restart suppress-sa

缺省情况下,重启时不抑制SA位。

配置重启时抑制SA(Suppress-Advertisement)位,即在重启路由器的Hello PDU中设置抑制发布SA位,重启路由器的邻居将继续发布该邻接关系。

(5)     (可选)配置T1定时器。

graceful-restart t1 seconds count count

缺省情况下,T1定时器的超时值为3秒,超时次数为10次。

(6)     (可选)配置T2定时器。

graceful-restart t2 seconds

缺省情况下,T2定时器的超时值为60秒。

(7)     (可选)配置T3定时器。

graceful-restart t3 seconds

缺省情况下,T3定时器的超时值为300秒。

1.19  配置IS-IS BFD相关功能

1.19.1  开启IS-IS与BFD联动功能

1. 功能简介

IS-IS邻居之间通过定时发送Hello报文来感知邻居状态变化,如果本端设备在邻居关系保持时间内(即Hello报文失效数目与Hello报文发送时间间隔的乘积,缺省为30秒)没有收到来自邻居设备的Hello报文,则邻居关系变为Down。这样使得IS-IS邻居关系的检测比较慢,对于报文收发速度快的接口会导致大量报文丢失。通过配置IS-IS与BFD联动,可以使用BFD来检测IS-IS邻居之间的链路。当IS-IS邻居之间的链路出现故障时,BFD可以快速检测到该故障并上报给IS-IS。IS-IS收到BFD上报的信息后,将邻居状态置为Down,并重新进行路由计算。由此可见,BFD能够帮助IS-IS协议加快收敛速度。关于BFD的介绍和基本功能配置,请参见“可靠性配置指导”中的“BFD”。

2. 配置限制和指导

用户可以使用bfd all-interfaces enable命令或isis bfd enable命令、isis ipv6 bfd enable命令开启IS-IS与BFD联动功能。两者的配置关系如下:

·     配置bfd all-interfaces enable命令后,该进程下所有的IPv4 IS-IS或IPv6 IS-IS接口都会开启BFD联动功能。这种情况下,如果需要关闭某个IS-IS接口与BFD联动功能,请在该接口下配置isis bfd exclude命令或isis ipv6 bfd exclude命令。

·     如果只想在某个接口上开启IS-IS与BFD联动功能,建议在IS-IS进程与BFD联动功能处于关闭状态的情况下,在该接口下配置isis bfd enable命令或isis ipv6 bfd enable命令。

3. 开启IS-IS进程与BFD联动功能

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv4地址族视图或IS-IS IPv6地址族视图。

¡     进入IS-IS IPv4地址族视图。

address-family ipv4 [ unicast ]

¡     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     开启IS-IS进程与BFD联动功能。

bfd all-interfaces enable

缺省情况下,IS-IS进程与BFD联动功能处于关闭状态。

(5)     (可选)禁止IS-IS接口与BFD联动。

a.     退回IS-IS视图。

quit

b.     退回系统视图。

quit

c.     进入接口视图。

interface interface-type interface-number

d.     禁止IS-IS接口与BFD联动。

(IPv4网络)

isis bfd exclude

(IPv6网络)

isis ipv6 bfd exclude

缺省情况下,允许IS-IS接口与BFD联动。

4. 开启IS-IS接口与BFD联动功能

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     开启IS-IS接口与BFD联动功能。

(IPv4网络)

isis bfd enable

缺省情况下,未配置IPv4 IS-IS接口与BFD联动功能,以IS-IS IPv4单播地址族视图下bfd all-interfaces enable命令的配置为准。

(IPv6网络)

isis ipv6 bfd enable

缺省情况下,未配置IPv6 IS-IS接口与BFD联动功能,以IS-IS IPv6单播地址族视图下bfd all-interfaces enable命令的配置为准。

1.19.2  配置IS-IS根据BFD会话状态调整接口开销值

1. 功能简介

使用BFD检测IS-IS邻居之间的链路,当BFD检测到故障但故障又很快恢复时,IS-IS邻居关系会发生震荡,进而影响依赖IS-IS的其他业务(例如BGP)的正常运行。使用本功能可以解决上述问题。

配置本功能后,在使用BFD检测IS-IS邻居之间链路的场景中,邻居关系不再受BFD会话的影响,而是根据BFD会话的状态来改变接口的开销值,以实现链路状态变化时的路由快速收敛。具体机制如下:

·     当IS-IS接口感知到BFD会话Down时,IS-IS将该接口的开销值调大,以便IS-IS选择更优的路径转发流量。

·     当IS-IS接口感知到BFD会话Up时,IS-IS将该接口的开销值恢复为调整前的值。

2. 配置限制和指导

只有接口与BFD联动功能处于开启状态时,本功能才能生效。

用户可以使用bfd all-interfaces adjust-cost命令或isis bfd adjust-cost命令、isis ipv6 bfd adjust-cost命令开启IS-IS根据BFD会话状态调整接口开销值的功能。两者的配置关系如下:

·     配置bfd all-interfaces adjust-cost命令后,该进程下所有的IPv4 IS-IS接口或IPv6 IS-IS接口都会开启根据BFD会话状态调整接口开销值的功能。这种情况下,如果需要关闭某个IPv4 IS-IS接口根据BFD会话状态调整接口开销值的功能,请在该接口下配置isis bfd adjust-cost exclude命令。

·     如果只想在某个接口上开启IS-IS根据BFD会话状态调整接口开销值的功能,建议在IS-IS进程根据BFD会话状态调整接口开销值的功能处于关闭状态的情况下,在该接口下配置isis bfd adjust-costisis ipv6 bfd adjust-cost命令。

·     对于一个接口来说,优先采用该接口下的配置,只有该接口下未进行配置时,才会采用IS-IS IPv4单播地址族视图或IPv6单播地址族视图下的配置。

3. 配置IS-IS进程根据BFD会话状态调整接口开销值

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv4地址族视图或IS-IS IPv6地址族视图。

¡     进入IS-IS IPv4地址族视图。

address-family ipv4 [ unicast ]

¡     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     开启IS-IS进程根据BFD会话状态调整接口开销值的功能,并设置接口开销调整值。

bfd all-interfaces adjust-cost { cost-offset | max }

缺省情况下,IS-IS进程根据BFD会话状态调整接口开销值的功能处于关闭状态。

(5)     禁止IS-IS接口根据BFD会话状态调整接口开销值。

a.     退回IS-IS视图。

quit

b.     退回系统视图。

quit

c.     进入接口视图。

interface interface-type interface-number

d.     禁止IS-IS接口根据BFD会话状态调整接口开销值。

(IPv4网络)

isis bfd adjust-cost exclude

缺省情况下,允许IPv4 IS-IS接口根据BFD会话状态调整接口开销值。

(IPv6网络)

isis ipv6 bfd adjust-cost exclude

缺省情况下,允许IPv6 IS-IS接口根据BFD会话状态调整接口开销值。

4. 配置IS-IS接口根据BFD会话状态调整接口开销值

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     开启IS-IS接口根据BFD会话状态调整接口开销值的功能,并设置接口开销调整值。

(IPv4网络)

isis bfd adjust-cost { cost-offset | max }

缺省情况下,未配置IPv4 IS-IS接口根据BFD会话状态调整接口开销值的功能,以IS-IS IPv4单播地址族视图下bfd all-interfaces adjust-cost命令的配置为准。

(IPv6网络)

isis ipv6 bfd adjust-cost { cost-offset | max }

缺省情况下,未配置IPv6 IS-IS接口根据BFD会话状态调整接口开销值的功能,以IS-IS IPv6单播地址族视图下bfd all-interfaces adjust-cost命令的配置为准。

1.19.3  开启BFD抑制IS-IS建立和保持邻接关系的功能

1. 功能简介

两台设备建立IS-IS邻接关系,并使用BFD检测设备间链路。当其中一台设备无法进行三层转发但可以进行二层转发时,BFD会话Down,IS-IS邻接关系随之Down,但此时该设备仍能接收和发送IS-IS报文,两台设备又重新建立邻接关系,这可能会导致流量通过故障设备转发,进而引发流量丢失。

为了避免上述情况的发生,请在本端和对端开启IS-IS BFD检测功能的接口上开启本功能。开启本功能后,接口发送的Hello报文中将会携带BFD-enabled TLV,当两端BFD-enabled TLV中的信息一致时,本功能生效,此时当BFD会话Down时,即便设备可以接收和发送IS-IS报文也无法建立邻接关系或保持已建立的邻接关系,从而避免三层流量通过故障设备转发。

同一链路上同时建立了IPv4 IS-IS邻接关系和IPv6 IS-IS邻接关系时,工作机制如下:

·     IPv4和IPv6未分拓扑计算的情况下,只有IPv4和IPv6 BFD会话状态均为Up时,才能建立邻接关系或保持已建立的邻接关系。只要有一个IPv4或IPv6 BFD会话为Down状态,邻接关系就会处于Down状态。

·     IPv4和IPv6分拓扑计算的情况下,只要本拓扑中的BFD会话为Up状态,邻接关系就可以Up。即IPv4 BFD会话状态为Up时,IPv4 IS-IS邻接状态为Up;IPv6 BFD会话状态为Up时,IPv6 IS-IS邻接状态为Up。相应的,当本拓扑中的BFD会话为Down状态时,邻接关系将处于Down状态。

同一链路上只建立了IPv4 IS-IS邻接关系或IPv6 IS-IS邻接关系时,工作机制如下:

·     只建立了IPv4 IS-IS邻接关系的情况下,当IPv4 BFD会话状态为Up时,才能建立邻接关系或保持已建立的邻接关系。否则,邻接关于处于Down状态。

·     只建立了IPv6 IS-IS邻接关系的情况下,当IPv6 BFD会话状态为Up时,才能建立邻接关系或保持已建立的邻接关系。否则,邻接关于处于Down状态。

关于BFD的介绍和基本功能配置,请参见“可靠性配置指导”中的“BFD”。

2. 配置限制和指导

只有接口与BFD联动功能处于开启状态时,本功能才能生效。

用户可以使用bfd all-interfaces session-restrict-adj命令或isis bfd session-restrict-adj命令、isis ipv6 bfd session-restrict-adj命令开启BFD抑制IS-IS建立和保持邻接关系的功能。两者的配置关系如下:

·     配置bfd all-interfaces session-restrict-adj命令后,该进程下所有的IPv4 IS-IS或IPv6 IS-IS接口都会开启BFD抑制IS-IS建立和保持邻接关系的功能。这种情况下,如果不希望BFD抑制某个IS-IS接口建立和保持邻接关系,请在该接口下配置isis bfd session-restrict-adj exclude命令或isis ipv6 bfd session-restrict-adj exclude命令。

·     如果只想在某个接口上开启BFD抑制IS-IS建立和保持邻接关系的功能,建议在BFD抑制IS-IS进程建立和保持邻接关系的功能处于关闭状态的情况下,在该接口下配置isis bfd session-restrict-adj命令或isis ipv6 bfd session-restrict-adj命令。

3. 开启BFD抑制IS-IS进程建立和保持邻接关系的功能

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv4地址族视图或IS-IS IPv6地址族视图。

¡     进入IS-IS IPv4地址族视图。

address-family ipv4 [ unicast ]

¡     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     开启BFD抑制IS-IS进程建立和保持IS-IS邻接关系的功能。

bfd all-interfaces session-restrict-adj

缺省情况下,BFD抑制IS-IS进程建立和保持邻接关系的功能处于关闭状态。

(5)     (可选)禁止BFD抑制IS-IS接口建立和保持邻接关系。

a.     退回IS-IS视图。

quit

b.     退回系统视图。

quit

c.     进入接口视图。

interface interface-type interface-number

d.     禁止BFD抑制IS-IS接口建立和保持邻接关系。

(IPv4网络)

isis bfd session-restrict-adj exclude

缺省情况下,允许BFD抑制IPv4 IS-IS接口建立和保持邻接关系。

(IPv6网络)

isis ipv6 bfd session-restrict-adj exclude

缺省情况下,允许BFD抑制IPv6 IS-IS接口建立和保持邻接关系。

4. 开启BFD抑制IS-IS接口建立和保持邻接关系的功能

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     开启IS-IS接口与BFD联动功能。

(IPv4网络)

isis bfd enable

缺省情况下,未配置IPv4 IS-IS接口与BFD联动功能,以IS-IS IPv4单播地址族视图下bfd all-interfaces enable命令的配置为准。

(IPv6网络)

isis ipv6 bfd enable

缺省情况下,未配置IPv6 IS-IS接口与BFD联动功能,以IS-IS IPv6单播地址族视图下bfd all-interfaces enable命令的配置为准。

(4)     开启BFD抑制IS-IS接口建立和保持邻接关系的功能。

(IPv4网络)

isis bfd session-restrict-adj

缺省情况下,未配置BFD抑制IPv4 IS-IS接口建立和保持邻接关系的功能,以IS-IS IPv4单播地址族视图下bfd all-interfaces session-restrict-adj命令的配置为准。

(IPv6网络)

isis ipv6 bfd session-restrict-adj

缺省情况下,未配置BFD抑制IPv6 IS-IS接口建立和保持邻接关系的功能,以IS-IS IPv6单播地址族视图下bfd all-interfaces session-restrict-adj命令的配置为准。

1.20  配置IS-IS FRR

1.20.1  功能简介

IS-IS FRR(Fast Reroute,快速重路由)使用链路状态数据库预先计算出备份路径,并将备份路径保存到FIB表中,当主用路径发生故障时,可以快速切换到备份路径,从而降低路由收敛所需时间。

当前支持的FRR技术包括LFA(Loop Free Alternate) FRR和Remote LFA(Remote Loop Free Alternate) FRR:

·     LFA:以可提供备份链路的邻居为根节点,利用SPF算法计算出到目的节点的最短路径树。然后,按照LFA算法计算出一条开销最小且无环的备份链路。

·     Remote LFA:根据保护路径计算PQ节点,并在源节点与PQ节点之间建立LSP形成备份路径保护。当主用链路发生故障时,流量自动切换到隧道备份路径,继续转发,从而提高网络可靠性。

IS-IS FRR流量保护类型分为:

·     链路保护:当需要保护的对象是经过特定链路的流量时,流量保护类型为链路保护。

·     节点保护:当需要保护的对象是经过特定设备的流量时,流量保护类型为节点保护。

节点保护优先级高于链路保护。

1.20.2  配置任务简介

(1)     配置IS-IS LFA快速重路由

¡     配置通过LFA算法选取IPv4 IS-IS的备份下一跳信息

¡     配置通过路由策略指定IPv4 IS-IS的备份下一跳配置通过LFA算法选取IPv6 IS-IS的备份下一跳信息

¡     配置通过路由策略指定IPv6 IS-IS的备份下一跳

¡     开启IS-IS进程主用链路的BFD检测功能

¡     开启IS-IS接口主用链路的BFD检测功能

(2)     配置Remote LFA快速重路由

(3)     (可选)配置快速重路由备份路径优选方案的优先级

1.20.3  配置IS-IS LFA快速重路由

1. 功能简介

当IS-IS网络中的链路或某台路由器发生故障时,需要通过故障链路或故障路由器传输才能到达目的地的报文将会丢失,数据流量将会中断,直到IS-IS根据新的拓扑网络路由收敛完毕后,被中断的流量才能恢复正常的传输。

为了尽可能缩短网络故障导致的流量中断时间,网络管理员可以配置IS-IS快速重路由功能。

图1-26 IS-IS快速重路由功能示意图

 

图1-26所示,通过在Router B上使能快速重路由功能,IS-IS将为路由计算或指定备份下一跳,当Router B检测到网络故障时,IS-IS会使用事先获取的备份下一跳替换失效下一跳,通过备份下一跳来指导报文的转发,从而大大缩短了流量中断时间。在使用备份下一跳指导报文转发的同时,IS-IS会根据变化后的网络拓扑重新计算最短路径,网络收敛完毕后,使用新计算出来的最优路由来指导报文转发。

当主用链路出现故障时,BFD能够快速检测到该故障并上报给IS-IS。IS-IS收到故障信息后会立刻切换到备份链路,从而缩短流量中断时间。

网络管理员可以配置给所有IS-IS路由通过LFA算法选取备份下一跳,也可以在路由策略中指定备份下一跳,为符合过滤条件的路由指定备份下一跳。

2. 配置限制和指导

IS-IS快速重路由通过LFA算法选取备份下一跳功能与IS-IS TE特性互斥。

用户可以使用fast-reroute primary-path-detect bfd命令或isis primary-path-detect bfd命令、isis ipv6 primary-path-detect bfd命令开启IS-IS主用链路的BFD检测功能。两者的配置关系如下:

·     配置fast-reroute primary-path-detect bfd命令后,该进程下所有的IPv4 IS-IS或IPv6 IS-IS接口都会开启主用链路的BFD检测功能。这种情况下,如果需要关闭某个IS-IS接口的主用链路BFD检测功能,请在该接口下配置isis primary-path-detect bfd exclude命令或isis ipv6 primary-path-detect bfd exclude命令。

·     如果只想在某个接口上开启IS-IS主用链路的BFD检测功能,建议在IS-IS进程主用链路的BFD检测功能处于关闭状态的情况下,在该接口下配置isis primary-path-detect bfd命令或isis ipv6 primary-path-detect bfd命令。

3. 配置通过LFA算法选取IPv4 IS-IS的备份下一跳信息

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     (可选)禁止接口参与LFA计算。

isis fast-reroute lfa-backup exclude [ level-1 | level-2 ]

缺省情况下,接口参与LFA计算,能够被选为备份接口。

(4)     退回系统视图。

quit

(5)     进入IS-IS IPv4单播地址族视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

address-family ipv4 [ unicast ]

(6)     配置IS-IS支持快速重路由功能(通过LFA算法选取备份下一跳信息)。

fast-reroute lfa [ ecmp-shared | level-1 | level-2 ]

缺省情况下,IS-IS支持快速重路由功能处于关闭状态。

4. 配置通过路由策略指定IPv4 IS-IS的备份下一跳

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     (可选)禁止接口参与LFA计算。

isis fast-reroute lfa-backup exclude [ level-1 | level-2 ]

缺省情况下,接口参与LFA计算,能够被选为备份接口。

(4)     退回系统视图。

quit

(5)     进入IS-IS IPv4单播地址族视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

address-family ipv4 [ unicast ]

(6)     配置IS-IS支持快速重路由功能(通过路由策略指定备份下一跳)。

¡     创建路由策略,并通过apply fast-reroute backup-interface命令在路由策略中指定备份下一跳。

apply fast-reroute backup-interface命令以及路由策略的相关配置,请参见“三层技术-IP路由配置指导”中的“路由策略”。

¡     配置IS-IS支持快速重路由功能。

fast-reroute route-policy route-policy-name

缺省情况下,IPv4 IS-IS支持快速重路由功能处于关闭状态。

5. 配置通过LFA算法选取IPv6 IS-IS的备份下一跳信息

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     (可选)禁止接口参与LFA计算。

isis ipv6 fast-reroute lfa-backup exclude

缺省情况下,接口参与LFA计算,能够被选为备份接口。

(4)     退回系统视图。

quit

(5)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(6)     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(7)     配置IPv6 IS-IS支持快速重路由功能(通过LFA算法选取备份下一跳信息)。

fast-reroute lfa [ ecmp-shared | level-1 | level-2 ]

缺省情况下,IPv6 IS-IS支持快速重路由功能处于关闭状态。

6. 配置通过路由策略指定IPv6 IS-IS的备份下一跳

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     (可选)禁止接口参与LFA计算。

isis ipv6 fast-reroute lfa-backup exclude [ level-1 | level-2 ]

缺省情况下,接口参与LFA计算,能够被选为备份接口。

(4)     退回系统视图。

quit

(5)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(6)     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(7)     配置IPv6 IS-IS支持快速重路由功能(通过路由策略指定备份下一跳)。

¡     创建路由策略,并通过apply ipv6 fast-reroute backup-interface命令在路由策略中指定备份下一跳。

apply ipv6 fast-reroute backup-interface命令以及路由策略的相关配置,请参见“三层技术-IP路由配置指导”中的“路由策略”。

¡     配置IPv6 IS-IS支持快速重路由功能。

fast-reroute route-policy route-policy-name

缺省情况下,IPv6 IS-IS快速重路由功能处于关闭状态。

7. 开启IS-IS进程主用链路的BFD检测功能

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv4地址族视图或IS-IS IPv6地址族视图。

¡     进入IS-IS IPv4地址族视图。

address-family ipv4 [ unicast ]

¡     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     开启IS-IS进程主用链路的BFD检测功能。

fast-reroute primary-path-detect bfd { ctrl | echo }

缺省情况下,IS-IS进程主用链路的BFD检测功能处于关闭状态。

使用echo方式的BFD检测主用链路时,建议通过bfd echo-source-ipbfd echo-source-ipv6命令配置BFD echo报文源地址。

(5)     (可选)禁止IS-IS接口开启主用链路的BFD检测功能。

a.     退回IS-IS视图。

quit

b.     退回系统视图。

quit

c.     进入接口视图。

interface interface-type interface-number

d.     禁止IS-IS接口开启主用链路的BFD检测功能。

(IPv4网络)

isis primary-path-detect bfd exclude

缺省情况下,允许IPv4 IS-IS接口开启主用链路的BFD检测功能。

(IPv6网络)

isis ipv6 primary-path-detect bfd exclude

缺省情况下,允许IPv6 IS-IS接口开启主用链路的BFD检测功能。

8. 开启IS-IS接口主用链路的BFD检测功能

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     开启IS-IS接口主用链路的BFD检测功能。

(IPv4网络)

isis primary-path-detect bfd { ctrl | echo }

缺省情况下,未配置IPv4 IS-IS接口主用链路的BFD检测功能,以IS-IS IPv4单播地址族视图下fast-reroute primary-path-detect bfd命令的配置为准。

(IPv6网络)

isis ipv6 primary-path-detect bfd { ctrl | echo }

缺省情况下,未配置IPv6 IS-IS接口主用链路的BFD检测功能,以IS-IS IPv6单播地址族视图下fast-reroute primary-path-detect bfd命令的配置为准。

使用echo方式的BFD检测主用链路时,建议通过bfd echo-source-ipbfd echo-source-ipv6命令配置BFD echo报文源地址。

配置本功能后,可以加快IS-IS协议的收敛速度。使用control报文双向检测方式时,需要建立IS-IS邻居的两端设备均支持BFD配置。

1.20.4  配置Remote LFA快速重路由

1. 功能简介

在环形组网中,IS-IS LFA快速重路由无法计算出备份路径,不能满足可靠性要求,可以通过部署Remote LFA快速重路由解决该问题。

Remote LFA主要涉及以下概念:

·     P空间:以保护链路(避免出现故障的链路)源端为根节点建立SPF树,所有从根节点不经过保护链路可达的节点集合称为P空间。

·     扩展P空间:以保护链路源端的所有邻居为根节点分别建立SPF树,所有从根节点不经过保护链路可达的节点集合称为扩展P空间。

·     Q空间:以保护链路末端为根节点建立反向SPF树,所有从根节点不经过保护链路可达的节点集合称为Q空间。

·     PQ节点:PQ节点是指既在扩展P空间又在Q空间的节点。在Remote LFA中,PQ节点会作为保护隧道的目的端。

图1-27所示,链路中间的数字表示cost值。假设流量路径为PE 1->P 1->P 2->PE 2,为避免P 1、P 2之间的链路故障导致流量丢失,Remote LFA会计算出PQ节点P 4,并在P 1和PQ节点之间建立LDP隧道。当P 1检测到P 1、P 2之间的链路故障时,将报文封装为MPLS报文转发给P 4,P 4收到该报文后,去掉MPLS标签,重新查找IP路由表,将报文转发给下一跳,并最终到达目的地PE 2,实现了快速保护,避免流量丢失。

图1-27中,PQ节点的计算过程为:

·     分别计算以所有P 1的邻居(不包括通过保护链路的邻居)为根的SPF树,每棵SPF树中从根节点不经过P 1->P 2链路可达的节点为P空间,所有邻居的P空间集合得到扩展P空间{PE 1,P 1,P 3,P 4}。

·     计算以P 2为根节点的反向SPF树,得到Q空间{PE 2,P 4}。

·     通过扩展P空间和Q空间得到既在扩展P空间又在Q空间的节点,即PQ节点{P 4}。

图1-27 Remote LFA典型组网图

 

2. 配置限制和指导

只有开启了相应Level的IS-IS LFA快速重路由功能,Remote LFA快速重路由功能才可以在指定Level生效,否则配置不生效。

3. 配置准备

在参与MPLS转发的各个节点和接口上开启MPLS和MPLS LDP能力,配置方法请参见“MPLS配置指导”中的“MPLS基础”和“LDP”。

4. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv4单播地址族视图。

address-family ipv4 [ unicast ]

(4)     开启IS-IS的Remote LFA快速重路由功能。

fast-reroute remote-lfa tunnel ldp [ level-1 | level-2 ]

缺省情况下,IS-IS的Remote LFA快速重路由功能处于关闭状态。

(5)     (可选)配置Remote LFA源节点到指定PQ节点的最大开销值。

fast-reroute remote-lfa maximum-cost cost [ level-1 | level-2 ]

缺省情况下,Remote LFA源节点到指定PQ节点的最大开销值为16777215。

(6)     (可选)配置过滤Remote LFA PQ节点的地址前缀列表。

fast-reroute remote-lfa prefix-list prefix-list-name [ level-1 | level-2 ]

缺省情况下,所有PQ节点都可以成为Remote LFA的备份下一跳。

Remote LFA通过计算得到PQ节点集,但并不是集合中的所有节点都适合成为PQ节点。通过过滤掉不符合条件的节点,选取符合条件的PQ节点,从而达到优化网络的目的。

(7)     (可选)关闭接口的IS-IS Remote LFA快速重路由功能。

a.     退回系统视图。

quit

b.     进入接口视图。

interface interface-type interface-number

c.     关闭接口的IS-IS Remote LFA快速重路由功能。

isis fast-reroute remote-lfa disable [ level-1 | level-2 ]

缺省情况下,接口的IS-IS Remote LFA快速重路由功能处于开启状态。

1.20.5  配置快速重路由备份路径优选方案的优先级

1. 功能简介

IS-IS FRR使用一定的计算规则计算备份路径。Tiebreaker使用优先级值来对计算规则进行排序,优先级的值越大,对应的计算规则的优先级越高。IS-IS FRR备份路径优选方案通过调整计算规则的优先级,能够影响IS-IS FRR计算出来的备份路径。不同的备份路径可为流量提供节点保护或链路保护,或者同时提供节点保护和链路保护。

IS-IS FRR支持如下类型的计算规则,不同的计算规则生成不同的用于计算备份路径的拓扑。

·     节点保护(node-protecting):IS-IS FRR排除主下一跳节点之后计算备份路径。

·     最低开销(lowest-cost):IS-IS FRR排除直连主链路之后计算备份路径。

·     SRLG不相交(srlg-disjoint):SRLG(Shared Risk Link Group,共享风险链路组)是具有相同故障风险的一组链路的集合。即如果其中一条链路失效,那么组内的其他链路也可能失效。这种情况下使用组内的其他链路作为失效链路的备份链路,将起不到保护的作用。为了避免出现上述情况,IS-IS FRR排除与直连主链路属于同一SRLG的本地链路之后计算备份路径。

对于IS-IS FRR来说,srlg-disjoint计算规则不能单独存在,需要依赖node-protecting或lowest-cost。

当同一IS-IS进程下存在多个FRR备份路径优选方案时,会优先选择优先级较高的优选方案计算备份路径。如果该方案不能计算出备份路径,则再从其他优选方案中选择优先级较高的优选方案计算备份路径。具体工作机制如下:

·     当node-protecting > lowest-cost时,如果使用node-protecting规则不能计算出备份路径,则再使用lowest-cost规则计算备份路径。如果仍不能计算备份路径,则主链路故障后无法保证可靠性。

·     当lowest-cost > node-protecting时,如果使用lowest-cost规则不能计算出备份路径,则不再使用node-protecting规则计算备份路径,主链路故障后无法保证可靠性。

IS-IS FRR计算备份路径的机制如表1-3所示。

表1-3 IS-IS FRR根据Tiebreaker优选顺序计算备份路径的机制

Tiebreaker的优选顺序

IS-IS FRR计算备份路径的机制

node-protecting > lowest-cost > srlg-disjoint

node-protecting -> lowest-cost

最多进行2次计算,如果前面已经计算出结果,就不会进行后续计算

node-protecting > srlg-disjoint > lowest-cost

node-protecting -> node-protecting+srlg-disjoint -> lowest-cost+srlg-disjoint ->lowest-cost

最多进行4次计算,如果前面已经计算出结果,就不会进行后续计算

srlg-disjoint > node-protecting > lowest-cost

node-protecting+srlg-disjoint -> lowest-cost+srlg-disjoint -> node-protecting ->lowest-cost

最多进行4次计算,如果前面已经计算出结果,就不会进行后续计算

lowest-cost > node-protecting > srlg-disjoint

lowest-cost

只进行1次计算

lowest-cost > srlg-disjoint > node-protecting

lowest-cost

只进行1次计算

srlg-disjoint > lowest-cost > node-protecting

node-protecting+srlg-disjoint -> lowest-cost+srlg-disjoint -> lowest-cost

最多进行3次计算,如果前面已经计算出结果,就不会进行后续计算

 

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv4单播地址族视图或IS-IS IPv6单播地址族视图。

¡     进入IS-IS IPv4地址族视图。

address-family ipv4 [ unicast ]

¡     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     配置快速重路由备份路径优选方案的优先级。

fast-reroute tiebreaker { lowest-cost | node-protecting | srlg-disjoint } preference preference [ level-1 | level-2 ]

缺省情况下,最小开销路径优选方案的优先级为20,节点保护优选方案的优先级为40,共享风险链路组优选方案的优先级为10。

1.21  配置IS-IS根据链路质量等级调整接口开销值

1. 功能简介

误码是指通信设备接收到的信号与源信号之间存在比特差错。由于不可避免的线路老化、光路抖动等原因,误码是不能从根本上避免的,当误码积累到一定程度可能导致服务停止或服务等级降低等严重问题。使用本功能可以尽可能减少误码对IS-IS网络的影响,具体机制如下:

·     链路的质量等级由GOOD变为LOW时,IS-IS将接口开销值调大。

·     链路的质量等级由LOW变为GOOD时,IS-IS将接口开销值恢复为调整前的值。

上述机制可以使IS-IS选择误码率较小的链路转发流量,从而尽可能减少误码对IS-IS网络的影响。

关于误码检测功能的详细介绍,请参见“可靠性配置指导”中的“误码检测”。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置IS-IS根据链路质量等级调整接口开销值。

isis link-quality adjust-cost { cost-offset | max }

缺省情况下,IS-IS不会根据链路质量等级调整接口开销值。

1.22  配置IS-IS邻居震荡抑制功能

1. 功能简介

IS-IS邻居状态频繁震荡时,IS-IS会重新建立邻居关系、同步数据库LSDB,并触发路由计算。上述过程不仅需要交互大量报文,而且会对IS-IS业务造成较大影响,同时也会影响依赖IS-IS的其他业务的正常运行。为了解决这个问题,IS-IS提供了邻居震荡抑制功能,即在邻居频繁震荡时,启动震荡抑制,延迟将业务流量通过频繁震荡的链路转发,尽可能减轻IS-IS邻居状态频繁震荡带来的不良影响。在邻居震荡抑制持续时间内,IS-IS将接口开销值调大,避免用户的业务流量通过频繁震荡的链路转发。抑制持续时间超时后,IS-IS将接口开销值恢复为原始开销值。

IS-IS邻居震荡抑制功能支持两种震荡抑制模式:Conservative模式和Non-conservative模式。

Conservative模式的工作机制如下:

(1)     开启IS-IS邻居震荡抑制功能后,接口会启动一个flapping-count计数器,并对接口的所有邻居震荡事件进行计数。当相邻两次邻居状态变为Down的时间间隔小于震荡检测时间间隔时,IS-IS认为邻居震荡,flapping-count计数加1。在flapping-count计数小于震荡抑制阈值的情况下,如果相邻两次邻居状态变为Down的时间间隔大于震荡抑制恢复门限定时器的值,则flapping-count计数清0,重新计数。

(2)     IS-IS比较flapping-count计数与震荡抑制阈值的大小关系,并根据比较结果进行不同的处理,具体如下:

¡     如果flapping-count计数小于震荡抑制阈值,则IS-IS不会进行邻居震荡抑制。

¡     如果flapping-count计数大于或等于震荡抑制阈值,则IS-IS进入邻居震荡抑制阶段,将接口的开销值调大,并将flapping-count计数清0。

(3)     IS-IS邻居震荡抑制阶段的持续时间为震荡抑制恢复门限定时器的值。震荡抑制期间,如果再次发生邻居震荡事件,则震荡抑制恢复门限定时器将重新计时。

(4)     震荡抑制恢复门限定时器超时后,IS-IS将接口开销值恢复为原有开销值。

Non-conservative模式的工作机制如下:

(1)     开启IS-IS邻居震荡抑制功能后,接口会启动一个flapping-count计数器,并对接口的所有邻居震荡事件进行计数。邻居状态变为Down时,IS-IS认为发生一次邻居震荡,flapping-count计数加1,然后累加当前故障时间点之前、震荡检测时间间隔内的flapping-count计数。IS-IS比较累加后的flapping-count计数与震荡抑制阈值的大小关系,并根据比较结果进行不同的处理,具体如下:

¡     如果flapping-count计数小于震荡抑制阈值,则IS-IS不会进行邻居震荡抑制,也不会将flapping-count计数清0。

¡     如果flapping-count计数大于或等于震荡抑制阈值,则IS-IS进入邻居震荡抑制阶段,将接口的开销值调大,并将flapping-count计数清0。

(2)     IS-IS邻居震荡抑制阶段的持续时间为震荡抑制恢复门限定时器的值。震荡抑制期间,如果再次出现邻居状态变为Down的事件,则震荡抑制恢复门限定时器将重新计时。

(3)     震荡抑制恢复门限定时器超时后,IS-IS将接口开销值恢复为原有开销值。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置IS-IS邻居震荡抑制的检测参数。

(IPv4网络)

isis peer suppress-flapping { [ detect-interval detect-interval | threshold threshold | resume-interval resume-interval ] * | non-conservative }

缺省情况下,IPv4 IS-IS判断邻居状态是否发生震荡的检测时间为60秒,进入震荡抑制阶段的阈值为10,震荡检测恢复门限为120秒。

(IPv6网络)

isis ipv6 peer suppress-flapping { [ detect-interval detect-interval | threshold threshold | resume-interval resume-interval ] * | non-conservative }

缺省情况下,IPv6 IS-IS判断邻居状态是否发生震荡的检测时间为60秒,进入震荡抑制阶段的阈值为10,震荡检测恢复门限为120秒。

(4)     开启IS-IS邻居震荡抑制功能,并指定震荡抑制时接口开销的调整值。

(IPv4网络)

isis peer suppress-flapping adjust-cost { cost-offset | max }

缺省情况下,IPv4 IS-IS邻居震荡抑制功能处于关闭状态。

(IPv6网络)

isis ipv6 peer suppress-flapping adjust-cost { cost-offset | max }

缺省情况下,IPv6 IS-IS邻居震荡抑制功能处于关闭状态。

1.23  配置成员接口震荡抑制功能

1. 功能简介

节点之间通过三层聚合链路连接并建立IS-IS邻居关系时,如果成员接口之间的链路频繁震荡,会导致设备频繁在聚合组内切换转发流量的成员链路。配置本功能可以解决上述问题。

配置本功能后,成员接口之间的链路频繁震荡时,启动震荡抑制,在成员接口震荡抑制持续时间内,IS-IS将三层聚合接口开销值调大,避免用户的业务流量经过三层聚合接口。抑制持续时间超时后,IS-IS将三层聚合接口开销值恢复为原始开销值。

IS-IS支持两种模式的成员接口震荡抑制功能:Conservative模式和Non-conservative模式。

Conservative模式的工作机制如下:

(1)     在聚合接口下开启成员接口震荡抑制功能后,聚合接口会启动一个flapping-count计数器,并对聚合组内所有成员接口链路故障的次数进行计数。相邻两次成员接口链路故障的时间间隔小于震荡检测时间间隔时,IS-IS认为成员接口震荡,flapping-count计数加1。在flapping-count计数小于震荡抑制阈值的情况下,如果相邻两次成员接口链路故障的时间间隔大于震荡抑制恢复门限定时器的值,则flapping-count计数清0,重新计数。

(2)     IS-IS比较flapping-count计数与震荡抑制阈值的大小关系,并根据比较结果进行不同的处理,具体如下:

¡     如果flapping-count计数小于震荡抑制阈值,则IS-IS不会进行成员接口震荡抑制。

¡     如果flapping-count计数大于或等于震荡抑制阈值,则IS-IS进入成员接口震荡抑制阶段,将成员接口所属的聚合接口的开销值调大,并将flapping-count计数清0。

(3)     成员接口震荡抑制阶段的持续时间为震荡抑制恢复门限定时器的值。震荡抑制期间,如果成员接口链路再次故障,则震荡抑制恢复门限定时器将重新计时。

(4)     震荡抑制恢复门限定时器超时后,IS-IS将聚合接口开销值恢复为原有开销值。

Non-conservative模式的工作机制如下:

(1)     在聚合接口下开启成员接口震荡抑制功能后,聚合接口会启动一个flapping-count计数器,并对聚合组内所有成员接口链路故障的次数进行计数。成员接口链路故障时,IS-IS认为成员接口震荡,flapping-count计数加1,然后累加当前故障时间点之前、震荡检测时间间隔内的flapping-count计数。IS-IS比较累加后的flapping-count计数与震荡抑制阈值的大小关系,并根据比较结果进行不同的处理,具体如下:

¡     如果flapping-count计数小于震荡抑制阈值,则IS-IS不会进行成员接口震荡抑制,也不会将flapping-count计数清0。

¡     如果flapping-count计数大于或等于震荡抑制阈值,则IS-IS进入成员接口震荡抑制阶段,将成员接口所属的聚合接口的开销值调大,并将flapping-count计数清0。

(2)     成员接口震荡抑制阶段的持续时间为震荡抑制恢复门限定时器的值。震荡抑制期间,如果成员接口链路再次故障,则震荡抑制恢复门限定时器将重新计时。

(3)     震荡抑制恢复门限定时器超时后,IS-IS将聚合接口开销值恢复为原有开销值。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     接入接口视图。

¡     进入三层聚合接口视图。

interface route-aggregation interface-number [ pex ]

¡     进入三层聚合子接口视图。

interface route-aggregation interface-number.subnumber

(3)     配置聚合接口的所有成员口的震荡抑制检测参数。

(IPv4网络)

isis member-port suppress-flapping { [ detect-interval detect-interval | threshold threshold | resume-interval resume-interval ] * | non-conservative }

缺省情况下,IPv4 IS-IS聚合接口所有成员口是否发生震荡的检测时间为60秒,进入震荡抑制阶段的阈值为10,震荡检测恢复门限为120秒。

(IPv6网络)

isis ipv6 member-port suppress-flapping { [ detect-interval detect-interval | threshold threshold | resume-interval resume-interval ] * | non-conservative }

缺省情况下,IPv6 IS-IS聚合接口所有成员口是否发生震荡的检测时间为60秒,进入震荡抑制阶段的阈值为10,震荡检测恢复门限为120秒。

(4)     开启IS-IS三层聚合接口的所有成员口的震荡抑制功能,并指定震荡抑制时三层聚合接口的开销调整值。

(IPv4网络)

isis member-port suppress-flapping adjust-cost { cost-offset | max }

缺省情况下,IPv4 IS-IS三层聚合接口的所有成员口的震荡抑制功能处于关闭状态。

(IPv6网络)

isis ipv6 member-port suppress-flapping adjust-cost { cost-offset | max }

缺省情况下,IPv6 IS-IS三层聚合接口的所有成员口的震荡抑制功能处于关闭状态。

1.24  IS-IS显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后IS-IS的运行情况,用户可以通过查看显示信息验证配置的效果。

在用户视图下执行reset命令可以清除IS-IS进程所有的数据结构信息。

1.24.1  IPv4 IS-IS显示和维护

表1-4 IPv4 IS-IS显示和维护

操作

命令

显示IS-IS的进程信息

display isis [ process-id ]

显示IS-IS GR日志信息

(独立运行模式)

display isis event-log graceful-restart  slot slot-number

(IRF模式)

display isis event-log graceful-restart chassis chassis-number slot slot-number

显示IS-IS接收或发送Hello报文的日志信息

display isis event-log hello { peer-change | received-abnormal | received-dropped | sent-abnormal | sent-failed } [ process-id ]

显示邻居状态改变的日志信息

display isis event-log peer [ process-id ]

显示接口最近发送Hello报文的信息

display isis interface [ interface-type interface-number ] hello-sent [ process-id ]

显示IS-IS协议的GR状态

display isis graceful-restart status [ level-1 | level-2 ] [ process-id ]

显示IS-IS的接口信息

display isis interface [ [ interface-type interface-number ] [ verbose ] | statistics ] [ process-id ]

显示IS-IS的链路状态数据库信息

display isis lsdb [ [ level-1 | level-2 ] | local | lsp-id lspid | [ lsp-name lspname ] | verbose ] * [ process-id ]

显示IS-IS链路状态数据库的统计信息

display isis lsdb statistics [ level-1 | level-2 ] [ process-id ]

显示IS-IS Mesh-Group的配置信息

display isis mesh-group [ process-id ]

显示系统ID到主机名称的映射关系表

display isis name-table [ process-id ]

显示IS-IS NSR日志信息

(独立运行模式)

display isis event-log slot non-stop-routing slot-number

(IRF模式)

display isis event-log non-stop-routing chassis chassis-number slot slot-number

显示IS-IS的NSR状态

display isis non-stop-routing status

显示IS-IS报文的统计信息

display isis packet { csnp | hello | lsp | psnp } by-interface [ verbose ] [ interface-type interface-number ] [ process-id ]

display isis packet { csnp | hello | lsp | psnp } [ verbose ] [ process-id ]

显示IS-IS的邻居信息

display isis peer [ statistics | verbose ] [ process-id ]

显示从邻居路由器接收Hello报文的信息

display isis peer hello-received [ process-id ]

显示IS-IS引入的IPv4路由信息

display isis redistribute [ ipv4 [ ip-address mask-lengh ] ] [ level-1 | level-2 ] [ process-id ]

显示IS-IS的IPv4路由信息

display isis route [ ipv4 [ ip-address mask-length | priority { critical | high | low | medium } ] ] [ [ level-1 | level-2 ] | [ source-id source-id | verbose ] ] * [ process-id ]

显示IS-IS的IPv4拓扑信息

display isis spf-tree [ ipv4 [ topology topo-name ] ] [ [ level-1 | level-2 ] | verbose ] * [ process-id ]

显示IS-IS的统计信息

display isis statistics [ ipv4 ] [ level-1 | level-1-2 | level-2 ] [ process-id ]

显示IS-IS邻居关系断开的故障检测信息

display isis troubleshooting

显示IS-IS的IPv4路由计算日志信息

display isis event-log spf [ ipv4 ] [ [ level-1 | level-2 ] | verbose ] * [ process-id ]

显示LSP更新的日志信息

display isis event-log updated-lsp [ history [ hour-range hour-range1 to hour-range2 ] ] [ system-id system-id ] [ level-1 | level-2 ] [ process-id ]

显示IS-IS LSP日志信息

display isis event-log lsp { purged [ generated | received ] | refreshed } [ level-1 | level-2 ] [ process-id ]

显示Flex-Algo算法计算出来的路由信息

display isis flex-algo flex-algo-id route [ level-1 | level-2 ] [ process-id ] [ verbose ]

显示Flex-Algo算法计算出来的最短路径树信息

display isis flex-algo flex-algo-id spf-tree ipv4 [ level-1 | level-2 ] [ source-id source-id ] [ verbose ]

显示本节点接收和发布的Flex-Algo算法的定义信息

display isis global-flex-algo [ algorithm-id flex-algo-id ] [ level-1 | level-2 ] [ process-id ] [ system-id system-id ]

显示本节点对Flex-Algo算法的定义信息

display isis local-flex-algo [ algorithm-id flex-algo-id ] [ process-id ]

显示OSI连接的信息

(独立运行模式)

display osi [ slot slot-number ]

(IRF模式)

display osi [ chassis chassis-number slot slot-number ]

显示OSI连接的报文统计信息

(独立运行模式)

display osi statistics [ slot slot-number ]

(IRF模式)

display osi statistics [ chassis chassis-number slot slot-number ]

显示IS-IS的全局统计信息

display isis global-statistics [ public | vpn-instance vpn-instance-name ]

清除IS-IS进程所有的数据结构信息

reset isis all [ process-id ] [ graceful-restart ]

清除IS-IS日志信息

reset isis event-log { hello { peer-change | received-abnormal | received-dropped | sent-abnormal | sent-failed } | peer } [ process-id ]

清除IS-IS GR的日志信息

(独立运行模式)

reset isis event-log graceful-restart slot slot-number

(IRF模式)

reset isis event-log graceful-restart chassis chassis-number slot slot-number

清除IS-IS NSR的日志信息

(独立运行模式)

reset isis event-log non-stop-routing slot slot-number

(IRF模式)

reset isis event-log non-stop-routing chassis chassis-number slot slot-number

清除IS-IS路由计算日志信息

reset isis event-log spf [ process-id ]

清除IS-IS LSP更新的日志信息

reset isis event-log updated-lsp

清除IS-IS LSP日志信息

reset isis event-log lsp { purged [ generated | received ] | refreshed } [ process-id ]

清除IS-IS报文的统计信息

reset isis packet [ csnp | hello | lsp | psnp ] by-interface [ interface-type interface-number ] [ process-id ]

清除IS-IS指定邻居的数据结构信息

reset isis peer system-id [ process-id ]

清除OSI连接的报文统计信息

reset osi statistics

清除IS-IS邻居关系断开的故障检测信息

reset isis troubleshooting

 

1.24.2  IPv6 IS-IS显示和维护

表1-5 IPv6 IS-IS显示和维护

操作

命令

显示IS-IS的进程信息

display isis [ process-id ]

显示IS-IS接收或发送Hello报文的日志信息

display isis event-log hello { peer-change | received-abnormal | received-dropped | sent-abnormal | sent-failed } [ process-id ]

显示邻居状态改变的日志信息

display isis event-log peer [ process-id ]

显示Flex-Algo算法计算出来的路由信息

display isis flex-algo flex-algo-id route [ level-1 | level-2 ] [ process-id ] [ verbose ]

显示Flex-Algo算法计算出来的最短路径树信息

display isis flex-algo flex-algo-id spf-tree ipv6 [ level-1 | level-2 ] [ source-id source-id ] [ verbose ]

显示本节点接收和发布的Flex-Algo算法的定义信息

display isis global-flex-algo [ algorithm-id flex-algo-id ] [ level-1 | level-2 ] [ process-id ] [ system-id system-id ]

显示本节点对Flex-Algo算法的定义信息

display isis local-flex-algo [ algorithm-id flex-algo-id ] [ process-id ]

显示接口最近发送Hello报文的信息

display isis interface [ interface-type interface-number ] hello-sent [ process-id ]

显示IS-IS的接口信息

display isis interface [ [ interface-type interface-number ] [ verbose ] | statistics ] [ process-id ]

显示IS-IS的链路状态数据库信息

display isis lsdb [ [ level-1 | level-2 ] | local | lsp-id lspid | [ lsp-name lspname ] | verbose ] * [ process-id ]

显示IS-IS链路状态数据库的统计信息

display isis lsdb statistics [ level-1 | level-2 ] [ process-id ]

显示IS-IS Mesh-Group的配置信息

display isis mesh-group [ process-id ]

显示系统ID到主机名称的映射关系表

display isis name-table [ process-id ]

显示IS-IS报文的统计信息

display isis packet { csnp | hello | lsp | psnp } [ verbose ] [ interface-type interface-number ] [ process-id ]

显示IS-IS的邻居信息

display isis peer [ statistics | verbose ] [ process-id ]

显示从邻居路由器接收Hello报文的信息

display isis peer hello-received [ process-id ]

显示IPv6 IS-IS引入路由信息

display isis redistribute ipv6 [ ipv6-address mask-length ] [ level-1 | level-2 ] [ process-id ]

显示IPv6 IS-IS路由信息

display isis route ipv6 [ ipv6-address | priority { critical | high | low | medium } ] [ [ level-1 | level-2 ] | verbose ] * [ process-id ]

显示IS-IS的BIER路由信息

display isis route bier sub-domain sub-domain-id ipv6 [ ipv6-address prefix-length ] [ [ level-1 | level-2 ] | verbose ] * [ process-id ]

显示IPv6 IS-IS拓扑信息

display isis spf-tree ipv6 [ [ level-1 | level-2 ] | verbose ] * [ process-id ]

显示IS-IS BIER的最短路径树信息

display isis spf-tree bier sub-domain sub-domain-id ipv6 [ [ level-1 | level-2 ] | [ source-id source-id | verbose ] ] * [ process-id ]

显示IPv6 IS-IS统计信息

display isis statistics ipv6 [ level-1 | level-1-2 | level-2 ] [ process-id ]

显示IS-IS邻居关系断开的故障检测信息

display isis troubleshooting

显示IPv6 IS-IS路由计算日志信息

display isis event-log spf ipv6 [ [ level-1 | level-2 ] | verbose ] * [ process-id ]

显示LSP更新的日志信息

display isis event-log updated-lsp [ history [ hour-range hour-range1 to hour-range2 ] ] [ system-id system-id ] [ level-1 | level-2 ] [ process-id ]

显示IS-IS LSP日志信息

display isis event-log lsp { purged [ generated | received ] | refreshed } [ level-1 | level-2 ] [ process-id ]

显示OSI连接的信息

(独立运行模式)

display osi [ slot slot-number ]

(IRF模式)

display osi [ chassis chassis-number slot slot-number ]

显示OSI连接的报文统计信息

(独立运行模式)

display osi statistics [ slot slot-number ]

(IRF模式)

display osi statistics [ chassis chassis-number slot slot-number ]

显示IS-IS的全局统计信息

display isis global-statistics [ public | vpn-instance vpn-instance-name ]

清除IS-IS进程所有的数据结构信息

reset isis all [ process-id ] [ graceful-restart ]

清除IS-IS日志信息

reset isis event-log { hello { peer-change | received-abnormal | received-dropped | sent-abnormal | sent-failed } | peer } [ process-id ]

清除IS-IS路由计算日志信息

reset isis event-log spf [ process-id ]

清除IS-IS LSP更新的日志信息

reset isis event-log updated-lsp

清除IS-IS LSP日志信息

reset isis event-log lsp { purged [ generated | received ] | refreshed } [ process-id ]

清除IS-IS报文的统计信息

reset isis packet [ csnp | hello | lsp | psnp ] by-interface [ interface-type interface-number ] [ process-id ]

清除IS-IS指定邻居的数据结构信息

reset isis peer system-id [ process-id ]

清除OSI连接的报文统计信息

reset osi statistics

清除IS-IS邻居关系断开的故障检测信息

reset isis troubleshooting

 

1.25  IS-IS典型配置举例

1.25.1  IS-IS基本功能配置举例

1. 组网需求

图1-28所示,Router A、Router B、Router C和Router D属于同一自治系统,要求它们之间通过IS-IS协议达到IP网络互连的目的。

Router A和Router B为Level-1路由器,Router D为Level-2路由器,Router C作为Level-1-2路由器将两个区域相连。Router A、Router B和Router C的区域号为10,Router D的区域号为20。

2. 组网图

图1-28 IS-IS基本功能配置组网图

3. 配置步骤

(1)     配置各接口的IP地址(略)

(2)     配置IS-IS

# 配置Router A。

<RouterA> system-view

[RouterA] isis 1

[RouterA-isis-1] is-level level-1

[RouterA-isis-1] network-entity 10.0000.0000.0001.00

[RouterA-isis-1] quit

[RouterA] interface ten-gigabitethernet 3/1/1

[RouterA-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterA-Ten-GigabitEthernet3/1/1] quit

# 配置Router B。

<RouterB> system-view

[RouterB] isis 1

[RouterB-isis-1] is-level level-1

[RouterB-isis-1] network-entity 10.0000.0000.0002.00

[RouterB-isis-1] quit

[RouterB] interface ten-gigabitethernet 3/1/1

[RouterB-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterB-Ten-GigabitEthernet3/1/1] quit

# 配置Router C。

<RouterC> system-view

[RouterC] isis 1

[RouterC-isis-1] network-entity 10.0000.0000.0003.00

[RouterC-isis-1] quit

[RouterC] interface ten-gigabitethernet 3/1/3

[RouterC-Ten-GigabitEthernet3/1/3] isis enable 1

[RouterC-Ten-GigabitEthernet3/1/3] quit

[RouterC] interface ten-gigabitethernet 3/1/1

[RouterC-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterC-Ten-GigabitEthernet3/1/1] quit

[RouterC] interface ten-gigabitethernet 3/1/2

[RouterC-Ten-GigabitEthernet3/1/2] isis enable 1

[RouterC-Ten-GigabitEthernet3/1/2] quit

# 配置Router D。

<RouterD> system-view

[RouterD] isis 1

[RouterD-isis-1] is-level level-2

[RouterD-isis-1] network-entity 20.0000.0000.0004.00

[RouterD-isis-1] quit

[RouterD] interface ten-gigabitethernet 3/1/1

[RouterD-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterD-Ten-GigabitEthernet3/1/1] quit

[RouterD] interface ten-gigabitethernet 3/1/2

[RouterD-Ten-GigabitEthernet3/1/2] isis enable 1

[RouterD-Ten-GigabitEthernet3/1/2] quit

4. 验证配置

# 显示各路由器的IS-IS LSDB信息。

[RouterA] display isis lsdb

 

                       Database information for IS-IS(1)

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

 

                          Level-1 Link State Database

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

 

LSPID                 Seq Num      Checksum      Holdtime      Length  ATT/P/OL

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

0000.0000.0001.00-00* 0x00000004   0xdf5e        1096          68      0/0/0

0000.0000.0002.00-00  0x00000004   0xee4d        1102          68      0/0/0

0000.0000.0002.01-00  0x00000001   0xdaaf        1102          55      0/0/0

0000.0000.0003.00-00  0x00000009   0xcaa3        1161          111     1/0/0

0000.0000.0003.01-00  0x00000001   0xadda        1112          55      0/0/0

 

    *-Self LSP, +-Self LSP(Extended), ATT-Attached, P-Partition, OL-Overload

[RouterB] display isis lsdb

 

                       Database information for IS-IS(1)

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

 

                          Level-1 Link State Database

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

 

LSPID                 Seq Num      Checksum      Holdtime      Length  ATT/P/OL

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

0000.0000.0001.00-00  0x00000006   0xdb60        988           68      0/0/0

0000.0000.0002.00-00* 0x00000008   0xe651        1189          68      0/0/0

0000.0000.0002.01-00* 0x00000005   0xd2b3        1188          55      0/0/0

0000.0000.0003.00-00  0x00000014   0x194a        1190          111     1/0/0

0000.0000.0003.01-00  0x00000002   0xabdb        995           55      0/0/0

 

    *-Self LSP, +-Self LSP(Extended), ATT-Attached, P-Partition, OL-Overload

[RouterC] display isis lsdb

 

                        Database information for IS-IS(1)

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

 

                          Level-1 Link State Database

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

 

LSPID                 Seq Num      Checksum      Holdtime      Length  ATT/P/OL

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

0000.0000.0001.00-00  0x00000006   0xdb60        847           68      0/0/0

0000.0000.0002.00-00  0x00000008   0xe651        1053          68      0/0/0

0000.0000.0002.01-00  0x00000005   0xd2b3        1052          55      0/0/0

0000.0000.0003.00-00* 0x00000014   0x194a        1051          111     1/0/0

0000.0000.0003.01-00* 0x00000002   0xabdb        854           55      0/0/0

 

    *-Self LSP, +-Self LSP(Extended), ATT-Attached, P-Partition, OL-Overload

 

                          Level-2 Link State Database

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

 

LSPID                 Seq Num      Checksum      Holdtime      Length  ATT/P/OL

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

0000.0000.0003.00-00* 0x00000012   0xc93c        842           100     0/0/0

0000.0000.0004.00-00  0x00000026   0x331         1173          84      0/0/0

0000.0000.0004.01-00  0x00000001   0xee95        668           55      0/0/0

 

    *-Self LSP, +-Self LSP(Extended), ATT-Attached, P-Partition, OL-Overload

[RouterD] display isis lsdb

 

                        Database information for IS-IS(1)

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

 

                          Level-2 Link State Database

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

 

LSPID                 Seq Num      Checksum      Holdtime      Length  ATT/P/OL

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

0000.0000.0003.00-00  0x00000013   0xc73d        1003          100     0/0/0

0000.0000.0004.00-00* 0x0000003c   0xd647        1194          84      0/0/0

0000.0000.0004.01-00* 0x00000002   0xec96        1007          55      0/0/0

 

    *-Self LSP, +-Self LSP(Extended), ATT-Attached, P-Partition, OL-Overload

# 显示各路由器的IS-IS路由信息。Level-1路由器的路由表中应该有一条缺省路由,且下一跳为Level-1-2路由器,Level-2路由器的路由表中应该有所有Level-1和Level-2的路由。

[RouterA] display isis route

 

                         Route information for IS-IS(1)

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

 

                         Level-1 IPv4 Forwarding Table

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

 

 IPv4 Destination     IntCost    ExtCost ExitInterface   NextHop         Flags

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

 10.1.1.0/24          10         NULL    XGE3/1/1        Direct          D/L/-

 10.1.2.0/24          20         NULL    XGE3/1/1        10.1.1.1        R/-/-

 192.168.0.0/24       20         NULL    XGE3/1/1        10.1.1.1        R/-/-

 0.0.0.0/0            10         NULL    XGE3/1/1        10.1.1.1        R/-/-

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

[RouterC] display isis route

 

                         Route information for IS-IS(1)

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

 

                         Level-1 IPv4 Forwarding Table

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

 

 IPv4 Destination     IntCost    ExtCost ExitInterface   NextHop         Flags

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

 10.1.1.0/24          10         NULL    XGE3/1/1        Direct          D/L/-

 10.1.2.0/24          10         NULL    XGE3/1/3        Direct          D/L/-

 192.168.0.0/24       10         NULL    XGE3/1/2        Direct          D/L/-

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

 

                         Level-2 IPv4 Forwarding Table

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

 

 IPv4 Destination     IntCost    ExtCost ExitInterface   NextHop         Flags

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

 10.1.1.0/24          10         NULL                                    D/L/-

 10.1.2.0/24          10         NULL                                    D/L/-

 192.168.0.0/24       10         NULL                                    D/L/-

 172.16.0.0/16        20         NULL    XGE3/1/2        192.168.0.2     R/-/-

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

[RouterD] display isis route

 

                         Route information for IS-IS(1)

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

 

                         Level-2 IPv4 Forwarding Table

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

 

 IPv4 Destination     IntCost    ExtCost ExitInterface   NextHop         Flags

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

 192.168.0.0/24       10         NULL    XGE3/1/2        Direct          D/L/-

 10.1.1.0/24          20         NULL    XGE3/1/2        192.168.0.1     R/-/-

 10.1.2.0/24          20         NULL    XGE3/1/2        192.168.0.1     R/-/-

 172.16.0.0/16        10         NULL    XGE3/1/1        Direct          D/L/-

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

1.25.2  IS-IS的DIS选择配置举例

1. 组网需求

图1-29所示,Router A、Router B、Router C和Router D都运行IS-IS路由协议以实现互连,它们属于同一区域10,网络类型为广播网(以太网)。

Router A和Router B是Level-1-2路由器,Router C为Level-1路由器,Router D为Level-2路由器。要求通过改变接口的DIS优先级,将Router A配置为Level-1-2的DIS路由器。

2. 组网图

图1-29 IS-IS的DIS选择配置组网图

3. 配置步骤

(1)     配置各接口的IP地址(略)

(2)     配置IS-IS

# 配置Router A。

<RouterA> system-view

[RouterA] isis 1

[RouterA-isis-1] network-entity 10.0000.0000.0001.00

[RouterA-isis-1] quit

[RouterA] interface ten-gigabitethernet 3/1/1

[RouterA-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterA-Ten-GigabitEthernet3/1/1] quit

# 配置Router B。

<RouterB> system-view

[RouterB] isis 1

[RouterB-isis-1] network-entity 10.0000.0000.0002.00

[RouterB-isis-1] quit

[RouterB] interface ten-gigabitethernet 3/1/1

[RouterB-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterB-Ten-GigabitEthernet3/1/1] quit

# 配置Router C。

<RouterC> system-view

[RouterC] isis 1

[RouterC-isis-1] network-entity 10.0000.0000.0003.00

[RouterC-isis-1] is-level level-1

[RouterC-isis-1] quit

[RouterC] interface ten-gigabitethernet 3/1/1

[RouterC-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterC-Ten-GigabitEthernet3/1/1] quit

# 配置Router D。

<RouterD> system-view

[RouterD] isis 1

[RouterD-isis-1] network-entity 10.0000.0000.0004.00

[RouterD-isis-1] is-level level-2

[RouterD-isis-1] quit

[RouterD] interface ten-gigabitethernet 3/1/1

[RouterD-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterD-Ten-GigabitEthernet3/1/1] quit

# 查看Router A的IS-IS邻居信息。

[RouterA] display isis peer

 

                          Peer information for IS-IS(1)

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

 System ID: 0000.0000.0002

 Interface: XGE3/1/1                Circuit Id:  0000.0000.0003.01

 State: Up     HoldTime: 21s        Type: L1(L1L2)     PRI: 64

 

 System ID: 0000.0000.0003

 Interface: XGE3/1/1                Circuit Id:  0000.0000.0003.01

 State: Up     HoldTime: 6s         Type: L1           PRI: 64

 

 System ID: 0000.0000.0002

 Interface: XGE3/1/1                Circuit Id:  0000.0000.0004.01

 State: Up     HoldTime: 23s        Type: L2(L1L2)     PRI: 64

 

 System ID: 0000.0000.0004

 Interface: XGE3/1/1                Circuit Id:  0000.0000.0004.01

 State: Up     HoldTime: 23s        Type: L2           PRI: 64

# 显示Router A的IS-IS接口信息。

[RouterA] display isis interface

 

                       Interface information for IS-IS(1)

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

 

  Interface:  Ten-GigabitEthernet3/1/1

  Index     IPv4 state      IPv6 state     Circuit ID   MTU   Type   DIS

  00001     Up              Down           1            1497  L1/L2  No/No

# 显示Router C的IS-IS接口信息。

[RouterC] display isis interface

 

                       Interface information for IS-IS(1)

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

 

  Interface:  Ten-GigabitEthernet3/1/1

  Index     IPv4 state      IPv6 state     Circuit ID   MTU   Type   DIS

  00001     Up              Down           1            1497  L1/L2  Yes/No

# 显示Router D的IS-IS接口信息。

[RouterD] display isis interface

 

                       Interface information for IS-IS(1)

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

 

  Interface:  Ten-GigabitEthernet3/1/1

  Index     IPv4 state      IPv6 state     Circuit ID   MTU   Type   DIS

  00001     Up              Down           1            1497  L1/L2  No/Yes

从接口信息中可以看到,在使用缺省DIS优先级的情况下,Router C为Level-1的DIS,Router D为Level-2的DIS。Level-1和Level-2的伪节点分别是0000.0000.0003.01和0000.0000.0004.01。

# 配置Router A的DIS优先级。

[RouterA] interface ten-gigabitethernet 3/1/1

[RouterA-Ten-GigabitEthernet3/1/1] isis dis-priority 100

# 查看Router A的IS-IS邻居信息。

[RouterA] display isis peer

 

                          Peer information for IS-IS(1)

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

 

 System ID: 0000.0000.0002

 Interface: XGE3/1/1                Circuit Id:  0000.0000.0001.01

 State: Up     HoldTime: 29s        Type: L1(L1L2)     PRI: 64

 

 System ID: 0000.0000.0003

 Interface: XGE3/1/1                Circuit Id:  0000.0000.0001.01

 State: Up     HoldTime: 22s        Type: L1           PRI: 64

 

 System ID: 0000.0000.0002

 Interface: XGE3/1/1                Circuit Id:  0000.0000.0001.01

 State: Up     HoldTime: 22s        Type: L2(L1L2)     PRI: 64

 

 System ID: 0000.0000.0004

 Interface: XGE3/1/1                Circuit Id:  0000.0000.0001.01

 State: Up     HoldTime: 22s        Type: L2           PRI: 64

# 查看Router A的IS-IS接口信息。

[RouterA] display isis interface

 

                       Interface information for IS-IS(1)

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

 

  Interface:  Ten-GigabitEthernet3/1/1

  Index     IPv4 state      IPv6 state     Circuit ID   MTU   Type   DIS

  00001     Up              Down           1            1497  L1/L2  Yes/Yes

从上述信息中可以看到,在改变IS-IS接口的DIS优先级后,Router A立即成为Level-1-2的DIS,且伪节点是0000.0000.0001.01。

# 显示Router C的IS-IS邻居和接口信息。

[RouterC] display isis peer

 

                          Peer information for IS-IS(1)

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

 

 System ID: 0000.0000.0001

 Interface: XGE3/1/1                Circuit Id:  0000.0000.0001.01

 State: Up     HoldTime: 7s         Type: L1           PRI: 100

 

 System ID: 0000.0000.0002

 Interface: XGE3/1/1                Circuit Id:  0000.0000.0001.01

 State: Up     HoldTime: 23s        Type: L1           PRI: 64

[RouterC] display isis interface

 

                       Interface information for IS-IS(1)

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

 

  Interface:  Ten-GigabitEthernet3/1/1

  Index     IPv4 state      IPv6 state     Circuit ID   MTU   Type   DIS

  00  1     Up              Down           1            1497  L1/L2  No/No

# 显示Router D的IS-IS邻居和接口信息。

[RouterD] display isis peer

 

                          Peer information for IS-IS(1)

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

 

 System ID: 0000.0000.0001

 Interface: XGE3/1/1                Circuit Id:  0000.0000.0001.01

 State: Up     HoldTime: 7s         Type: L2           PRI: 100

 

 System ID: 0000.0000.0002

 Interface: XGE3/1/1                Circuit Id:  0000.0000.0001.01

 State: Up     HoldTime: 26s        Type: L2           PRI: 64

[RouterD] display isis interface

 

                       Interface information for IS-IS(1)

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

 

  Interface:  Ten-GigabitEthernet3/1/1

  Index     IPv4 state      IPv6 state     Circuit ID   MTU   Type   DIS

  00001     Up              Down           1            1497  L1/L2  No/No

1.25.3  IS-IS引入外部路由配置举例

1. 组网需求

图1-30所示:

·     Router A、Router B、Router C和Router D属于同一自治系统,要求它们之间通过IS-IS协议达到IP网络互连的目的。

·     Router A和Router B为Level-1路由器,Router D为Level-2路由器,Router C作为Level-1-2路由器将两个区域相连。Router A、Router B和Router C的区域号为10,Router D的区域号为20。

·     在Router D的IS-IS进程中引入RIP路由。

2. 组网图

图1-30 IS-IS引入外部路由配置组网图

3. 配置步骤

(1)     配置各接口的IP地址(略)

(2)     配置IS-IS基本功能

# 配置Router A。

<RouterA> system-view

[RouterA] isis 1

[RouterA-isis-1] is-level level-1

[RouterA-isis-1] network-entity 10.0000.0000.0001.00

[RouterA-isis-1] quit

[RouterA] interface ten-gigabitethernet 3/1/1

[RouterA-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterA-Ten-GigabitEthernet3/1/1] quit

# 配置Router B。

<RouterB> system-view

[RouterB] isis 1

[RouterB-isis-1] is-level level-1

[RouterB-isis-1] network-entity 10.0000.0000.0002.00

[RouterB-isis-1] quit

[RouterB] interface ten-gigabitethernet 3/1/1

[RouterB-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterB-Ten-GigabitEthernet3/1/1] quit

# 配置Router C。

<RouterC> system-view

[RouterC] isis 1

[RouterC-isis-1] network-entity 10.0000.0000.0003.00

[RouterC-isis-1] quit

[RouterC] interface ten-gigabitethernet 3/1/1

[RouterC-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterC-Ten-GigabitEthernet3/1/1] quit

[RouterC] interface ten-gigabitethernet 3/1/2

[RouterC-Ten-GigabitEthernet3/1/2] isis enable 1

[RouterC-Ten-GigabitEthernet3/1/2] quit

[RouterC] interface ten-gigabitethernet 3/1/3

[RouterC-Ten-GigabitEthernet3/1/3] isis enable 1

[RouterC-Ten-GigabitEthernet3/1/3] quit

# 配置Router D。

<RouterD> system-view

[RouterD] isis 1

[RouterD-isis-1] is-level level-2

[RouterD-isis-1] network-entity 20.0000.0000.0004.00

[RouterD-isis-1] quit

[RouterD] interface ten-gigabitethernet 3/1/1

[RouterD-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterD-Ten-GigabitEthernet3/1/1] quit

[RouterD] interface ten-gigabitethernet 3/1/2

[RouterD-Ten-GigabitEthernet3/1/2] isis enable 1

[RouterD-Ten-GigabitEthernet3/1/2] quit

# 显示各路由器的IS-IS路由信息。

[RouterA] display isis route

 

                         Route information for IS-IS(1)

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

 

                         Level-1 IPv4 Forwarding Table

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

 

 IPv4 Destination     IntCost    ExtCost ExitInterface   NextHop         Flags

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

 10.1.1.0/24          10         NULL    XGE3/1/1        Direct          D/L/-

 10.1.2.0/24          20         NULL    XGE3/1/1        10.1.1.1        R/-/-

 192.168.0.0/24       20         NULL    XGE3/1/1        10.1.1.1        R/-/-

 0.0.0.0/0            10         NULL    XGE3/1/1        10.1.1.1        R/-/-

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

[RouterC] display isis route

 

                         Route information for IS-IS(1)

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

 

                         Level-1 IPv4 Forwarding Table

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

 

 IPv4 Destination     IntCost    ExtCost ExitInterface   NextHop         Flags

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

 10.1.1.0/24          10         NULL    XGE3/1/1        Direct          D/L/-

 10.1.2.0/24          10         NULL    XGE3/1/3        Direct          D/L/-

 192.168.0.0/24       10         NULL    XGE3/1/2        Direct          D/L/-

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

 

                         Level-2 IPv4 Forwarding Table

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

 

 IPv4 Destination     IntCost    ExtCost ExitInterface   NextHop         Flags

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

 10.1.1.0/24          10         NULL                                    D/L/-

 10.1.2.0/24          10         NULL                                    D/L/-

 10.1.4.0/24          10         NULL                                    D/L/-

 192.168.0.0/24       10         NULL                                    D/L/-

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

[RouterD] display isis route

 

                         Route information for IS-IS(1)

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

 

                         Level-2 IPv4 Forwarding Table

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

 

 IPv4 Destination     IntCost    ExtCost ExitInterface   NextHop         Flags

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

 10.1.1.0/24          20         NULL    XGE3/1/2        192.168.0.1     R/-/-

 10.1.2.0/24          20         NULL    XGE3/1/2        192.168.0.1     R/-/-

 10.1.4.0/24          10         NULL    XGE3/1/1        Direct          D/L/-

 192.168.0.0/24       10         NULL    XGE3/1/2        Direct          D/L/-

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

(3)     在Router D和Router E之间运行RIPv2,在Router D上配置IS-IS进程引入RIP路由。

# 在Router D上配置RIPv2。

[RouterD] rip 1

[RouterD-rip-1] network 10.0.0.0

[RouterD-rip-1] version 2

[RouterD-rip-1] undo summary

# 在Router E上配置RIPv2。

[RouterE] rip 1

[RouterE-rip-1] network 10.0.0.0

[RouterE-rip-1] version 2

[RouterE-rip-1] undo summary

# 在Router D上配置IS-IS进程引入RIP进程的路由。

[RouterD-rip-1] quit

[RouterD] isis 1

[RouterD–isis-1] address-family ipv4

[RouterD–isis-1-ipv4] import-route rip level-2

# 显示Router C的IS-IS路由信息。

[RouterC] display isis route

 

                         Route information for IS-IS(1)

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

 

                         Level-1 IPv4 Forwarding Table

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

 

 IPv4 Destination     IntCost    ExtCost ExitInterface   NextHop         Flags

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

 10.1.1.0/24          10         NULL    XGE3/1/1        Direct          D/L/-

 10.1.2.0/24          10         NULL    XGE3/1/3        Direct          D/L/-

 192.168.0.0/24       10         NULL    XGE3/1/2        Direct          D/L/-

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

 

                         Level-2 IPv4 Forwarding Table

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

 

 IPv4 Destination     IntCost    ExtCost ExitInterface   NextHop         Flags

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

 10.1.1.0/24          10         NULL                                    D/L/-

 10.1.2.0/24          10         NULL                                    D/L/-

 192.168.0.0/24       10         NULL                                    D/L/-

 10.1.4.0/24          20         NULL    XGE3/1/2        192.168.0.2     R/L/-

 10.1.5.0/24          10         0       XGE3/1/2        192.168.0.2 R/L/-

 10.1.6.0/24          10         0       XGE3/1/2        192.168.0.2 R/L/-

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

1.25.4  IS-IS验证配置举例

1. 组网需求

图1-31所示,Router A、Router B、Router C和Router D属于同一路由域,要求它们之间通过IS-IS协议达到IP网络互连的目的。

其中,Router A、Router B和Router C属于同一个区域,区域号为10,Router D属于另外一个区域,区域号为20。

在区域10内配置区域验证,防止不可信任的路由信息加入到区域10的LSDB中;在Router C和Router D上配置路由域验证,防止将不可信的路由信息注入当前路由域;分别在Router A、Router B、Router C和Router D上配置邻居关系验证。

2. 组网图

图1-31 IS-IS验证配置举例图

3. 配置步骤

(1)     配置各接口的IP地址(略)

(2)     配置IS-IS基本功能

# 配置Router A。

<RouterA> system-view

[RouterA] isis 1

[RouterA-isis-1] network-entity 10.0000.0000.0001.00

[RouterA-isis-1] is-level level-1

[RouterA-isis-1] quit

[RouterA] interface ten-gigabitethernet 3/1/1

[RouterA-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterA-Ten-GigabitEthernet3/1/1] quit

# 配置Router B。

<RouterB> system-view

[RouterB] isis 1

[RouterB-isis-1] network-entity 10.0000.0000.0002.00

[RouterB-isis-1] is-level level-1

[RouterB-isis-1] quit

[RouterB] interface ten-gigabitethernet 3/1/1

[RouterB-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterB-Ten-GigabitEthernet3/1/1] quit

# 配置Router C。

<RouterC> system-view

[RouterC] isis 1

[RouterC-isis-1] network-entity 10.0000.0000.0003.00

[RouterC-isis-1] quit

[RouterC] interface ten-gigabitethernet 3/1/1

[RouterC-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterC-Ten-GigabitEthernet3/1/1] quit

[RouterC] interface ten-gigabitethernet 3/1/2

[RouterC-Ten-GigabitEthernet3/1/2] isis enable 1

[RouterC-Ten-GigabitEthernet3/1/2] quit

[RouterC] interface ten-gigabitethernet 3/1/3

[RouterC-Ten-GigabitEthernet3/1/3] isis enable 1

[RouterC-Ten-GigabitEthernet3/1/3] quit

# 配置Router D。

<RouterD> system-view

[RouterD] isis 1

[RouterD-isis-1] network-entity 20.0000.0000.0001.00

[RouterD-isis-1] quit

[RouterD] interface ten-gigabitethernet 3/1/1

[RouterD-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterD-Ten-GigabitEthernet3/1/1] quit

(3)     在Router A、Router B、Router C和Router D之间建立邻居关系验证

# 分别在Router A的Ten-GigabitEthernet3/1/1、Router C的Ten-GigabitEthernet3/1/3配置邻居关系验证,验证方式为MD5明文,验证密钥为“eRg”。

[RouterA] interface ten-gigabitethernet 3/1/1

[RouterA-Ten-GigabitEthernet3/1/1] isis authentication-mode md5 plain eRg

[RouterA-Ten-GigabitEthernet3/1/1] quit

[RouterC] interface ten-gigabitethernet 3/1/3

[RouterC-Ten-GigabitEthernet3/1/3] isis authentication-mode md5 plain eRg

[RouterC-Ten-GigabitEthernet3/1/3] quit

# 分别在Router B的Ten-GigabitEthernet3/1/1、Router C的Ten-GigabitEthernet3/1/1配置邻居关系验证,验证方式为MD5明文,验证密钥为“t5Hr”。

[RouterB] interface ten-gigabitethernet 3/1/1

[RouterB-Ten-GigabitEthernet3/1/1] isis authentication-mode md5 plain t5Hr

[RouterB-Ten-GigabitEthernet3/1/1] quit

[RouterC] interface ten-gigabitethernet 3/1/1

[RouterC-Ten-GigabitEthernet3/1/1] isis authentication-mode md5 plain t5Hr

[RouterC-Ten-GigabitEthernet3/1/1] quit

# 分别在Router C的Ten-GigabitEthernet3/1/2、Router D的Ten-GigabitEthernet3/1/1配置邻居关系验证,验证方式为MD5明文,验证密钥为“hSec”。

[RouterC] interface ten-gigabitethernet 3/1/2

[RouterC-Ten-GigabitEthernet3/1/2] isis authentication-mode md5 plain hSec

[RouterC-Ten-GigabitEthernet3/1/2] quit

[RouterD] interface ten-gigabitethernet 3/1/1

[RouterD-Ten-GigabitEthernet3/1/1] isis authentication-mode md5 plain hSec

[RouterD-Ten-GigabitEthernet3/1/1] quit

(4)     在Router A、Router B和Router C上配置区域验证,验证方式为MD5明文验证,验证密钥为“10Sec”。

[RouterA] isis 1

[RouterA-isis-1] area-authentication-mode md5 plain 10Sec

[RouterA-isis-1] quit

[RouterB] isis 1

[RouterB-isis-1] area-authentication-mode md5 plain 10Sec

[RouterB-isis-1] quit

[RouterC] isis 1

[RouterC-isis-1] area-authentication-mode md5 plain 10Sec

[RouterC-isis-1] quit

(5)     在Router C和Router D上配置路由域验证,验证方式为MD5明文验证,验证密钥为“1020Sec”。

[RouterC] isis 1

[RouterC-isis-1] domain-authentication-mode md5 plain 1020Sec

[RouterC-isis-1] quit

[RouterD] isis 1

[RouterD-isis-1] domain-authentication-mode md5 plain 1020Sec

[RouterD-isis-1] quit

1.25.5  IS-IS GR配置举例

1. 组网需求

图1-32所示,Router A、Router B和Router C属于同一域。这三台路由器都运行IS-IS协议以实现路由互连。

2. 组网图

图1-32 IS-IS GR配置组网图

3. 配置步骤

(1)     配置各路由器接口的IP地址和IS-IS协议

请按照图1-32配置各接口的IP地址和子网掩码,具体配置过程略。

配置各路由器之间采用IS-IS协议进行互连,确保Router A、Router B和Router C之间能够在网络层互通,并且各路由器之间能够借助IS-IS协议实现动态路由更新,具体配置过程略。

(2)     配置IS-IS GR

# 使能Router A的IS-IS协议的GR能力。

<RouterA> system-view

[RouterA] isis 1

[RouterA-isis-1] graceful-restart

[RouterA-isis-1] quit

[RouterA] quit

4. 验证配置

# 重启Router A的IS-IS进程。

<RouterA> reset isis all 1 graceful-restart

Reset IS-IS process? [Y/N]:y

# 查看Router A上IS-IS协议的GR状态。

<RouterA> display isis graceful-restart status

 

                        Restart information for IS-IS(1)

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

Restart status: COMPLETE

Restart phase: Finish

Restart t1: 3, count 10; Restart t2: 60; Restart t3: 300

SA Bit: supported

 

                          Level-1 restart information

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

Total number of interfaces: 1

Number of waiting LSPs: 0

 

                          Level-2 restart information

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

Total number of interfaces: 1

Number of waiting LSPs: 0

1.25.6  IS-IS与BFD联动配置举例

1. 组网需求

·     Router A、Router B和Router C上运行IS-IS,网络层相互可达。

·     当Router A和Router B通过L2 Switch通信的链路出现故障时BFD能够快速感知通告IS-IS协议,并且切换到Router C进行通信。

2. 组网图

图1-33 IS-IS与BFD联动配置组网图

设备

接口

IP地址

设备

接口

IP地址

Router A

XGE3/1/1

192.168.0.102/24

Router B

XGE3/1/1

192.168.0.100/24

 

XGE3/1/2

10.1.1.102/24

 

XGE3/1/2

13.1.1.1/24

 

Loop0

121.1.1.1/32

 

Loop0

120.1.1.1/32

Router C

XGE3/1/1

10.1.1.100/24

 

 

 

 

XGE3/1/2

13.1.1.2/24

 

 

 

 

3. 配置步骤

(1)     配置各接口的IP地址(略)

(2)     配置IS-IS基本功能

# 配置Router A。

<RouterA> system-view

[RouterA] isis

[RouterA-isis-1] network-entity 10.0000.0000.0001.00

[RouterA-isis-1] quit

[RouterA] interface loopback 0

[RouterA-LoopBack0] isis enable

[RouterA-LoopBack0] quit

[RouterA] interface ten-gigabitethernet 3/1/1

[RouterA-Ten-GigabitEthernet3/1/1] isis enable

[RouterA-Ten-GigabitEthernet3/1/1] quit

[RouterA] interface ten-gigabitethernet 3/1/2

[RouterA-Ten-GigabitEthernet3/1/2] isis enable

[RouterA-Ten-GigabitEthernet3/1/2] quit

# 配置Router B。

<RouterB> system-view

[RouterB] isis

[RouterB-isis-1] network-entity 10.0000.0000.0002.00

[RouterB-isis-1] quit

[RouterB] interface loopback 0

[RouterB-LoopBack0] isis enable

[RouterB-LoopBack0] quit

[RouterB] interface ten-gigabitethernet 3/1/1

[RouterB-Ten-GigabitEthernet3/1/1] isis enable

[RouterB-Ten-GigabitEthernet3/1/1] quit

[RouterB] interface ten-gigabitethernet 3/1/2

[RouterB-Ten-GigabitEthernet3/1/2] isis enable

[RouterB-Ten-GigabitEthernet3/1/2] quit

# 配置Router C。

<RouterC> system-view

[RouterC] isis

[RouterC-isis-1] network-entity 10.0000.0000.0003.00

[RouterC-isis-1] quit

[RouterC] interface ten-gigabitethernet 3/1/1

[RouterC-Ten-GigabitEthernet3/1/1] isis enable

[RouterC-Ten-GigabitEthernet3/1/1] quit

[RouterC] interface ten-gigabitethernet 3/1/2

[RouterC-Ten-GigabitEthernet3/1/2] isis enable

[RouterC-Ten-GigabitEthernet3/1/2] quit

(3)     配置BFD功能

# 在Router A上使能BFD检测功能,并配置BFD参数。

[RouterA] bfd session init-mode active

[RouterA] interface ten-gigabitethernet 3/1/1

[RouterA-Ten-GigabitEthernet3/1/1] isis bfd enable

[RouterA-Ten-GigabitEthernet3/1/1] bfd min-receive-interval 500

[RouterA-Ten-GigabitEthernet3/1/1] bfd min-transmit-interval 500

[RouterA-Ten-GigabitEthernet3/1/1] bfd detect-multiplier 7

[RouterA-Ten-GigabitEthernet3/1/1] quit

# 在Router B上使能BFD检测功能,并配置BFD参数。

[RouterB] bfd session init-mode active

[RouterB] interface ten-gigabitethernet 3/1/1

[RouterB-Ten-GigabitEthernet3/1/1] isis bfd enable

[RouterB-Ten-GigabitEthernet3/1/1] bfd min-receive-interval 500

[RouterB-Ten-GigabitEthernet3/1/1] bfd min-transmit-interval 500

[RouterB-Ten-GigabitEthernet3/1/1] bfd detect-multiplier 8

[RouterB-Ten-GigabitEthernet3/1/1] quit

4. 验证配置

下面以Router A为例,Router B和Router A类似,不再赘述。

# 显示Router A的BFD信息。

[RouterA] display bfd session

 Total sessions: 1        Up sessions: 1        Init mode: Active

 

 IPv4 session working in control packet mode:

 

 LD/RD          SourceAddr      DestAddr        State    Holdtime    Interface

 3/1            192.168.0.102   192.168.0.100   Up       1700ms      XGE3/1/1

# 在Router A上查看120.1.1.1/32的路由信息,可以看出Router A和Router B是通过L2 Switch进行通信的。

[RouterA] display ip routing-table 120.1.1.1 verbose

 

Summary count : 1

 

 Destination: 120.1.1.1/32

    Protocol: IS_L1

  Process ID: 1

   SubProtID: 0x1                       Age: 04h20m37s

  FlushedAge: 15h28m49s

        Cost: 10                 Preference: 10

       IpPre: N/A                QosLocalID: N/A

         Tag: 0                       State: Active Adv

   OrigTblID: 0x0                   OrigVrf: default-vrf

     TableID: 0x2                    OrigAs: 0

       NibID: 0x26000002             LastAs: 0

      AttrID: 0xffffffff

    BkAttrID: 0xffffffff           Neighbor: 0.0.0.0

       Flags: 0x1008c           OrigNextHop: 192.168.0.100

       Label: NULL              RealNextHop: 192.168.0.100

     BkLabel: NULL                BkNextHop: N/A

     SRLabel: NULL                Interface: Ten-GigabitEthernet3/1/1

   BkSRLabel: NULL              BkInterface: N/A

   Tunnel ID: Invalid           IPInterface: Ten-GigabitEthernet3/1/1

 BkTunnel ID: Invalid         BkIPInterface: N/A

     InLabel: NULL           ColorInterface: N/A

    SIDIndex: NULL         BkColorInterface: N/A

    FtnIndex: 0x0           TunnelInterface: N/A

TrafficIndex: N/A         BkTunnelInterface: N/A

   Connector: N/A                    PathID: 0x0

      UserID: 0x0                SRTunnelID: Invalid

    SID Type: N/A                       NID: Invalid

    FlushNID: Invalid                 BkNID: Invalid

  BkFlushNID: Invalid             StatFlags: 0x0

         SID: N/A

       BkSID: N/A

CommBlockLen: 0                    Priority: Critical

  MemberPort: N/A

当Router A和Router B通过L2 Switch通信的链路出现故障时:

# 在Router A上查看120.1.1.1/32的路由信息,可以看出Router A和Router B已经切换到Router C进行通信。

[RouterA] display ip routing-table 120.1.1.1 verbose

 

Summary count : 1

 

 Destination: 120.1.1.1/32

    Protocol: IS_L1

  Process ID: 1

   SubProtID: 0x1                       Age: 04h20m37s

  FlushedAge: 15h28m49s

        Cost: 20                 Preference: 10

       IpPre: N/A                QosLocalID: N/A

         Tag: 0                       State: Active Adv

   OrigTblID: 0x0                   OrigVrf: default-vrf

     TableID: 0x2                    OrigAs: 0

       NibID: 0x26000002             LastAs: 0

      AttrID: 0xffffffff

    BkAttrID: 0xffffffff           Neighbor: 0.0.0.0

       Flags: 0x1008c           OrigNextHop: 10.1.1.100

       Label: NULL              RealNextHop: 10.1.1.100

     BkLabel: NULL                BkNextHop: N/A

     SRLabel: NULL                Interface: Ten-GigabitEthernet3/1/2

   BkSRLabel: NULL              BkInterface: N/A

   Tunnel ID: Invalid           IPInterface: Ten-GigabitEthernet3/1/2

 BkTunnel ID: Invalid         BkIPInterface: N/A

     InLabel: NULL           ColorInterface: N/A

    SIDIndex: NULL         BkColorInterface: N/A

    FtnIndex: 0x0           TunnelInterface: N/A

TrafficIndex: N/A         BkTunnelInterface: N/A

   Connector: N/A                    PathID: 0x0

      UserID: 0x0                SRTunnelID: Invalid

    SID Type: N/A                       NID: Invalid

    FlushNID: Invalid                 BkNID: Invalid

  BkFlushNID: Invalid             StatFlags: 0x0

         SID: N/A

       BkSID: N/A

CommBlockLen: 0                    Priority: Critical

  MemberPort: N/A

1.25.7  IS-IS快速重路由配置举例

1. 组网需求

图1-34所示,Router A、Router B和Router C属于同一IS-IS区域,通过IS-IS协议实现网络互连。要求当Router A和Router B之间的链路出现故障时,业务可以快速切换到链路B上。

2. 组网图

图1-34 IS-IS快速重路由配置组网图

设备

接口

IP地址

设备

接口

IP地址

Router A

XGE3/1/1

12.12.12.1/24

Router B

XGE3/1/1

24.24.24.4/24

 

XGE3/1/2

13.13.13.1/24

 

XGE3/1/2

13.13.13.2/24

 

Loop0

1.1.1.1/32

 

Loop0

4.4.4.4/32

Router C

XGE3/1/1

12.12.12.2/24

 

 

 

 

XGE3/1/2

24.24.24.2/24

 

 

 

 

3. 配置步骤

(1)     配置各路由器接口的IP地址和IS-IS协议

请按照图1-34配置各接口的IP地址和子网掩码,具体配置过程略。

配置各路由器之间采用IS-IS协议进行互连,确保Router A、Router B和Router C之间能够在网络层互通,并且各路由器之间能够借助IS-IS协议实现动态路由更新。

具体配置过程略。

(2)     配置IS-IS快速重路由

IS-IS支持快速重路由配置有两种配置方法,一种是通过LFA(Loop Free Alternate)算法选取备份下一跳,另一种是在路由策略中指定备份下一跳,两种方法任选一种。

方法一:使能Router A和Router B的IS-IS协议的自动计算快速重路由能力。

# 配置Router A。

<RouterA> system-view

[RouterA] isis 1

[RouterA-isis-1] address-family ipv4

[RouterA-isis-1-ipv4] fast-reroute lfa

[RouterA-isis-1-ipv4] quit

[RouterA-isis-1] quit

# 配置Router B。

<RouterB> system-view

[RouterB] isis 1

[RouterB-isis-1] address-family ipv4

[RouterB-isis-1-ipv4] fast-reroute lfa

[RouterB-isis-1-ipv4] quit

[RouterB-isis-1] quit

方法二:使能Router A和Router B的IS-IS协议的指定路由策略快速重路由能力。

# 配置Router A。

<RouterA> system-view

[RouterA] ip prefix-list abc index 10 permit 4.4.4.4 32

[RouterA] route-policy frr permit node 10

[RouterA-route-policy-frr-10] if-match ip address prefix-list abc

[RouterA-route-policy-frr-10] apply fast-reroute backup-interface ten-gigabitethernet 3/1/1 backup-nexthop 12.12.12.2

[RouterA-route-policy-frr-10] quit

[RouterA] isis 1

[RouterA-isis-1] address-family ipv4

[RouterA-isis-1-ipv4] fast-reroute route-policy frr

[RouterA-isis-1-ipv4] quit

[RouterA-isis-1] quit

# 配置Router B。

<RouterB> system-view

[RouterB] ip prefix-list abc index 10 permit 1.1.1.1 32

[RouterB] route-policy frr permit node 10

[RouterB-route-policy-frr-10] if-match ip address prefix-list abc

[RouterB-route-policy-frr-10] apply fast-reroute backup-interface ten-gigabitethernet 3/1/1 backup-nexthop 24.24.24.2

[RouterB-route-policy-frr-10] quit

[RouterB] isis 1

[RouterB-isis-1] address-family ipv4

[RouterB-isis-1-ipv4] fast-reroute route-policy frr

[RouterB-isis-1-ipv4] quit

[RouterB-isis-1] quit

4. 验证配置

# 在Router A上查看4.4.4.4/32路由,可以看到备份下一跳信息。

[RouterA] display ip routing-table 4.4.4.4 verbose

 

Summary count : 1

 

 Destination: 4.4.4.4/32

    Protocol: IS_L1

  Process ID: 1

   SubProtID: 0x1                       Age: 04h20m37s

  FlushedAge: 15h28m49s

        Cost: 10                 Preference: 10

       IpPre: N/A                QosLocalID: N/A

         Tag: 0                       State: Active Adv

   OrigTblID: 0x0                   OrigVrf: default-vrf

     TableID: 0x2                    OrigAs: 0

       NibID: 0x26000002             LastAs: 0

      AttrID: 0xffffffff

    BkAttrID: 0xffffffff           Neighbor: 0.0.0.0

       Flags: 0x1008c           OrigNextHop: 13.13.13.2

       Label: NULL              RealNextHop: 13.13.13.2

     BkLabel: NULL                BkNextHop: 12.12.12.2

     SRLabel: NULL                Interface: Ten-GigabitEthernet3/1/2

   BkSRLabel: NULL              BkInterface: Ten-GigabitEthernet3/1/1

   Tunnel ID: Invalid           IPInterface: Ten-GigabitEthernet3/1/2

 BkTunnel ID: Invalid         BkIPInterface: Ten-GigabitEthernet3/1/1

     InLabel: NULL           ColorInterface: N/A

    SIDIndex: NULL         BkColorInterface: N/A

    FtnIndex: 0x0           TunnelInterface: N/A

TrafficIndex: N/A         BkTunnelInterface: N/A

   Connector: N/A                    PathID: 0x0

      UserID: 0x0                SRTunnelID: Invalid

    SID Type: N/A                       NID: Invalid

    FlushNID: Invalid                 BkNID: Invalid

  BkFlushNID: Invalid             StatFlags: 0x0

         SID: N/A

       BkSID: N/A

CommBlockLen: 0                    Priority: Critical

  MemberPort: N/A

# 在Router B上查看1.1.1.1/32路由,可以看到备份下一跳信息。

[RouterB] display ip routing-table 1.1.1.1 verbose

 

Summary count : 1

 

 Destination: 1.1.1.1/32

    Protocol: IS_L1

  Process ID: 1

   SubProtID: 0x1                       Age: 04h20m37s

  FlushedAge: 15h28m49s

        Cost: 10                 Preference: 10

       IpPre: N/A                QosLocalID: N/A

         Tag: 0                       State: Active Adv

   OrigTblID: 0x0                   OrigVrf: default-vrf

     TableID: 0x2                    OrigAs: 0

       NibID: 0x26000002             LastAs: 0

      AttrID: 0xffffffff

    BkAttrID: 0xffffffff           Neighbor: 0.0.0.0

       Flags: 0x1008c           OrigNextHop: 13.13.13.1

       Label: NULL              RealNextHop: 13.13.13.1

     BkLabel: NULL                BkNextHop: 24.24.24.2

     SRLabel: NULL                Interface: Ten-GigabitEthernet3/1/2

   BkSRLabel: NULL              BkInterface: Ten-GigabitEthernet3/1/1

   Tunnel ID: Invalid           IPInterface: Ten-GigabitEthernet3/1/2

 BkTunnel ID: Invalid         BkIPInterface: Ten-GigabitEthernet3/1/1

     InLabel: NULL           ColorInterface: N/A

    SIDIndex: NULL         BkColorInterface: N/A

    FtnIndex: 0x0           TunnelInterface: N/A

TrafficIndex: N/A         BkTunnelInterface: N/A

   Connector: N/A                    PathID: 0x0

      UserID: 0x0                SRTunnelID: Invalid

    SID Type: N/A                       NID: Invalid

    FlushNID: Invalid                 BkNID: Invalid

  BkFlushNID: Invalid             StatFlags: 0x0

         SID: N/A

       BkSID: N/A

CommBlockLen: 0                    Priority: Critical

  MemberPort: N/A

1.25.8  IS-IS Remote LFA快速重路由配置举例

1. 组网需求

图1-35所示,Router A、Router B、Router C和Router D属于同一IS-IS区域,通过IS-IS协议实现网络互连,且配置MPLS LDP功能。当Router A和Router B之间的链路Link A出现故障时,链路Link B上存在环路,流量无法通过Router C转发到目的节点Router B。通过部署Remote LFA FRR消除环路,同时使流量可以快速切换到链路Link B。

2. 组网图

图1-35 IS-IS Remote LFA快速重路由配置组网图

设备

接口

IP地址

设备

接口

IP地址

Router A

XGE3/1/1

12.12.12.1/24

Router B

XGE3/1/1

12.12.12.2/24

 

XGE3/1/2

13.13.13.1/24

 

XGE3/1/2

15.15.15.1/24

 

Loop1

1.1.1.1/32

 

Loop1

2.2.2.2/32

Router C

XGE3/1/1

13.13.13.2/24

Router D

XGE3/1/1

15.15.15.2/24

 

XGE3/1/2

14.14.14.1/24

 

XGE3/1/2

14.14.14.2/24

 

Loop1

3.3.3.3/32

 

Loop1

4.4.4.4/32

 

3. 配置步骤

(1)     配置各路由器接口的IP地址和IS-IS协议

请按照图1-35配置各接口的IP地址和子网掩码,具体配置过程略。

(2)     配置IS-IS协议实现网络层互通,并开启MPLS LDP功能

# 配置Router A。

<RouterA> system-view

[RouterA] mpls lsr-id 1.1.1.1

[RouterA] mpls ldp

[RouterA-ldp] accept target-hello all

[RouterA-ldp] quit

[RouterA] isis 1

[RouterA-isis-1] network-entity 00.0000.0000.0001.00

[RouterA-isis-1] quit

[RouterA] interface ten-gigabitethernet 3/1/1

[RouterA-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterA-Ten-GigabitEthernet3/1/1] isis cost 10

[RouterA-Ten-GigabitEthernet3/1/1] mpls enable

[RouterA-Ten-GigabitEthernet3/1/1] mpls ldp enable

[RouterA-Ten-GigabitEthernet3/1/1] quit

[RouterA] interface ten-gigabitethernet 3/1/2

[RouterA-Ten-GigabitEthernet3/1/2] isis enable 1

[RouterA-Ten-GigabitEthernet3/1/2] isis cost 20

[RouterA-Ten-GigabitEthernet3/1/2] mpls enable

[RouterA-Ten-GigabitEthernet3/1/2] mpls ldp enable

[RouterA-Ten-GigabitEthernet3/1/2] quit

[RouterA] interface loopback 1

[RouterA-LoopBack1] isis enable 1

[RouterA-LoopBack1] quit

# 配置Router B。

<RouterB> system-view

[RouterB] mpls lsr-id 2.2.2.2

[RouterB] mpls ldp

[RouterB-ldp] accept target-hello all

[RouterB-ldp] quit

[RouterB] isis 1

[RouterB-isis-1] network-entity 00.0000.0000.0002.00

[RouterB-isis-1] quit

[RouterB] interface ten-gigabitethernet 3/1/1

[RouterB-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterB-Ten-GigabitEthernet3/1/1] isis cost 10

[RouterB-Ten-GigabitEthernet3/1/1] mpls enable

[RouterB-Ten-GigabitEthernet3/1/1] mpls ldp enable

[RouterB-Ten-GigabitEthernet3/1/1] quit

[RouterB] interface ten-gigabitethernet 3/1/2

[RouterB-Ten-GigabitEthernet3/1/2] isis enable 1

[RouterB-Ten-GigabitEthernet3/1/2] isis cost 20

[RouterB-Ten-GigabitEthernet3/1/2] mpls enable

[RouterB-Ten-GigabitEthernet3/1/2] mpls ldp enable

[RouterB-Ten-GigabitEthernet3/1/2] quit

[RouterB] interface loopback 1

[RouterB-LoopBack1] isis enable 1

[RouterB-LoopBack1] quit

# 配置Router C。

<RouterC> system-view

[RouterC] mpls lsr-id 3.3.3.3

[RouterC] mpls ldp

[RouterC-ldp] accept target-hello all

[RouterC-ldp] quit

[RouterC] isis 1

[RouterC-isis-1] network-entity 00.0000.0000.0003.00

[RouterC-isis-1] quit

[RouterC] interface ten-gigabitethernet 3/1/1

[RouterC-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterC-Ten-GigabitEthernet3/1/1] isis cost 20

[RouterC-Ten-GigabitEthernet3/1/1] mpls enable

[RouterC-Ten-GigabitEthernet3/1/1] mpls ldp enable

[RouterC-Ten-GigabitEthernet3/1/1] quit

[RouterC] interface ten-gigabitethernet 3/1/2

[RouterC-Ten-GigabitEthernet3/1/2] isis enable 1

[RouterC-Ten-GigabitEthernet3/1/2] isis cost 20

[RouterC-Ten-GigabitEthernet3/1/2] mpls enable

[RouterC-Ten-GigabitEthernet3/1/2] mpls ldp enable

[RouterC-Ten-GigabitEthernet3/1/2] quit

[RouterC] interface loopback 1

[RouterC-LoopBack1] isis enable 1

[RouterC-LoopBack1] quit

# 配置Router D。

<RouterD> system-view

[RouterD] mpls lsr-id 4.4.4.4

[RouterD] mpls ldp

[RouterD-ldp] accept target-hello all

[RouterD-ldp] quit

[RouterD] isis 1

[RouterD-isis-1] network-entity 00.0000.0000.0004.00

[RouterD-isis-1] quit

[RouterD] interface ten-gigabitethernet 3/1/1

[RouterD-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterD-Ten-GigabitEthernet3/1/1] isis cost 20

[RouterD-Ten-GigabitEthernet3/1/1] mpls enable

[RouterD-Ten-GigabitEthernet3/1/1] mpls ldp enable

[RouterD-Ten-GigabitEthernet3/1/1] quit

[RouterD] interface ten-gigabitethernet 3/1/2

[RouterD-Ten-GigabitEthernet3/1/2] isis enable 1

[RouterD-Ten-GigabitEthernet3/1/2] isis cost 20

[RouterD-Ten-GigabitEthernet3/1/2] mpls enable

[RouterD-Ten-GigabitEthernet3/1/2] mpls ldp enable

[RouterD-Ten-GigabitEthernet3/1/2] quit

[RouterD] interface loopback 1

[RouterD-LoopBack1] isis enable 1

[RouterD-LoopBack1] quit

(3)     配置IS-IS Remote LFA FRR

# 配置Router A。

[RouterA] isis 1

[RouterA-isis-1] address-family ipv4

[RouterA-isis-1-ipv4] fast-reroute lfa

[RouterA-isis-1-ipv4] fast-reroute remote-lfa tunnel ldp

[RouterA-isis-1-ipv4] quit

[RouterA-isis-1] quit

4. 验证配置

# 在Router A上查看2.2.2.2/32路由,可以看到备份下一跳信息。

[RouterA] display isis route ipv4 2.2.2.2 32 verbose

 

                         Route information for IS-IS(1)

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

 

                         Level-1 IPv4 Forwarding Table

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

 

 IPv4 Dest : 2.2.2.2/32          Int. Cost  : 10               Ext. Cost  : NULL

 Admin Tag : -                   Src Count  : 1                Flag       : R/L/-

 InLabel   : 4294967295          InLabel Flag: -/-/-/-/-/-

 NextHop   :                     Interface  :                  ExitIndex  :

    12.12.12.2                         XGE3/1/1                   0x00000002

 Nib ID    : 0x14000008          OutLabel   : 4294967295       OutLabelFlag: -

 LabelSrc  : N/A                 Delay Flag : N/A

 Remote-LFA:

  Interface : XGE3/1/2

  BkNextHop : 13.13.13.2         LsIndex    : 0x01000002

  Tunnel destination address: 4.4.4.4

  Backup label: {1149}

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

 

      InLabel flags: R-Readvertisement, N-Node SID, P-no PHP

                     E-Explicit null, V-Value, L-Local

 

      OutLabelFlags: E-Explicit null, I-Implicit null, N-Nomal, P-SR label prefer

 

                         Level-2 IPv4 Forwarding Table

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

 

 IPv4 Dest : 2.2.2.2/32          Int. Cost  : 10               Ext. Cost  : NULL

 Admin Tag : -                   Src Count  : 3                Flag       : -/-/-

 InLabel   : 4294967295          InLabel Flag: -/-/-/-/-/-

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

 

      InLabel flags: R-Readvertisement, N-Node SID, P-no PHP

                     E-Explicit null, V-Value, L-Local

 

      OutLabelFlags: E-Explicit null, I-Implicit null, N-Nomal, P-SR label prefer

1.25.9  IS-IS多实例进程基本功能配置举例

1. 组网需求

图1-36所示,IPv4网络和IPv6的接口开销值不同,要求通过IS-IS多实例隔离IPv4和IPv6网络,避免使用传统IS-IS进程导致IPv6路由计算出错的问题。

2. 组网图

图1-36 IS-IS多实例进程基本功能配置组网图

设备

接口

IPv4地址

IPv6地址

设备

接口

IPv4地址

IPv6地址

Router A

XGE3/1/1

10.1.1.1/24

2001::1/64

Router B

XGE3/1/1

10.1.1.2/24

2001::2/64

 

Loop0

1.1.1.1/32

10::1/128

 

Loop0

2.2.2.2/32

20::1/128

 

3. 配置准备

按照组网图配置各接口的IPv4地址和IPv6地址。

4. 配置步骤

(1)     配置传统IPv4 IS-IS进程

# 配置Router A。

<RouterA> system-view

[RouterA] isis 1

[RouterA-isis-1] network-entity 10.0000.0000.0001.00

[RouterA-isis-1] quit

[RouterA] interface loopback 0

[RouterA-LoopBack0] isis enable 1

[RouterA-LoopBack0] quit

[RouterA] interface ten-gigabitethernet 3/1/1

[RouterA-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterA-Ten-GigabitEthernet3/1/1] quit

# 配置Router B。

<RouterB> system-view

[RouterB] isis 1

[RouterB-isis-1] network-entity 10.0000.0000.0002.00

[RouterB-isis-1] quit

[RouterB] interface loopback 0

[RouterB-LoopBack0] isis enable 1

[RouterB-LoopBack0] quit

[RouterB] interface ten-gigabitethernet 3/1/1

[RouterB-Ten-GigabitEthernet3/1/1] isis enable 1

[RouterB-Ten-GigabitEthernet3/1/1] quit

(2)     配置多实例IPv6 IS-IS进程

# 配置Router A。

[RouterA] isis 2

[RouterA-isis-2] network-entity 20.0000.0000.0010.00

[RouterA-isis-2] multi-instance enable iid 1

[RouterA-isis-2] address-family ipv6

[RouterA-isis-2-ipv6] quit

[RouterA-isis-2] quit

[RouterA] interface loopback 0

[RouterA-LoopBack0] isis ipv6 enable 2

[RouterA-LoopBack0] quit

[RouterA] interface ten-gigabitethernet 3/1/1

[RouterA-Ten-GigabitEthernet3/1/1] isis ipv6 enable 2

[RouterA-Ten-GigabitEthernet3/1/1] isis process-id 2 cost 63

[RouterA-Ten-GigabitEthernet3/1/1] quit

# 配置Router B。

[RouterB] isis 2

[RouterB-isis-2] network-entity 20.0000.0000.0020.00

[RouterB-isis-2] multi-instance enable iid 1

[RouterB-isis-2] address-family ipv6

[RouterB-isis-2-ipv6] quit

[RouterB-isis-2] quit

[RouterB] interface loopback 0

[RouterB-LoopBack0] isis ipv6 enable 2

[RouterB-LoopBack0] quit

[RouterB] interface ten-gigabitethernet 3/1/1

[RouterB-Ten-GigabitEthernet3/1/1] isis ipv6 enable 2

[RouterB-Ten-GigabitEthernet3/1/1] isis process-id 2 cost 63

[RouterB-Ten-GigabitEthernet3/1/1] quit

5. 验证配置

# 查看Router A的IPv4 IS-IS路由表,可以看到路由计算的结果正确。

[RouterA] display isis route ipv4

 

                         Route information for IS-IS(1)

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

 

                         Level-1 IPv4 Forwarding Table

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

 

 IPv4 Destination     IntCost    ExtCost ExitInterface   NextHop         Flags

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

 1.1.1.1/32           0          NULL    Loop0           Direct          D/L/-

 10.1.1.0/24          10         NULL    XGE3/1/1        Direct          D/L/-

 2.2.2.2/32           10         NULL    XGE3/1/1        10.1.1.2        R/L/-

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

 

                         Level-2 IPv4 Forwarding Table

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

 

 IPv4 Destination     IntCost    ExtCost ExitInterface   NextHop         Flags

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

 1.1.1.1/32           0          NULL    Loop0           Direct          D/L/-

 10.1.1.0/24          10         NULL    ULL             Direct          D/L/-

 2.2.2.2/32           10         NULL

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

# 查看Router B的IPv4 IS-IS路由表,可以看到路由计算的结果正确。

[RouterB] display isis route ipv4

 

                         Route information for IS-IS(1)

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

 

                         Level-1 IPv4 Forwarding Table

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

 

 IPv4 Destination     IntCost    ExtCost ExitInterface   NextHop         Flags

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

 1.1.1.1/32           10         NULL    XGE3/1/1        10.1.1.1        R/L/-

 10.1.1.0/24          10         NULL    XGE3/1/1        Direct          D/L/-

 2.2.2.2/32           0          NULL    Loop0           Direct          D/L/-

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

 

                         Level-2 IPv4 Forwarding Table

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

 

 IPv4 Destination     IntCost    ExtCost ExitInterface   NextHop         Flags

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

 1.1.1.1/32           10         NULL

 10.1.1.0/24          10         NULL    XGE3/1/1        Direct          D/L/-

 2.2.2.2/32           0          NULL    Loop0           Direct          D/L/-

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

# 查看Router A的IPv6 IS-IS路由表,可以看到路由计算的结果正确。

[RouterA] display isis route ipv6

 

                         Route information for IS-IS(2)

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

 

                         Level-1 IPv6 forwarding table

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

 

 Destination : 10::1                                   PrefixLen: 128

 Flag        : D/L/-                                   Cost     : 0

 Next hop    : Direct                                  Interface: Loop0

 

 Destination : 2001::                                  PrefixLen: 64

 Flag        : D/L/-                                   Cost     : 63

 Next hop    : Direct                                  Interface: XGE3/1/1

 

 Destination : 20::1                                   PrefixLen: 128

 Flag        : R/L/-                                   Cost     : 63

 Next hop    : FE80::861F:31FF:FE6D:201                Interface: XGE3/1/1

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

 

                         Level-2 IPv6 forwarding table

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

 

 Destination : 10::1                                   PrefixLen: 128

 Flag        : D/L/-                                   Cost     : 0

 Next hop    : Direct                                  Interface: Loop0

 

 Destination : 2001::                                  PrefixLen: 64

 Flag        : D/L/-                                   Cost     : 63

 Next hop    : Direct                                  Interface: XGE3/1/1

 

 Destination : 20::1                                   PrefixLen: 128

 Flag        : -/-/-                                   Cost     : 63

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

# 查看Router B的IPv6 IS-IS路由表,可以看到路由计算的结果正确。

[RouterB] display isis route ipv6

 

                        Route information for IS-IS(2)

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

 

                         Level-1 IPv6 forwarding table

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

 

 Destination : 10::1                                   PrefixLen: 128

 Flag        : R/L/-                                   Cost     : 63

 Next hop    : FE80::861F:29FF:FE93:101                Interface: XGE3/1/1

 

 Destination : 2001::                                  PrefixLen: 64

 Flag        : D/L/-                                   Cost     : 63

 Next hop    : Direct                                  Interface: XGE3/1/1

 

 Destination : 20::1                                   PrefixLen: 128

 Flag        : D/L/-                                   Cost     : 0

 Next hop    : Direct                                  Interface: Loop0

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

 

                         Level-2 IPv6 forwarding table

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

 

 Destination : 10::1                                   PrefixLen: 128

 Flag        : -/-/-                                   Cost     : 63

 

 Destination : 2001::                                  PrefixLen: 64

 Flag        : D/L/-                                   Cost     : 63

 Next hop    : Direct                                  Interface: XGE3/1/1

 

 Destination : 20::1                                   PrefixLen: 128

 Flag        : D/L/-                                   Cost     : 0

 Next hop    : Direct                                  Interface: Loop0

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

1.26  IPv6 IS-IS典型配置举例

1.26.1  IPv6 IS-IS基本组网配置举例

1. 组网需求

如下图所示,Router A、Router B、Router C和Router D属于同一自治系统,所有路由器已使能了IPv6能力,要求它们之间通过IPv6 IS-IS协议达到IPv6网络互连的目的。

其中Router A和Router B是Level-1路由器,Router D是Level-2路由器,Router C是Level-1-2路由器。Router A、Router B和Router C属于区域10,而Router D属于区域20。

2. 组网图

图1-37 IPv6 IS-IS基本配置组网图

3. 配置步骤

(1)     配置各接口的IPv6地址(略)

(2)     配置IPv6 IS-IS

# 配置Router A。

<RouterA> system-view

[RouterA] isis 1

[RouterA-isis-1] is-level level-1

[RouterA-isis-1] network-entity 10.0000.0000.0001.00

[RouterA-isis-1] address-family ipv6

[RouterA-isis-1-ipv6] quit

[RouterA-isis-1] quit

[RouterA] interface ten-gigabitethernet 3/1/1

[RouterA-Ten-GigabitEthernet3/1/1] isis ipv6 enable 1

[RouterA-Ten-GigabitEthernet3/1/1] quit

# 配置Router B。

<RouterB> system-view

[RouterB] isis 1

[RouterB-isis-1] is-level level-1

[RouterB-isis-1] network-entity 10.0000.0000.0002.00

[RouterB-isis-1] address-family ipv6

[RouterB-isis-1-ipv6] quit

[RouterB-isis-1] quit

[RouterB] interface ten-gigabitethernet 3/1/1

[RouterB-Ten-GigabitEthernet3/1/1] isis ipv6 enable 1

[RouterB-Ten-GigabitEthernet3/1/1] quit

# 配置Router C。

<RouterC> system-view

[RouterC] isis 1

[RouterC-isis-1] network-entity 10.0000.0000.0003.00

[RouterC-isis-1] address-family ipv6

[RouterC-isis-1-ipv6] quit

[RouterC-isis-1] quit

[RouterC] interface ten-gigabitethernet 3/1/1

[RouterC-Ten-GigabitEthernet3/1/1] isis ipv6 enable 1

[RouterC-Ten-GigabitEthernet3/1/1] quit

[RouterC] interface ten-gigabitethernet 3/1/2

[RouterC-Ten-GigabitEthernet3/1/2] isis ipv6 enable 1

[RouterC-Ten-GigabitEthernet3/1/2] quit

[RouterC] interface ten-gigabitethernet 3/1/3

[RouterC-Ten-GigabitEthernet3/1/3] isis ipv6 enable 1

[RouterC-Ten-GigabitEthernet3/1/3] quit

# 配置Router D。

<RouterD> system-view

[RouterD] isis 1

[RouterD-isis-1] is-level level-2

[RouterD-isis-1] network-entity 20.0000.0000.0004.00

[RouterD-isis-1] address-family ipv6

[RouterD-isis-1-ipv6] quit

[RouterD-isis-1] quit

[RouterD] interface ten-gigabitethernet 3/1/1

[RouterD-Ten-GigabitEthernet3/1/1] isis ipv6 enable 1

[RouterD-Ten-GigabitEthernet3/1/1] quit

[RouterD] interface ten-gigabitethernet 3/1/2

[RouterD-Ten-GigabitEthernet3/1/2] isis ipv6 enable 1

[RouterD-Ten-GigabitEthernet3/1/2] quit

4. 验证配置

# 查看Router A的IPv6 IS-IS路由表。

[RouterA] display isis route ipv6

 

                         Route information for IS-IS(1)

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

 

                         Level-1 IPv6 forwarding table

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

 

 Destination : ::                                      PrefixLen: 0

 Flag        : R/-/-                                   Cost     : 10

 Next hop    : FE80::200:FF:FE0F:4                     Interface: XGE3/1/1

 

 Destination : 2001:1::                                PrefixLen: 64

 Flag        : D/L/-                                   Cost     : 10

 Next hop    : Direct                                  Interface: XGE3/1/1

 

 Destination : 2001:2::                                PrefixLen: 64

 Flag        : R/-/-                                   Cost     : 20

 Next hop    : FE80::200:FF:FE0F:4                     Interface: XGE3/1/1

 

 Destination : 2001:3::                                PrefixLen: 64

 Flag        : R/-/-                                   Cost     : 20

 Next hop    : FE80::200:FF:FE0F:4                     Interface: XGE3/1/1

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

# 查看Router B的IPv6 IS-IS路由表。

[RouterB] display isis route ipv6

 

 

                         Route information for IS-IS(1)

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

 

                         Level-1 IPv6 forwarding table

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

 

 Destination : ::                                      PrefixLen: 0

 Flag        : R/-/-                                   Cost     : 10

 Next hop    : FE80::200:FF:FE0F:4                     Interface: XGE3/1/1

 

 Destination : 2001:1::                                PrefixLen: 64

 Flag        : D/L/-                                   Cost     : 10

 Next hop    : FE80::200:FF:FE0F:4                     Interface: XGE3/1/1

 

 Destination : 2001:2::                                PrefixLen: 64

 Flag        : R/-/-                                   Cost     : 20

 Next hop    : Direct                                  Interface: XGE3/1/1

 

 Destination : 2001:3::                                PrefixLen: 64

 Flag        : R/-/-                                   Cost     : 20

 Next hop    : FE80::200:FF:FE0F:4                     Interface: XGE3/1/1

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

# 查看Router C的IPv6 IS-IS路由表。

[RouterC] display isis route ipv6

 

                         Route information for IS-IS(1)

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

 

                         Level-1 IPv6 forwarding table

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

 

 Destination : 2001:1::                                PrefixLen: 64

 Flag        : D/L/-                                   Cost     : 10

 Next hop    : Direct                                  Interface: XGE3/1/2

 

 Destination : 2001:2::                                PrefixLen: 64

 Flag        : D/L/-                                   Cost     : 10

 Next hop    : Direct                                  Interface: XGE3/1/1

 

 Destination : 2001:3::                                PrefixLen: 64

 Flag        : D/L/-                                   Cost     : 10

 Next hop    : Direct                                  Interface: XGE3/1/3

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

 

                         Level-2 IPv6 forwarding table

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

 

 Destination : 2001:1::                                PrefixLen: 64

 Flag        : D/L/-                                   Cost     : 10

 

 Destination : 2001:2::                                PrefixLen: 64

 Flag        : D/L/-                                   Cost     : 10

 

 Destination : 2001:3::                                PrefixLen: 64

 Flag        : D/L/-                                   Cost     : 10

 

 Destination : 2001:4::                                PrefixLen: 64

 Flag        : R/-/-                                   Cost     : 10

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

# 查看Router D的IPv6 IS-IS路由表。

[RouterD] display isis route ipv6

 

                         Route information for IS-IS(1)

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

 

                         Level-2 IPv6 forwarding table

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

 Destination : 2001:1::                                PrefixLen: 64

 Flag        : R/-/-                                   Cost     : 20

 Next hop    : FE80::200:FF:FE0F:4                     Interface: XGE3/1/1

 

 Destination : 2001:2::                                PrefixLen: 64

 Flag        : R/-/-                                   Cost     : 20

 Next hop    : FE80::200:FF:FE0F:4                     Interface: XGE3/1/1

 

 Destination : 2001:3::                                PrefixLen: 64

 Flag        : D/L/-                                   Cost     : 10

 Next hop    : Direct                                  Interface: XGE3/1/1

 

 Destination : 2001:4::                                PrefixLen: 64

 Flag        : D/L/-                                   Cost     : 0

 Next hop    : Direct                                  Interface: XGE3/1/2

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

1.26.2  IPv6 IS-IS与BFD联动配置举例

1. 组网需求

·     Router A、Router B通过二层交换机互连,并且在双方接口上使能BFD应用,之间运行IPv6 IS-IS,网络层相互可达。

·     当Router B和二层交换机之间的链路发生故障后,BFD能够快速检测并通告IPv6 IS-IS协议。

2. 组网图

图1-38 IPv6 IS-IS与BFD联动配置组网图

设备

接口

IPv6地址

设备

接口

IPv6地址

Router A

XGE3/1/1

2001::1/64

Router B

XGE3/1/1

2001::2/64

 

XGE3/1/2

2001:2::1/64

 

XGE3/1/2

2001:3::2/64

Router C

XGE3/1/1

2001:2::2/64

 

 

 

 

XGE3/1/2

2001:3::1/64

 

 

 

 

3. 配置步骤

(1)     配置各接口的IPv6地址(略)

(2)     配置IPv6 IS-IS

# 配置Router A。

<RouterA> system-view

[RouterA] isis 1

[RouterA-isis-1] is-level level-1

[RouterA-isis-1] network-entity 10.0000.0000.0001.00

[RouterA-isis-1] address-family ipv6

[RouterA-isis-1-ipv6] quit

[RouterA-isis-1] quit

[RouterA] interface ten-gigabitethernet 3/1/1

[RouterA-Ten-GigabitEthernet3/1/1] isis ipv6 enable 1

[RouterA-Ten-GigabitEthernet3/1/1] quit

[RouterA] interface ten-gigabitethernet 3/1/2

[RouterA-Ten-GigabitEthernet3/1/2] isis ipv6 enable 1

[RouterA-Ten-GigabitEthernet3/1/2] quit

# 配置Router B。

<RouterB> system-view

[RouterB] isis 1

[RouterB-isis-1] is-level level-1

[RouterB-isis-1] network-entity 10.0000.0000.0002.00

[RouterB-isis-1] address-family ipv6

[RouterB-isis-1-ipv6] quit

[RouterB-isis-1] quit

[RouterB] interface ten-gigabitethernet 3/1/1

[RouterB-Ten-GigabitEthernet3/1/1] isis ipv6 enable 1

[RouterB-Ten-GigabitEthernet3/1/1] quit

[RouterB] interface ten-gigabitethernet 3/1/2

[RouterB-Ten-GigabitEthernet3/1/2] isis ipv6 enable 1

[RouterB-Ten-GigabitEthernet3/1/2] quit

# 配置Router C。

<RouterC> system-view

[RouterC] isis 1

[RouterC-isis-1] network-entity 10.0000.0000.0003.00

[RouterC-isis-1] address-family ipv6

[RouterC-isis-1-ipv6] quit

[RouterC-isis-1] quit

[RouterC] interface ten-gigabitethernet 3/1/1

[RouterC-Ten-GigabitEthernet3/1/1] isis ipv6 enable 1

[RouterC-Ten-GigabitEthernet3/1/1] quit

[RouterC] interface ten-gigabitethernet 3/1/2

[RouterC-Ten-GigabitEthernet3/1/2] isis ipv6 enable 1

[RouterC-Ten-GigabitEthernet3/1/2] quit

(3)     配置BFD功能

# 在Router A上使能IPv6 IS-IS BFD功能,并配置BFD参数。

[RouterA] bfd session init-mode active

[RouterA] interface ten-gigabitethernet 3/1/1

[RouterA-Ten-GigabitEthernet3/1/1] isis ipv6 bfd enable

[RouterA-Ten-GigabitEthernet3/1/1] bfd min-transmit-interval 500

[RouterA-Ten-GigabitEthernet3/1/1] bfd min-receive-interval 500

[RouterA-Ten-GigabitEthernet3/1/1] bfd detect-multiplier 7

[RouterA-Ten-GigabitEthernet3/1/1] quit

# 在Router B上使能IPv6 IS-IS BFD功能,并配置BFD参数。

[RouterB] bfd session init-mode active

[RouterB] interface ten-gigabitethernet 3/1/1

[RouterB-Ten-GigabitEthernet3/1/1] isis ipv6 bfd enable

[RouterB-Ten-GigabitEthernet3/1/1] bfd min-transmit-interval 500

[RouterB-Ten-GigabitEthernet3/1/1] bfd min-receive-interval 500

[RouterB-Ten-GigabitEthernet3/1/1] bfd detect-multiplier 6

[RouterB-Ten-GigabitEthernet3/1/1] quit

4. 验证配置

下面以Router A为例,Router B和Router A类似,不再赘述。

# 显示Router A的BFD信息。

[RouterA] display bfd session

 Total sessions: 1        Up sessions: 1        Init mode: Active

 

 IPv6 session working in control packet mode:

 

       Local discr: 1441                 Remote discr: 1450

         Source IP: FE80::20F:FF:FE00:1202(Router A接口Ten-GigabitEthernet3/1/1的链路本地地址)

    Destination IP: FE80::20F:FF:FE00:1200(Router B接口Ten-GigabitEthernet3/1/1的链路本地地址)

     Session state: Up                      Interface: XGE3/1/1

         Hold time: 2319ms

# 在Router A上查看2001:4::0/64的路由信息,可以看出Router A和Router B是通过L2 Switch进行通信的。

[RouterA] display ipv6 routing-table 2001:4::0 64

 

Summary count : 2

 

Destination: 2001:4::/64                                 Protocol  : IS_L1

NextHop    : FE80::20F:FF:FE00:1200                      Preference: 15

Interface  : XGE3/1/1                                    Cost      : 10

当Router A和Router B通过L2 Switch通信的链路出现故障时:

# 在Router A上查看2001:4::0/64的路由信息,可以看出Router A和Router B已经切换到Router C进行通信。

[RouterA] display ipv6 routing-table 2001:4::0 64

 

Summary count : 1

 

Destination: 2001:4::/64                                 Protocol  : IS_L1

NextHop    : FE80::BAAF:67FF:FE27:DCD0                   Preference: 15

Interface  : XGE3/1/2                                    Cost      : 20

1.26.3  IPv6 IS-IS快速重路由配置举例

1. 组网需求

图1-39所示,Router A、Router B和Router C属于同一IS-IS区域,通过IPv6 IS-IS协议实现网络互连。要求当Router A和Router B之间的链路出现故障时,业务可以快速切换到链路B上。

2. 组网图

图1-39 IPv6 IS-IS快速重路由配置组网图

设备

接口

IP地址

设备

接口

IP地址

Router A

XGE3/1/1

1::1/64

Router B

XGE3/1/1

3::1/64

 

XGE3/1/2

2::1/64

 

XGE3/1/2

2::2/64

 

Loop0

10::1/128

 

Loop0

20::1/128

Router C

XGE3/1/1

1::2/64

 

 

 

 

XGE3/1/2

3::2/64

 

 

 

 

3. 配置步骤

(1)     配置各路由器接口的IPv6地址和IPv6 IS-IS协议

请按照上面组网图配置各接口的IPv6地址,具体配置过程略。

配置各路由器之间

(2)     配置IPv6 IS-IS快速重路由

IPv6 IS-IS支持快速重路由的配置方法有两种,可以任选一种。

方法一:使能Router A和Router B的IPv6 IS-IS快速重路由功能(通过LFA算法选取备份下一跳信息)

# 配置Router A。

<RouterA>system-view

[RouterA] isis 1

[RouterA-isis-1] address-family ipv6

[RouterA-isis-1-ipv6] fast-reroute lfa

[RouterA-isis-1-ipv6] quit

[RouterA-isis-1] quit

# 配置Router B。

<RouterB> system-view

[RouterB] isis 1

[RouterB-isis-1] address-family ipv6

[RouterB-isis-1-ipv6] fast-reroute lfa

[RouterB-isis-1-ipv6] quit

[RouterB-isis-1] quit

方法二:使能Router A和Router B的IPv6 IS-IS快速重路由功能(通过路由策略指定备份下一跳)

# 配置Router A。

<RouterA> system-view

[RouterA] ipv6 prefix-list abc index 10 permit 20::1 128

[RouterA] route-policy frr permit node 10

[RouterA-route-policy-frr-10] if-match ipv6 address prefix-list abc

[RouterA-route-policy-frr-10] apply ipv6 fast-reroute backup-interface ten-gigabitethernet 3/1/1 backup-nexthop 1::2

[RouterA-route-policy-frr-10] quit

[RouterA] isis 1

[RouterA-isis-1] address-family ipv6

[RouterA-isis-1-ipv6] fast-reroute route-policy frr

[RouterA-isis-1-ipv6] quit

[RouterA-isis-1] quit

# 配置Router B。

<RouterB> system-view

[RouterB] ipv6 prefix-list abc index 10 permit 10::1 128

[RouterB] route-policy frr permit node 10

[RouterB-route-policy-frr-10] if-match ipv6 address prefix-list abc

[RouterB-route-policy-frr-10] apply ipv6 fast-reroute backup-interface ten-gigabitethernet 3/1/1 backup-nexthop 3::2

[RouterB-route-policy-frr-10] quit

[RouterB] isis 1

[RouterB-isis-1] address-family ipv6

[RouterB-isis-1-ipv6] fast-reroute route-policy frr

[RouterB-isis-1-ipv6] quit

[RouterB-isis-1] quit

4. 验证配置

# 在Router A上查看20::1/128的路由信息,可以看到备份下一跳信息。

[RouterA] display ipv6 routing-table 20::1 128 verbose

 

Summary count : 1

 

 Destination: 20::1/128

    Protocol: IS_L1

  Process ID: 1

   SubProtID: 0x1                       Age: 00h27m45s

  FlushedAge: 15h28m49s

        Cost: 10                 Preference: 15

       IpPre: N/A                QosLocalID: N/A

         Tag: 0                       State: Active Adv

   OrigTblID: 0xa                   OrigVrf: default-vrf

     TableID: 0xa                    OrigAs: 0

       NibID: 0x24000005             LastAs: 0

      AttrID: 0xffffffff

    BkAttrID: 0xffffffff           Neighbor: ::

       Flags: 0x10041           OrigNextHop: FE80::34CD:9FF:FE2F:D02

       Label: NULL              RealNextHop: FE80::34CD:9FF:FE2F:D02

     BkLabel: NULL                BkNextHop: FE80::7685:45FF:FEAD:102

     SRLabel: NULL                Interface: Ten-GigabitEthernet3/1/2

   BkSRLabel: NULL              BkInterface: Ten-GigabitEthernet3/1/1

   Tunnel ID: Invalid           IPInterface: Ten-GigabitEthernet3/1/2

 BkTunnel ID: Invalid         BkIPInterface: Ten-GigabitEthernet3/1/1

     InLabel: NULL           ColorInterface: N/A

    SIDIndex: NULL         BkColorInterface: N/A

    FtnIndex: 0x0           TunnelInterface: N/A

TrafficIndex: N/A         BkTunnelInterface: N/A

   Connector: N/A                    PathID: 0x0

      UserID: 0x0                SRTunnelID: Invalid

    SID Type: N/A                       NID: Invalid

    FlushNID: Invalid                 BkNID: Invalid

  BkFlushNID: Invalid             StatFlags: 0x0

         SID: N/A

       BkSID: N/A

CommBlockLen: 0                    Priority: Critical

  MemberPort: N/A

# 在Router B上查看10::1/128的路由信息,可以看到备份下一跳信息。

[RouterB] display ipv6 routing-table 10::1 128 verbose

 

Summary count : 1

 

 Destination: 10::1/128

    Protocol: IS_L1

  Process ID: 1

   SubProtID: 0x1                       Age: 00h33m23s

  FlushedAge: 15h28m49s

        Cost: 10                 Preference: 15

       IpPre: N/A                QosLocalID: N/A

         Tag: 0                       State: Active Adv

   OrigTblID: 0xa                   OrigVrf: default-vrf

     TableID: 0xa                    OrigAs: 0

       NibID: 0x24000006             LastAs: 0

      AttrID: 0xffffffff

    BkAttrID: 0xffffffff           Neighbor: ::

       Flags: 0x10041           OrigNextHop: FE80::34CC:E8FF:FE5B:C02

       Label: NULL              RealNextHop: FE80::34CC:E8FF:FE5B:C02

     BkLabel: NULL                BkNextHop: FE80::7685:45FF:FEAD:102

     SRLabel: NULL                Interface: Ten-GigabitEthernet3/1/2

   BkSRLabel: NULL              BkInterface: Ten-GigabitEthernet3/1/1

   Tunnel ID: Invalid           IPInterface: Ten-GigabitEthernet3/1/2

 BkTunnel ID: Invalid         BkIPInterface: Ten-GigabitEthernet3/1/1

     InLabel: NULL           ColorInterface: N/A

    SIDIndex: NULL         BkColorInterface: N/A

    FtnIndex: 0x0           TunnelInterface: N/A

TrafficIndex: N/A         BkTunnelInterface: N/A

   Connector: N/A                    PathID: 0x0

      UserID: 0x0                SRTunnelID: Invalid

    SID Type: N/A                       NID: Invalid

    FlushNID: Invalid                 BkNID: Invalid

  BkFlushNID: Invalid             StatFlags: 0x0

         SID: N/A

       BkSID: N/A

CommBlockLen: 0                    Priority: Critical

  MemberPort: N/A

1.26.4  IS-IS SRv6应用Flex-Algo算法配置举例

1. 组网需求

·     Device A、Device B、Device C、Device D、Device E和Device F运行IPv6 IS-IS实现互通。

·     Device A、Device B、Device C、Device D、Device E和Device F配置IS-IS SRv6功能。

·     Device A、Device B、Device C、Device D、Device E和Device F配置Flex-Algo算法130,该算法的FAD为:

¡     使用SPF算法。

¡     基于链路时延计算到达目的地的最小开销路径。本举例中使用静态配置方式设置接口的时延参数。

¡     排除亲和属性为“red”的链路。

·     当设备Device A和Device D之间链路Link A故障时,Device B未完成收敛前,认为到达Device D的下一跳为Device A,导致Device B会将Device A发送过来的报文返回给Device A,从而形成环路,流量无法通过Device B转发到目的节点Device D。通过部署TI-LFA FRR可以消除环路。

图1-40 IS-IS SRv6应用Flex-Algo算法组网图

设备

接口

IPv6地址

设备

接口

IPv6地址

Device A

XGE3/1/1

1001::1/64

Device D

XGE3/1/1

3003::2/64

 

XGE3/1/2

6001::2/64

 

XGE3/1/2

4004::1/64

Device B

XGE3/1/1

1001::2/64

Device E

XGE3/1/1

4004::2/64

 

XGE3/1/2

2002::1/64

 

XGE3/1/2

5001::1/64

Device C

XGE3/1/1

2002::2/64

 

XGE3/1/3

3002::2/64

 

XGE3/1/2

3003::1/64

Device F

XGE3/1/1

5001::2/64

 

XGE3/1/3

3002::1/64

 

XGE3/1/2

6001::1/64

 

2. 配置步骤

(1)     请按照图1-40配置各接口的IPv6地址和前缀长度,具体配置过程略

(2)     配置Device A

# 配置IS-IS协议实现网络层互通,开销值类型为wide。

<DeviceA> system-view

[DeviceA] isis 1

[DeviceA-isis-1] network-entity 00.0000.0000.0001.00

[DeviceA-isis-1] cost-style wide

[DeviceA-isis-1] address-family ipv6

[DeviceA-isis-1-ipv6] quit

[DeviceA-isis-1] quit

[DeviceA] interface ten-gigabitethernet 3/1/1

[DeviceA-Ten-GigabitEthernet3/1/1] isis ipv6 enable 1

[DeviceA-Ten-GigabitEthernet3/1/1] quit

[DeviceA] interface ten-gigabitethernet 3/1/2

[DeviceA-Ten-GigabitEthernet3/1/2] isis ipv6 enable 1

[DeviceA-Ten-GigabitEthernet3/1/2] quit

# 开启SRv6功能,并配置Locator段。

[DeviceA] segment-routing ipv6

[DeviceA-segment-routing-ipv6] locator 10 ipv6-prefix 1000:: 64 static 32

[DeviceA-segment-routing-ipv6-locator-10] quit

[DeviceA-segment-routing-ipv6] quit

# 配置引用Locator段。

[DeviceA] isis 1

[DeviceA-isis 1] address-family ipv6 unicast

[DeviceA-isis-1-ipv6] segment-routing ipv6 locator 10

[DeviceA-isis-1-ipv6] quit

[DeviceA-isis-1] quit

# 配置接口Ten-GigabitEthernet3/1/1的最小时延为50微秒,最大时延为100微秒。

[DeviceA] interface ten-gigabitethernet 3/1/1

[DeviceA-Ten-GigabitEthernet3/1/1] isis link-delay min 50 max 100

[DeviceA-Ten-GigabitEthernet3/1/1] quit

# 配置接口Ten-GigabitEthernet3/1/2的最小时延为10微秒,最大时延为100微秒。

[DeviceA] interface ten-gigabitethernet 3/1/2

[DeviceA-Ten-GigabitEthernet3/1/2] isis link-delay min 10 max 100

[DeviceA-Ten-GigabitEthernet3/1/2] quit

# 开启时延发布功能。

[DeviceA] isis 1

[DeviceA-isis 1] address-family ipv6 unicast

[DeviceA-isis-1-ipv6] metric-delay advertisement enable

# 配置IS-IS发布LSP时携带链路属性。

[DeviceA-isis-1-ipv6] advertise link-attributes

# 配置IS-IS进程1为Flex-Algo发布链路属性信息。

[DeviceA-isis-1-ipv6] advertise application link-attributes te

[DeviceA-isis-1-ipv6] quit

[DeviceA-isis-1] quit

# 配置Flex-Algo算法130。

[DeviceA] isis 1

[DeviceA-isis-1] affinity-map red bit-position 130

[DeviceA-isis-1] flex-algo 130

[DeviceA-isis-1-flex-algo-130] advertise-definition enable

[DeviceA-isis-1-flex-algo-130] metric-type delay

[DeviceA-isis-1-flex-algo-130] priority 255

[DeviceA-isis-1-flex-algo-130] affinity exclude-any red

# 开启Flex-algo算法的TI-LFA快速重路由功能。

[DeviceA-isis-1-flex-algo-130] fast-reroute ti-lfa enable

[DeviceA-isis-1-flex-algo-130] quit

[DeviceA-isis-1] quit

# 配置Locator段关联Flex-Algo算法130。

[DeviceA] segment-routing ipv6

[DeviceA-segment-routing-ipv6] locator 10

[DeviceA-segment-routing-ipv6-locator-10] flex-algo algorithm 130

[DeviceA-segment-routing-ipv6-locator-10] quit

[DeviceA-segment-routing-ipv6] quit

(3)     配置Device B

# 配置IS-IS协议实现网络层互通,开销值类型为wide。

<DeviceB> system-view

[DeviceB] isis 1

[DeviceB-isis-1] network-entity 00.0000.0000.0002.00

[DeviceB-isis-1] cost-style wide

[DeviceB-isis-1] address-family ipv6

[DeviceB-isis-1-ipv6] quit

[DeviceB-isis-1] quit

[DeviceB] interface ten-gigabitethernet 3/1/1

[DeviceB-Ten-GigabitEthernet3/1/1] isis ipv6 enable 1

[DeviceB-Ten-GigabitEthernet3/1/1] quit

[DeviceB] interface ten-gigabitethernet 3/1/2

[DeviceB-Ten-GigabitEthernet3/1/2] isis ipv6 enable 1

[DeviceB-Ten-GigabitEthernet3/1/2] quit

# 开启SRv6功能,并配置Locator段。

[DeviceB] segment-routing ipv6

[DeviceB-segment-routing-ipv6] locator 10 ipv6-prefix 2000:: 64 static 32

[DeviceB-segment-routing-ipv6-locator-10] quit

[DeviceB-segment-routing-ipv6] quit

# 配置引用Locator段。

[DeviceB] isis 1

[DeviceB-isis 1] address-family ipv6 unicast

[DeviceB-isis-1-ipv6] segment-routing ipv6 locator 10

[DeviceB-isis-1-ipv6] quit

[DeviceB-isis-1] quit

# 配置接口Ten-GigabitEthernet3/1/1的最小时延为50微秒,最大时延为100微秒。

[DeviceB] interface ten-gigabitethernet 3/1/1

[DeviceB-Ten-GigabitEthernet3/1/1] isis link-delay min 50 max 100

[DeviceB-Ten-GigabitEthernet3/1/1] quit

# 配置接口Ten-GigabitEthernet3/1/2的最小时延为50微秒,最大时延为100微秒。

[DeviceB] interface ten-gigabitethernet 3/1/2

[DeviceB-Ten-GigabitEthernet3/1/2] isis link-delay min 50 max 100

[DeviceB-Ten-GigabitEthernet3/1/2] quit

# 开启时延发布功能。

[DeviceB] isis 1

[DeviceB-isis 1] address-family ipv6 unicast

[DeviceB-isis-1-ipv6] metric-delay advertisement enable

# 配置IS-IS发布LSP时携带链路属性。

[DeviceB-isis-1-ipv6] advertise link-attributes

# 配置IS-IS进程1为Flex-Algo发布链路属性信息。

[DeviceB-isis-1-ipv6] advertise application link-attributes te

[DeviceB-isis-1-ipv6] quit

[DeviceB-isis-1] quit

# 配置Flex-Algo算法130。

[DeviceB] isis 1

[DeviceB-isis-1] affinity-map red bit-position 130

[DeviceB-isis-1] flex-algo 130

[DeviceB-isis-1-flex-algo-130] advertise-definition enable

[DeviceB-isis-1-flex-algo-130] metric-type delay

[DeviceB-isis-1-flex-algo-130] priority 255

[DeviceB-isis-1-flex-algo-130] affinity exclude-any red

# 开启Flex-algo算法的TI-LFA快速重路由功能。

[DeviceB-isis-1-flex-algo-130] fast-reroute ti-lfa enable

[DeviceB-isis-1-flex-algo-130] quit

[DeviceB-isis-1] quit

# 配置Locator段关联Flex-Algo算法130。

[DeviceB] segment-routing ipv6

[DeviceB-segment-routing-ipv6] locator 10

[DeviceB-segment-routing-ipv6-locator-10] flex-algo algorithm 130

[DeviceB-segment-routing-ipv6-locator-10] quit

[DeviceB-segment-routing-ipv6] quit

(4)     配置Device C

# 配置IS-IS协议实现网络层互通,开销值类型为wide。

<DeviceC> system-view

[DeviceC] isis 1

[DeviceC-isis-1] network-entity 00.0000.0000.0003.00

[DeviceC-isis-1] cost-style wide

[DeviceC-isis-1] address-family ipv6

[DeviceC-isis-1-ipv6] quit

[DeviceC-isis-1] quit

[DeviceC] interface ten-gigabitethernet 3/1/1

[DeviceC-Ten-GigabitEthernet3/1/1] isis ipv6 enable 1

[DeviceC-Ten-GigabitEthernet3/1/1] quit

[DeviceC] interface ten-gigabitethernet 3/1/2

[DeviceC-Ten-GigabitEthernet3/1/2] isis ipv6 enable 1

[DeviceC-Ten-GigabitEthernet3/1/2] quit

[DeviceC] interface ten-gigabitethernet 3/1/3

[DeviceC-Ten-GigabitEthernet3/1/3] isis ipv6 enable 1

[DeviceC-Ten-GigabitEthernet3/1/3] quit

# 开启SRv6功能,并配置Locator段。

[DeviceC] segment-routing ipv6

[DeviceC-segment-routing-ipv6] locator 10 ipv6-prefix 3000:: 64 static 32

[DeviceC-segment-routing-ipv6-locator-10] quit

[DeviceC-segment-routing-ipv6] quit

# 配置引用Locator段。

[DeviceC] isis 1

[DeviceC-isis 1] address-family ipv6 unicast

[DeviceC-isis-1-ipv6] segment-routing ipv6 locator 10

[DeviceC-isis-1-ipv6] quit

[DeviceC-isis-1] quit

# 配置接口Ten-GigabitEthernet3/1/1的最小时延为50微秒,最大时延为100微秒。

[DeviceC] interface ten-gigabitethernet 3/1/1

[DeviceC-Ten-GigabitEthernet3/1/1] isis link-delay min 50 max 100

[DeviceC-Ten-GigabitEthernet3/1/1] quit

# 配置接口Ten-GigabitEthernet3/1/2的最小时延为50微秒,最大时延为100微秒。

[DeviceC] interface ten-gigabitethernet 3/1/2

[DeviceC-Ten-GigabitEthernet3/1/2] isis link-delay min 50 max 100

[DeviceC-Ten-GigabitEthernet3/1/2] quit

# 配置接口Ten-GigabitEthernet3/1/3的最小时延为20微秒,最大时延为100微秒。

[DeviceC] interface ten-gigabitethernet 3/1/3

[DeviceC-Ten-GigabitEthernet3/1/3] isis link-delay min 20 max 100

[DeviceC-Ten-GigabitEthernet3/1/3] quit

# 开启时延发布功能。

[DeviceC] isis 1

[DeviceC-isis 1] address-family ipv6 unicast

[DeviceC-isis-1-ipv6] metric-delay advertisement enable

# 配置IS-IS发布LSP时携带链路属性。

[DeviceC-isis-1-ipv6] advertise link-attributes

# 配置IS-IS进程1为Flex-Algo发布链路属性信息。

[DeviceC-isis-1-ipv6] advertise application link-attributes te

[DeviceC-isis-1-ipv6] quit

[DeviceC-isis-1] quit

# 配置Flex-Algo算法130。

[DeviceC] isis 1

[DeviceC-isis-1] affinity-map red bit-position 130

[DeviceC-isis-1] flex-algo 130

[DeviceC-isis-1-flex-algo-130] advertise-definition enable

[DeviceC-isis-1-flex-algo-130] metric-type delay

[DeviceC-isis-1-flex-algo-130] priority 255

[DeviceC-isis-1-flex-algo-130] affinity exclude-any red

# 开启Flex-algo算法的TI-LFA快速重路由功能。

[DeviceC-isis-1-flex-algo-130] fast-reroute ti-lfa enable

[DeviceC-isis-1-flex-algo-130] quit

[DeviceC-isis-1] quit

# 配置接口Ten-GigabitEthernet3/1/3的链路携带red映射的亲和属性。

[DeviceC] interface ten-gigabitethernet 3/1/3

[DeviceC-Ten-GigabitEthernet3/1/3] isis 1 affinity flex-algo red

[DeviceC-Ten-GigabitEthernet3/1/3] quit

# 配置Locator段关联Flex-Algo算法130。

[DeviceC] segment-routing ipv6

[DeviceC-segment-routing-ipv6] locator 10

[DeviceC-segment-routing-ipv6-locator-10] flex-algo algorithm 130

[DeviceC-segment-routing-ipv6-locator-10] quit

[DeviceC-segment-routing-ipv6] quit

(5)     配置Device D

# 配置IS-IS协议实现网络层互通,开销值类型为wide。

<DeviceD> system-view

[DeviceD] isis 1

[DeviceD-isis-1] network-entity 00.0000.0000.0004.00

[DeviceD-isis-1] cost-style wide

[DeviceD-isis-1] address-family ipv6

[DeviceD-isis-1-ipv6] quit

[DeviceD-isis-1] quit

[DeviceD] interface ten-gigabitethernet 3/1/1

[DeviceD-Ten-GigabitEthernet3/1/1] isis ipv6 enable 1

[DeviceD-Ten-GigabitEthernet3/1/1] quit

[DeviceD] interface ten-gigabitethernet 3/1/2

[DeviceD-Ten-GigabitEthernet3/1/2] isis ipv6 enable 1

[DeviceD-Ten-GigabitEthernet3/1/2] quit

# 开启SRv6功能,并配置Locator段。

[DeviceD] segment-routing ipv6

[DeviceD-segment-routing-ipv6] locator 10 ipv6-prefix 4000:: 64 static 32

[DeviceD-segment-routing-ipv6-locator-10] quit

[DeviceD-segment-routing-ipv6] quit

# 配置引用Locator段。

[DeviceD] isis 1

[DeviceD-isis 1] address-family ipv6 unicast

[DeviceD-isis-1-ipv6] segment-routing ipv6 locator 10

[DeviceD-isis-1-ipv6] quit

[DeviceD-isis-1] quit

# 配置接口Ten-GigabitEthernet3/1/1的最小时延为50微秒,最大时延为100微秒。

[DeviceD] interface ten-gigabitethernet 3/1/1

[DeviceD-Ten-GigabitEthernet3/1/1] isis link-delay min 50 max 100

[DeviceD-Ten-GigabitEthernet3/1/1] quit

# 配置接口Ten-GigabitEthernet3/1/2的最小时延为10微秒,最大时延为100微秒。

[DeviceD] interface ten-gigabitethernet 3/1/2

[DeviceD-Ten-GigabitEthernet3/1/2] isis link-delay min 10 max 100

[DeviceD-Ten-GigabitEthernet3/1/2] quit

# 开启时延发布功能。

[DeviceD] isis 1

[DeviceD-isis 1] address-family ipv6 unicast

[DeviceD-isis-1-ipv6] metric-delay advertisement enable

# 配置IS-IS发布LSP时携带链路属性。

[DeviceD-isis-1-ipv6] advertise link-attributes

# 配置IS-IS进程1为Flex-Algo发布链路属性信息。

[DeviceD-isis-1-ipv6] advertise application link-attributes te

[DeviceD-isis-1-ipv6] quit

[DeviceD-isis-1] quit

# 配置Flex-Algo算法130。

[DeviceD] isis 1

[DeviceD-isis-1] affinity-map red bit-position 130

[DeviceD-isis-1] flex-algo 130

[DeviceD-isis-1-flex-algo-130] advertise-definition enable

[DeviceD-isis-1-flex-algo-130] metric-type delay

[DeviceD-isis-1-flex-algo-130] priority 255

[DeviceD-isis-1-flex-algo-130] affinity exclude-any red

# 开启Flex-algo算法的TI-LFA快速重路由功能。

[DeviceD-isis-1-flex-algo-130] fast-reroute ti-lfa enable

[DeviceD-isis-1-flex-algo-130] quit

[DeviceD-isis-1] quit

# 配置Locator段关联Flex-Algo算法130。

[DeviceD] segment-routing ipv6

[DeviceD-segment-routing-ipv6] locator 10

[DeviceD-segment-routing-ipv6-locator-10] flex-algo algorithm 130

[DeviceD-segment-routing-ipv6-locator-10] quit

[DeviceD-segment-routing-ipv6] quit

(6)     配置Device E

# 配置IS-IS协议实现网络层互通,开销值类型为wide。

<DeviceE> system-view

[DeviceE] isis 1

[DeviceE-isis-1] network-entity 00.0000.0000.0005.00

[DeviceE-isis-1] cost-style wide

[DeviceE-isis-1] address-family ipv6

[DeviceE-isis-1-ipv6] quit

[DeviceE-isis-1] quit

[DeviceE] interface ten-gigabitethernet 3/1/1

[DeviceE-Ten-GigabitEthernet3/1/1] isis ipv6 enable 1

[DeviceE-Ten-GigabitEthernet3/1/1] quit

[DeviceE] interface ten-gigabitethernet 3/1/2

[DeviceE-Ten-GigabitEthernet3/1/2] isis ipv6 enable 1

[DeviceE-Ten-GigabitEthernet3/1/2] quit

[DeviceE] interface ten-gigabitethernet 3/1/3

[DeviceE-Ten-GigabitEthernet3/1/3] isis ipv6 enable 1

[DeviceE-Ten-GigabitEthernet3/1/3] quit

# 开启SRv6功能,并配置Locator段。

[DeviceE] segment-routing ipv6

[DeviceE-segment-routing-ipv6] locator 10 ipv6-prefix 5000:: 64 static 32

[DeviceE-segment-routing-ipv6-locator-10] quit

[DeviceE-segment-routing-ipv6] quit

# 配置引用Locator段。

[DeviceE] isis 1

[DeviceE-isis 1] address-family ipv6 unicast

[DeviceE-isis-1-ipv6] segment-routing ipv6 locator 10

[DeviceE-isis-1-ipv6] quit

[DeviceE-isis-1] quit

# 配置接口Ten-GigabitEthernet3/1/1的最小时延为10微秒,最大时延为100微秒。

[DeviceE] interface ten-gigabitethernet 3/1/1

[DeviceE-Ten-GigabitEthernet3/1/1] isis link-delay min 10 max 100

[DeviceE-Ten-GigabitEthernet3/1/1] quit

# 配置接口Ten-GigabitEthernet3/1/2的最小时延为10微秒,最大时延为100微秒。

[DeviceE] interface ten-gigabitethernet 3/1/2

[DeviceE-Ten-GigabitEthernet3/1/2] isis link-delay min 10 max 100

[DeviceE-Ten-GigabitEthernet3/1/2] quit

# 配置接口Ten-GigabitEthernet3/1/3的最小时延为20微秒,最大时延为100微秒。

[DeviceE] interface ten-gigabitethernet 3/1/3

[DeviceE-Ten-GigabitEthernet3/1/3] isis link-delay min 20 max 100

[DeviceE-Ten-GigabitEthernet3/1/3] quit

# 开启时延发布功能。

[DeviceE] isis 1

[DeviceE-isis 1] address-family ipv6 unicast

[DeviceE-isis-1-ipv6] metric-delay advertisement enable

# 配置IS-IS发布LSP时携带链路属性。

[DeviceE-isis-1-ipv6] advertise link-attributes

# 配置IS-IS进程1为Flex-Algo发布链路属性信息。

[DeviceE-isis-1-ipv6] advertise application link-attributes te

[DeviceE-isis-1-ipv6] quit

[DeviceE-isis-1] quit

# 配置Flex-Algo算法130。

[DeviceE] isis 1

[DeviceE-isis-1] affinity-map red bit-position 130

[DeviceE-isis-1] flex-algo 130

[DeviceE-isis-1-flex-algo-130] advertise-definition enable

[DeviceE-isis-1-flex-algo-130] metric-type delay

[DeviceE-isis-1-flex-algo-130] priority 255

[DeviceE-isis-1-flex-algo-130] affinity exclude-any red

# 开启Flex-algo算法的TI-LFA快速重路由功能。

[DeviceE-isis-1-flex-algo-130] fast-reroute ti-lfa enable

[DeviceE-isis-1-flex-algo-130] quit

[DeviceE-isis-1] quit

# 配置接口Ten-GigabitEthernet3/1/3的链路携带red映射的亲和属性。

[DeviceE] interface ten-gigabitethernet 3/1/3

[DeviceE-Ten-GigabitEthernet3/1/3] isis 1 affinity flex-algo red

[DeviceE-Ten-GigabitEthernet3/1/3] quit

# 配置Locator段关联Flex-Algo算法130。

[DeviceE] segment-routing ipv6

[DeviceE-segment-routing-ipv6] locator 10

[DeviceE-segment-routing-ipv6-locator-10] flex-algo algorithm 130

[DeviceE-segment-routing-ipv6-locator-10] quit

[DeviceE-segment-routing-ipv6] quit

(7)     配置Device F

# 配置IS-IS协议实现网络层互通,开销值类型为wide。

<DeviceF> system-view

[DeviceF] isis 1

[DeviceF-isis-1] network-entity 00.0000.0000.0006.00

[DeviceF-isis-1] cost-style wide

[DeviceF-isis-1] address-family ipv6

[DeviceF-isis-1-ipv6] quit

[DeviceF-isis-1] quit

[DeviceF] interface ten-gigabitethernet 3/1/1

[DeviceF-Ten-GigabitEthernet3/1/1] isis ipv6 enable 1

[DeviceF-Ten-GigabitEthernet3/1/1] quit

[DeviceF] interface ten-gigabitethernet 3/1/2

[DeviceF-Ten-GigabitEthernet3/1/2] isis ipv6 enable 1

[DeviceF-Ten-GigabitEthernet3/1/2] quit

# 开启SRv6功能,并配置Locator段。

[DeviceF] segment-routing ipv6

[DeviceF-segment-routing-ipv6] locator 10 ipv6-prefix 6000:: 64 static 32

[DeviceF-segment-routing-ipv6-locator-10] quit

[DeviceF-segment-routing-ipv6] quit

# 配置引用Locator段。

[DeviceF] isis 1

[DeviceF-isis 1] address-family ipv6 unicast

[DeviceF-isis-1-ipv6] segment-routing ipv6 locator 10

[DeviceF-isis-1-ipv6] quit

[DeviceF-isis-1] quit

# 配置接口Ten-GigabitEthernet3/1/1的最小时延为10微秒,最大时延为100微秒。

[DeviceF] interface ten-gigabitethernet 3/1/1

[DeviceF-Ten-GigabitEthernet3/1/1] isis link-delay min 10 max 100

[DeviceF-Ten-GigabitEthernet3/1/1] quit

# 配置接口Ten-GigabitEthernet3/1/2的最小时延为10微秒,最大时延为100微秒。

[DeviceF] interface ten-gigabitethernet 3/1/2

[DeviceF-Ten-GigabitEthernet3/1/2] isis link-delay min 10 max 100

[DeviceF-Ten-GigabitEthernet3/1/2] quit

# 开启时延发布功能。

[DeviceF] isis 1

[DeviceF-isis 1] address-family ipv6 unicast

[DeviceF-isis-1-ipv6] metric-delay advertisement enable

# 配置IS-IS发布LSP时携带链路属性。

[DeviceF-isis-1-ipv6] advertise link-attributes

# 配置IS-IS进程1为Flex-Algo发布链路属性信息。

[DeviceF-isis-1-ipv6] advertise application link-attributes te

[DeviceF-isis-1-ipv6] quit

[DeviceF-isis-1] quit

# 配置Flex-Algo算法130。

[DeviceF] isis 1

[DeviceF-isis-1] affinity-map red bit-position 130

[DeviceF-isis-1] flex-algo 130

[DeviceF-isis-1-flex-algo-130] advertise-definition enable

[DeviceF-isis-1-flex-algo-130] metric-type delay

[DeviceF-isis-1-flex-algo-130] priority 255

[DeviceF-isis-1-flex-algo-130] affinity exclude-any red

# 开启Flex-algo算法的TI-LFA快速重路由功能。

[DeviceF-isis-1-flex-algo-130] fast-reroute ti-lfa enable

[DeviceF-isis-1-flex-algo-130] quit

[DeviceF-isis-1] quit

# 配置Locator段关联Flex-Algo算法130。

[DeviceF] segment-routing ipv6

[DeviceF-segment-routing-ipv6] locator 10

[DeviceF-segment-routing-ipv6-locator-10] flex-algo algorithm 130

[DeviceF-segment-routing-ipv6-locator-10] quit

[DeviceF-segment-routing-ipv6] quit

3. 验证配置

# 在Device A上查看Flex-Algo算法130的路由信息,Device A到达Device D的下一跳为Device F,TI-LFA的备份下一跳为Device B。

[DeviceA] display isis flex-algo 130 route level-1 verbose

 

                   Flex Algo Route Information for IS-IS(1)

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

 

                            Level-1 Flex Algo Route

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

 

 IPv6 dest   : 1000::/64

 Flag        : D/-/-                       Cost        : 0

 Admin tag   : -                           Src count   : 1

 Algorithm   : 130

 Priority    : Low

 Nexthop     : Direct

 NexthopFlag : -

 Interface   : NULL0                       Delay Flag : N/A

 Nib ID      : 0x0

 

 IPv6 dest   : 2000::/64

 Flag        : R/-/-                       Cost        : 50

 Admin tag   : -                           Src count   : 1

 Algorithm   : 130

 Priority    : Low

 Nexthop     : FE80::80C5:D9FF:FE06:206

 NexthopFlag : -

 Interface   : XGE3/1/1                     Delay Flag : N/A

 Delay Flag  : N/A

 TI-LFA:

  Interface : XGE3/1/2

  BkNextHop : FE80::80C7:7DFF:FE43:607

  LsIndex    : 0x80000003

  Backup label stack(top->bottom): {3000::1:0:0}

 Nib ID      : 0x2400000c

 

 IPv6 dest   : 3000::/64

 Flag        : R/-/-                       Cost        : 80

 Admin tag   : -                           Src count   : 1

 Algorithm   : 130

 Priority    : Low

 Nexthop     : FE80::80C7:7DFF:FE43:607

 NexthopFlag : -

 Interface   : XGE3/1/2                     Delay Flag : N/A

 Delay Flag  : N/A

 TI-LFA:

  Interface : XGE3/1/1

  BkNextHop : FE80::80C5:D9FF:FE06:206

  LsIndex    : N/A

  Backup label stack(top->bottom): N/A

 Nib ID      : 0x24000008

 

 IPv6 dest   : 4000::/64

 Flag        : R/-/-                       Cost        : 30

 Admin tag   : -                           Src count   : 1

 Algorithm   : 130

 Priority    : Low

 Nexthop     : FE80::80C7:7DFF:FE43:607

 NexthopFlag : -

 Interface   : XGE3/1/2                     Delay Flag : N/A

 Delay Flag  : N/A

 TI-LFA:

  Interface : XGE3/1/1

  BkNextHop : FE80::80C5:D9FF:FE06:206

  LsIndex    : 0x80000002

  Backup label stack(top->bottom): {3000::1:0:0}

 Nib ID      : 0x2400000a

 

 IPv6 dest   : 5000::/64

 Flag        : R/-/-                       Cost        : 20

 Admin tag   : -                           Src count   : 1

 Algorithm   : 130

 Priority    : Low

 Nexthop     : FE80::80C7:7DFF:FE43:607

 NexthopFlag : -

 Interface   : XGE3/1/2                     Delay Flag : N/A

 Delay Flag  : N/A

 TI-LFA:

  Interface : XGE3/1/1

  BkNextHop : FE80::80C5:D9FF:FE06:206

  LsIndex    : 0x80000002

  Backup label stack(top->bottom): {3000::1:0:0}

 Nib ID      : 0x2400000a

 

 IPv6 dest   : 6000::/64

 Flag        : R/-/-                       Cost        : 10

 Admin tag   : -                           Src count   : 1

 Algorithm   : 130

 Nexthop     : FE80::80C7:7DFF:FE43:607

 NexthopFlag : -

 Interface   : XGE3/1/2                     Delay Flag : N/A

 Delay Flag  : N/A

 TI-LFA:

  Interface : XGE3/1/1

  BkNextHop : FE80::80C5:D9FF:FE06:206

  LsIndex    : 0x80000003

  Backup label stack(top->bottom): {3000::1:0:0}

 Nib ID      : 0x2400000c

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

# 在Device C上查看Flex-Algo算法130的路由信息,可以看到TI-LFA备份路径去往Device D不会经过被排除的red链路。

[Device C] display isis flex-algo 130 route level-1 verbose

 

                   Flex Algo Route Information for IS-IS(1)

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

 

                            Level-1 Flex Algo Route

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

 

 IPv6 dest   : 1000::/64

 Flag        : R/-/-                       Cost        : 80

 Admin tag   : -                           Src count   : 1

 Algorithm   : 130

 Priority    : Low

 Nexthop     : FE80::80C7:42FF:FEF4:406

 NexthopFlag : -

 Interface   : XGE3/1/2                     Delay Flag : N/A

 TI-LFA:

  Interface : XGE3/1/1

  BkNextHop : FE80::80C5:D9FF:FE06:207

  LsIndex    : N/A

  Backup label stack(top->bottom): N/A

 Nib ID      : 0x2400000a

 

 IPv6 dest   : 2000::/64

 Flag        : R/-/-                       Cost        : 50

 Admin tag   : -                           Src count   : 1

 Algorithm   : 130

 Priority    : Low

 Nexthop     : FE80::80C5:D9FF:FE06:207

 NexthopFlag : -

 Interface   : XGE3/1/1                     Delay Flag : N/A

 TI-LFA:

  Interface : XGE3/1/2

  BkNextHop : FE80::80C7:42FF:FEF4:406

  LsIndex    : 0x80000002

  Backup label stack(top->bottom): {1000::1:0:0}

 Nib ID      : 0x24000009

 

 IPv6 dest   : 3000::/64

 Flag        : D/-/-                       Cost        : 0

 Admin tag   : -                           Src count   : 1

 Algorithm   : 130

 Priority    : Low

 Nexthop     : Direct

 NexthopFlag : -

 Interface   : NULL0                       Delay Flag : N/A

 Nib ID      : 0x0

 

 IPv6 dest   : 4000::/64

 Flag        : R/-/-                       Cost        : 50

 Admin tag   : -                           Src count   : 1

 Algorithm   : 130

 Priority    : Low

 Nexthop     : FE80::80C7:42FF:FEF4:406

 NexthopFlag : -

 Interface   : XGE3/1/2                     Delay Flag : N/A

 Delay Flag  : N/A

 TI-LFA:

  Interface : XGE3/1/1

  BkNextHop : FE80::80C5:D9FF:FE06:207

  LsIndex    : N/A

  Backup label stack(top->bottom): N/A

 Nib ID      : 0x2400000a

 

 IPv6 dest   : 5000::/64

 Flag        : R/-/-                       Cost        : 60

 Admin tag   : -                           Src count   : 1

 Algorithm   : 130

 Priority    : Low

 Nexthop     : FE80::80C7:42FF:FEF4:406

 NexthopFlag : -

 Interface   : XGE3/1/2                     Delay Flag : N/A

 TI-LFA:

  Interface : XGE3/1/1

  BkNextHop : FE80::80C5:D9FF:FE06:207

  LsIndex    : N/A

  Backup label stack(top->bottom): N/A

 Nib ID      : 0x2400000a

 

 IPv6 dest   : 6000::/64

 Flag        : R/-/-                       Cost        : 70

 Admin tag   : -                           Src count   : 1

 Algorithm   : 130

 Nexthop     : FE80::80C7:42FF:FEF4:406

 NexthopFlag : -

 Interface   : XGE3/1/2                     Delay Flag : N/A

 TI-LFA:

  Interface : XGE3/1/1

  BkNextHop : FE80::80C5:D9FF:FE06:207

  LsIndex    : N/A

  Backup label stack(top->bottom): N/A

 Nib ID      : 0x2400000e

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们