05-IS-IS配置
本章節下載: 05-IS-IS配置 (1.70 MB)
目 錄
1.4.3 配置路由器的Level級別和接口的鏈路鄰接關係類型
1.7.2 配置IS-IS通告給鄰居的鏈路開銷保持最大值的持續時間
1.7.8 配置IS-IS對接收的路由是否加入IP路由表進行過濾
1.7.11 配置允許設備將IS-IS鏈路狀態信息發布到BGP
1.11.1 配置在P2P接口上建立鄰接關係必須在同一網段的檢查功能
1.12.4 配置IS-IS記錄鄰居關係斷開的故障檢測信息的最大個數
IS-IS屬於IGP(Interior Gateway Protocol,內部網關協議),用於自治係統內部。IS-IS是一種鏈路狀態協議,使用SPF(Shortest Path First,最短路徑優先)算法進行路由計算。
· IS(Intermediate System):中間係統。相當於TCP/IP中的路由器,是IS-IS協議中生成路由和傳播路由信息的基本單元。在下文中IS和路由器具有相同的含義。
· ES(End System):終端係統。相當於TCP/IP中的主機係統。ES不參與IS-IS路由協議的處理,ISO使用專門的ES-IS協議定義終端係統與中間係統間的通信。
· RD(Routing Domain):路由域。在一個路由域中多個IS通過相同的路由協議來交換路由信息。
· Area:區域,路由域的細分單元,IS-IS允許將整個路由域分為多個區域。
· LSDB(Link State DataBase):鏈路狀態數據庫。網絡內所有鏈路的狀態組成了鏈路狀態數據庫,在每一個IS中都至少有一個LSDB。IS使用SPF算法,利用LSDB來生成自己的路由。
· LSPDU(Link State Protocol Data Unit):鏈路狀態協議數據單元,簡稱LSP。在IS-IS中,每一個IS都會生成LSP,此LSP包含了本IS的所有鏈路狀態信息。
· NPDU(Network Protocol Data Unit):網絡協議數據單元,是OSI中的網絡層協議報文,相當於TCP/IP中的IP報文。
· DIS(Designated IS):廣播網絡上選舉的指定中間係統,也可以稱為指定IS。
· NSAP(Network Service Access Point):網絡服務接入點,即OSI中網絡層的地址,用來標識一個抽象的網絡服務訪問點,描述OSI模型的網絡地址結構。
如圖1-1所示,NSAP由IDP(Initial Domain Part)和DSP(Domain Specific Part)組成。IDP相當於IP地址中的主網絡號,DSP相當於IP地址中的子網號和主機地址。
IDP部分是ISO規定的,它由AFI(Authority and Format Identifier)和IDI(Initial Domain Identifier)兩部分組成:
· AFI表示地址分配機構和地址格式。
· IDI用來標識域。
DSP由HO-DSP(High Order Part of DSP)、SystemID和SEL三個部分組成:
· HO-DSP用來分割區域。
· SystemID用來區分主機。
· SEL有時也寫成N-SEL(NSAP Selector),它的作用類似IP中的“協議標識符”,用於指示服務類型,不同的傳輸協議對應不同的SEL。
IDP和DSP的長度都是可變的,NSAP總長最多是20個字節,最少8個字節。
圖1-1 IS-IS協議的地址結構示意圖
IS-IS地址結構由以下三部分組成:
· 區域地址
IDP和DSP中的HO-DSP一起,既能夠標識路由域,也能夠標識路由域中的區域,被稱為區域地址。兩個不同的路由域中不允許有相同的區域地址。
一般情況下,一台路由器隻需要配置一個區域地址,且同一區域中所有節點的區域地址都要相同。為了支持區域的平滑合並、分割及轉換,一台路由器最多可配置3個區域地址。
· System ID
System ID用來在區域內唯一標識主機或路由器。它的長度固定為48比特。
在實際應用中,一般使用Router ID與System ID進行對應。假設一台路由器使用接口Loopback0的IP地址168.10.1.1作為Router ID,則它在IS-IS使用的System ID可通過如下方法轉換得到:
¡ 將IP地址168.10.1.1的每一部分都擴展為3位,不足3位的在前麵補0;
¡ 將擴展後的地址168.010.001.001重新劃分為3部分,每部分由4位數字組成,得到的1680.1000.1001就是System ID。
實際System ID的指定可以有不同的方法,但要保證能夠唯一標識主機或路由器。
· SEL
SEL用於指示服務類型,不同的傳輸協議對應不同的SEL。它的長度固定為8比特。在IP中,SEL均為00。
NET(Network Entity Title,網絡實體名稱)指示的是IS本身的網絡層信息,不包括傳輸層信息,可以看作是一類特殊的NSAP,即SEL為0的NSAP地址。因此,NET的長度與NSAP的相同,為8~20個字節。
NET由三部分組成:
· 區域ID:它的長度可變的,為1~13個字節。
· System ID:用來在區域內唯一標識主機或路由器,它的長度固定為6個字節。
· SEL:為0,它的長度固定為1個字節。
例如NET為:ab.cdef.1234.5678.9abc.00,則其中區域ID為ab.cdef,System ID為1234.5678.9abc,SEL為00。
通常情況下,一台路由器配置一個NET即可,當區域需要重新劃分時,例如將多個區域合並,或者將一個區域劃分為多個區域,這種情況下配置多個NET可以在重新配置時仍然能夠保證路由的正確性。由於一台路由器最多可配置3個區域地址,所以最多也隻能配置3個NET。在配置多個NET時,必須保證它們的System ID都相同。
為了支持大規模的路由網絡,IS-IS在路由域內采用兩級的分層結構。一個大的路由域通常被分成多個區域(Areas)。一般來說,我們將Level-1路由器部署在區域內,Level-2路由器部署在區域間,Level-1-2路由器部署在Level-1路由器和Level-2路由器的中間。
Level-1路由器負責區域內的路由,它隻與屬於同一區域的Level-1和Level-1-2路由器形成鄰居關係,維護一個Level-1的LSDB,該LSDB包含本區域的路由信息,到區域外的報文轉發給最近的Level-1-2路由器。
屬於不同區域的Level-1路由器不能形成鄰居關係。
Level-2路由器負責區域間的路由,可以與同一區域或者其它區域的Level-2和Level-1-2路由器形成鄰居關係,維護一個Level-2的LSDB,該LSDB包含區域間的路由信息。所有Level-2路由器和Level-1-2路由器組成路由域的骨幹網,負責在不同區域間通信,骨幹網必須是物理連續的。
Level-2路由器是否形成鄰居關係與區域無關。
同時屬於Level-1和Level-2的路由器稱為Level-1-2路由器,可以與同一區域的Level-1和Level-1-2路由器形成Level-1鄰居關係,也可以與同一區域或者其他區域的Level-2和Level-1-2路由器形成Level-2的鄰居關係。Level-1路由器必須通過Level-1-2路由器才能連接至其他區域。Level-1-2路由器維護兩個LSDB,Level-1的LSDB用於區域內路由,Level-2的LSDB用於區域間路由。
圖1-2為一個運行IS-IS協議的網絡,其中Area 1是骨幹區域,該區域中的所有路由器均是Level-2路由器。另外4個區域為非骨幹區域,它們都通過Level-1-2路由器與骨幹路由器相連。
圖1-2 IS-IS拓撲結構圖之一
圖1-3是IS-IS的另外一種拓撲結構圖。在這個拓撲中,並沒有規定哪個區域是骨幹區域。所有Level-2路由器和Level-1-2路由器構成了IS-IS的骨幹網,它們可以屬於不同的區域,但必須是物理連續的。IS-IS的骨幹網(Backbone)指的不是一個特定的區域。
圖1-3 IS-IS拓撲結構圖之二
IS-IS不論是Level-1還是Level-2路由,都采用SPF算法,分別生成最短路徑樹(Shortest Path Tree,SPT)。
通常情況下,區域內的路由通過Level-1的路由器進行管理。所有的Level-2路由器和Level-1-2路由器構成一個Level-2區域。因此,一個IS-IS的路由域可以包含多個Level-1區域,但隻有一個Level-2區域。
Level-1區域必須且隻能與Level-1-2區域相連,不同的Level-1區域之間並不相連。
Level-1區域內的路由信息通過Level-1-2路由器發布到Level-2區域,因此,Level-2路由器知道整個IS-IS路由域的路由信息。但是,在缺省情況下,Level-2路由器並不將自己知道的其它Level-1區域以及Level-2區域的路由信息發布到Level-1區域。這樣,Level-1路由器將不了解本區域以外的路由信息,Level-1路由器隻將去往其它區域的報文發送到最近的Level-1-2路由器,所以可能導致對本區域之外的目的地址無法選擇最佳的路由。
為解決上述問題,IS-IS提供了路由滲透功能,使Level-1-2路由器可以將己知的其它Level-1區域以及Level-2區域的路由信息發布到指定的Level-1區域。
IS-IS隻支持兩種類型的網絡,根據物理鏈路不同可分為:
· 廣播鏈路:如Ethernet、Token-Ring等。
· 點到點鏈路:如PPP、HDLC等。
對於NBMA(Non-Broadcast Multi-Access)網絡,如ATM,需對其配置子接口,並將子接口類型配置為點到點網絡或廣播網絡。IS-IS不能在點到多點(Point-to-MultiPoint,P2MP)鏈路上運行。
在廣播網絡中,IS-IS需要在所有的路由器中選舉一個路由器作為DIS。
Level-1和Level-2的DIS是分別選舉的,用戶可以為不同級別的DIS選舉設置不同的優先級。DIS優先級數值越高,被選中的可能性就越大。如果優先級最高的路由器有多台,則其中SNPA(Subnetwork Point of Attachment,子網連接點)地址(廣播網絡中的SNPA地址是MAC地址)最大的路由器會被選中。不同級別的DIS可以是同一台路由器,也可以是不同的路由器。
與OSPF的不同點:
· 優先級為0的路由器也參與DIS的選舉;
· 當有新的路由器加入,並符合成為DIS的條件時,這個路由器會被選中成為新的DIS,此更改會引起一組新的LSP泛洪。
在IS-IS廣播網中,同一網段上的同一級別的路由器之間都會形成鄰接關係,包括所有的非DIS路由器之間也會形成鄰接關係。如圖1-4所示。
圖1-4 IS-IS廣播網的DIS和鄰接關係
DIS用來創建和更新偽節點(Pseudonodes),並負責生成偽節點的LSP,用來描述這個網絡上有哪些路由器。
偽節點是用來模擬廣播網絡的一個虛擬節點,並非真實的路由器。在IS-IS中,偽節點用DIS的System ID和一個字節的Circuit ID(非0值)標識。
使用偽節點可以簡化網絡拓撲,減少SPF的資源消耗。
IS-IS廣播網絡上所有的路由器之間都形成鄰接關係,但LSDB的同步仍然依靠DIS來保證。
IS-IS報文是直接封裝在數據鏈路層的幀結構中的。PDU(Protocol Data Unit,協議數據單元)可以分為兩個部分,報文頭和變長字段部分。其中報文頭又可分為通用報頭和專用報頭。對於所有PDU來說,通用報頭都是相同的,但專用報頭根據PDU類型不同而有所差別,如圖1-5所示。
圖1-5 PDU格式
表1-1 PDU類型對應關係表
類型值 |
PDU類型 |
簡稱 |
15 |
Level-1 LAN IS-IS Hello PDU |
L1 LAN IIH |
16 |
Level-2 LAN IS-IS Hello PDU |
L2 LAN IIH |
17 |
Point-to-Point IS-IS Hello PDU |
P2P IIH |
18 |
Level-1 Link State PDU |
L1 LSP |
20 |
Level-2 Link State PDU |
L2 LSP |
24 |
Level-1 Complete Sequence Numbers PDU |
L1 CSNP |
25 |
Level-2 Complete Sequence Numbers PDU |
L2 CSNP |
26 |
Level-1 Partial Sequence Numbers PDU |
L1 PSNP |
27 |
Level-2 Partial Sequence Numbers PDU |
L2 PSNP |
Hello報文:用於建立和維持鄰居關係,也稱為IIH(IS-to-IS Hello PDUs)。其中,廣播網中的Level-1路由器使用Level-1 LAN IIH,廣播網中的Level-2路由器使用Level-2 LAN IIH,點到點網絡中的路由器則使用P2P IIH。
LSP報文:用於交換鏈路狀態信息。LSP分為兩種:Level-1 LSP和Level-2 LSP。Level-1路由器傳送Level-1 LSP,Level-2路由器傳送Level-2 LSP,Level-1-2路由器則可傳送以上兩種LSP。
SNP(Sequence Number PDU,時序報文)通過描述全部或部分數據庫中的LSP來同步LSDB,從而維護LSDB的完整和同步。
SNP包括CSNP(Complete Sequence Number PDU,全時序報文)和PSNP(Partial Sequence Number PDU,部分時序報文),進一步又可分為Level-1 CSNP、Level-2 CSNP、Level-1 PSNP和Level-2 PSNP。
CSNP包括LSDB中所有LSP的概要信息,從而可以在相鄰路由器間保持LSDB的同步。在廣播網絡上,CSNP由DIS定期發送(缺省的發送周期為10秒);在點到點鏈路上,CSNP隻在第一次建立鄰接關係時發送。
PSNP隻列舉最近收到的一個或多個LSP的序列號,它能夠一次對多個LSP進行確認。當發現LSDB不同步時,也用PSNP來請求鄰居發送新的LSP。
PDU中的變長字段部分是多個CLV(Code-Length-Value)三元組。其格式如圖1-6所示:
圖1-6 CLV格式
不同PDU類型所包含的CLV是不同的,如表1-2所示。
表1-2 PDU類型和包含的CLV名稱
CLV Code |
名稱 |
所應用的PDU類型 |
1 |
Area Addresses |
IIH、LSP |
2 |
IS Neighbors(LSP) |
LSP |
4 |
Partition Designated Level-2 IS |
L2 LSP |
6 |
IS Neighbors(MAC Address) |
LAN IIH |
7 |
IS Neighbors(SNPA Address) |
LAN IIH |
8 |
Padding |
IIH |
9 |
LSP Entries |
SNP |
10 |
Authentication Information |
IIH、LSP、SNP |
128 |
IP Internal Reachability Information |
LSP |
129 |
Protocols Supported |
IIH、LSP |
130 |
IP External Reachability Information |
L2 LSP |
131 |
Inter-Domain Routing Protocol Information |
L2 LSP |
132 |
IP Interface Address |
IIH、LSP |
222 |
MT-ISN |
LSP |
229 |
M-Topologies |
IIH,、LSP |
235 |
MT IP. Reach |
LSP |
237 |
MT IPv6 IP. Reach |
LSP |
其中,Code值從1到10的CLV在ISO 10589中定義(有2類未在上表中列出),128到132的CLV在RFC 1195中定義,多拓撲相關CLV在RFC 5120中定義。
IS-IS(Intermediate System-to-Intermediate System,中間係統到中間係統)支持多種網絡層協議,其中包括IPv6協議,支持IPv6協議的IS-IS路由協議又稱為IPv6 IS-IS動態路由協議。
IETF中規定了IS-IS為支持IPv6所新增的內容,主要是新添加的支持IPv6協議的兩個TLV(Type-Length-Values)和一個新的NLPID(Network Layer Protocol Identifier,網絡層協議標識符)。
TLV是LSP(Link State PDU,鏈路狀態協議數據單元)中的一個可變長字段值。新增的兩個TLV分別是:
· IPv6 Reachability:類型值為236(0xEC),通過定義路由信息前綴、度量值等信息來說明網絡的可達性。
· IPv6 Interface Address:類型值為232(0xE8),它對應於IPv4中的“IP Interface Address”TLV,隻不過把原來的32比特的IPv4地址改為128比特的IPv6地址。
NLPID是標識網絡層協議報文的一個8比特字段,IPv6的NLPID值固定為142(0x8E)。
與IS-IS相關的協議規範有:
· ISO 8348:Ad2 Network Services Access Points
· ISO 9542:ES-IS Routing Protocol
· ISO 10589:ISO IS-IS Routing Protocol
· RFC 1195:Use of OSI IS-IS for Routing in TCP/IP and Dual Environments
· RFC 2763:Dynamic Hostname Exchange Mechanism for IS-IS
· RFC 2966:Domain-wide Prefix Distribution with Two-Level IS-IS
· RFC 2973:IS-IS Mesh Groups
· RFC 3277:IS-IS Transient Blackhole Avoidance
· RFC 3358:Optional Checksums in ISIS
· RFC 3359:Reserved Type, Length and Value (TLV) Codepoints in Intermediate System to Intermediate System
· RFC 3563:Cooperative Agreement Between the ISOC/IETF and ISO/IEC Joint Technical Committee 1/Sub Committee 6 (JTC1/SC6) on IS-IS Routing Protocol Development
· RFC 3373:Three-Way Handshake for IS-IS Point-to-Point Adjacencies
· RFC 3567:Intermediate System to Intermediate System (IS-IS) Cryptographic Authentication
· RFC 3719:Recommendations for Interoperable Networks using Intermediate System to Intermediate System (IS-IS)
· RFC 3786:Recommendations for Interoperable IP Networks using Intermediate System to Intermediate System (IS-IS)
· RFC 3787:Recommendations for Interoperable IP Networks using IS-IS
· RFC 3847:Restart signaling for IS-IS
· RFC 4444:Management Information Base for Intermediate System to Intermediate System (IS-IS)
· RFC 4972:Routing Extensions for Discovery of Multiprotocol (MPLS) Label Switch Router (LSR) Traffic Engineering (TE) Mesh Membership
· RFC 5029:Definition of an IS-IS Link Attribute Sub-TLV
· RFC 5089:IS-IS Protocol Extensions for Path Computation Element (PCE) Discovery
· RFC 5130:A Policy Control Mechanism in IS-IS Using Administrative Tags
· RFC 5301:Dynamic Hostname Exchange Mechanism for IS-IS
· RFC 5302:Domain-Wide Prefix Distribution with Two-Level IS-IS
· RFC 5303:Three-Way Handshake for IS-IS Point-to-Point Adjacencies
· RFC 5304:IS-IS Cryptographic Authentication
· RFC 5305:IS-IS Extensions for Traffic Engineering
· RFC 5306:Restart Signaling for IS-IS
· RFC 5308:Routing IPv6 with IS-IS
· RFC 5310:IS-IS Generic Cryptographic Authentication
· RFC 5311:Simplified Extension of Link State PDU (LSP) Space for IS-IS
· RFC 6165:Extensions to IS-IS for Layer-2 Systems
· RFC 6213:IS-IS BFD-Enabled TLV
· RFC 6232:Purge Originator Identification TLV for IS-IS
· RFC 6233:IS-IS Registry Extension for Purges
· RFC 6329:IS-IS Extensions Supporting IEEE 802.1aq Shortest Path Bridging
· RFC 6571:Loop-Free Alternate (LFA) Applicability in Service Provider (SP) Networks
· RFC 6823:Advertising Generic Information in IS-IS
· RFC 7142:OSI IS-IS Intra-domain Routing Protocol
· RFC 7356:IS-IS Flooding Scope Link State PDUs (LSPs)
· RFC 7370:Updates to the IS-IS TLV Codepoints Registry
· RFC 7602:IS-IS Extended Sequence Number TLV
· RFC 7645:The Keying and Authentication for Routing Protocol (KARP) IS-IS Security Analysis
· RFC 7775:IS-IS Route Preference for Extended IP and IPv6 Reachability
· RFC 7794:IS-IS Prefix Attributes for Extended IPv4 and IPv6 Reachability
· RFC 7810:IS-IS Traffic Engineering (TE) Metric Extensions
· RFC 7813:IS-IS Path Control and Reservation
· RFC 7917:Advertising Node Administrative Tags in IS-IS
· RFC 7981:IS-IS Extensions for Advertising Router Information
· RFC 7987:IS-IS Minimum Remaining Lifetime
表1-3 IPv4 IS-IS配置任務簡介
配置任務 |
說明 |
詳細配置 |
|
配置IS-IS基本功能 |
使能IPv4 IS-IS功能 |
必選 |
|
配置路由器的Level級別和接口的鏈路鄰接關係類型 |
可選 |
||
配置接口網絡類型 |
可選 |
||
開啟IS-IS進程的多實例功能 |
可選 |
||
配置IS-IS路由信息控製 |
配置IS-IS鏈路開銷 |
可選 |
|
配置IS-IS通告給鄰居的鏈路開銷保持最大值的持續時間 |
可選 |
||
配置IS-IS路由優先級 |
可選 |
||
配置IS-IS最大等價路由條數 |
可選 |
||
配置IS-IS路由聚合 |
可選 |
||
配置IS-IS發布缺省路由 |
可選 |
||
配置IS-IS引入外部路由 |
可選 |
||
配置IS-IS對接收的路由是否加入IP路由表進行過濾 |
可選 |
||
配置IS-IS對引入的路由信息進行過濾 |
可選 |
||
配置IS-IS路由滲透 |
可選 |
||
配置允許設備將IS-IS鏈路狀態信息發布到BGP |
可選 |
||
配置IS-IS定時器 |
配置Hello報文發送時間間隔 |
可選 |
|
配置CSNP報文發送時間間隔 |
可選 |
||
配置LSP最大生存時間 |
可選 |
||
配置LSP刷新周期和LSP重新生成的時間間隔 |
可選 |
||
配置LSP發送時間間隔 |
可選 |
||
配置SPF參數 |
可選 |
||
配置IS-IS報文相關功能 |
配置接口的DIS優先級 |
可選 |
|
配置接口的Tag值 |
可選 |
||
配置Hello報文失效數目 |
可選 |
||
禁止接口發送和接收IS-IS報文 |
可選 |
||
配置接口發送小型Hello報文 |
可選 |
||
配置LSP報文長度 |
可選 |
||
配置LSP快速擴散功能 |
可選 |
||
配置LSP分片擴展功能 |
可選 |
||
限製LSP泛洪 |
可選 |
||
配置IS-IS高級功能 |
配置在P2P接口上建立鄰接關係必須在同一網段的檢查功能 |
可選 |
|
配置路由收斂的優先級 |
可選 |
||
配置LSDB過載標誌位 |
可選 |
||
配置IS-IS isolate |
可選 |
||
配置IS-IS shutdown |
可選 |
||
配置ATT連接位 |
可選 |
||
配置IS-IS主機名映射 |
可選 |
||
配置IS-IS日誌和告警功能 |
配置鄰接狀態變化的輸出開關 |
可選 |
|
配置IS-IS網管功能 |
可選 |
||
配置IS-IS的日誌功能 |
可選 |
||
配置IS-IS記錄鄰居關係斷開的故障檢測信息的最大個數 |
可選 |
||
配置IS-IS快速收斂 |
配置ISPF |
可選 |
|
配置前綴抑製 |
可選 |
||
配置PIC |
可選 |
||
配置IS-IS網絡的安全性 |
配置鄰居關係驗證 |
可選 |
|
配置區域驗證 |
可選 |
||
配置路由域驗證 |
可選 |
||
配置IS-IS網絡的可靠性 |
配置IS-IS GR |
可選 |
|
配置IS-IS NSR |
可選 |
||
配置IS-IS與BFD聯動 |
可選 |
||
配置IS-IS LFA快速重路由 |
可選 |
||
配置Remote LFA快速重路由 |
可選 |
表1-4 IPv6 IS-IS配置任務簡介
配置任務 |
說明 |
詳細配置 |
|
配置IS-IS基本功能 |
使能IPv6 IS-IS功能 |
必選 |
|
配置路由器的Level級別和接口的鏈路鄰接關係類型 |
可選 |
||
配置接口網絡類型 |
可選 |
||
開啟IS-IS進程的多實例功能 |
可選 |
||
配置IS-IS支持IPv6單播拓撲 |
可選 |
||
配置IS-IS路由信息控製 |
配置IS-IS鏈路開銷 |
可選 |
|
配置IS-IS通告給鄰居的鏈路開銷保持最大值的持續時間 |
可選 |
||
配置IS-IS路由優先級 |
可選 |
||
配置IS-IS最大等價路由條數 |
可選 |
||
配置IS-IS路由聚合 |
可選 |
||
配置IS-IS發布缺省路由 |
可選 |
||
配置IS-IS引入外部路由 |
可選 |
||
配置IS-IS對接收的路由是否加入IP路由表進行過濾 |
可選 |
||
配置IS-IS對引入的路由信息進行過濾 |
可選 |
||
配置IS-IS路由滲透 |
可選 |
||
配置允許設備將IS-IS鏈路狀態信息發布到BGP |
可選 |
||
配置IPv6 IS-IS鏈路標記功能 |
可選 |
||
配置IS-IS定時器 |
配置Hello報文發送時間間隔 |
可選 |
|
配置CSNP報文發送時間間隔 |
可選 |
||
配置LSP最大生存時間 |
可選 |
||
配置LSP刷新周期和LSP重新生成的時間間隔 |
可選 |
||
配置LSP發送時間間隔 |
可選 |
||
配置SPF參數 |
可選 |
||
配置IS-IS報文相關功能 |
配置接口的DIS優先級 |
可選 |
|
配置接口的Tag值 |
可選 |
||
配置Hello報文失效數目 |
可選 |
||
禁止接口發送和接收IS-IS報文 |
可選 |
||
配置接口發送小型Hello報文 |
可選 |
||
配置LSP報文長度 |
可選 |
||
配置LSP快速擴散功能 |
可選 |
||
配置LSP分片擴展功能 |
可選 |
||
限製LSP泛洪 |
可選 |
||
配置IS-IS高級功能 |
配置在P2P接口上建立鄰接關係必須在同一網段的檢查功能 |
可選 |
|
配置路由收斂的優先級 |
可選 |
||
配置LSDB過載標誌位 |
可選 |
||
配置IS-IS isolate |
可選 |
||
配置IS-IS shutdown |
可選 |
||
配置ATT連接位 |
可選 |
||
配置IS-IS主機名映射 |
可選 |
||
配置IS-IS日誌和告警功能 |
配置鄰接狀態變化的輸出開關 |
可選 |
|
配置IS-IS網管功能 |
可選 |
||
配置IS-IS的日誌功能 |
可選 |
||
配置IS-IS記錄鄰居關係斷開的故障檢測信息的最大個數 |
可選 |
||
配置IS-IS快速收斂 |
配置ISPF |
可選 |
|
配置前綴抑製 |
可選 |
||
配置PIC |
可選 |
||
配置IS-IS網絡的安全性 |
配置鄰居關係驗證 |
可選 |
|
配置區域驗證 |
可選 |
||
配置路由域驗證 |
可選 |
||
配置IS-IS網絡的可靠性 |
配置IS-IS GR |
可選 |
|
配置IS-IS NSR |
可選 |
||
配置IS-IS與BFD聯動 |
可選 |
||
配置IS-IS LFA快速重路由 |
可選 |
||
配置Remote LFA快速重路由 |
可選 |
批量執行cost-style、is-level和network-entity命令時,建議最後執行network-entity命令,以避免因配置順序不正確引發IS-IS進程重啟,以及重啟期間可能導致的配置丟失。
表1-5 使能IPv4 IS-IS功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
啟動IS-IS,並進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
缺省情況下,係統沒有運行IS-IS |
配置網絡實體名稱 |
network-entity net |
缺省情況下,未配置NET |
退回係統視圖 |
quit |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置指定接口上使能IS-IS功能 |
isis enable [ process-id ] |
缺省情況下,接口上的IS-IS功能處於關閉狀態,且沒有任何IS-IS進程與其關聯 |
批量執行cost-style、is-level和network-entity命令時,建議最後執行network-entity命令,以避免因配置順序不正確引發IS-IS進程重啟,以及重啟期間可能導致的配置丟失。
表1-6 使能IPv6 IS-IS功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
啟動IS-IS路由進程,進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
缺省情況下,係統沒有運行IS-IS |
配置網絡實體名稱(NET) |
network-entity net |
缺省情況下,未配置NET |
創建並進入IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
退回IS-IS視圖 |
quit |
- |
退回係統視圖 |
quit |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
使能接口IS-IS路由進程的IPv6能力並指定要關聯的IS-IS進程號 |
isis ipv6 enable [ process-id ] |
缺省情況下,接口上IS-IS的IPv6能力處於關閉狀態 |
建議用戶在配置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報文,既減少了路由器的處理時間又節省了帶寬。
表1-7 配置路由器的Level級別和接口的鏈路鄰接關係類型
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置路由器的Level級別 |
is-level { level-1 | level-1-2 | level-2 } |
缺省情況下,路由器的Level級別為Level-1-2 |
退回係統視圖 |
quit |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置接口的鏈路鄰接關係類型 |
isis circuit-level [ level-1 | level-1-2 | level-2 ] |
缺省情況下,接口既可以建立Level-1的鄰接關係,也可以建立Level-2的鄰接關係 |
接口網絡類型不同,其工作機製也略微不同,如:當網絡類型為廣播網時,需要選舉DIS、通過泛洪CSNP報文來實現LSDB同步;當網絡類型為P2P時,不需要選舉DIS,LSDB同步機製也不同。
當隻有兩台路由器接入到同一個廣播網時,通過將接口網絡類型配置為P2P可以使IS-IS按照P2P而不是廣播網的工作機製運行,避免DIS選舉以及CSNP的泛洪,既可以節省網絡帶寬,又可以加快網絡的收斂速度。
表1-8 配置接口網絡類型
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置接口的網絡類型為P2P |
isis [ process-id process-id ] circuit-type p2p |
缺省情況下,路由器接口網絡類型根據物理接口決定,交換機VLAN接口網絡類型為Broadcast 僅當接口的網絡類型為廣播網,且隻有兩台路由器接入該廣播網時才需要進行該項配置,並且兩台路由器都要進行此項配置 |
對於NBMA(Non-Broadcast Multi-Access)網絡,如ATM,需對其配置子接口,並將子接口類型配置為點到點網絡或廣播網絡。IS-IS不能在點到多點(Point-to-MultiPoint,P2MP)鏈路上運行。
本文中將未開啟多實例功能的IS-IS進程稱為傳統IS-IS進程;將開啟了多實例功能的IS-IS進程稱為IS-IS多實例進程。
傳統的IS-IS協議限製在一台設備的一個接口上隻能使能一個IS-IS進程,如果需要在這台設備上使能多個IS-IS進程,則需要增加接口數量和接口配置過程。為了減少接口數量和接口配置過程,可以在IS-IS視圖下開啟IS-IS進程的多實例功能,這樣就可以在同一個接口下使能多個IS-IS多實例進程。同時,還可以在該接口下使能一個傳統IS-IS進程。
(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進程。
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而造成報文丟棄。
當IS-IS網絡中同時存在IPv4和IPv6拓撲時,建議用戶配置此功能,否則可能導致路由計算錯誤。
表1-9 配置IS-IS支持IPv6單播拓撲
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置IS-IS開銷值的類型 |
cost-style { compatible | wide | wide-compatible } |
缺省情況下,IS-IS隻收發采用narrow方式的報文 |
進入IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
配置IS-IS支持IPv6單播拓撲 |
multi-topology [ compatible ] |
缺省情況下,IS-IS不支持IPv6單播拓撲 |
IS-IS有三種方式來配置接口的鏈路開銷值,按照選擇順序依次為:
· 在接口視圖下為指定接口配置的鏈路開銷值。
· 在係統視圖下全局配置的鏈路開銷值,該配置將對該IS-IS進程關聯的接口同時生效。
· 自動計算開銷值:將根據帶寬參考值自動計算接口的鏈路開銷值。當開銷值的類型為wide或wide-compatible時,可以根據公式“開銷=(帶寬參考值÷接口期望帶寬)×10”計算接口的鏈路開銷值,取值範圍為1~16777214。當開銷值類型為其他類型時,具體情況如下:接口帶寬≤10Mbps時,值為60;接口帶寬≤100Mbps時,值為50;接口帶寬≤155Mbps時,值為40;接口帶寬≤622Mbps時,值為30;接口帶寬≤2500Mbps時,值為20;接口帶寬>2500Mbps時,值為10。接口期望帶寬通過命令bandwidth進行配置。
如果沒有采用上述三種方式中的任一種進行開銷值的配置,接口的鏈路開銷值將取係統設置的缺省值10。
接口期望帶寬通過命令bandwidth進行配置,具體情況請參見接口分冊命令參考中的介紹。
表1-10 配置IPv4 IS-IS接口的鏈路開銷值
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
(可選)配置IS-IS開銷值的類型 |
cost-style { narrow | wide | wide-compatible | { compatible | narrow-compatible } [ relax-spf-limit ] } |
缺省情況下,IS-IS開銷值的類型為narrow |
退回係統視圖 |
quit |
- |
進入接口視圖 |
interface interface-type interface-number |
|
配置IS-IS接口的鏈路開銷值 |
isis [ process-id process-id ] cost cost-value [ level-1 | level-2 ] |
缺省情況下,未配置IS-IS接口的鏈路開銷值 |
表1-11 全局配置IPv4 IS-IS鏈路開銷值
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
(可選)配置IS-IS開銷值的類型 |
cost-style { narrow | wide | wide-compatible | { compatible | narrow-compatible } [ relax-spf-limit ] } |
缺省情況下,IS-IS開銷值的類型為narrow |
全局配置IS-IS的鏈路開銷值 |
circuit-cost cost-value [ level-1 | level-2 ] |
缺省情況下,未全局配置IS-IS的鏈路開銷值 |
表1-12 配置IPv4 IS-IS自動計算鏈路開銷值
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
使能自動計算接口鏈路開銷值功能 |
auto-cost enable |
缺省情況下,自動計算接口鏈路開銷值功能處於關閉狀態 |
(可選)配置IS-IS自動計算鏈路開銷值時依據的帶寬參考值 |
bandwidth-reference value |
缺省情況下,帶寬參考值為100Mbps |
表1-13 配置IPv6 IS-IS接口的鏈路開銷值
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
(可選)配置IS-IS開銷值的類型 |
cost-style { narrow | wide | wide-compatible | { compatible | narrow-compatible } [ relax-spf-limit ] } |
缺省情況下,IS-IS隻收發采用narrow方式的報文 |
進入IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
退回IS-IS視圖 |
quit |
- |
退回係統視圖 |
quit |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
使能接口IS-IS的IPv6能力 |
isis ipv6 enable [ process-id ] |
缺省情況下,接口上IS-IS的IPv6能力處於關閉狀態 |
配置接口的IPv6鏈路開銷值 |
isis [ process-id process-id ] ipv6 cost cost-value [ level-1 | level-2 ] |
缺省情況下,未配置接口的IPv6鏈路開銷值 |
表1-14 全局配置IPv6 IS-IS鏈路開銷值
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
全局配置IPv6 IS-IS的鏈路開銷值 |
circuit-cost cost-value [ level-1 | level-2 ] |
缺省情況下,未全局配置IPv6 IS-IS的鏈路開銷值 |
表1-15 配置IPv6 IS-IS自動計算鏈路開銷值
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置IS-IS開銷值的類型 |
cost-style { wide | wide-compatible } |
缺省情況下,IS-IS隻收發采用narrow方式的報文 |
進入IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
使能自動計算接口鏈路開銷值功能 |
auto-cost enable |
缺省情況下,自動計算接口鏈路開銷值功能處於關閉狀態 |
(可選)配置IPv6 IS-IS自動計算鏈路開銷值時依據的帶寬參考值 |
bandwidth-reference value |
缺省情況下,帶寬參考值為100Mbps |
IS-IS網絡中,鏈路發生故障並從故障中恢複,或接口狀態變化時,IS-IS會重新建立鄰接關係,路由會重新進行收斂。在路由重新收斂的過程中,由於各個節點的路由收斂速度不一致,可能會形成環路,造成流量丟失。為了在路由收斂過程中保持轉發路徑不變,可以使用本功能使IS-IS在一段時間內向鄰居通告最大鏈路開銷,這段時間結束後IS-IS向鄰居通告的鏈路開銷從最大值恢複為原始開銷值,IS-IS重新進行路由優選。
表1-16 配置IS-IS通告給鄰居的鏈路開銷保持最大值的持續時間
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置IS-IS通告給鄰居的鏈路開銷保持最大值的持續時間 |
isis peer hold-max-cost duration time |
缺省情況下,未配置IS-IS通告給鄰居的鏈路開銷值保持最大值的持續時間 |
一台路由器可同時運行多個路由協議,當多個路由協議都發現到同一目的地的路由時,將選用高優先級路由協議所發現的路由。
以下配置用來為IS-IS路由設置優先級,使用路由策略可以為特定的路由設置特定的優先級,路由策略的相關知識請參見“三層技術-IP路由配置指導”中的“路由策略”。
表1-17 配置IPv4 IS-IS路由優先級
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS IPv4單播地址族視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
address-family ipv4 [ unicast ] |
||
配置IS-IS協議的路由優先級 |
preference { preference | route-policy route-policy-name } * |
缺省情況下,IS-IS協議的路由優先級為15 |
表1-18 配置IPv6 IS-IS路由優先級
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IS-IS IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
配置IPv6 IS-IS路由優先級 |
preference { route-policy route-policy-name | preference } * |
缺省情況下,IPv6 IS-IS路由優先級為15 |
如果到一個目的地有幾條開銷相同的路徑,可以通過等價路由負載分擔來提高鏈路利用率。該配置用以設置IS-IS協議的最大等價路由條數。
表1-19 配置IPv4 IS-IS最大等價路由條數
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS IPv4單播地址族視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
address-family ipv4 [ unicast ] |
||
配置在負載分擔方式下IS-IS最大等價路由條數 |
maximum load-balancing number |
IS-IS支持的等價路由的最大條數與係統支持最大等價路由的條數相同 |
表1-20 配置IPv6 IS-IS最大等價路由條數
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IS-IS IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
配置在負載分擔方式下IPv6 IS-IS等價路由的最大數量 |
maximum load-balancing number |
缺省情況下,IPv6 IS-IS可用的等價路由最大條數與係統支持的最大等價路由的條數相同 |
通過配置路由聚合,可以減小路由表規模,還可以減少本路由器生成的LSP報文大小和LSDB的規模。其中,被聚合的路由可以是IS-IS協議發現的路由,也可以是引入的外部路由。
路由器隻對本地生成的LSP中的路由進行聚合。
表1-21 配置IPv4 IS-IS路由聚合
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS IPv4單播地址族視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
address-family ipv4 [ unicast ] |
||
配置聚合路由 |
summary ip-address { mask-length | mask } [ avoid-feedback | generate_null0_route | [ level-1 | level-1-2 | level-2 ] | tag tag ] * |
缺省情況下,不對路由進行聚合 聚合後路由的開銷值取所有被聚合路由中最小的開銷值 |
表1-22 配置IPv6 IS-IS路由聚合
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IS-IS IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
配置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聚合路由 |
對於運行IS-IS的路由器來說,無法引入缺省路由,因此也無法通過將目的地為0.0.0.0/0的路徑信息(即缺省路由)通過LSP發布給其它路由器,可以通過配置發布一條缺省路由,將目的地為0.0.0.0/0的路徑信息通過LSP發布出去,其它同級別的路由器中將在自己的路由表中新增一條缺省路由。
當現網中有大量設備時,配置IS-IS發布缺省路由的方式比配置缺省靜態路由的方式更靈活。例如,如果在IS-IS路由域中存在多台邊界設備,那麼可以通過配置路由策略,使某台邊界設備在滿足條件時才發布缺省路由,從而避免造成路由黑洞。
表1-23 配置IPv4 IS-IS發布缺省路由
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS IPv4單播地址族視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
address-family ipv4 [ unicast ] |
||
配置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 ] * |
缺省情況下,IS-IS不發布Level-1或Level-2級別的缺省路由 產生的缺省路由隻被發布到同級別的路由器 |
表1-24 配置IPv6 IS-IS發布缺省路由
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IS-IS IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
配置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缺省路由 |
在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發布出去。
在實際組網環境中,每台路由器的性能即處理能力不同,如果在處理能力強的高端設備上引入大量外部路由,那麼可能會對網絡上其它低端設備的性能造成較大的衝擊,網絡管理員可以通過配置支持的最大引入路由條數,限製引入外部路由的條數,從而最終限製發布路由的數量。
隻能引入路由表中狀態為active的路由,是否為active狀態可以通過display ip routing-table protocol命令來查看。
表1-25 配置IPv4 IS-IS引入外部路由
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS IPv4單播地址族視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
address-family ipv4 [ unicast ] |
||
從其它路由協議或其它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 } [ 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 } inherit-cost [ [ level-1 | level-1-2 | level-2 ] | route-policy route-policy-name | tag tag ] * import-route { isis | ospf | 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 { isis | ospf | rip } [ process-id | all-processes ] inherit-cost [ allow-direct | [ level-1 | level-1-2 | level-2 ] | route-policy route-policy-name | tag tag ] * |
缺省情況下,IS-IS不引入其它協議的路由信息 如果import-route命令中不指定引入的級別,則默認為引入路由到Level-2路由表中 |
(可選)配置引入Level1/Level2的IPv4路由最大條數 |
import-route limit number |
缺省情況下,未配置引入Level1/Level2的IPv4路由最大條數 |
表1-26 配置IPv6 IS-IS引入外部路由
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IS-IS IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
配置IPv6 IS-IS引入外部路由信息 |
import-route bgp4+ [ as-number ] [ allow-ibgp ] [ [ cost cost-value | inherit-cost ] | cost-type { external | internal } | [ level-1 | level-1-2 | level-2 ] | route-policy route-policy-name | tag tag ] * import-route { direct | static } [ [ cost cost-value | inherit-cost ] | cost-type { external | internal } | [ level-1 | level-1-2 | level-2 ] | route-policy route-policy-name | tag tag ] * import-route { isisv6 | ospfv3 | ripng } [ process-id ] [ allow-direct | [ cost cost-value | inherit-cost ] | cost-type { external | internal } | [ level-1 | level-1-2 | level-2 ] | route-policy route-policy-name | tag tag ] * |
缺省情況下,IPv6 IS-IS不引入外部路由信息 |
(可選)配置引入Level1/Level2的IPv6路由最大條數 |
import-route limit number |
缺省情況下,未配置引入Level1/Level2的IPv6路由最大條數 |
運行IS-IS的路由器會把從鄰居收到的LSP保存到自己維護的鏈路狀態數據庫中,使用SPF算法計算出以自己為根的最短路徑樹,並把計算好的路由信息加入到IS-IS路由表中,最終把最優路由加入到IP路由表中。
通過ACL、IP地址前綴列表或路由策略可以對將要加入到IP路由表中的路由進行過濾,滿足條件則加入到IP路由表中,否則將不能加入到IP路由表中。沒有加入IP路由表的路由仍然在IS-IS路由表中,可以通過LSP發布出去。
表1-27 配置IPv4 IS-IS對接收的路由是否加入IP路由表進行過濾
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS IPv4單播地址族視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
address-family ipv4 [ unicast ] |
||
配置IS-IS對接收的路由信息進行過濾 |
filter-policy { ipv4-acl-number | prefix-list prefix-list-name | route-policy route-policy-name } import |
缺省情況下,IS-IS不對接收的路由信息進行過濾 |
表1-28 配置IPv6 IS-IS對接收的路由是否加入IPv6路由表進行過濾
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IS-IS IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
配置IPv6 IS-IS對接收的路由進行過濾 |
filter-policy { ipv6-acl-number | prefix-list prefix-list-name | route-policy route-policy-name } import |
缺省情況下,IPv6 IS-IS不對接收的路由進行過濾 |
IS-IS可以從其它路由協議或其它IS-IS進程引入路由信息,把它直接加入到IS-IS的路由表中並通過LSP發布出去。
通過ACL、IP地址前綴列表或路由策略可以對引入的路由信息進行過濾,滿足條件加入到IS-IS路由表中,否則將不能加入到IS-IS路由表中。沒有加入IS-IS路由表的路由將不會通過LSP發布出去。
表1-29 配置IPv4 IS-IS對引入的路由信息進行過濾
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS IPv4單播地址族視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
address-family ipv4 [ unicast ] |
||
配置IS-IS對引入的路由信息進行過濾 |
filter-policy { ipv4-acl-number | prefix-list prefix-list-name | route-policy route-policy-name } export [ protocol process-id ] |
缺省情況下,IS-IS不對引入的路由信息進行過濾 |
表1-30 配置IPv6 IS-IS對引入的路由信息進行過濾
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IS-IS IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
配置IPv6 IS-IS對引入的路由進行過濾 |
filter-policy { ipv6-acl-number | prefix-list prefix-list-name | route-policy route-policy-name } export [ protocol process-id ] |
缺省情況下,IPv6 IS-IS不對引入的路由信息進行過濾 |
當網絡中同時部署了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。
通過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級別的路由信息的目的。
表1-31 配置IPv4 IS-IS路由滲透
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS IPv4單播地址族視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
address-family ipv4 [ unicast ] |
||
配置將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 } | tag tag ] * |
缺省情況下,Level-1區域的路由信息向Level-2區域發布 |
配置將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 } | tag tag ] * |
缺省情況下,Level-2區域的路由信息不向Level-1區域發布 |
表1-32 配置IPv6 IS-IS路由滲透
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IS-IS IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
配置從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進行路由滲透 |
配置從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進行路由滲透 |
本功能允許設備將鏈路狀態信息發布到BGP,由BGP向外發布,以滿足需要知道鏈路狀態信息的應用的需求。BGP LS的相關內容請參見“三層技術-IP路由配置指導”中的“BGP”。
表1-33 配置允許設備將OSPF鏈路狀態信息發布到BGP
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置允許設備將IS-IS鏈路狀態信息發布到BGP |
distribute bgp-ls [ instance-id id ] [ level-1 | level-2 ] |
缺省情況下,不允許設備將IS-IS鏈路狀態信息發布到BGP |
配置接口鏈路標記的設備和開啟IPv6 IS-IS鏈路標記繼承功能的設備相互配合,可以實現路由篩選。具體機製如下:
(1) 設備上配置了IPv6 IS-IS接口的鏈路標記後,該設備將發布攜帶鏈路標記的LSP。
(2) 開啟IPv6 IS-IS鏈路標記繼承功能的設備收到攜帶鏈路標記的LSP時,設備將提取並繼承LSP中的鏈路標記值。如果設備提取到了多個鏈路標記值(假設為tag 1、tag 2、tag 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”。
表1-34 配置接口的鏈路標記
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置IPv6 IS-IS接口的鏈路標記 |
isis ipv6 link-tag tag |
缺省情況下,未配置接口的鏈路標記 |
表1-35 開啟IPv6 IS-IS的鏈路標記繼承功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IS-IS IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
開啟IPv6 IS-IS的鏈路標記繼承功能 |
link-tag inherit enable |
缺省情況下,IPv6 IS-IS鏈路標記繼承功能處於關閉狀態 |
IS-IS協議通過收發Hello報文來維護與相鄰設備的鄰居關係,如果路由器在鄰居關係保持時間內(即Hello報文失效數目與Hello報文發送時間間隔的乘積)沒有收到來自鄰居路由器的Hello報文時將宣告鄰居關係失效。通過設置Hello報文失效數目和Hello報文的發送時間間隔,可以調整鄰居關係保持時間,即鄰居路由器要花多長時間能夠監測到鏈路已經失效並重新進行路由計算。
DIS發送Hello報文的時間間隔是isis timer hello設置的時間的1/3。
表1-36 配置Hello報文發送時間間隔
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置Hello報文的發送時間間隔 |
isis timer hello seconds [ level-1 | level-2 ] |
缺省情況下,Hello報文的發送時間間隔為10秒 |
當網絡類型為廣播網時,DIS使用CSNP報文來進行LSDB同步,因此隻有在被選舉為DIS的路由器上進行該項配置才有效。
表1-37 配置CSNP報文發送時間間隔
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置DIS在廣播網絡上發送CSNP報文的時間間隔 |
isis timer csnp seconds [ level-1 | level-2 ] |
缺省情況下,CSNP報文的發送時間間隔為10秒 |
每個LSP都有一個最大生存時間,隨著時間的推移最大生存時間將逐漸減小,當LSP的最大生存時間為0時,IS-IS將啟動清除過期LSP的過程。用戶可根據網絡規模對LSP的最大生存時間進行調整。
表1-38 配置LSP最大生存時間
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置LSP最大生存時間 |
timer lsp-max-age seconds |
缺省情況下,LSP最大生存時間為1200秒 |
路由器必須定時刷新自己生成的LSP,防止LSP的最大生存時間減小為0。另外,通過定時刷新LSP可以使整個區域中的LSP保持同步。用戶可對LSP的刷新周期進行配置,提高LSP的刷新頻率可以加快網絡收斂速度,但是將占用更多的帶寬。
除了定時刷新可以重新生成LSP外,當網絡拓撲發生變化,如鄰居路由器up或down,接口Metric值、System ID或區域地址發生變化等,將觸發路由器重新生成LSP。為了防止網絡拓撲頻繁變化而導致LSP頻繁重新生成,用戶可配置LSP生成時間間隔,以抑製網絡變化頻繁導致占用過多的帶寬資源和路由器資源。
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。
表1-39 配置LSP刷新周期和LSP重新生成的時間間隔
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置LSP刷新周期 |
timer lsp-refresh seconds |
缺省情況下,LSP刷新周期為900秒 |
配置LSP重新生成的時間間隔 |
timer lsp-generation maximum-interval [ minimum-interval [ incremental-interval ] ] [ level-1 | level-2 ] |
缺省情況下,LSP重新生成的最大時間間隔為5秒,最小時間間隔為50毫秒,時間間隔懲罰增量為200毫秒 |
當LSDB的內容發生變化時,IS-IS將把發生變化的LSP擴散出去,用戶可以對LSP的最小發送時間間隔進行調節。
請合理配置LSP發送時間間隔,當存在大量IS-IS接口或大量路由時,會發送大量的LSP報文,導致LSP風暴的出現。
在點到點鏈路上,發送的LSP需要得到對端的應答,否則將在指定的時間間隔內重新發送該LSP,重傳時間間隔決定了當一個LSP在P2P鏈路上丟失時它被重傳需要等待的時間。
表1-40 配置LSP發送時間間隔
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置發送LSP的最小時間間隔以及一次最多可以發送的LSP報文數目 |
isis timer lsp time [ count count ] |
缺省情況下,LSP的發送最小時間間隔為33毫秒,一次最多可以發送5個LSP報文 |
配置LSP在點到點鏈路上的重傳時間間隔 |
isis timer retransmit seconds |
缺省情況下,LSP在點到點鏈路上的重傳時間間隔為5秒 |
根據本地維護的LSDB,運行IS-IS協議的路由器通過SPF算法計算出以自己為根的最短路徑樹,並根據這一最短路徑樹決定到目的網絡的下一跳。通過調節SPF的計算間隔,可以抑製網絡頻繁變化可能導致的占用過多帶寬資源和路由器資源。
本命令在網絡變化不頻繁的情況下將連續路由計算的時間間隔縮小到minimum-interval,而在網絡變化頻繁的情況下可以進行相應懲罰,增加incremental-interval×2n-2(n為連續觸發路由計算的次數),將等待時間按照配置的懲罰增量延長,最大不超過maximum-interval。
表1-41 配置IPv4 SPF參數
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置IS-IS路由計算時間間隔 |
timer spf maximum-interval [ minimum-interval [ incremental-interval ] ] |
缺省情況下,IPv4 IS-IS路由計算的最大時間間隔為5秒,最小時間間隔為50毫秒,時間間隔懲罰增量為200毫秒 |
表1-42 配置IPv6 SPF參數
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
配置IPv6 IS-IS路由計算的時間間隔 |
timer spf maximum-interval [ minimum-interval [ incremental-interval ] ] |
缺省情況下,IPv6 IS-IS路由計算的最大時間間隔為5秒,最小時間間隔為50毫秒,時間間隔懲罰增量為200毫秒 |
在廣播網絡中,IS-IS需要在所有的路由器中選舉一個路由器作為DIS。
對於IS-IS,Level-1和Level-2的DIS是分別選舉的,可以為不同級別的DIS選舉設置不同的優先級。優先級數值越高,被選中的可能性就越大。如果所有路由器的DIS優先級相同,將會選擇MAC地址最大的路由器作為DIS。
表1-43 配置接口的DIS優先級
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置接口的DIS優先級 |
isis dis-priority priority [ level-1 | level-2 ] |
缺省情況下,接口的DIS優先級為64 |
管理標記特性允許在IS-IS域中通過管理標記對地址前綴進行控製,達到簡化管理的目的。
如圖1-9所示,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-10所示。
圖1-9 IS-IS組網示意圖
圖1-10 IS-IS管理標記應用示意圖
表1-44 配置IPv4 IS-IS接口的Tag值
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置接口的管理標記值 |
isis tag tag |
缺省情況下,未配置接口的管理標記值 僅當IS-IS開銷值類型為wide、wide-compatible或compatible時,IS-IS才會在發布的LSP的IPv4網段地址信息中攜帶tag值 |
表1-45 配置IPv6 IS-IS接口的Tag值
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置接口的管理標記值 |
isis ipv6 tag tag |
缺省情況下,未配置接口的管理標記值 無論IS-IS使用何種開銷值類型,IS-IS均會在發布的LSP的IPv6地址前綴信息中攜帶tag值 |
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。
表1-46 配置Hello報文失效數目
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置Hello報文失效數目 |
isis timer holding-multiplier value [ level-1 | level-2 ] |
缺省情況下,Hello報文失效數目為3 |
通過禁止接口發送和接收IS-IS報文,禁止了該接口與相鄰路由器建立鄰居關係,但仍然可以把該接口直連網絡的路由信息放在LSP中從其它接口宣告出去。由於不用建立鄰居關係,可以節省帶寬和路由器處理時間,同時,其它路由器也可以知道到達該接口直連網絡的路由信息。
表1-47 禁止接口發送和接收IS-IS報文
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
禁止接口發送和接收IS-IS報文 |
isis silent |
缺省情況下,接口既發送也接收IS-IS報文 |
IS-IS協議報文直接封裝在鏈路層報文頭後麵,無法實現協議報文在IP層的自動分片。因此,運行IS-IS的路由器與對端路由器建立鄰居關係時,會發送達到鏈路MTU大小的Hello報文,雙方進行MTU大小的通信協商,來保證建立鄰居雙方接口MTU的一致性,從而避免雙方MTU大小不一致導致較小的PDU可以通過,但是較大的PDU無法通過。
當鄰居路由器雙方MTU大小一樣的時候,為了避免發送過大的Hello報文浪費帶寬,可以配置接口發送不加入填充CLV的小型Hello報文。
表1-48 配置接口發送小型Hello報文
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置接口發送不加入填充CLV的小型Hello報文 |
isis small-hello |
缺省情況下,接口發送標準Hello報文 |
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報文的最大長度,會在一定程度上影響業務的正常運行。
表1-49 配置LSP報文長度
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置生成的Level-1 LSP和Level-2 LSP的最大長度 |
lsp-length originate size [ level-1 | level-2 ] |
缺省情況下,生成的Level-1 LSP和Level-2 LSP的最大長度為1497字節 |
配置可以接收LSP的最大長度 |
lsp-length receive size |
缺省情況下,接收的LSP報文的最大長度為1497字節 |
通過使能LSP快速擴散功能,當LSP發生變化而導致SPF重新計算時,在SPF重新計算前,把導致SPF重新計算的LSP快速擴散出去,將大大縮短路由器之間由於進行LSP同步而導致LSDB不一致的時間,提高全網的快速收斂性能。
表1-50 配置LSP快速擴散功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置LSP快速擴散功能 |
flash-flood [ flood-count flooding-count | max-timer-interval flooding-interval | [ level-1 | level-2 ] ] * |
缺省情況下,LSP快速擴散功能處於關閉狀態 |
當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-11所示,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-11 IS-IS LSP分片擴展
表1-51 配置LSP分片擴展功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
使能IS-IS進程的LSP分片擴展功能 |
lsp-fragments-extend [ level-1 | level-1-2 | level-2 ] |
缺省情況下,LSP分片擴展功能處於關閉狀態 使能分片擴展功能後,使能該IS-IS進程的所有接口的MTU不能小於512,否則LSP分片擴展功能將不會生效 |
配置IS-IS進程的虛擬係統ID |
virtual-system virtual-system-id |
缺省情況下,未配置IS-IS進程的虛擬係統ID 為了使路由器生成擴展LSP分片,應至少配置一個虛擬System ID |
在某些網絡中,如果網絡聯通程度較高、網絡中存在多條點到點鏈路時,如圖1-12所示,Router A、Router B、Router C和Router D均使能了IS-IS,將把該LSP分別從GigabitEthernet1/0/1、GigabitEthernet1/0/2和GigabitEthernet1/0/3泛洪出去,Router D從GigabitEthernet1/0/3收到Router A發送的LSP後,也會把該LSP從GigabitEthernet1/0/1和GigabitEthernet1/0/2發送給Router B和Router C,而Router B和Router C已經從GigabitEthernet1/0/1、GigabitEthernet1/0/2收到了Router A發送的LSP。LSP的重複擴散會導致帶寬的浪費。
為了避免這種情況的發生,可以將一些接口配置屬於一個Mesh-Group,也可以配置接口阻塞。
· 將設備的幾個接口配置屬於一個Mesh-Group後,如果從其中的一個接口接收到一個新的LSP,IS-IS隻把該LSP擴散到沒有配置Mesh-Group的接口以及與當前接口不屬於同一個Mesh-Group的接口,而不會擴散到同Mesh-Group中的其它接口。
· 配置接口阻塞後,隻有該接口從鄰居路由器收到要求發送LSP的請求時才會發送LSP,否則不會主動向外發送LSP。
設置接口加入Mesh-Group或對接口進行阻塞時應注意保留一定的冗餘度,以免由於鏈路故障影響LSP報文的正常擴散。
表1-52 限製LSP泛洪
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
限製LSP泛洪。請選擇其中一項進行配置 |
· 配置接口屬於Mesh-Group · 配置接口阻塞 |
缺省情況下,接口不屬於任何Mesh-Group且接口不阻塞 |
以上配置隻對點到點類型鏈路的接口起作用。
當接口的網絡類型為P2P時,對端的IP地址與當前接口不在同一網段也可以建立鄰接關係。通過配置與對端路由器建立鄰接關係必須在同一網段的檢查功能,即接口上接收Hello報文時,對端的IP地址與當前接口必須在同一網段才可以建立鄰接關係。
表1-53 配置在P2P接口上建立鄰接關係必須在同一網段的檢查功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置在P2P接口上建立鄰接關係必須在同一網段的檢查功能記 |
isis peer-ip-check |
缺省情況下,在網絡類型為P2P的接口上建立鄰接關係時,不對接口是否處於同一網段進行檢查 |
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命令的過濾結果設置路由的收斂優先級。
· 如果一條路由符合多個收斂優先級的匹配規則,則這些收斂優先級中最高者當選為路由的收斂優先級。
表1-54 配置IPv4 IS-IS路由收斂的優先級
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS IPv4單播地址族視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] address-family ipv4 [ unicast ] |
|
配置IPv4 IS-IS路由收斂的優先級。請選擇其中一項進行配置 |
· 配置指定前綴列表的IPv4 IS-IS路由收斂的優先級 · 通過路由策略指定IPv4 IS-IS路由收斂的優先級 |
缺省情況下,IPv4 IS-IS路由收斂的優先級為低優先級 |
表1-55 配置IPv6 IS-IS路由收斂的優先級
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
配置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路由收斂的優先級為低優先級 |
IS-IS使用過載標誌位來標識過載狀態。IS-IS過載標誌位是指LSP報文中的OL位。對設備設置過載標誌位後,其他設備在進行SPF計算時不會使用這台設備做轉發,隻計算該設備上的直連路由。
當運行IS-IS的路由器因為內存不足或其他原因無法記錄完整的LSDB時,將會導致區域路由的計算錯誤,在故障排除過程中,通過給懷疑有問題的路由器設置過載標誌位,可以將其從IS-IS網絡中暫時隔離,便於進行故障定位。
如圖1-13所示,正常情況下,Device A到達IP network網段的報文由Device D轉發。當Device D發送的LSP報文中的過載標誌位置位後,Device A到達IP network網段的報文將通過Device B、Device C轉發到IP network網段,但轉發到Device D直連網段的報文則不受影響。
圖1-13 LSDB過載示意圖
表1-56 配置IPv4 LSDB過載標誌位
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置過載標誌位 |
set-overload [ on-startup [ [ start-from-nbr system-id [ timeout1 [ nbr-timeout ] ] ] | timeout2 | wait-for-bgp [ timeout3 ] ] ] [ allow { external | interlevel } * ] |
缺省情況下,未配置過載標誌位 |
表1-57 配置IPv6 LSDB過載標位
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
配置IPv6拓撲的LSDB過載標誌位 |
set-overload [ on-startup [ [ start-from-nbr system-id [ timeout1 [ nbr-timeout ] ] ] | timeout2 | wait-for-bgp4+ [ timeout3 ] ] ] [ allow { external | interlevel } * ] |
缺省情況下,未配置過載標誌位 |
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協議重新加入網絡。
表1-58 配置IS-IS isolate
操作 |
命令 |
說明 |
|
進入係統視圖 |
system-view |
- |
|
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
|
使用IS-IS isolate功能對設備的IS-IS協議進行維護 |
開啟IS-IS協議的隔離功能,將設備的IS-IS協議從網絡中隔離出來 |
isolate enable |
缺省情況下,IS-IS協議的隔離功能處於關閉狀態 |
IS-IS協議維護結束後,關閉IS-IS協議的隔離功能,讓設備的IS-IS協議重新加入網絡 |
undo isolate enable |
當用戶需要對某台設備進行調試或升級等維護操作時,可以使用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進程後,不會刪除該進程下的配置,降低了用戶維護設備的成本。
表1-59 配置IS-IS shutdown
操作 |
命令 |
說明 |
|
進入係統視圖 |
system-view |
- |
|
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
|
配置IS-IS shutdown功能 |
關閉IS-IS進程 |
shutdown process |
缺省情況下,IS-IS進程處於開啟狀態 |
IS-IS協議維護結束後,重新開啟IS-IS進程,讓設備的IS-IS進程重新建立鄰居關係 |
undo shutdown process |
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。
表1-60 配置IS-IS不采用ATT位計算缺省路由
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置IS-IS不采用ATT位計算缺省路由 |
ignore-att |
缺省情況下,IS-IS采用ATT位計算缺省路由 |
表1-61 設置係統自身發布的IPv4 Level-1 LSP的ATT位
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置係統自身發布的Level-1 LSP的ATT位置位 |
set-att { always | never } |
缺省情況下,Level-1-2路由器根據缺省置位規則來決定是否置位 |
表1-62 設置係統自身發布的IPv6 Level-1 LSP的ATT位
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
配置係統自身發布的Level-1 LSP的ATT位置位 |
set-att { always | never } |
缺省情況下,Level-1-2路由器根據缺省置位規則來決定是否置位 |
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產生的。
隻有使能動態主機名映射功能後,使用display isis lsdb等命令才可以看到路由器的主機名而不是System ID。
倘若網絡中的一台路由器使能了動態主機名映射功能且在當前路由器也通過靜態方式為那台路由器配置了主機名,動態配置的主機名將覆蓋當前路由器為其靜態配置的主機名稱。
表1-63 配置IS-IS靜態主機名映射
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
為遠端IS配置System ID與主機名稱的映射關係 |
is-name map sys-id map-sys-name |
缺省情況下,沒有為遠端IS配置System ID與主機名稱的映射關係 每個System ID隻能對應一個主機名稱 |
表1-64 配置IS-IS動態主機名映射
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
使能動態主機名映射功能並為當前路由器配置主機名稱 |
is-name sys-name |
缺省情況下,動態主機名映射功能處於關閉狀態且沒有為當前路由器配置主機名稱 |
退回係統視圖 |
quit |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置本地局域網名稱 |
isis dis-name symbolic-name |
缺省情況下,未配置本地局域網名稱 該命令隻有在使能了動態主機名進程的路由器上有效。該命令在點到點鏈路的接口上無效 |
在IS-IS網絡中,鄰居關係震蕩會導致網絡不穩定、網絡頻繁收斂消耗設備資源,甚至可能會造成用戶流量丟失。因此,當出現鄰居關係震蕩時,必須盡快定位並解決。
為了方便在出現鄰居關係震蕩時及時定位問題,可以打開IS-IS鄰接狀態變化的輸出開關,將鄰居狀態變化信息記錄到日誌中。
打開鄰接狀態輸出開關後,IS-IS鄰接狀態變化時會生成日誌信息發送到設備的信息中心,通過設置信息中心的參數,最終決定日誌信息的輸出規則(即是否允許輸出以及輸出方向)。(有關信息中心參數的配置請參見“網絡管理和監控配置指導”中的“信息中心”。)
表1-65 配置鄰接狀態變化的輸出開關
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
打開鄰接狀態變化的輸出開關 |
log-peer-change |
缺省情況下,鄰接狀態變化的輸出開關處於打開狀態 |
配置IS-IS進程綁定MIB功能後,可以通過網管軟件對指定的IS-IS進程進行管理。
開啟IS-IS模塊的告警功能後,該模塊會生成告警信息,用於報告該模塊的重要事件。生成的告警信息將發送到設備的SNMP模塊,通過設置SNMP中告警信息的發送參數,來決定告警信息輸出的相關屬性。(有關告警信息的詳細介紹,請參見“網絡管理和監控配置指導”中的“SNMP”。)
表1-66 配置IS-IS網管功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置IS-IS進程綁定MIB |
isis mib-binding process-id |
缺省情況下,MIB綁定在進程號最小的IS-IS進程上 |
開啟IS-IS的告警功能 |
snmp-agent trap enable isis [ adjacency-protocol-change | 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 | version-skew ] * |
缺省情況下,IS-IS的告警功能處於開啟狀態 |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置管理IS-IS的SNMP實體所使用的上下文名稱 |
snmp context-name context-name |
缺省情況下,未配置管理IS-IS的SNMP實體所使用的上下文名稱 |
IS-IS的日誌信息包括接收和發送Hello報文的日誌信息以及鄰居狀態改變的日誌信息。使用本功能可以設置IS-IS記錄各類日誌信息的最大個數。
表1-67 配置IS-IS的日誌功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置IS-IS記錄日誌信息的最大個數 |
event-log { hello { peer-change | received-abnormal | received-dropped | sent-abnormal | sent-failed } | peer } size count |
缺省情況下,IS-IS記錄各類日誌信息的最大個數均為100 |
IS-IS會對鄰居關係斷開的故障檢測信息進行記錄,通過本功能可以設置記錄故障檢測信息的最大條數。
表1-68 配置IS-IS記錄鄰居關係斷開的故障檢測信息的最大個數
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置IS-IS記錄鄰居關係斷開的故障檢測信息的最大個數 |
isis troubleshooting max-number number |
缺省情況下,IS-IS記錄鄰居關係斷開的故障檢測信息的最大個數為100 |
ISPF(Incremental Shortest Path First,增量最短路徑優先)計算是對IS-IS中最短路徑樹的增量計算,當網絡的拓撲結構發生變化,即影響到最短路徑樹的結構時,隻對受影響的部分節點進行重新計算拓撲結構,對最短路徑樹中受影響的部分進行修正,而不需要重建整棵最短路徑樹。
表1-69 配置IPv4 IS-IS ISPF
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
使能IPv4 IS-IS ISPF功能 |
ispf enable |
缺省情況下,IPv4 IS-IS ISPF功能處於使能狀態 |
表1-70 配置IPv6 IS-IS ISPF
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
使能IPv6 IS-IS ISPF功能 |
ispf enable |
缺省情況下,IPv6 IS-IS ISPF功能處於開啟狀態 |
接口上配置本功能後,設備將禁止在LSP中攜帶此接口的前綴,屏蔽內部節點,提高安全性,加快路由收斂。
表1-71 配置IPv4 IS-IS前綴抑製
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置接口的前綴抑製功能 |
isis prefix-suppression |
缺省情況下,未配置接口的前綴抑製功能 本命令對接口從地址同樣生效 |
表1-72 配置IPv6 IS-IS前綴抑製
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置接口的前綴抑製功能 |
isis ipv6 prefix-suppression |
缺省情況下,未配置接口的前綴抑製功能 |
PIC(Prefix Independent Convergence,前綴無關收斂),即收斂時間與前綴數量無關,加快收斂速度。傳統的路由計算快速收斂都與前綴數量相關,收斂時間與前綴數量成正比。
PIC和IS-IS快速重路由功能同時配置時,IS-IS快速重路由功能生效。
鄰居發送的LSP才會進行PIC。
表1-73 使能PIC
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
使能前綴無關收斂功能 |
pic [ additional-path-always ] |
缺省情況下,前綴無關收斂功能處於使能狀態 |
表1-74 配置PIC支持BFD檢測功能(Ctrl方式)
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
使能IS-IS協議中主用鏈路的BFD(Ctrl方式)檢測功能 |
isis primary-path-detect bfd ctrl |
缺省情況下,IS-IS協議中主用鏈路的BFD(Ctrl方式)檢測功能處於關閉狀態 配置本功能後,可以加快IS-IS協議的收斂速度。使用control報文雙向檢測方式時,需要建立IS-IS鄰居的兩端設備均支持BFD配置 |
表1-75 配置PIC支持BFD檢測功能(Echo方式)
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置BFD Echo報文源地址 |
bfd echo-source-ip ip-address |
缺省情況下,未配置BFD Echo報文源地址 echo報文的源IP地址用戶可以任意指定。建議配置echo報文的源IP地址不屬於該設備任何一個接口所在網段 本命令的詳細情況請參見“可靠性命令參考”中的“BFD” |
進入接口視圖 |
interface interface-type interface-number |
- |
使能IS-IS協議中主用鏈路的BFD(Echo方式)檢測功能 |
isis primary-path-detect bfd echo |
缺省情況下,IS-IS協議中主用鏈路的BFD(Echo方式)檢測功能處於關閉狀態 配置本功能後,可以加快IS-IS協議的收斂速度。使用echo報文單跳檢測方式時,僅需要一端設備支持BFD配置 |
在安全性要求較高的網絡中,可以通過配置IS-IS驗證來提高IS-IS網絡的安全性。IS-IS驗證特性分為鄰居關係的驗證和區域或路由域的驗證。
配置鄰居關係驗證後,驗證密鑰將會按照設定的方式封裝到Hello報文中,並對接收到的Hello報文進行驗證密鑰的檢查,通過檢查才會形成鄰居關係,否則將不會形成鄰居關係,用以確認鄰居的正確性和有效性,防止與無法信任的路由器形成鄰居。
兩台路由器要形成鄰居關係必須配置相同的驗證方式和驗證密鑰。
切換密鑰時可以通過配置發送報文攜帶驗證信息,接收報文時不進行驗證,實現認證密鑰無縫切換。
兩台路由器要形成鄰居關係必須配置相同的驗證方式和驗證密鑰。
IS-IS使用keychain驗證模式時,keychain內的key必須使用HMAC-MD5認證算法才能正常工作。
表1-76 配置鄰居關係驗證
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置鄰居關係驗證方式和驗證密鑰 |
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 ] |
缺省情況下,接口沒有配置鄰居關係驗證方式和驗證密鑰 |
(可選)配置對收到的Hello報文忽略認證信息檢查 |
isis authentication send-only [ level-1 | level-2 ] |
缺省情況下,如果配置了接口驗證方式和驗證密鑰,對收到的報文執行認證信息檢查 |
通過配置區域驗證,可以防止將從不可信任的路由器學習到的路由信息加入到本地Level-1的LSDB中。
配置區域驗證後,驗證密鑰將會按照設定的方式封裝到Level-1報文(LSP、CSNP、PSNP)中,並對收到的Level-1報文進行驗證密鑰的檢查。
同一區域內的路由器必須配置相同的驗證方式和驗證密鑰。
切換密鑰時可以通過配置發送報文攜帶驗證信息,接收報文時不進行驗證,實現認證密鑰無縫切換。
同一區域內的路由器必須配置相同的驗證方式和驗證密鑰。
IS-IS使用keychain驗證模式時,keychain內的key必須使用HMAC-MD5認證算法才能正常工作。
表1-77 配置區域驗證
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置區域驗證方式和驗證密鑰 |
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 ] |
缺省情況下,係統沒有配置區域驗證方式和驗證密鑰 |
(可選)配置對收到的Level-1報文(包括LSP、CSNP、PSNP)忽略認證信息檢查 |
area-authentication send-only |
缺省情況下,如果配置了區域驗證方式和驗證密鑰,對收到的報文執行認證信息檢查 |
通過配置路由域驗證,可以防止將不可信的路由信息注入當前路由域。
配置路由域驗證後,驗證密鑰將會按照設定的方式封裝到Level-2報文(LSP、CSNP、PSNP)中,並對收到的Level-2報文進行驗證密鑰的檢查。
設備配置了路由域驗證後,可以和未配置路由域驗證的設備建立鄰接關係,但是會將未攜帶驗證信息的LSP丟棄,導致路由學習與預期不符。建議在所有骨幹層(Level-2)設備上配置相同的驗證方式和驗證密鑰,避免產生上述問題。
切換密鑰時可以通過配置發送報文攜帶驗證信息,接收報文時不進行驗證,實現認證密鑰無縫切換。
所有骨幹層(Level-2)路由器必須配置相同的驗證方式和驗證密鑰。
IS-IS使用keychain驗證模式時,keychain內的key必須使用HMAC-MD5認證算法才能正常工作。
表1-78 配置路由域驗證
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置路由域驗證方式和驗證密鑰 |
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 ] |
缺省情況下,係統未配置路由域驗證方式和驗證密鑰 |
(可選)配置對收到的Level-2報文(包括LSP、CSNP、PSNP)忽略認證信息檢查 |
domain-authentication send-only |
缺省情況下,如果配置了路由域驗證方式和驗證密鑰,對收到的報文執行認證信息檢查 |
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失敗。
配置GR定時器時請遵循以下規則,否則將導致定時器配置失敗:
· T1定時器超時值×超時次數小於T2定時器的超時值。
· T2定時器超時值小於T3定時器的超時值。
表1-79 配置IS-IS GR
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
使能IS-IS路由進程,進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
使能IS-IS協議的GR能力 |
graceful-restart |
缺省情況下,IS-IS協議的GR能力處於關閉狀態 |
(可選)配置重啟時抑製SA位 |
graceful-restart suppress-sa |
缺省情況下,重啟時不抑製SA位 配置重啟時抑製SA(Suppress-Advertisement)位,即在重啟路由器的Hello PDU中設置抑製發布SA位,重啟路由器的鄰居將繼續發布該鄰接關係 |
(可選)配置T1定時器 |
graceful-restart t1 seconds count count |
缺省情況下,T1定時器的超時值為3秒,超時次數為10次 |
(可選)配置T2定時器 |
graceful-restart t2 seconds |
缺省情況下,T2定時器的超時值為60秒 |
(可選)配置T3定時器 |
graceful-restart t3 seconds |
缺省情況下,T3定時器的超時值為300秒 |
GR特性存在一些缺陷,如主備倒換期間需要周邊設備配合才能完成路由信息的恢複,在網絡應用中有一定的限製;而且在主備倒換後IS-IS進程重新學習所有的路由,如果在主備倒換期間拓撲發生變化,刪除的路由不能及時更新,容易造成黑洞路由。
NSR就是為了解決GR特性的一些缺陷和使用場景限製而實現的一種新特性。NSR將IS-IS鏈路狀態信息從主進程備份到備進程,在發生主備倒換時不需要周邊設備配合就可以完成鏈路狀態的恢複和路由的重新生成。
表1-80 配置IS-IS NSR
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
使能IS-IS NSR功能 |
non-stop-routing |
缺省情況下,IS-IS NSR功能處於關閉狀態 各個進程的NSR功能是相互獨立的,隻對本進程生效。如果存在多個IS-IS進程,建議在各個進程下使能IS-IS NSR功能 |
BFD(Bidirectional Forwarding Detection,雙向轉發檢測)能夠為IS-IS鄰居之間的鏈路提供快速檢測功能。當鄰居之間的鏈路出現故障時,BFD能夠快速檢測到該故障,以加快IS-IS協議的收斂速度。關於BFD的介紹和基本功能配置,請參見“可靠性配置指導”中的“BFD”。
表1-81 配置IPv4 IS-IS與BFD聯動
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
指定接口上使能BFD |
isis bfd enable |
缺省情況下,IPv4 IS-IS的BFD功能處於關閉狀態 |
表1-82 配置IPv6 IS-IS與BFD聯動
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
在指定接口上使能IPv6 IS-IS BFD |
isis ipv6 bfd enable |
缺省情況下,IPv6 IS-IS的BFD功能處於關閉狀態 |
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流量保護類型分為:
· 鏈路保護:當需要保護的對象是經過特定鏈路的流量時,流量保護類型為鏈路保護。
· 節點保護:當需要保護的對象是經過特定設備的流量時,流量保護類型為節點保護。
節點保護優先級高於鏈路保護。
當IS-IS網絡中的鏈路或某台路由器發生故障時,需要通過故障鏈路或故障路由器傳輸才能到達目的地的報文將會丟失,數據流量將會中斷,直到IS-IS根據新的拓撲網絡路由收斂完畢後,被中斷的流量才能恢複正常的傳輸。
為了盡可能縮短網絡故障導致的流量中斷時間,網絡管理員可以配置IS-IS快速重路由功能。
圖1-14 IS-IS快速重路由功能示意圖
如圖1-14所示,通過在Router B上使能快速重路由功能,IS-IS將為路由計算或指定備份下一跳,當Router B檢測到網絡故障時,IS-IS會使用事先獲取的備份下一跳替換失效下一跳,通過備份下一跳來指導報文的轉發,從而大大縮短了流量中斷時間。在使用備份下一跳指導報文轉發的同時,IS-IS會根據變化後的網絡拓撲重新計算最短路徑,網絡收斂完畢後,使用新計算出來的最優路由來指導報文轉發。
網絡管理員可以配置給所有IS-IS路由通過LFA(Loop Free Alternate)算法選取備份下一跳,也可以在路由策略中指定備份下一跳,為符合過濾條件的路由指定備份下一跳。
表1-83 配置通過LFA算法選取IPv4 IS-IS的備份下一跳信息
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
(可選)禁止接口參與LFA計算 |
isis fast-reroute lfa-backup exclude [ level-1 | level-2 ] |
缺省情況下,接口參與LFA計算,能夠被選為備份接口 |
退回係統視圖 |
quit |
- |
進入IS-IS IPv4單播地址族視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] address-family ipv4 [ unicast ] |
|
配置IS-IS支持快速重路由功能(通過LFA算法選取備份下一跳信息) |
fast-reroute lfa [ ecmp-shared | level-1 | level-2 ] |
缺省情況下,IS-IS支持快速重路由功能處於關閉狀態 |
表1-84 配置通過路由策略指定IPv4 IS-IS的備份下一跳
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
(可選)禁止接口參與LFA計算 |
isis fast-reroute lfa-backup exclude [ level-1 | level-2 ] |
缺省情況下,接口參與LFA計算,能夠被選為備份接口 |
退回係統視圖 |
quit |
- |
進入IS-IS IPv4單播地址族視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] address-family ipv4 [ unicast ] |
|
配置IS-IS支持快速重路由功能(通過路由策略指定備份下一跳) |
· 創建路由策略,並通過apply fast-reroute backup-interface命令在路由策略中指定備份下一跳 · 配置IS-IS支持快速重路由功能 |
apply fast-reroute backup-interface命令以及路由策略的相關配置,請參見“三層技術-IP路由配置指導”中的“路由策略” 缺省情況下,IPv4 IS-IS支持快速重路由功能處於關閉狀態 |
表1-85 配置IPv4 IS-IS快速重路由支持BFD檢測功能(Ctrl方式)
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
使能IS-IS協議中主用鏈路的BFD(Ctrl方式)檢測功能 |
isis primary-path-detect bfd ctrl |
缺省情況下,IPv4 IS-IS協議中主用鏈路的BFD(Ctrl方式)檢測功能處於關閉狀態 配置本功能後,可以加快IS-IS協議的收斂速度。使用control報文雙向檢測方式時,需要建立IS-IS鄰居的兩端設備均支持BFD配置 |
表1-86 配置IPv4 IS-IS快速重路由支持BFD檢測功能(Echo方式)
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置BFD Echo報文源地址 |
bfd echo-source-ip ip-address |
缺省情況下,未配置BFD Echo報文源地址 echo報文的源IP地址用戶可以任意指定。建議配置echo報文的源IP地址不屬於該設備任何一個接口所在網段 本命令的詳細情況請參見“可靠性命令參考”中的“BFD” |
進入接口視圖 |
interface interface-type interface-number |
- |
使能IS-IS協議中主用鏈路的BFD(Echo方式)檢測功能 |
isis primary-path-detect bfd echo |
缺省情況下,IPv4 IS-IS協議中主用鏈路的BFD(Echo方式)檢測功能處於關閉狀態 配置本功能後,可以加快IS-IS協議的收斂速度。使用echo報文單跳檢測方式時,僅需要一端設備支持BFD配置 |
表1-87 配置通過LFA算法選取IPv6 IS-IS的備份下一跳信息
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
(可選)禁止接口參與LFA計算 |
isis ipv6 fast-reroute lfa-backup exclude [ level-1 | level-2 ] |
缺省情況下,接口參與LFA計算,能夠被選為備份接口 |
退回係統視圖 |
quit |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IS-IS IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
配置IPv6 IS-IS支持快速重路由功能(通過LFA算法選取備份下一跳信息) |
fast-reroute lfa [level-1 | level-2 ] |
缺省情況下,IPv6 IS-IS支持快速重路由功能處於關閉狀態 |
表1-88 配置通過路由策略指定IPv6 IS-IS的備份下一跳
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
(可選)禁止接口參與LFA計算 |
isis ipv6 fast-reroute lfa-backup exclude [ level-1 | level-2 ] |
缺省情況下,接口參與LFA計算,能夠被選為備份接口 |
退回係統視圖 |
quit |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
進入IS-IS IPv6地址族視圖 |
address-family ipv6 [ unicast ] |
- |
配置IPv6 IS-IS支持快速重路由功能(通過路由策略指定備份下一跳) |
· 創建路由策略,並通過apply ipv6 fast-reroute backup-interface命令在路由策略中指定備份下一跳 · 配置IPv6 IS-IS支持快速重路由功能 |
apply ipv6 fast-reroute backup-interface命令以及路由策略的相關配置,請參見“三層技術-IP路由配置指導”中的“路由策略” 缺省情況下,IPv6 IS-IS快速重路由功能處於關閉狀態 |
表1-89 配置IPv6 IS-IS快速重路由支持BFD檢測功能(Ctrl方式)
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
使能IPv6 IS-IS協議中主用鏈路的BFD檢測功能 |
isis ipv6 primary-path-detect bfd ctrl |
配置本功能後,可以加快IPv6 IS-IS協議的收斂速度。使用control報文雙向檢測方式時,需要建立IPv6 IS-IS鄰居的兩端設備均支持BFD配置 |
表1-90 配置IPv6 IS-IS快速重路由支持BFD檢測功能(Echo方式)
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置BFD Echo報文源地址 |
bfd echo-source-ipv6 ip-address |
缺省情況下,未配置BFD Echo報文源地址 echo報文的源IPv6地址用戶可以任意指定。建議配置echo報文的源IP地址不屬於該設備任何一個接口所在網段 本命令的詳細情況請參見“可靠性命令參考”中的“BFD” |
進入接口視圖 |
interface interface-type interface-number |
- |
使能IPv6 IS-IS協議中主用鏈路的BFD檢測功能 |
isis ipv6 primary-path-detect bfd echo |
缺省情況下,IPv6 IS-IS協議中主用鏈路的BFD檢測功能(Echo方式)處於關閉狀態 配置本功能後,可以加IPv6 快IS-IS協議的收斂速度。使用echo報文單跳檢測方式時,僅需要一端設備支持BFD配置 |
在環形組網中,IS-IS LFA快速重路由無法計算出備份路徑,不能滿足可靠性要求,可以通過部署Remote LFA快速重路由解決該問題。
Remote LFA主要涉及以下概念:
· P空間:以保護鏈路(避免出現故障的鏈路)源端為根節點建立SPF樹,所有從根節點不經過保護鏈路可達的節點集合稱為P空間。
· 擴展P空間:以保護鏈路源端的所有鄰居為根節點分別建立SPF樹,所有從根節點不經過保護鏈路可達的節點集合稱為擴展P空間。
· Q空間:以保護鏈路末端為根節點建立反向SPF樹,所有從根節點不經過保護鏈路可達的節點集合稱為Q空間。
· PQ節點:PQ節點是指既在擴展P空間又在Q空間的節點。在Remote LFA中,PQ節點會作為保護隧道的目的端。
如圖1-15所示,鏈路中間的數字表示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-15中,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-15 Remote LFA典型組網圖
隻有開啟了相應Level的IS-IS LFA快速重路由功能,Remote LFA快速重路由功能才可以在指定Level生效,否則配置不生效。
在參與MPLS轉發的各個節點和接口上開啟MPLS和MPLS LDP能力,配置方法請參見“MPLS配置指導”中的“MPLS基礎”和“LDP”。
(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快速重路由功能處於開啟狀態。
IS-IS FRR備份路徑選擇方式包括如下幾種:
· 節點保護:選擇網絡中特定節點轉發流量。
· 最小路徑開銷:選擇網絡中鏈路開銷最小的鏈路轉發流量。
如圖1-16所示,主路徑為Device A->Device D->Device E->Device F,備份路徑有Device A->Device C->Device E->Device F和Device A->Device B->Device E->Device F兩種選擇:
· 當主要求備份路徑通過特定網絡節點轉發流量時,例如由Device C轉發流量,則選擇節點保護方式,備份路優選為Device A->Device C->Device E->Device F。
· 當主要求備份路徑通過鏈路開銷最小鏈路轉發流量時,則選擇最小路徑開銷方式,備份路優選為Device A->Device B->Device E->Device F。
圖1-16 IS-IS FRR備份路徑選擇示意圖
優先采用節點保護方式計算備份路徑時,如果不能計算出備份路徑,則再通過最小開銷路徑方式計算備份路徑。如果仍不能計算備份路徑,則主鏈路故障後無法保證可靠性。
優先采用最小開銷路徑方式計算備份路徑時,如果不能計算出備份路徑,則不會再通過節點保護方式計算備份路徑,主鏈路故障後無法保證可靠性。
(1) 進入係統視圖。
system-view
(2) 進入IS-IS視圖。
isis [ process-id ] [ vpn-instance vpn-instance-name ]
(3) 進入IS-IS IPv4地址族視圖。
address-family ipv4 [ unicast ]
(4) 配置快速重路由備份路徑優選方案的優先級。
fast-reroute tiebreaker { lowest-cost | node-protecting } preference preference [ level-1 | level-2 ]
缺省情況下,最小開銷路徑優選方案的優先級為20,節點保護優選方案的優先級為40。
(1) 進入係統視圖。
system-view
(2) 進入IS-IS視圖。
isis [ process-id ] [ vpn-instance vpn-instance-name ]
(3) 進入IS-IS IPv6地址族視圖。
address-family ipv6 [ unicast ]
(4) 配置快速重路由備份路徑優選方案的優先級。
fast-reroute tiebreaker { lowest-cost | node-protecting } preference preference [ level-1 | level-2 ]
缺省情況下,最小開銷路徑優選方案的優先級為20,節點保護優選方案的優先級為40。
在完成上述配置後,在任意視圖下執行display命令可以顯示配置後IS-IS的運行情況,用戶可以通過查看顯示信息驗證配置的效果。
在用戶視圖下執行reset命令可以清除IS-IS進程所有的數據結構信息。
表1-91 IPv4 IS-IS顯示和維護
命令 |
|
顯示IS-IS的進程信息 |
display isis [ process-id ] |
顯示IS-IS GR日誌信息 |
(獨立運行模式) display isis graceful-restart event-log slot slot-number (IRF模式) display isis graceful-restart event-log 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 ] |
顯示IS-IS LSP日誌信息 |
display isis event-log lsp { purged | refreshed } [ level-1 | level-2 ] [ process-id ] |
顯示IS-IS NSR日誌信息 |
(獨立運行模式) display isis event-log non-stop-routing slot slot-number (IRF模式) display isis event-log non-stop-routing chassis chassis-number slot slot-number |
顯示鄰居狀態改變的日誌信息 |
display isis event-log peer [ process-id ] |
顯示IS-IS的IPv4路由計算日誌信息 |
display isis event-log spf ipv4 [ [ level-1 | level-2 ] | verbose ] * [ 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 ] |
顯示接口最近發送Hello報文的信息 |
display isis interface [ interface-type interface-number ] hello-sent [ 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 non-stop-routing status |
顯示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 ] |
顯示IS-IS引入路由的信息 |
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 ] ] [ [ level-1 | level-2 ] | verbose ] * [ process-id ] |
顯示IS-IS的IPv4拓撲信息 |
display isis spf-tree [ ipv4 ] [ [ level-1 | level-2 ] | [ source-id source-id | verbose ] ] * [ process-id ] |
顯示IS-IS的統計信息 |
display isis statistics [ ipv4 ] [ level-1 | level-1-2 | level-2 ] [ process-id ] |
顯示IS-IS鄰居關係斷開的故障檢測信息 |
display isis troubleshooting |
顯示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進程所有的數據結構信息 |
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 graceful-restart event-log slot slot-number (IRF模式) reset isis graceful-restart event-log chassis chassis-number slot slot-number |
清除IS-IS NSR的日誌信息 |
(獨立運行模式) reset isis non-stop-routing event-log slot slot-number (IRF模式) reset isis non-stop-routing event-log chassis chassis-number slot slot-number |
清除IS-IS LSP日誌信息 |
reset isis event-log lsp { purged | refreshed } [ process-id ] |
清除IS-IS路由計算日誌信息 |
reset isis event-log spf [ 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 ] |
清除IS-IS鄰居關係斷開的故障檢測信息 |
reset isis troubleshooting |
清除OSI連接的報文統計信息 |
reset osi statistics |
表1-92 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 ] |
顯示IS-IS LSP日誌信息 |
display isis event-log lsp { purged | refreshed } [ level-1 | level-2 ] [ process-id ] |
顯示鄰居狀態改變的日誌信息 |
display isis event-log peer [ process-id ] |
顯示IS-IS的IPv6路由計算日誌信息 |
display isis event-log spf ipv6 [ [ level-1 | level-2 ] | verbose ] * [ process-id ] |
顯示IS-IS的接口信息 |
display isis interface [ [ interface-type interface-number ] [ verbose ] | statistics ] [ process-id ] |
顯示接口最近發送Hello報文的信息 |
display isis interface [ interface-type interface-number ] hello-sent [ 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 ] |
顯示IS-IS引入的IPv6路由信息 |
display isis redistribute ipv6 [ ipv6-address mask-length ] [ level-1 | level-2 ] [ process-id ] |
顯示IS-IS的IPv6路由信息 |
display isis route ipv6 [ ipv6-address ] [ [ level-1 | level-2 ] | verbose ] * [ process-id ] |
顯示IS-IS的IPv6拓撲信息 |
display isis spf-tree ipv6 [ [ level-1 | level-2 ] | [ source-id source-id | verbose ] ] * [ process-id ] |
顯示IS-IS的IPv6統計信息 |
display isis statistics ipv6 [ level-1 | level-1-2 | level-2 ] [ process-id ] |
顯示IS-IS鄰居關係斷開的故障檢測信息 |
display isis troubleshooing |
顯示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進程所有的數據結構信息 |
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 LSP日誌信息 |
reset isis event-log lsp { purged | refreshed } [ process-id ] |
清除IS-IS路由計算日誌信息 |
reset isis event-log spf [ 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 ] |
清除IS-IS鄰居關係斷開的故障檢測信息 |
reset isis troubleshooting |
清除OSI連接的報文統計信息 |
reset osi statistics |
如圖1-17所示,Switch A、Switch B、Switch C和Switch D屬於同一自治係統,要求它們之間通過IS-IS協議達到IP網絡互連的目的。
Switch A和Switch B為Level-1交換機,Switch D為Level-2交換機,Switch C作為Level-1-2交換機將兩個區域相連。Switch A、Switch B和Switch C的區域號為10,Switch D的區域號為20。
圖1-17 IS-IS基本功能配置組網圖
(1) 配置各接口的IP地址(略)
(2) 配置IS-IS
# 配置Switch A。
<SwitchA> system-view
[SwitchA] isis 1
[SwitchA-isis-1] is-level level-1
[SwitchA-isis-1] network-entity 10.0000.0000.0001.00
[SwitchA-isis-1] quit
[SwitchA] interface vlan-interface 100
[SwitchA-Vlan-interface100] isis enable 1
[SwitchA-Vlan-interface100] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] isis 1
[SwitchB-isis-1] is-level level-1
[SwitchB-isis-1] network-entity 10.0000.0000.0002.00
[SwitchB-isis-1] quit
[SwitchB] interface vlan-interface 200
[SwitchB-Vlan-interface200] isis enable 1
[SwitchB-Vlan-interface200] quit
# 配置Switch C。
<SwitchC> system-view
[SwitchC] isis 1
[SwitchC-isis-1] network-entity 10.0000.0000.0003.00
[SwitchC-isis-1] quit
[SwitchC] interface vlan-interface 100
[SwitchC-Vlan-interface100] isis enable 1
[SwitchC-Vlan-interface100] quit
[SwitchC] interface vlan-interface 200
[SwitchC-Vlan-interface200] isis enable 1
[SwitchC-Vlan-interface200] quit
[SwitchC] interface vlan-interface 300
[SwitchC-Vlan-interface300] isis enable 1
[SwitchC-Vlan-interface300] quit
# 配置Switch D。
<SwitchD> system-view
[SwitchD] isis 1
[SwitchD-isis-1] is-level level-2
[SwitchD-isis-1] network-entity 20.0000.0000.0004.00
[SwitchD-isis-1] quit
[SwitchD] interface vlan-interface 100
[SwitchD-Vlan-interface100] isis enable 1
[SwitchD-Vlan-interface100] quit
[SwitchD] interface vlan-interface 300
[SwitchD-Vlan-interface300] isis enable 1
[SwitchD-Vlan-interface300] quit
# 顯示各交換機的IS-IS LSDB信息,查看LSP是否完整。
[SwitchA] 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
[SwitchB] 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
[SwitchC] 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
[SwitchD] 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的路由。
[SwitchA] 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 Vlan100 Direct D/L/-
10.1.2.0/24 20 NULL Vlan100 10.1.1.1 R/-/-
192.168.0.0/24 20 NULL Vlan100 10.1.1.1 R/-/-
0.0.0.0/0 10 NULL Vlan100 10.1.1.1 R/-/-
Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set
[SwitchC] display isis route
Route information for IS-IS(1)
------------------------------
Level-1 IPv4 Forwarding Table
-----------------------------
IPv4 Destination IntCost ExtCost ExitInterface NextHop Flags
-------------------------------------------------------------------------------
192.168.0.0/24 10 NULL Vlan300 Direct D/L/-
10.1.1.0/24 10 NULL Vlan100 Direct D/L/-
10.1.2.0/24 10 NULL Vlan200 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
-------------------------------------------------------------------------------
192.168.0.0/24 10 NULL D/L/-
10.1.1.0/24 10 NULL D/L/-
10.1.2.0/24 10 NULL D/L/-
172.16.0.0/16 20 NULL Vlan300 192.168.0.2 R/-/-
Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set
[SwitchD] 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 Vlan300 Direct D/L/-
10.1.1.0/24 20 NULL Vlan300 192.168.0.1 R/-/-
10.1.2.0/24 20 NULL Vlan300 192.168.0.1 R/-/-
172.16.0.0/16 10 NULL Vlan100 Direct D/L/-
Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set
如圖1-18所示,Switch A、Switch B、Switch C和Switch D都運行IS-IS路由協議以實現互連,它們屬於同一區域10,網絡類型為廣播網(以太網)。
Switch A和Switch B是Level-1-2交換機,Switch C為Level-1交換機,Switch D為Level-2交換機。要求通過改變接口的DIS優先級,將Switch A配置為Level-1-2的DIS。
圖1-18 IS-IS的DIS選擇配置組網圖
(1) 配置各接口的IP地址(略)
(2) 配置IS-IS
# 配置Switch A。
<SwitchA> system-view
[SwitchA] isis 1
[SwitchA-isis-1] network-entity 10.0000.0000.0001.00
[SwitchA-isis-1] quit
[SwitchA] interface vlan-interface 100
[SwitchA-Vlan-interface100] isis enable 1
[SwitchA-Vlan-interface100] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] isis 1
[SwitchB-isis-1] network-entity 10.0000.0000.0002.00
[SwitchB-isis-1] quit
[SwitchB] interface vlan-interface 100
[SwitchB-Vlan-interface100] isis enable 1
[SwitchB-Vlan-interface100] quit
# 配置Switch C。
<SwitchC> system-view
[SwitchC] isis 1
[SwitchC-isis-1] network-entity 10.0000.0000.0003.00
[SwitchC-isis-1] is-level level-1
[SwitchC-isis-1] quit
[SwitchC] interface vlan-interface 100
[SwitchC-Vlan-interface100] isis enable 1
[SwitchC-Vlan-interface100] quit
# 配置Switch D。
<SwitchD> system-view
[SwitchD] isis 1
[SwitchD-isis-1] network-entity 10.0000.0000.0004.00
[SwitchD-isis-1] is-level level-2
[SwitchD-isis-1] quit
[SwitchD] interface vlan-interface 100
[SwitchD-Vlan-interface100] isis enable 1
[SwitchD-Vlan-interface100] quit
# 查看Switch A的IS-IS鄰居信息。
[SwitchA] display isis peer
Peer information for IS-IS(1)
----------------------------
System ID: 0000.0000.0002
Interface: Vlan100 Circuit Id: 0000.0000.0003.01
State: Up HoldTime: 21s Type: L1(L1L2) PRI: 64
System ID: 0000.0000.0003
Interface: Vlan100 Circuit Id: 0000.0000.0003.01
State: Up HoldTime: 27s Type: L1 PRI: 64
System ID: 0000.0000.0002
Interface: Vlan100 Circuit Id: 0000.0000.0004.01
State: Up HoldTime: 28s Type: L2(L1L2) PRI: 64
System ID: 0000.0000.0004
Interface: Vlan100 Circuit Id: 0000.0000.0004.01
State: Up HoldTime: 30s Type: L2 PRI: 64
# 顯示Switch A的IS-IS接口信息。
[SwitchA] display isis interface
Interface information for IS-IS(1)
----------------------------------
Interface: Vlan-interface100
Index IPv4 state IPv6 state Circuit ID MTU Type DIS
00001 Up Down 1 1497 L1/L2 No/No
# 顯示Switch C的IS-IS接口信息。
[SwitchC] display isis interface
Interface information for IS-IS(1)
----------------------------------
Interface: Vlan-interface100
Index IPv4 state IPv6 state Circuit ID MTU Type DIS
00001 Up Down 1 1497 L1/L2 Yes/No
# 顯示Switch D的IS-IS接口信息。
[SwitchD] display isis interface
Interface information for IS-IS(1)
----------------------------------
Interface: Vlan-interface100
Index IPv4 state IPv6 state Circuit ID MTU Type DIS
00001 Up Down 1 1497 L1/L2 No/Yes
從接口信息中可以看到,在使用缺省DIS優先級的情況下,Switch C為Level-1的DIS,Switch D為Level-2的DIS。Level-1和Level-2的偽節點分別是0000.0000.0003.01和0000.0000.0004.01。
# 配置Switch A的DIS優先級。
[SwitchA] interface vlan-interface 100
[SwitchA-Vlan-interface100] isis dis-priority 100
[SwitchA-Vlan-interface100] quit
# 查看Switch A的IS-IS鄰居信息。
[SwitchA] display isis peer
Peer information for IS-IS(1)
----------------------------
System ID: 0000.0000.0002
Interface: Vlan100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 21s Type: L1(L1L2) PRI: 64
System ID: 0000.0000.0003
Interface: Vlan100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 27s Type: L1 PRI: 64
System ID: 0000.0000.0002
Interface: Vlan100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 28s Type: L2(L1L2) PRI: 64
System ID: 0000.0000.0004
Interface: Vlan100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 30s Type: L2 PRI: 64
# 查看Switch A的IS-IS接口信息。
[SwitchA] display isis interface
Interface information for IS-IS(1)
----------------------------------
Interface: Vlan-interface100
Index IPv4 state IPv6 state Circuit ID MTU Type DIS
00001 Up Down 1 1497 L1/L2 Yes/Yes
從上述信息中可以看到,在改變IS-IS接口的DIS優先級後,Switch A立即成為Level-1-2的DR(DIS),且偽節點是0000.0000.0001.01。
# 顯示Switch C的IS-IS鄰居和接口信息。
[SwitchC] display isis peer
Peer information for IS-IS(1)
----------------------------
System ID: 0000.0000.0002
Interface: Vlan100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 25s Type: L1 PRI: 64
System ID: 0000.0000.0001
Interface: Vlan100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 7s Type: L1 PRI: 100
[SwitchC] display isis interface
Interface information for IS-IS(1)
----------------------------------
Interface: Vlan-interface100
Index IPv4 state IPv6 state Circuit ID MTU Type DIS
00001 Up Down 1 1497 L1/L2 No/No
# 顯示Switch D的IS-IS鄰居和接口信息。
[SwitchD] display isis peer
Peer information for IS-IS(1)
----------------------------
System ID: 0000.0000.0001
Interface: Vlan100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 9s Type: L2 PRI: 100
System ID: 0000.0000.0002
Interface: Vlan100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 28s Type: L2 PRI: 64
[SwitchD] display isis interface
Interface information for IS-IS(1)
----------------------------------
Interface: Vlan-interface100
Index IPv4 state IPv6 state Circuit ID MTU Type DIS
00001 Up Down 1 1497 L1/L2 No/No
如圖1-19所示:
· Switch A、Switch B、Switch C和Switch D屬於同一自治係統,要求它們之間通過IS-IS協議達到IP網絡互連的目的。
· Switch A和Switch B為Level-1路由器,Switch D為Level-2路由器,Switch C作為Level-1-2路由器將兩個區域相連。Switch A、Switch B和Switch C的區域號為10,Switch D的區域號為20。
· 在Switch D的IS-IS進程中引入RIP路由。
圖1-19 IS-IS引入外部路由配置組網圖
(1) 配置各接口的IP地址(略)
(2) 配置IS-IS基本功能
# 配置Switch A。
<SwitchA> system-view
[SwitchA] isis 1
[SwitchA-isis-1] is-level level-1
[SwitchA-isis-1] network-entity 10.0000.0000.0001.00
[SwitchA-isis-1] quit
[SwitchA] interface vlan-interface 100
[SwitchA-Vlan-interface100] isis enable 1
[SwitchA-Vlan-interface100] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] isis 1
[SwitchB-isis-1] is-level level-1
[SwitchB-isis-1] network-entity 10.0000.0000.0002.00
[SwitchB-isis-1] quit
[SwitchB] interface vlan-interface 200
[SwitchB-Vlan-interface200] isis enable 1
[SwitchB-Vlan-interface200] quit
# 配置Switch C。
<SwitchC> system-view
[SwitchC] isis 1
[SwitchC-isis-1] network-entity 10.0000.0000.0003.00
[SwitchC-isis-1] quit
[SwitchC] interface vlan-interface 200
[SwitchC-Vlan-interface200] isis enable 1
[SwitchC-Vlan-interface200] quit
[SwitchC] interface vlan-interface 100
[SwitchC-Vlan-interface100] isis enable 1
[SwitchC-Vlan-interface100] quit
[SwitchC] interface vlan-interface 300
[SwitchC-Vlan-interface300] isis enable 1
[SwitchC-Vlan-interface300] quit
# 配置Switch D。
<SwitchD> system-view
[SwitchD] isis 1
[SwitchD-isis-1] is-level level-2
[SwitchD-isis-1] network-entity 20.0000.0000.0004.00
[SwitchD-isis-1] quit
[SwitchD] interface interface vlan-interface 300
[SwitchD-Vlan-interface300] isis enable 1
[SwitchD-Vlan-interface300] quit
[SwitchD] interface interface vlan-interface 400
[SwitchD-Vlan-interface400] isis enable 1
[SwitchD-Vlan-interface400] quit
# 顯示各路由器的IS-IS路由信息。
[SwitchA] 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 VLAN100 Direct D/L/-
10.1.2.0/24 20 NULL VLAN100 10.1.1.1 R/-/-
192.168.0.0/24 20 NULL VLAN100 10.1.1.1 R/-/-
0.0.0.0/0 10 NULL VLAN100 10.1.1.1 R/-/-
Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set
[SwitchC] 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 VLAN100 Direct D/L/-
10.1.2.0/24 10 NULL VLAN200 Direct D/L/-
192.168.0.0/24 10 NULL VLAN300 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/-
Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set
[SwitchD] 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 VLAN300 Direct D/L/-
10.1.1.0/24 20 NULL VLAN300 192.168.0.1 R/-/-
10.1.2.0/24 20 NULL VLAN300 192.168.0.1 R/-/-
Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set
(3) 在Switch D和Switch E之間運行RIPv2,在Switch D上配置IS-IS進程引入RIP路由。
# 在Switch D上配置RIPv2。
[SwitchD] rip 1
[SwitchD-rip-1] network 10.0.0.0
[SwitchD-rip-1] version 2
[SwitchD-rip-1] undo summary
# 在Switch E上配置RIPv2。
[SwitchE] rip 1
[SwitchE-rip-1] network 10.0.0.0
[SwitchE-rip-1] version 2
[SwitchE-rip-1] undo summary
# 在Switch D上配置IS-IS進程引入RIP進程的路由。
[SwitchD-rip-1] quit
[SwitchD] isis 1
[SwitchD–isis-1] address-family ipv4
[SwitchD–isis-1-ipv4] import-route rip level-2
# 顯示Switch C的IS-IS路由信息。
[SwitchC] 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 VLAN100 Direct D/L/-
10.1.2.0/24 10 NULL VLAN200 Direct D/L/-
192.168.0.0/24 10 NULL VLAN300 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 VLAN300 192.168.0.2 R/L/-
10.1.5.0/24 10 0 VLAN300 192.168.0.2 R/L/-
10.1.6.0/24 10 0 VLAN300 192.168.0.2 R/L/-
Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set
如圖1-20所示,Switch A、Switch B、Switch C和Switch D屬於同一路由域,要求它們之間通過IS-IS協議達到IP網絡互連的目的。
其中,Switch A、Switch B和Switch C屬於同一個區域,區域號為10,Switch D屬於另外一個區域,區域號為20。
在區域10內配置區域驗證,防止不可信任的路由信息加入到區域10的LSDB中;在Switch C和Switch D上配置路由域驗證,防止將不可信的路由信息注入當前路由域;分別在Switch A、Switch B、Switch C和Switch D上配置鄰居關係驗證。
圖1-20 IS-IS驗證配置舉例圖
(1) 配置各接口的IP地址(略)
(2) 配置IS-IS基本功能
# 配置Switch A。
<SwitchA> system-view
[SwitchA] isis 1
[SwitchA-isis-1] network-entity 10.0000.0000.0001.00
[SwitchA-isis-1] quit
[SwitchA] interface vlan-interface 100
[SwitchA-Vlan-interface100] isis enable 1
[SwitchA-Vlan-interface100] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] isis 1
[SwitchB-isis-1] network-entity 10.0000.0000.0002.00
[SwitchB-isis-1] quit
[SwitchB] interface vlan-interface 200
[SwitchB-Vlan-interface200] isis enable 1
[RouterB--Vlan-interface200] quit
# 配置Switch C。
<SwitchC> system-view
[SwitchC] isis 1
[SwitchC-isis-1] network-entity 10.0000.0000.0003.00
[SwitchC-isis-1] quit
[SwitchC] interface vlan-interface 200
[SwitchC-Vlan-interface200] isis enable 1
[SwitchC-Vlan-interface200] quit
[SwitchC] interface vlan-interface 300
[SwitchC-Vlan-interface300] isis enable 1
[SwitchC-Vlan-interface300] quit
[SwitchC] interface vlan-interface 300
[SwitchC-Vlan-interface300] isis enable 1
[SwitchC-Vlan-interface300] quit
# 配置Switch D。
<SwitchD> system-view
[SwitchD] isis 1
[SwitchD-isis-1] network-entity 20.0000.0000.0001.00
[SwitchD-isis-1] quit
[SwitchD] interface vlan-interface 300
[SwitchD-Vlan-interface300] isis enable 1
[SwitchD-Vlan-interface300] quit
(3) 在Switch A、Switch B、Switch C和Switch D之間建立鄰居關係驗證
# 分別在Switch A的Vlan-interface100、Switch C的Vlan-interface100配置鄰居關係驗證,驗證方式為MD5明文,驗證密鑰為“eRg”。
[SwitchA] interface vlan-interface 100
[SwitchA-Vlan-interface100] isis authentication-mode md5 plain eRg
[SwitchA-Vlan-interface100] quit
[SwitchC] interface vlan-interface 100
[SwitchC-Vlan-interface100] isis authentication-mode md5 plain eRg
[SwitchC-Vlan-interface100] quit
# 分別在Switch B的Vlan-interface200、Switch C的Vlan-interface200上配置鄰居關係驗證,驗證方式為MD5明文,驗證密鑰為“t5Hr”。
[SwitchB] interface vlan-interface 200
[SwitchB-Vlan-interface200] isis authentication-mode md5 plain t5Hr
[SwitchB-Vlan-interface200] quit
[SwitchC] interface vlan-interface 200
[SwitchC-Vlan-interface200] isis authentication-mode md5 plain t5Hr
[SwitchC-Vlan-interface200] quit
# 分別在Switch C的Vlan-interface300、Switch D的Vlan-interface300配置鄰居關係驗證,驗證方式為MD5明文,驗證密鑰為“hSec”。
[SwitchC] interface vlan-interface 300
[SwitchC-Vlan-interface300] isis authentication-mode md5 plain hSec
[SwitchC-Vlan-interface300] quit
[SwitchD] interface vlan-interface 300
[SwitchD-Vlan-interface300] isis authentication-mode md5 plain hSec
[SwitchD-Vlan-interface300] quit
(4) 在Switch A、Switch B和Switch C上配置區域驗證,驗證方式為MD5明文驗證,驗證密鑰為“10Sec”。
[SwitchA] isis 1
[SwitchA-isis-1] area-authentication-mode md5 plain 10Sec
[SwitchA-isis-1] quit
[SwitchB] isis 1
[SwitchB-isis-1] area-authentication-mode md5 plain 10Sec
[SwitchB-isis-1] quit
[SwitchC] isis 1
[SwitchC-isis-1] area-authentication-mode md5 plain 10Sec
[SwitchC-isis-1] quit
(5) 在Switch C和Switch D上配置路由域驗證,驗證方式為MD5明文驗證,驗證密鑰為“1020Sec”。
[SwitchC] isis 1
[SwitchC-isis-1] domain-authentication-mode md5 plain 1020Sec
[SwitchC-isis-1] quit
[SwitchD] isis 1
[SwitchD-isis-1] domain-authentication-mode md5 plain 1020Sec
如圖1-21所示,Switch A、Switch B和Switch C屬於同一域。這三台交換機都運行IS-IS協議以實現路由互連。
圖1-21 IS-IS GR配置組網圖
(1) 配置各交換機接口的IP地址和IS-IS協議
請按照圖1-21配置各接口的IP地址和子網掩碼,具體配置過程略。
配置各交換機之間采用IS-IS協議進行互連,確保Switch A、Switch B和Switch C之間能夠在網絡層互通,並且各交換機之間能夠借助IS-IS協議實現動態路由更新,具體配置過程略。
(2) 配置IS-IS GR
# 使能Switch A的IS-IS協議的GR能力。
<SwitchA> system-view
[SwitchA] isis 1
[SwitchA-isis-1] graceful-restart
[SwitchA-isis-1] return
# 重啟Switch A的IS-IS進程。
<SwitchA> reset isis all 1 graceful-restart
Reset IS-IS process? [Y/N]:y
# 查看Switch A上IS-IS協議的GR狀態。
<SwitchA> 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-22所示,Switch S、Switch A、Switch B屬於同一IS-IS區域,通過IS-IS協議實現網絡互連。要求對Switch S進行主備倒換時,Switch A和Switch B到Switch S的鄰居沒有中斷,Switch A到Switch B的流量沒有中斷。
圖1-22 IS-IS NSR配置組網圖
(1) 配置各路由器接口的IP地址和IS-IS協議
請按照圖1-22配置各接口的IP地址和子網掩碼,具體配置過程略。
配置各路由器之間采用IS-IS協議進行互連,確保Switch S、Switch A和Switch B之間能夠在網絡層互通,並且各路由器之間能夠借助IS-IS協議實現動態路由更新。具體配置過程略。
(2) 配置IS-IS NSR
# 使能Switch S的IS-IS NSR功能。
<SwitchS> system-view
[SwitchS] isis 1
[SwitchS-isis-1] non-stop-routing
[SwitchS-isis-1] return
# Switch S進行主備倒換。
<SwitchS> system-view
[SwitchS] placement reoptimize
Predicted changes to the placement
Service Group(instance name) Cur location New location
----------------------------------------------------------------------------
rib 0/0 0/0
staticroute 0/0 0/0
rib6 0/0 0/0
staticroute6 0/0 0/0
isis 0/0 1/0
Continue? [y/n]:y
Re-optimization of the placement start. You will be notified on completion.
Re-optimization of the placement complete. Use 'display placement' to view the new placement.
# 查看Switch A上IS-IS協議的鄰居和路由。
<SwitchA> display isis peer
Peer information for IS-IS(1)
----------------------------
System ID: 0000.0000.0001
Interface: Vlan100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 25s Type: L1(L1L2) PRI: 64
System ID: 0000.0000.0001
Interface: Vlan100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 27s Type: L2(L1L2) PRI: 64
<SwitchA> display isis route
Route information for IS-IS(1)
-----------------------------
Level-1 IPv4 Forwarding Table
-----------------------------
IPv4 Destination IntCost ExtCost ExitInterface NextHop Flags
-------------------------------------------------------------------------------
12.12.12.0/24 10 NULL vlan100 Direct D/L/-
22.22.22.22/32 10 NULL Loop0 Direct D/-/-
14.14.14.0/32 10 NULL vlan100 12.12.12.2 R/L/-
44.44.44.44/32 10 NULL vlan100 12.12.12.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
-------------------------------------------------------------------------------
12.12.12.0/24 10 NULL vlan100 Direct D/L/-
22.22.22.22/32 10 NULL Loop0 Direct D/-/-
14.14.14.0/32 10 NULL
44.44.44.44/32 10 NULL
Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set
# 查看Switch B上IS-IS協議的鄰居和路由。
<SwitchB> display isis peer
Peer information for IS-IS(1)
----------------------------
System ID: 0000.0000.0001
Interface: Vlan200 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 25s Type: L1(L1L2) PRI: 64
System ID: 0000.0000.0001
Interface: Vlan200 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 27s Type: L2(L1L2) PRI: 64
<SwitchB> display isis route
Route information for IS-IS(1)
-----------------------------
Level-1 IPv4 Forwarding Table
-----------------------------
IPv4 Destination IntCost ExtCost ExitInterface NextHop Flags
-------------------------------------------------------------------------------
14.14.14.0/24 10 NULL vlan200 Direct D/L/-
44.44.44.44/32 10 NULL Loop0 Direct D/-/-
12.12.12.0/32 10 NULL vlan200 14.14.14.4 R/L/-
22.22.22.22/32 10 NULL vlan200 14.14.14.4 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
-------------------------------------------------------------------------------
14.14.14.0/24 10 NULL vlan200 Direct D/L/-
44.44.44.44/32 10 NULL Loop0 Direct D/-/-
12.12.12.0/32 10 NULL
22.22.22.22/32 10 NULL
Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set
通過上麵信息可以看出Switch A和Switch B的鄰居和路由信息保持不變,即NSR特性使周邊設備無法感知Switch S的主備倒換。
· Switch A、Switch B和Switch C上運行IS-IS,網絡層相互可達。
· 當Switch A和Switch B通過L2 Switch通信的鏈路出現故障時BFD能夠快速感知通告IS-IS協議,並且切換到Switch C進行通信。
圖1-23 IS-IS與BFD聯動配置組網圖
設備 |
接口 |
IP地址 |
設備 |
接口 |
IP地址 |
Switch A |
Vlan-int10 |
10.1.0.102/24 |
Switch B |
Vlan-int10 |
10.1.0.100/24 |
|
Vlan-int11 |
11.1.1.1/24 |
|
Vlan-int13 |
13.1.1.1/24 |
|
Loop0 |
121.1.1.1/32 |
|
Loop0 |
120.1.1.1/32 |
Switch C |
Vlan-int11 |
11.1.1.2/24 |
|
|
|
|
Vlan-int13 |
13.1.1.2/24 |
|
|
|
(1) 配置各接口的IP地址(略)
(2) 配置IS-IS基本功能
# 配置Switch A。
<SwitchA> system-view
[SwitchA] isis
[SwitchA-isis-1] network-entity 10.0000.0000.0001.00
[SwitchA-isis-1] quit
[SwitchA] interface loopback 0
[SwitchA-LoopBack0] isis enable
[SwitchA-LoopBack0] quit
[SwitchA] interface vlan-interface 10
[SwitchA-Vlan-interface10] isis enable
[SwitchA-Vlan-interface10] quit
[SwitchA] interface vlan-interface 11
[SwitchA-Vlan-interface11] isis enable
[SwitchA-Vlan-interface11] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] isis
[SwitchB-isis-1] network-entity 10.0000.0000.0002.00
[SwitchB-isis-1] quit
[SwitchB] interface loopback 0
[SwitchB-LoopBack0] isis enable
[SwitchB-LoopBack0] quit
[SwitchB] interface vlan-interface 10
[SwitchB-Vlan-interface10] isis enable
[SwitchB-Vlan-interface10] quit
[SwitchB] interface vlan-interface 13
[SwitchB-Vlan-interface13] isis enable
[SwitchB-Vlan-interface13] quit
# 配置Switch C。
<SwitchC> system-view
[SwitchC] isis
[SwitchC-isis-1] network-entity 10.0000.0000.0003.00
[SwitchC-isis-1] quit
[SwitchC] interface vlan-interface 11
[SwitchC-Vlan-interface11] isis enable
[SwitchC-Vlan-interface11] quit
[SwitchC] interface vlan-interface 13
[SwitchC-Vlan-interface13] isis enable
[SwitchC-Vlan-interface13] quit
(3) 配置BFD功能
# 在Switch A上使能BFD檢測功能,並配置BFD參數。
[SwitchA] bfd session init-mode passive
[SwitchA] interface vlan-interface 10
[SwitchA-Vlan-interface10] isis bfd enable
[SwitchA-Vlan-interface10] bfd min-receive-interval 500
[SwitchA-Vlan-interface10] bfd min-transmit-interval 500
[SwitchA-Vlan-interface10] bfd detect-multiplier 7
[SwitchA-Vlan-interface10] quit
# 在Switch B上使能BFD檢測功能,並配置BFD參數。
[SwitchB] bfd session init-mode active
[SwitchB] interface vlan-interface 10
[SwitchB-Vlan-interface10] isis bfd enable
[SwitchB-Vlan-interface10] bfd min-receive-interval 500
[SwitchB-Vlan-interface10] bfd min-transmit-interval 500
[SwitchB-Vlan-interface10] bfd detect-multiplier 8
[SwitchB-Vlan-interface10] quit
下麵以Switch A為例,Switch B和Switch A類似,不再贅述。
# 顯示Switch A的BFD信息。
<SwitchA> display bfd session
Total Session Num: 1 Up Session Num: 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 Vlan10
# 在Switch A上查看120.1.1.1/32的路由信息,可以看出Switch A和Switch B是通過L2 Switch進行通信的。
<SwitchA> 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
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 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 BkSRLabel: NULL
SIDIndex: NULL InLabel: NULL
Tunnel ID: Invalid Interface: Vlan-interface10
BkTunnel ID: Invalid BkInterface: N/A
FtnIndex: 0x0 TrafficIndex: N/A
Connector: N/A PathID: 0x0
LinkCost: 0 MicroSegID: 0
RealFIRType: Normal RealThres: 0
當Switch A和Switch B通過L2 Switch通信的鏈路出現故障時:
# 在Switch A上查看120.1.1.1/32的路由信息,可以看出Switch A和Switch B已經切換到Switch C進行通信。
<SwitchA> 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
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 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 BkSRLabel: NULL
SIDIndex: NULL InLabel: NULL
Tunnel ID: Invalid Interface: Vlan-interface11
BkTunnel ID: Invalid BkInterface: N/A
FtnIndex: 0x0 TrafficIndex: N/A
Connector: N/A PathID: 0x0
LinkCost: 0 MicroSegID: 0
RealFIRType: Normal RealThres: 0
如圖1-24所示,Switch A、Switch B和Switch C屬於同一IS-IS路由域,通過IS-IS協議實現網絡互連。要求當Switch A和Switch B之間的鏈路出現故障時,業務可以快速切換到鏈路B上。
圖1-24 IS-IS快速重路由配置組網圖
設備 |
接口 |
IP地址 |
設備 |
接口 |
IP地址 |
Switch A |
Vlan-int100 |
12.12.12.1/24 |
Switch B |
Vlan-int101 |
24.24.24.4/24 |
|
Vlan-int200 |
13.13.13.1/24 |
|
Vlan-int200 |
13.13.13.2/24 |
|
Loop0 |
1.1.1.1/32 |
|
Loop0 |
4.4.4.4/32 |
Switch C |
Vlan-int100 |
12.12.12.2/24 |
|
|
|
|
Vlan-int101 |
24.24.24.2/24 |
|
|
|
(1) 配置各交換機接口的IP地址和IS-IS協議
請按照圖1-21配置各接口的IP地址和子網掩碼,具體配置過程略。
配置各交換機之間采用IS-IS協議進行互連,確保Switch A、Switch B和Switch C之間能夠在網絡層互通,並且各交換機之間能夠借助IS-IS協議實現動態路由更新。
具體配置過程略。
(2) 配置IS-IS快速重路由
IS-IS支持快速重路由配置有兩種配置方法,一種是通過LFA(Loop Free Alternate)算法選取備份下一跳,另一種是在路由策略中指定備份下一跳,兩種方法任選一種。
方法一:使能Switch A和Switch B的IS-IS協議的自動計算快速重路由能力
# 配置Switch A。
<SwitchA> system-view
[SwitchA] isis 1
[SwitchA-isis-1] address-family ipv4
[SwitchA-isis-1-ipv4] fast-reroute lfa
[SwitchA-isis-1-ipv4] quit
[SwitchA-isis-1] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] isis 1
[SwitchB-isis-1] address-family ipv4
[SwitchB-isis-1-ipv4] fast-reroute lfa
[SwitchB-isis-1-ipv4] quit
[SwitchB-isis-1] quit
方法二:使能Switch A和Switch B的IS-IS協議的指定路由策略快速重路由能力
# 配置Switch A。
<SwitchA> system-view
[SwitchA] ip prefix-list abc index 10 permit 4.4.4.4 32
[SwitchA] route-policy frr permit node 10
[SwitchA-route-policy-frr-10] if-match ip address prefix-list abc
[SwitchA-route-policy-frr-10] apply fast-reroute backup-interface vlan-interface 100 backup-nexthop 12.12.12.2
[SwitchA-route-policy-frr-10] quit
[SwitchA] isis 1
[SwitchA-isis-1] address-family ipv4
[SwitchA-isis-1-ipv4] fast-reroute route-policy frr
[SwitchA-isis-1-ipv4] quit
[SwitchA-isis-1] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] ip prefix-list abc index 10 permit 1.1.1.1 32
[SwitchB] route-policy frr permit node 10
[SwitchB-route-policy-frr-10] if-match ip address prefix-list abc
[SwitchB-route-policy-frr-10] apply fast-reroute backup-interface vlan-interface 101 backup-nexthop 24.24.24.2
[SwitchB-route-policy-frr-10] quit
[SwitchB] isis 1
[SwitchB-isis-1] address-family ipv4
[SwitchB-isis-1-ipv4] fast-reroute route-policy frr
[SwitchB-isis-1-ipv4] quit
[SwitchB-isis-1] quit
# 在Switch A上查看4.4.4.4/32路由,可以看到備份下一跳信息。
[SwitchS] 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
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 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 BkSRLabel: NULL
SIDIndex: NULL InLabel: NULL
Tunnel ID: Invalid Interface: Vlan-interface200
BkTunnel ID: Invalid BkInterface: Vlan-interface100
FtnIndex: 0x0 TrafficIndex: N/A
Connector: N/A PathID: 0x0
LinkCost: 0 MicroSegID: 0
RealFIRType: Normal RealThres: 0
# 在Switch B上查看1.1.1.1/32路由,可以看到備份下一跳信息。
[SwitchD] 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
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 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 BkSRLabel: NULL
SIDIndex: NULL InLabel: NULL
Tunnel ID: Invalid Interface: Vlan-interface200
BkTunnel ID: Invalid BkInterface: Vlan-interface101
FtnIndex: 0x0 TrafficIndex: N/A
Connector: N/A PathID: 0x0
LinkCost: 0 MicroSegID: 0
RealFIRType: Normal RealThres: 0
如圖1-25所示,IPv4網絡和IPv6的接口開銷值不同,要求通過IS-IS多實例隔離IPv4和IPv6網絡,避免使用傳統IS-IS進程導致IPv6路由計算出錯的問題。
圖1-25 IPv6 IS-IS基本功能配置組網圖
設備 |
接口 |
IPv4地址 |
IPv6地址 |
設備 |
接口 |
IPv4地址 |
IPv6地址 |
Switch A |
Vlan10 |
10.1.1.1/24 |
2001::1/64 |
Switch B |
Vlan10 |
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 |
按照組網圖配置各接口的IPv4地址和IPv6地址。
(1) 配置傳統IPv4 IS-IS進程
# 配置Switch A。
<SwitchA> system-view
[SwitchA] isis 1
[SwitchA-isis-1] network-entity 10.0000.0000.0001.00
[SwitchA-isis-1] quit
[SwitchA] interface loopback 0
[SwitchA-LoopBack0] isis enable 1
[SwitchA-LoopBack0] quit
[SwitchA] interface vlan-interface 10
[SwitchA-Vlan-interface10] isis enable 1
[SwitchA-Vlan-interface10] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] isis 1
[SwitchB-isis-1] network-entity 10.0000.0000.0002.00
[SwitchB-isis-1] quit
[SwitchB] interface loopback 0
[SwitchB-LoopBack0] isis enable 1
[SwitchB-LoopBack0] quit
[SwitchB] interface vlan-interface 10
[SwitchB-Vlan-interface10] isis enable 1
[SwitchB-Vlan-interface10] quit
(2) 配置多實例IPv6 IS-IS進程
# 配置Switch A。
[SwitchA] isis 2
[SwitchA-isis-2] network-entity 20.0000.0000.0010.00
[SwitchA-isis-2] multi-instance enable iid 1
[SwitchA-isis-2] address-family ipv6
[SwitchA-isis-2-ipv6] quit
[SwitchA-isis-2] quit
[SwitchA] interface loopback 0
[SwitchA-LoopBack0] isis ipv6 enable 2
[SwitchA-LoopBack0] quit
[SwitchA] interface vlan-interface 10
[SwitchA-Vlan-interface10] isis ipv6 enable 2
[SwitchA-Vlan-interface10] isis process-id 2 cost 63
[SwitchA-Vlan-interface10] quit
# 配置Switch B。
[SwitchB] isis 2
[SwitchB-isis-2] network-entity 20.0000.0000.0020.00
[SwitchB-isis-2] multi-instance enable iid 1
[SwitchB-isis-2] address-family ipv6
[SwitchB-isis-2-ipv6] quit
[SwitchB-isis-2] quit
[SwitchB] interface loopback 0
[SwitchB-LoopBack0] isis ipv6 enable 2
[SwitchB-LoopBack0] quit
[SwitchB] interface vlan-interface 10
[SwitchB-Vlan-interface10] isis ipv6 enable 2
[SwitchB-Vlan-interface10] isis process-id 2 cost 63
[SwitchB-Vlan-interface10] quit
# 查看Switch A的IPv4 IS-IS路由表,可以看到路由計算的結果正確。
[SwitchA] 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 Vlan10 Direct D/L/-
2.2.2.2/32 10 NULL Vlan10 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 Vlan10 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
# 查看Switch B的IPv4 IS-IS路由表,可以看到路由計算的結果正確。
[SwitchB] 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 Vlan10 10.1.1.1 R/L/-
10.1.1.0/24 10 NULL Vlan10 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 Vlan10 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
# 查看Switch A的IPv6 IS-IS路由表,可以看到路由計算的結果正確。
[SwitchA] 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: Vlan10
Destination : 20::1 PrefixLen: 128
Flag : R/L/- Cost : 63
Next hop : FE80::861F:31FF:FE6D:201 Interface: Vlan10
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: Vlan10
Destination : 20::1 PrefixLen: 128
Flag : -/-/- Cost : 63
Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set
# 查看Switch B的IPv6 IS-IS路由表,可以看到路由計算的結果正確。
[SwitchB] 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: Vlan10
Destination : 2001:: PrefixLen: 64
Flag : D/L/- Cost : 63
Next hop : Direct Interface: Vlan10
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: Vlan10
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
如下圖所示,Switch A、Switch B、Switch C和Switch D屬於同一自治係統,所有交換機已使能了IPv6能力,要求它們之間通過IPv6 IS-IS協議達到IPv6網絡互連的目的。
其中Switch A和Switch B是Level-1交換機,Switch D是Level-2交換機,Switch C是Level-1-2交換機。Switch A、Switch B和Switch C屬於區域10,而Switch D屬於區域20。
圖1-26 IPv6 IS-IS基本配置組網圖
(1) 配置各接口的IPv6地址(略)
(2) 配置IPv6 IS-IS
# 配置Switch A。
<SwitchA> system-view
[SwitchA] isis 1
[SwitchA-isis-1] is-level level-1
[SwitchA-isis-1] network-entity 10.0000.0000.0001.00
[SwitchA-isis-1] address-family ipv6
[SwitchA-isis-1-ipv6] quit
[SwitchA-isis-1] quit
[SwitchA] interface vlan-interface 100
[SwitchA-Vlan-interface100] isis ipv6 enable 1
[SwitchA-Vlan-interface100] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] isis 1
[SwitchB-isis-1] is-level level-1
[SwitchB-isis-1] network-entity 10.0000.0000.0002.00
[SwitchB-isis-1] address-family ipv6
[SwitchB-isis-1-ipv6] quit
[SwitchB-isis-1] quit
[SwitchB] interface vlan-interface 200
[SwitchB-Vlan-interface200] isis ipv6 enable 1
[SwitchB-Vlan-interface200] quit
# 配置Switch C。
<SwitchC> system-view
[SwitchC] isis 1
[SwitchC-isis-1] network-entity 10.0000.0000.0003.00
[SwitchC-isis-1] address-family ipv6
[SwitchC-isis-1-ipv6] quit
[SwitchC-isis-1] quit
[SwitchC] interface vlan-interface 100
[SwitchC-Vlan-interface100] isis ipv6 enable 1
[SwitchC-Vlan-interface100] quit
[SwitchC] interface vlan-interface 200
[SwitchC-Vlan-interface200] isis ipv6 enable 1
[SwitchC-Vlan-interface200] quit
[SwitchC] interface vlan-interface 300
[SwitchC-Vlan-interface300] isis ipv6 enable 1
[SwitchC-Vlan-interface300] quit
# 配置Switch D。
<SwitchD> system-view
[SwitchD] isis 1
[SwitchD-isis-1] is-level level-2
[SwitchD-isis-1] network-entity 20.0000.0000.0004.00
[SwitchD-isis-1] address-family ipv6
[SwitchD-isis-1-ipv6] quit
[SwitchD-isis-1] quit
[SwitchD] interface vlan-interface 300
[SwitchD-Vlan-interface300] isis ipv6 enable 1
[SwitchD-Vlan-interface300] quit
[SwitchD] interface vlan-interface 301
[SwitchD-Vlan-interface301] isis ipv6 enable 1
[SwitchD-Vlan-interface301] quit
# 查看Switch A的IPv6 IS-IS路由表。
[SwitchA] 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: Vlan100
Destination : 2001:1:: PrefixLen: 64
Flag : D/L/- Cost : 10
Next Hop : Direct Interface: Vlan100
Destination : 2001:2:: PrefixLen: 64
Flag : R/-/- Cost : 20
Next Hop : FE80::200:FF:FE0F:4 Interface: Vlan100
Destination : 2001:3:: PrefixLen: 64
Flag : R/-/- Cost : 20
Next Hop : FE80::200:FF:FE0F:4 Interface: Vlan100
Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set
# 查看Switch B的IPv6 IS-IS路由表。
[SwitchB] 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: Vlan200
Destination : 2001:1:: PrefixLen: 64
Flag : D/L/- Cost : 10
Next Hop : FE80::200:FF:FE0F:4 Interface: Vlan200
Destination : 2001:2:: PrefixLen: 64
Flag : R/-/- Cost : 20
Next Hop : Direct Interface: Vlan200
Destination : 2001:3:: PrefixLen: 64
Flag : R/-/- Cost : 20
Next Hop : FE80::200:FF:FE0F:4 Interface: Vlan200
Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set
# 查看Switch C的IPv6 IS-IS路由表。
[SwitchC] 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: Vlan100
Destination : 2001:2:: PrefixLen: 64
Flag : D/L/- Cost : 10
Next Hop : Direct Interface: Vlan200
Destination : 2001:3:: PrefixLen: 64
Flag : D/L/- Cost : 10
Next Hop : Direct Interface: Vlan300
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
Next Hop : Direct Interface: Vlan100
Destination : 2001:2:: PrefixLen: 64
Flag : D/L/- Cost : 10
Next Hop : Direct Interface: Vlan200
Destination : 2001:3:: PrefixLen: 64
Flag : D/L/- Cost : 10
Next Hop : Direct Interface: Vlan300
Destination : 2001:4::1 PrefixLen: 64
Flag : R/-/- Cost : 10
Next Hop : FE80::20F:E2FF:FE3E:FA3D Interface: Vlan300
Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set
# 查看Switch D的IPv6 IS-IS路由表。
[SwitchD] 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: Vlan300
Destination : 2001:2:: PrefixLen: 64
Flag : R/-/- Cost : 20
Next Hop : FE80::200:FF:FE0F:4 Interface: Vlan300
Destination : 2001:3:: PrefixLen: 64
Flag : D/L/- Cost : 10
Next Hop : Direct Interface: Vlan300
Destination : 2001:4::1 PrefixLen: 64
Flag : D/L/- Cost : 0
Next Hop : Direct Interface: Loop1
Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set
· Switch A、Switch B通過二層交換機互連,並且在雙方接口上使能BFD應用,之間運行IPv6 IS-IS,網絡層相互可達。
· 當Switch B和二層交換機之間的鏈路出現故障後,BFD能夠快速檢測並通告IPv6 IS-IS協議。
圖1-27 IPv6 IS-IS與BFD聯動配置組網圖
設備 |
接口 |
IPv6地址 |
設備 |
接口 |
IPv6地址 |
Switch A |
Vlan-int10 |
2001::1/64 |
Switch B |
Vlan-int10 |
2001::2/64 |
|
Vlan-int11 |
2001:2::1/64 |
|
Vlan-int13 |
2001:3::2/64 |
Switch C |
Vlan-int11 |
2001:2::2/64 |
|
|
|
|
Vlan-int13 |
2001:3::1/64 |
|
|
|
(1) 配置各接口的IPv6地址(略)
(2) 配置IPv6 IS-IS
# 配置Switch A。
<SwitchA> system-view
[SwitchA] isis 1
[SwitchA-isis-1] is-level level-1
[SwitchA-isis-1] network-entity 10.0000.0000.0001.00
[SwitchA-isis-1] address-family ipv6
[SwitchA-isis-1-ipv6] quit
[SwitchA-isis-1] quit
[SwitchA] interface vlan-interface 10
[SwitchA-Vlan-interface10] isis ipv6 enable 1
[SwitchA-Vlan-interface10] quit
[SwitchA] interface vlan-interface 11
[SwitchA-Vlan-interface11] isis ipv6 enable 1
[SwitchA-Vlan-interface11] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] isis 1
[SwitchB-isis-1] is-level level-1
[SwitchB-isis-1] network-entity 10.0000.0000.0002.00
[SwitchB-isis-1] address-family ipv6
[SwitchB-isis-1-ipv6] quit
[SwitchB-isis-1] quit
[SwitchB] interface vlan-interface 10
[SwitchB-Vlan-interface10] isis ipv6 enable 1
[SwitchB-Vlan-interface10] quit
[SwitchB] interface vlan-interface 13
[SwitchB-Vlan-interface13] isis ipv6 enable 1
[SwitchB-Vlan-interface13] quit
# 配置Switch C。
<SwitchC> system-view
[SwitchC] isis 1
[SwitchC-isis-1] network-entity 10.0000.0000.0003.00
[SwitchC-isis-1] address-family ipv6
[SwitchC-isis-1-ipv6] quit
[SwitchC-isis-1] quit
[SwitchC] interface vlan-interface 11
[SwitchC-Vlan-interface11] isis ipv6 enable 1
[SwitchC-Vlan-interface11] quit
[SwitchC] interface vlan-interface 13
[SwitchC-Vlan-interface13] isis ipv6 enable 1
[SwitchC-Vlan-interface13] quit
(3) 配置BFD功能
# 在Switch A上使能IPv6 IS-IS BFD功能,並配置BFD參數。
[SwitchA] bfd session init-mode active
[SwitchA] interface vlan-interface 10
[SwitchA-Vlan-interface10] isis ipv6 bfd enable
[SwitchA-Vlan-interface10] bfd min-transmit-interval 500
[SwitchA-Vlan-interface10] bfd min-receive-interval 500
[SwitchA-Vlan-interface10] bfd detect-multiplier 7
[SwitchA-Vlan-interface10] quit
# 在Switch B上使能IPv6 IS-IS BFD功能,並配置BFD參數。
[SwitchB] bfd session init-mode active
[SwitchB] interface vlan-interface 10
[SwitchB-Vlan-interface10] isis ipv6 bfd enable
[SwitchB-Vlan-interface10] bfd min-transmit-interval 500
[SwitchB-Vlan-interface10] bfd min-receive-interval 500
[SwitchB-Vlan-interface10] bfd detect-multiplier 6
[SwitchB-Vlan-interface10] quit
下麵以Switch A為例,Switch B和Switch A類似,不再贅述。
# 顯示Switch A的BFD信息。
<SwitchA> display bfd session
Total Session Num: 1 Init Mode: Active
IPv6 session working in control packet mode:
Local Discr: 1441 Remote Discr: 1450
Source IP: FE80::20F:FF:FE00:1202(Switch A接口Vlan-interface10的鏈路本地地址)
Destination IP: FE80::20F:FF:FE00:1200(Switch B接口Vlan-interface10的鏈路本地地址)
Session State: Up Interface: Vlan10
Hold Time: 2319ms
# 在Switch A上查看2001:4::0/64的路由信息,可以看出Switch A和Switch B是通過L2 Switch進行通信的。
<SwitchA> display ipv6 routing-table 2001:4::0 64
Summary count : 1
Destination: 2001:4::/64 Protocol : IS_L1
NextHop : FE80::20F:FF:FE00:1200 Preference: 15
Interface : Vlan10 Cost : 10
當Switch A和Switch B通過L2 Switch通信的鏈路出現故障時:
# 在Switch A上查看2001:4::0/64的路由信息,可以看出Switch A和Switch B已經切換到Switch C進行通信。
<SwitchA> 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 : Vlan11 Cost : 20
如圖1-28所示,Switch A、Switch B和Switch C屬於同一IS-IS區域,通過IPv6 IS-IS協議實現網絡互連。要求當Switch A和Switch B之間的鏈路出現故障時,業務可以快速切換到鏈路B上。
圖1-28 IPv6 IS-IS快速重路由配置組網圖
設備 |
接口 |
IP地址 |
設備 |
接口 |
IP地址 |
Switch A |
Vlan-int100 |
1::1/64 |
Switch B |
Vlan-int101 |
3::1/64 |
|
Vlan-int200 |
2::1/64 |
|
Vlan-int200 |
2::2/64 |
|
Loop0 |
10::1/128 |
|
Loop0 |
20::1/128 |
Switch C |
Vlan-int100 |
1::2/64 |
|
|
|
|
Vlan-int101 |
3::2/64 |
|
|
|
(1) 配置各交換機接口的IP地址和IPv6 IS-IS協議
請按照上麵組網圖配置各接口的IP地址和子網掩碼,具體配置過程略。
配置各交換機之間采用IPv6 IS-IS協議進行互連,確保Switch A、Switch B和Switch C之間能夠在網絡層互通,並且各交換機之間能夠借助IPv6 IS-IS協議實現動態路由更新。
具體配置過程略。
(2) 配置IPv6 IS-IS快速重路由
IPv6 IS-IS支持快速重路由的配置方法有兩種,一種是通過LFA算法選取備份下一跳,另一種是在路由策略中指定備份下一跳,兩種方法任選一種。
方法一:使能Switch A和Switch B的IPv6 IS-IS快速重路由功能(通過LFA算法選取備份下一跳信息)
# 配置Switch A。
<SwitchA> system-view
[SwitchA] isis 1
[SwitchA-isis-1] address-family ipv6
[SwitchA-isis-1-ipv6] fast-reroute lfa
# 配置Switch B。
<SwitchB> system-view
[SwitchB] isis 1
[SwitchB-isis-1] address-family ipv6
[SwitchB-isis-1-ipv6] fast-reroute lfa
方法二:使能Switch A和Switch B的IPv6 IS-IS快速重路由功能(通過路由策略指定備份下一跳)
# 配置Switch A。
<SwitchA> system-view
[SwitchA] ipv6 prefix-list abc index 10 permit 20::1 128
[SwitchA] route-policy frr permit node 10
[SwitchA-route-policy-frr-10] if-match ipv6 address prefix-list abc
[SwitchA-route-policy-frr-10] apply ipv6 fast-reroute backup-interface vlan-interface 100 backup-nexthop 1::2
[SwitchA-route-policy-frr-10] quit
[SwitchA] isis 1
[SwitchA-isis-1] address-family ipv6
[SwitchA-isis-1-ipv6] fast-reroute route-policy frr
[SwitchA-isis-1-ipv6] quit
[SwitchA-isis-1] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] ipv6 prefix-list abc index 10 permit 10::1 128
[SwitchB] route-policy frr permit node 10
[SwitchB-route-policy-frr-10] if-match ipv6 address prefix-list abc
[SwitchB-route-policy-frr-10] apply ipv6 fast-reroute backup-interface vlan-interface 101 backup-nexthop 3::2
[SwitchB-route-policy-frr-10] quit
[SwitchB] isis 1
[SwitchB-isis-1] address-family ipv6
[SwitchB-isis-1-ipv6] fast-reroute route-policy frr
[SwitchB-isis-1-ipv6] quit
[SwitchB-isis-1] quit
# 在Switch A上查看20::1/128的路由信息,可以看到備份下一跳信息。
[SwitchA] 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
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 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 BkSRLabel: NULL
SIDIndex: NULL InLabel: NULL
Tunnel ID: Invalid Interface: Vlan-interface200
BkTunnel ID: Invalid BkInterface: Vlan-interface100
FtnIndex: 0x0 TrafficIndex: N/A
Connector: N/A PathID: 0x0
LinkCost: 0 MicroSegID: 0
RealFIRType: Normal RealThres: 0
# 在Switch B上查看10::1/128的路由信息,可以看到備份下一跳信息。
[SwitchB] 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
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 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 BkSRLabel: NULL
SIDIndex: NULL InLabel: NULL
Tunnel ID: Invalid Interface: Vlan-interface200
BkTunnel ID: Invalid BkInterface: Vlan-interface101
FtnIndex: 0x0 TrafficIndex: N/A
Connector: N/A PathID: 0x0
LinkCost: 0 MicroSegID: 0
RealFIRType: Normal RealThres: 0
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!