05-IS-IS配置
本章節下載: 05-IS-IS配置 (850.52 KB)
IS-IS(Intermediate System-to-Intermediate System,中間係統到中間係統)最初是國際標準化組織(International Organization for Standardization,ISO)為它的無連接網絡協議(ConnectionLess Network Protocol,CLNP)設計的一種動態路由協議。
為了提供對IP路由支持,IETF(Internet Engineering Task Force,因特網工程任務組)在RFC 1195中對IS-IS進行了擴充和修改,使它能夠同時應用在TCP/IP和OSI環境中,稱為集成化IS-IS(Integrated IS-IS或Dual IS-IS)。
IS-IS屬於內部網關協議(Interior Gateway Protocol,IGP),用於自治係統內部。IS-IS是一種鏈路狀態協議,使用最短路徑優先(Shortest Path First,SPF)算法進行路由計算。
· 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指示服務類型。
IDP和DSP的長度都是可變的,NSAP總長最多是20個字節,最少8個字節。
圖1-1 IS-IS協議的地址結構示意圖
(2) 區域地址
IDP和DSP中的HO-DSP一起,既能夠標識路由域,也能夠標識路由域中的區域,因此,它們一起被稱為區域地址(Area Address)。兩個不同的路由域中不允許有相同的區域地址。
一般情況下,一台路由器隻需要配置一個區域地址,且同一區域中所有節點的區域地址都要相同。為了支持區域的平滑合並、分割及轉換,一台路由器最多可配置3個區域地址。
(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的指定可以有不同的方法,但要保證能夠唯一標識主機或路由器。
(4) SEL
SEL(NSAP Selector,有時也寫成N-SEL)的作用類似IP中的“協議標識符”,不同的傳輸協議對應不同的SEL。在IP中,SEL均為00。
(5) 路由方式
由於這種地址結構明確的定義了區域,Level-1路由器很容易識別出發往它所在的區域之外的報文,這些報文是需要轉交給Level-1-2路由器的。
· Level-1路由器利用System ID進行區域內的路由,如果發現報文的目的地址不屬於自己所在的區域,就將報文轉發給最近的Level-1-2路由器。
· Level-2路由器根據區域地址進行區域間的路由。
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路由器的中間。
(1) Level-1路由器
Level-1路由器負責區域內的路由,它隻與屬於同一區域的Level-1和Level-1-2路由器形成鄰居關係,維護一個Level-1的LSDB,該LSDB包含本區域的路由信息,到區域外的報文轉發給最近的Level-1-2路由器。
(2) Level-2路由器
Level-2路由器負責區域間的路由,可以與同一區域或者其它區域的Level-2和Level-1-2路由器形成鄰居關係,維護一個Level-2的LSDB,該LSDB包含區域間的路由信息。所有Level-2路由器和Level-1-2路由器組成路由域的骨幹網,負責在不同區域間通信,骨幹網必須是物理連續的。
(3) Level-1-2路由器
同時屬於Level-1和Level-2的路由器稱為Level-1-2路由器,可以與同一區域的Level-1和Level-1-2路由器形成Level-1鄰居關係,也可以與同一區域或者其他區域的Level-2和Level-1-2路由器形成Level-2的鄰居關係。Level-1路由器必須通過Level-1-2路由器才能連接至其他區域。Level-1-2路由器維護兩個LSDB,Level-1的LSDB用於區域內路由,Level-2的LSDB用於區域間路由。
· 屬於不同區域的Level-1路由器不能形成鄰居關係。
· Level-2路由器是否形成鄰居關係則與區域無關。
圖1-2為一個運行IS-IS協議的網絡,其中Area 1是骨幹區域,該區域中的所有路由器均是Level-2路由器。另外4個區域為非骨幹區域,它們都通過Level-1-2路由器與骨幹路由器相連。
圖1-2 IS-IS拓撲結構圖之一
圖1-3是IS-IS的另外一種拓撲結構圖。其中Level-1-2路由器不僅僅用來連接Level-1和Level-2路由器,而且還與其它Level-2路由器一起構成了IS-IS的骨幹網。在這個拓撲中,並沒有規定哪個區域是骨幹區域。所有Level-2路由器和Level-1-2路由器構成了IS-IS的骨幹網,它們可以屬於不同的區域,但必須是物理連續的。
圖1-3 IS-IS拓撲結構圖之二
IS-IS的骨幹網(Backbone)指的不是一個特定的區域。
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-2區域相連,不同的Level-1區域之間並不相連。
Level-1區域內的路由信息通過Level-1-2路由器發布到Level-2區域,因此,Level-2路由器知道整個IS-IS路由域的路由信息。但是,在缺省情況下,Level-1-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格式
所有的PDU都有相同的通用報頭格式,如圖1-6所示。
圖1-6 PDU頭格式
主要字段的解釋如下:
· Intradomain Routing Protocol Discriminator(域內路由協議鑒別符):設置為0x83。
· Length Indicator(長度標識符):PDU頭部的長度(包括通用報頭和專用報頭),以字節為單位。
· Version/Protocol ID Extension(版本/協議標識擴展):設置為1(0x01)。
· ID Length(標識長度):NSAP地址和NET的ID長度。
· R(Reserved,保留):設置為0。
· PDU Type(PDU類型):詳細信息請參考表1-1。
· Version(版本):設置為1(0x01)。
· Maximum Area Address(最大區域地址數):支持的最大區域個數。
表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。
它們的報文格式有所不同。廣播網中的Hello報文格式如圖1-7所示(淺藍色部分是通用報文頭)。
主要字段的解釋如下:
· Reserved/Circuit Type:高位的6比特保留,值為0。低位的2比特表示路由器的類型(00保留,01表示L1,10表示L2,11表示L1/2)。
· Source ID:發送Hello報文的路由器的System ID。
· Holding Time:保持時間。在此時間內如果沒有收到鄰居發來的Hello報文,則中止已建立的鄰居關係。
· PDU Length:PDU的總長度,以字節為單位。
· Priority:選舉DIS的優先級。
· LAN ID:包括System ID和一字節的偽節點ID。
點到點網絡中的Hello報文格式如圖1-8所示(淺藍色部分是通用報文頭)。
從圖中可以看出,P2P IIH中的多數字段與LAN IIH相同。不同的是沒有Priority和LAN ID字段,而多了一個Local Circuit ID字段,表示本地鏈路ID。
LSP用於交換鏈路狀態信息。LSP分為兩種:Level-1 LSP和Level-2 LSP。Level-1路由器傳送Level-1 LSP,Level-2路由器傳送Level-2 LSP,Level-1-2路由器則可傳送以上兩種LSP。
兩類LSP有相同的報文格式,如圖1-9所示(淺藍色部分是通用報文頭)。
主要字段的解釋如下:
· PDU Length:PDU的總長度,以字節為單位。
· Remaining Lifetime:LSP的存活時間,以秒為單位。
· LSP ID:由三部分組成,System ID、偽節點ID(一字節)和LSP的分片號(一字節)。
· Sequence Number:LSP的序列號。
· Checksum:LSP的校驗和。
· P(Partition Repair):僅與L2 LSP有關,表示路由器是否支持自動修複區域分割。
· ATT(Attachment):由L1/L2路由器產生,但僅與L1 LSP有關,表示產生此LSP的路由器(L1/L2路由器)與多個區域相連接。
· OL(LSDB Overload):過載標誌位。表示本路由器因內存不足而導致LSDB不完整。其它路由器在得知這一信息後,就不會再利用這台路由器轉發需要經過它傳送的數據流,但到此路由器直連地址的報文仍然可以被轉發。如圖1-10所示,假設正常情況下Router A到Router C的報文都是經過Router B轉發,但如果Router B的OL位置1,則Router A會認為Router B的路由不完整,從而將報文通過Router D、Router E轉發給Router C,但到Router B直連地址的報文不受影響。
· IS Type:生成LSP的路由器的類型。
時序報文SNP(Sequence Number PDUs)用於確認鄰居之間最新接收的LSP,作用類似於確認(Acknowledge)報文,但更有效。
SNP包括CSNP(Complete SNP,全時序報文)和PSNP(Partial SNP,部分時序報文),進一步又可分為Level-1 CSNP、Level-2 CSNP、Level-1 PSNP和Level-2 PSNP。
CSNP包括LSDB中所有LSP的摘要信息,從而可以在相鄰路由器間保持LSDB的同步。在廣播網絡上,CSNP由DIS定期發送(缺省的發送周期為10秒);在點到點鏈路上,CSNP在鄰居關係建立時會發送,隻發送一次。
CSNP的報文格式如圖1-11所示(淺藍色部分是通用報文頭)。
PSNP隻列舉最近收到的一個或多個LSP的序號,它能夠一次對多個LSP進行確認。當發現LSDB不同步時,也用PSNP來請求鄰居發送新的LSP。
PSNP的報文格式如圖1-12所示:
PDU中的變長字段部分是多個CLV(Code-Length-Value)三元組。其格式如圖1-13所示:
不同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 |
其中,Code值從1到10的CLV在ISO 10589中定義(有2類未在上表中列出),其它幾種CLV在RFC 1195中定義。
為了方便管理,提高控製效率,IS-IS支持多進程和多實例特性。多進程允許為一個指定的IS-IS進程關聯一組接口,從而保證該進程進行的所有協議操作都僅限於這一組接口。這樣,就可以實現一台路由器有多個IS-IS協議進程,每個進程負責唯一的一組接口。
對於支持VPN的路由器,每個IS-IS進程都與一個指定的VPN實例相關聯。這樣,所有附加到該進程的接口都應與該進程相關聯的VPN實例相關聯。
IS-IS可以將需要備份的數據從主用主控板備份到備用主控板。當主用主控板出現故障時,備用主控板都會接替工作,從而保證IS-IS不受影響,保持正常工作。
IS-IS支持兩種熱備份方式:
· NSR(Non-stop Routing,不間斷路由):備份所有IS-IS數據,主備倒換後,IS-IS可以立即工作,保持平穩運行。
· GR(Graceful Restart,平滑重啟):隻備份IS-IS配置信息,發生主備倒換時,IS-IS進行GR,重新向鄰居發送鄰接請求,同步LSDB數據庫。
GR是一種在協議重啟或主備倒換時保證轉發業務不中斷的機製。GR有兩個角色:
· GR Restarter:發生協議重啟或主備倒換事件且具有GR能力的設備。
· GR Helper:和GR Restarter具有鄰居關係,協助完成GR流程的設備。
基於IS-IS的GR Restarter進行協議重啟後,為了與其IS-IS鄰居重新同步鏈路狀態數據庫,它必須完成下列兩項任務:
· 在不改變鄰接關係的前提下,重新獲取網絡中的有效IS-IS鄰居信息;
· 重新獲取網絡鏈路狀態數據庫的內容。
IS-IS協議重啟完畢後,GR Restarter會立即向鄰接的GR Helper發送一個IS-IS GR信號。這樣,IS-IS鄰居就不會複位與其的鄰居關係。在收到其IS-IS鄰居的響應後,GR Restarter會重新恢複與其的鄰居關係列表。
鄰居關係重新建立後,GR Restarter與其所有具備GR感知能力的IS-IS鄰居之間同步數據庫,並交換路由信息。交換完成後,GR Restarter根據新的路由轉發信息更新路由表和轉發表,刪除失效的路由,完成IS-IS協議收斂。
NSR(Non-stop Routing,不間斷路由)是為了解決GR特性的一些缺陷和使用場景限製而實現的一種新特性。NSR將IS-IS鏈路狀態信息從主用主控板備份到備用主控板,在發生主備倒換時不需要周邊設備配合就可以完成鏈路狀態的恢複和路由的重新生成。
IS-IS TE(Traffic Engineering,流量工程)支持建立和維護TE的LSP(Label Switched Path,標簽交換路徑)。
MPLS在構建CR LSP(Constraint-based Routed LSP,基於約束路由的LSP)時,需要了解本區域中所有鏈路的流量屬性信息。它可以通過IS-IS來獲取鏈路的流量工程信息。
IS-IS TE的詳細配置請參見“MPLS配置指導”中的“MPLS TE”。
管理標記簡化了對路由信息的管理,該標記用來攜帶關於IP地址前綴的管理信息,利用它可以控製對各種外部路由協議的引入,以及承載BGP的標準或擴展團體屬性。
IS-IS通過泛洪LSP來宣告鏈路狀態信息,由於一個LSP能夠承載的信息量有限,IS-IS將對LSP進行分片。每個LSP分片由產生該LSP的結點或偽結點的SystemID、PseudnodeID(普通LSP為0,Pseudonode LSP為非0)、LSPNumber(LSP分片號)組合起來唯一標識,由於LSPNumber字段的長度是1字節,因此,IS-IS路由器可產生的分片數最大為256,限製了IS-IS路由器可以發布的鏈路信息量。
IS-IS LSP分片擴展特性可使IS-IS路由器生成更多的LSP分片,通過為路由器配置附加的虛擬係統、每個虛擬係統都可生成256個LSP分片(最多可配置50個虛擬係統),使得IS-IS路由器可最多生成13056個LSP分片。
(1) 常用術語
· 初始係統(Originating System):實際運行IS-IS協議的路由器。使能IS-IS LSP分片擴展功能後,可以為路由器配置附加的虛擬係統,“Originating System”指的是原來運行的、“真正”的IS-IS進程。
· 係統ID(System ID):初始係統的係統ID。
· 附加係統ID(Additional System ID):使能IS-IS LSP分片擴展功能後,為IS-IS路由器配置的附加的虛擬SystemID。每個附加係統ID都可以生成256個額外擴展的LSP分片。附加係統ID和係統ID一樣,在整個路由域中必須唯一。
· 虛擬係統(Virtual System):由附加係統ID標識的係統,用來生成擴展LSP分片。
· 原始LSP(Original LSP):由初始係統生成的LSP,在其LSP ID中指定的System ID為初始係統的係統ID。
· 擴展LSP(Extended LSP):由虛擬係統生成的LSP,在其LSP ID中指定的System ID為附加係統ID。
通過配置附加係統ID,IS-IS路由器可以在擴展分片LSP中宣告更多的鏈路狀態信息,可以把虛擬係統看作一個虛擬的路由器,擴展分片LSP就是由附加係統ID標識的虛擬係統發布的。
(2) 操作模式
IS-IS路由器運行LSP分片擴展特性的操作模式有兩種:
· Mode-1:當網絡中的部分路由器不支持LSP分片擴展特性時,使用工作模式1。在該模式下,初始係統與每個虛擬係統都建立鄰居關係,且初始係統到虛擬係統的鏈路開銷為0,因此,虛擬係統就好像網絡中與初始係統相連的路由器,但隻能通過初始係統才能到達虛擬係統,因此,不支持分片擴展特性的IS-IS路由器收到擴展分片LSP時無需做任何修改也能夠正常工作,但是對通過虛擬係統發布的擴展LSP分片中的鏈路狀態信息有所限製。
· Mode-2:當網絡中所有路由器都支持LSP分片擴展特性時,推薦使用工作模式2。在該模式下,網絡中所有IS-IS路由器都知道虛擬係統生成的LSP屬於的初始係統,對虛擬係統發布的LSP擴展分片的鏈路狀態信息沒有限製。
LSP分片擴展特性的操作模式基於區域和路由層次配置,mode-1可以向前兼容,支持分片擴展特性的路由器能夠與不支持分片擴展特性的路由器協同工作;mode-2要求處在同一區域且Level相同的路由器都支持分片擴展特性。
動態主機名交換機製是為了方便對IS-IS網絡的維護和管理而引入的,它為IS-IS路由器提供了一種從主機名到System ID映射的服務。這個動態的主機名信息在LSP中以一個動態主機名CLV的形式發布。
這個機製同時還提供將主機名與廣播網中的DIS相關聯的服務,並將此信息通過偽節點的LSP以動態主機名CLV的形式發布出去。
在維護和管理中,使用主機名比使用System ID會更直觀,也更容易記憶。配置此功能後,當在路由器上使用display命令顯示IS-IS相關信息時,看到的是路由器的主機名,而不再是System ID。
關於BFD的介紹和基本功能配置,請參見“可靠性配置指導”中的“BFD”。
BFD(Bidirectional Forwarding Detection,雙向轉發檢測)能夠為IS-IS鄰居之間的鏈路提供快速檢測功能。當鄰居之間的鏈路出現故障時,加快IS-IS協議的收斂速度。
與IS-IS相關的協議規範有:
· ISO 10589:ISO IS-IS Routing Protocol
· ISO 9542:ES-IS Routing Protocol
· ISO 8348:Ad2 Network Services Access Points
· 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 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 IS-IS
· RFC 3786:Extending the Number of IS-IS LSP Fragments Beyond the 256 Limit
· RFC 3787:Recommendations for Interoperable IP Networks using IS-IS
· RFC 3784:IS-IS extensions for Traffic Engineering
· RFC 3847:Restart signaling for IS-IS
表1-3 IS-IS配置任務簡介
配置任務 |
說明 |
詳細配置 |
|
配置IS-IS基本功能 |
使能IS-IS功能 |
必選 |
|
配置路由器類型和接口的鏈路鄰接關係類型 |
可選 |
||
配置接口網絡類型 |
可選 |
||
配置IS-IS路由信息控製 |
配置IS-IS鏈路度量值 |
可選 |
|
配置IS-IS路由優先級 |
可選 |
||
配置IS-IS最大等價路由條數 |
可選 |
||
配置IS-IS路由聚合 |
可選 |
||
配置IS-IS發布缺省路由 |
可選 |
||
配置IS-IS引入外部路由 |
可選 |
||
配置IS-IS路由過濾 |
可選 |
||
配置IS-IS路由滲透 |
可選 |
||
調整和優化IS-IS網絡 |
配置Hello/CSNP報文發送時間間隔 |
可選 |
|
配置Hello報文失效數目 |
可選 |
||
配置DIS優先級 |
可選 |
||
禁止接口發送和接收IS-IS報文 |
可選 |
||
配置在PPP接口上取消建立鄰接關係必須在同一網段的限製 |
可選 |
||
配置接口發送小型Hello報文 |
可選 |
||
配置LSP參數 |
可選 |
||
配置SPF參數 |
可選 |
||
配置優先級參數 |
可選 |
||
配置LSDB過載標誌位 |
可選 |
||
配置IS-IS主機名映射 |
可選 |
||
配置鄰接狀態輸出 |
可選 |
||
提高IS-IS網絡的安全性 |
配置鄰居關係驗證 |
可選 |
|
配置區域驗證 |
可選 |
||
配置路由域驗證 |
可選 |
||
配置IS-IS GR |
可選 |
||
配置IS-IS NSR |
可選 |
||
配置IS-IS快速重路由 |
可選 |
||
使能IS-IS的Trap功能 |
可選 |
||
配置IS-IS和MIB綁定 |
可選 |
||
配置IS-IS與BFD聯動 |
可選 |
在配置IS-IS基本功能之前,需完成以下任務:
· 配置鏈路層協議
· 配置接口的網絡層地址,使相鄰節點網絡層可達
表1-4 使能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進程與其關聯 |
建議用戶在配置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-5 配置路由器類型和接口的鏈路鄰接關係類型
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
啟動IS-IS路由進程,進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置路由器類型 |
is-level { level-1 | level-1-2 | level-2 } |
可選 缺省情況下,IS-IS路由器的類型為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-6 配置接口網絡類型
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置接口的網絡類型為P2P |
isis circuit-type p2p |
可選 缺省情況下,路由器接口網絡類型根據物理接口決定,交換機VLAN接口網絡類型為Broadcast |
僅當接口的網絡類型為廣播網,且隻有兩台路由器接入該廣播網時才需要進行該項配置,並且兩台路由器都要進行此項配置。
在配置IS-IS路由信息控製之前,需完成以下任務:
· 配置接口的網絡層地址,使相鄰節點網絡層可達
· 使能IS-IS功能
IS-IS有三種方式來配置接口的鏈路度量值,按照選擇順序依次為:
· 在接口視圖下為指定接口配置的鏈路度量值。
· 在係統視圖下全局配置的鏈路度量值,該配置將對該IS-IS進程關聯的接口同時生效。
· 自動計算度量值:將根據帶寬參考值自動計算接口的鏈路度量值。當開銷值的類型為wide或wide-compatible時,可以根據公式“開銷=(參考值÷帶寬)×10”計算接口的鏈路度量值。當開銷值類型為其他類型時,具體情況如下:接口帶寬≤10Mbps時,值為60;接口帶寬≤100Mbps時,值為50;接口帶寬≤155Mbps時,值為40;接口帶寬≤622Mbps時,值為30;接口帶寬≤2500Mbps時,值為20;接口帶寬>2500Mbps時,值為10。
如果沒有采用上述三種方式中的任一種進行度量值的配置,接口的鏈路度量值將取係統設置的缺省值10。
表1-7 接口配置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 [ ipv6-unicast ] cost value [ level-1 | level-2 ] |
必選 缺省情況下,沒有配置IS-IS接口的鏈路度量值 |
表1-8 全局配置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 value [ level-1 | level-2 ] |
必選 缺省情況下,沒有全局配置IS-IS的鏈路度量值 |
表1-9 配置IS-IS自動計算鏈路度量值
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置IS-IS開銷值的類型 |
cost-style { wide | wide-compatible } |
必選 缺省情況下,IS-IS開銷值的類型為narrow |
使能自動計算接口鏈路度量值功能 |
auto-cost enable |
必選 缺省情況下,自動計算接口鏈路度量值功能處於關閉狀態 |
配置IS-IS自動計算鏈路度量值時依據的帶寬參考值 |
bandwidth-reference value |
可選 缺省情況下,帶寬參考值為100Mbps |
一台路由器可同時運行多個路由協議,當多個路由協議都發現到同一目的地的路由時,將選用高優先級路由協議所發現的路由。以下配置用來為IS-IS路由設置優先級,使用路由策略可以為特定的路由設置特定的優先級,路由策略的相關知識請參見“三層技術-IP路由配置指導”中的“路由策略”。
表1-10 配置IS-IS路由優先級
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置IS-IS路由優先級 |
preference { route-policy route-policy-name | preference } * |
必選 缺省情況下,IS-IS路由優先級為15 |
如果到一個目的地有幾條開銷相同的路徑,可以通過等價路由負載分擔來提高鏈路利用率。該配置用以設置IS-IS協議的最大等價路由條數。
表1-11 配置IS-IS最大等價路由條數
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置在負載分擔方式下IS-IS最大等價路由條數 |
maximum load-balancing number |
必選 缺省情況下,在負載分擔方式下IS-IS最大等價路由條數和係統工作模式相關。係統工作模式為標準模式、增強L2模式、增強L3模式或高級模式時,最大等價路由條數為32;當係統工作模式為支持混插的標準模式、支持混插的增強L2模式、支持混插的增強L3模式或支持混插的高級模式時,最大等價路由條數為16。關於係統工作模式的詳細介紹,請參見“基礎配置指導”中的“設備管理” |
通過配置路由聚合,可以減小路由表規模,還可以減少本路由器生成的LSP報文大小和LSDB的規模。其中,被聚合的路由可以是IS-IS協議發現的路由,也可以是引入的外部路由。
表1-12 配置IS-IS路由聚合
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置聚合路由 |
summary ip-address { mask | mask-length } [ avoid-feedback | generate_null0_route | tag tag | [ level-1 | level-1-2 | level-2 ] ] * |
必選 缺省情況下,沒有對路由進行聚合 |
· 聚合後路由的開銷值取所有被聚合路由中最小的開銷值。
· 路由器隻對本地生成的LSP中的路由進行聚合。
對於運行IS-IS的路由器來說,無法引入缺省路由,因此也無法通過將目的地為0.0.0.0/0的路徑信息(即缺省路由)通過LSP發布給其它路由器,可以通過配置發布一條缺省路由,將目的地為0.0.0.0/0的路徑信息通過LSP發布出去,其它同級別的路由器中將在自己的路由表中新增一條缺省路由。
表1-13 配置IS-IS發布缺省路由
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置IS-IS發布缺省路由 |
default-route-advertise [ route-policy route-policy-name | [ level-1 | level-1-2 | level-2 ] ] * |
必選 缺省情況下,此功能關閉 |
該配置產生的缺省路由隻被發布到同級別的路由器。通過使用路由策略,可以強製IS-IS隻在路由表中有匹配的路由項時才生成缺省路由。
IS-IS將其它路由協議發現的路由當作外部路由處理。在引入其它協議路由時,可指定引入路由的缺省開銷。還可以通過配置對引入路由進行過濾。
在實際組網環境中,每台路由器的性能即處理能力不同,如果在處理能力強的高端設備上引入大量外部路由,那麼可能會對網絡上其它低端設備的性能造成較大的衝擊,網絡管理員可以通過配置支持的最大引入路由條數,限製引入外部路由的條數,從而最終限製發布路由的數量。
表1-14 配置IS-IS引入外部路由
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
從其它路由協議或其它IS-IS進程引入路由信息 |
import-route protocol [ process-id | all-processes | allow-ibgp ] [ cost cost | cost-type { external | internal } | [ 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 |
可選 |
隻能引入路由表中狀態為active的路由,是否為active狀態可以通過display ip routing-table protocol命令來查看。
路由過濾就是通過對ACL、IP地址前綴列表或路由策略等規則的引用對路由信息的生成進行更加嚴格的控製,包括過濾通過接收到的LSP計算出來的路由信息和過濾從其它路由協議引入的路由信息。
運行IS-IS的路由器會把從鄰居收到的LSP保存到自己維護的鏈路狀態數據庫中,並使用SPF算法計算出以自己為根的最短路徑樹,並把計算好的路由信息加入到IS-IS路由表中。
通過ACL、IP地址前綴列表或路由策略可以對計算出來的將要加入到IS-IS路由表中的路由進行過濾,滿足條件則加入到IS-IS路由表中,否則將不能加入到IS-IS路由表中。
表1-15 過濾通過接收到的LSP計算出來的路由信息
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
過濾通過接收到的LSP計算出來的路由信息 |
filter-policy { acl-number | ip-prefix ip-prefix-name | route-policy route-policy-name } import |
必選 缺省情況下,IS-IS不對通過接收到的LSP 計算出來的路由信息進行過濾 |
IS-IS可以從其它路由協議或其它IS-IS進程引入路由信息,把它直接加入到IS-IS的路由表中並通過LSP發布出去。
通過ACL、IP地址前綴列表或路由策略可以對引入的路由信息進行過濾,滿足條件加入到IS-IS路由表中,否則將不能加入到IS-IS路由表中,沒有加入IS-IS路由表的路由將不會通過LSP發布出去。
表1-16 過濾引入路由信息
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
過濾引入路由信息 |
filter-policy { acl-number | ip-prefix ip-prefix-name | route-policy route-policy-name } export [ protocol [ process-id ] ] |
必選 缺省情況下,IS-IS不對引入的路由信息進行過濾 |
通過IS-IS路由滲透功能,Level-1-2路由器可以將它所知道的其它Level-1區域路由信息和Level-2區域路由信息發布到Level-1路由器。
表1-17 配置IS-IS路由滲透
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
使能IS-IS路由滲透 |
import-route isis level-2 into level-1 [ filter-policy { acl-number | ip-prefix ip-prefix-name | route-policy route-policy-name } | tag tag ] * |
必選 缺省情況下,Level-2區域的路由信息不向Level-1區域發布 |
將Level-2區域的路由信息引入到Level-1區域時,需要注意:
· 如果指定了過濾策略,則隻有通過過濾的路由才能夠被發布到Level-1區域中。
· 如果要通過路由策略對從Level-2區域引入到Level-1區域的路由信息進行過濾,必須在import-route isis level-2 into level-1命令中同時指定要應用的路由策略,否則路由過濾將不會生效;其它路由策略,如在接收或引入路由時指定的路由策略對路由滲透無效。
在配置IS-IS調整和優化之前,需完成以下任務:
· 配置接口的網絡層地址,使相鄰節點網絡層可達
表1-18 配置Hello/CSNP報文發送時間間隔
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置Hello報文的發送時間間隔 |
isis timer hello seconds |
可選 缺省情況下,Hello報文的發送時間間隔為10秒 |
配置DIS在廣播網絡上發送CSNP報文的時間間隔 |
isis timer csnp seconds [ level-1 | level-2 ] |
可選 缺省情況下,CSNP報文的發送時間間隔為10秒 |
DIS發送Hello報文的時間間隔是isis timer hello設置的時間的1/3。
當路由器在抑製時間內沒有收到來自鄰居的Hello報文時將宣告鄰居失效,抑製時間等於Hello報文失效數目與Hello報文發送時間間隔的乘積,通過設置Hello報文失效數目和Hello報文的發送時間間隔,可以調整抑製時間,即路由器要花多長時間能夠監測到鏈路已經失效並重新進行路由計算。
表1-19 配置Hello報文失效數目
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置Hello報文失效數目 |
isis timer holding-multiplier value [ level-1 | level-2 ] |
可選 缺省情況下,Hello報文失效數目為3 |
在廣播網絡中,IS-IS需要在所有的路由器中選舉一個路由器作為DIS。
對於IS-IS,Level-1和Level-2的DIS是分別選舉的,可以為不同級別的DIS選舉設置不同的優先級。優先級數值越高,被選中的可能性就越大。如果所有路由器的DIS優先級相同,將會選擇MAC地址最大的路由器作為DIS。
表1-20 配置DIS優先級
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置接口的DIS優先級 |
isis dis-priority value [ level-1 | level-2 ] |
可選 缺省情況下,接口的DIS優先級為64 |
通過禁止接口發送和接收IS-IS報文,禁止了該接口與相鄰路由器建立鄰居關係,但仍然可以把該接口直連網絡的路由信息放在LSP中從其它接口宣告出去。由於不用建立鄰居關係,可以節省帶寬和路由器處理時間,同時,其它路由器也可以知道到達該接口直連網絡的路由信息。
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
禁止接口發送和接收IS-IS報文 |
isis silent |
必選 缺省情況下,接口既發送也接收IS-IS報文 |
當網絡類型為點到點鏈路時,IS-IS將檢查Hello報文的源地址是否與接收Hello報文的接口在同一網段,如果不在同一網段,將丟棄接收到的Hello報文,無法與對端路由器建立鄰接關係。
當接口封裝PPP協議時,對端的IP地址與當前接口可以不在同一網段,在這種情況下,可以配置取消與對端路由器建立鄰接關係必須在同一網段的限製,即在PPP協議接口上接收Hello報文時,如果對端的IP地址與當前接口不在同一網段也可以建立鄰居關係。
表1-22 配置在PPP接口上取消建立鄰接關係必須在同一網段的限製
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
interface interface-type interface-number |
- |
|
配置在PPP接口上取消建立鄰接關係必須在同一網段的限製 |
isis peer-ip-ignore |
必選 該命令隻能在協議類型為PPP的接口上配置 缺省情況下,在協議類型為PPP的接口接收ISIS Hello報文時檢查對端的IP地址,即要求雙方必須在同一網段 |
IS-IS協議報文直接封裝在鏈路層報文頭後麵,無法實現協議報文在IP層的自動分片。因此,運行IS-IS的路由器與對端路由器建立鄰居關係時,會發送達到鏈路MTU大小的Hello報文,雙方進行MTU大小的通信協商,來保證建立鄰居雙方接口MTU的一致性,從而避免雙方MTU大小不一致導致較小的PDU可以通過,但是較大的PDU無法通過。
當鄰居路由器雙方MTU大小一樣的時候,為了避免發送過大的Hello報文浪費帶寬,可以配置接口發送不加入填充CLV的小型Hello報文。
表1-23 配置接口發送小型Hello報文
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置接口發送不加入填充CLV的小型Hello報文 |
isis small-hello |
必選 缺省情況下,接口發送標準Hello報文 |
(1) 配置LSP最大生存時間
每一個LSP都包含一個最大生存時間,當LSP駐留在LSDB中時,隨著時間的推移,每一個LSP的最大生存時間將逐漸遞減至0,當LSP的最大生存時間為0時,IS-IS將刪掉這個過期的LSP。用戶可根據網絡規模對LSP的最大生存時間進行調整。
表1-24 配置LSP最大生存時間
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置LSP最大生存時間 |
timer lsp-max-age seconds |
可選 缺省情況下,LSP最大生存時間為1200秒 |
(2) 配置LSP生成時間間隔
每一個LSP都有一個最大生存時間,每個LSP都會隨著時間的推移而被逐漸老化,因此每個路由器必須定時刷新自己生成的LSP,以防止LSP的最大生存時間減小至0;並通過定時刷新LSP以使整個區域中的LSP保持同步。用戶可對LSP的刷新周期進行配置,提高LSP的刷新頻率可以加快網絡收斂速度,但是將占用更多的帶寬。
除了定時刷新可以重新生成LSP外,當網絡拓撲發生變化,如鄰居路由器up或down,接口Metric值、System ID或區域地址發生變化等,將觸發路由器重新生成LSP。為了防止網絡拓撲頻繁變化而導致LSP頻繁重新生成,用戶可配置LSP生成時間間隔,以抑製網絡變化頻繁導致占用過多的帶寬資源和路由器資源。
表1-25 配置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 [ initial-interval [ second-wait-interval ] ] [ level-1 | level-2 ] |
可選 缺省情況下,LSP生成時間間隔為2秒 |
(3) 配置LSP發送時間間隔
當LSDB的內容發生變化時,IS-IS將把發生變化的LSP擴散出去,用戶可以對LSP的最小發送時間間隔進行調節。
在點到點鏈路上,發送的LSP需要得到對端的應答,否則將在指定的時間間隔內重新發送該LSP,重傳時間間隔決定了當一個LSP在P2P鏈路上丟失時它被重傳需要等待的時間。
表1-26 配置LSP發送時間間隔
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置發送LSP的最小時間間隔以及一次可以最多發送的LSP的數目 |
isis timer lsp time [ count count ] |
可選 缺省情況下,LSP的發送最小時間間隔為33毫秒,一次可以最多發送的LSP的數目為5 |
配置LSP在在點到點鏈路上的重傳時間間隔 |
isis timer retransmit seconds |
可選 缺省情況下,LSP報文在在點到點鏈路上的重傳間隔為5秒 |
請合理配置LSP發送時間間隔,當存在大量IS-IS接口或大量路由時,會發送大量的LSP報文,導致LSP風暴的出現。
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-27 配置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-28 配置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快速擴散功能 |
表1-29 配置LSP分片擴展功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
使能IS-IS進程的LSP分片擴展功能,並配置LSP分片擴展特性的工作模式 |
lsp-fragments-extend [ [ level-1 | level-1-2 | level-2 ] | [ mode-1 | mode-2 ] ] * |
必選 缺省情況下,LSP分片擴展功能處於關閉狀態 |
配置IS-IS進程的虛擬係統ID |
virtual-system virtual-system-id |
必選 缺省情況下,沒有配置IS-IS進程的虛擬係統ID |
使能LSP分片擴展功能時需要注意:
· IS-IS進程使能分片擴展功能後,使能該IS-IS進程的所有接口的MTU不能小於512,否則LSP分片擴展功能將不會生效。
· 為了使路由器生成擴展LSP分片,應至少配置一個虛擬System ID。一個IS-IS進程最多可配置50個虛擬System ID。
在NBMA網絡中,如果網絡聯通程度較高、網絡中存在多條點到點鏈路時,可能會由於LSP的重複擴散而導致帶寬的浪費。為了避免這種情況的發生,可以將一些接口配置屬於一個Mesh-Group,也可以配置接口阻塞。
· 將設備的幾個接口配置屬於一個Mesh-Group後,如果從其中的一個接口接收到一個新的LSP,IS-IS隻把該LSP擴散到沒有配置Mesh-Group的接口以及與當前接口不屬於同一個Mesh-Group的接口,而不會擴散到同Mesh-Group中的其它接口。
· 配置接口阻塞後,隻有該接口從鄰居路由器收到要求發送LSP的請求時才會發送LSP,否則不會主動向外發送LSP。
設置接口加入Mesh-Group或對接口進行阻塞時應注意保留一定的冗餘度,以免由於鏈路故障影響LSP報文的正常擴散。
表1-30 限製LSP泛洪
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置接口屬於Mesh-Group |
isis mesh-group mesh-group-number |
二者必選其一 缺省情況下,接口不屬於任何Mesh-Group且接口不阻塞 |
配置接口阻塞 |
isis mesh-group mesh-blocked |
Mesh-Group隻對點到點類型鏈路的接口起作用。
IS-IS協議中,當LSDB發生變化時需要進行路由計算。頻繁的路由計算會占用大量的係統資源,導致係統性能下降,而周期性地計算SPF可以在一定程度上提高效率,計算SPF的時間間隔可以由用戶根據需要進行配置。
表1-31 配置SPF參數
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置IS-IS路由計算時間間隔 |
timer spf maximum-interval [ initial-interval [ second-wait-interval ] ] |
可選 缺省情況下,IS-IS路由計算的時間間隔為10秒 |
IS-IS協議中,當網絡拓撲發生變化時,路由要重新收斂。路由收斂的優先級可以由用戶根據需要進行配置。
表1-32 配置優先級參數
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置指定IS-IS路由為高優先級 |
priority high { ip-prefix prefix-name | tag tag-value } |
可選 缺省情況下,沒有配置IS-IS路由為高優先級,即不能快速收斂 IS-IS主機路由的收斂優先級低於高優先級,而高於其他IS-IS路由的收斂優先級 |
通過配置LSDB過載標誌位,IS-IS將在其發送的LSP報文中把OL位置位,以通知其它路由器當前路由器發生了問題,無法正確的執行路由選擇和報文轉發。
當運行IS-IS的路由器因為內存不足或其它原因無法記錄完整的LSDB時,將會導致區域路由的計算錯誤,在故障排除過程中,通過給懷疑有問題的路由器設置過載標誌位,可以將其從IS-IS網絡中暫時隔離,便於進行故障定位。
表1-33 配置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 ] [ allow { external | interlevel } * ] |
必選 缺省情況下,不設置過載標誌位 |
IS-IS用System ID來在區域內唯一標識主機或路由器,System ID長度固定為6字節。當網絡管理員檢查IS-IS鄰居關係的狀態、IS-IS路由表以及LSDB中的內容時,點分十進製表示的System ID以及LSP標識符不夠直觀,查看也不方便。
主機名映射提供了一種將System ID映射到主機名的服務,運行IS-IS的路由器維護一個主機名到System ID的映射關係表,在維護和管理以及網絡故障診斷時,使用主機名比使用System ID會更直觀,也更容易記憶。
可以通過靜態配置和動態生成兩種方式生成和維護此關係映射表,需要注意的是:
· 隻有使能動態主機名映射功能後,在路由器上使用display isis lsdb命令顯示IS-IS鏈路狀態數據庫時,才可以看到路由器的主機名而不是System ID。
· 倘若網絡中的一台路由器使能了動態主機名映射功能且在當前路由器也通過靜態方式為那台路由器配置了主機名,動態配置的主機名將覆蓋當前路由器為其靜態配置的主機名稱。
網絡管理員為遠端IS手工配置System ID與主機名稱的映射關係。
表1-34 配置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 |
必選 每個System ID隻能對應一個主機名稱 |
靜態配置關係映射表要求網絡中的每一台路由器為其它路由器配置System ID和主機名的映射關係,當網絡中路由器數目增多時,網絡中每新增一台路由器或修改某台路由器的主機名映射關係,其它路由器都要做相應配置,增加了維護工作量。
使能動態主機名映射功能後,IS-IS網絡中的每台路由器隻需要在本機上配置自己的主機名稱即可,配置的主機名稱將通過動態主機名CLV發布出去,最後IS-IS網絡中使能動態主機名映射功能的路由器都將收集到其它路由器System ID與主機名稱的映射關係並生成映射表。
同時還可以為廣播網中的DIS配置局域網名稱來代表這個廣播網中的偽節點,便於網絡管理員查看LSDB內容時判斷LSP是由哪個DIS產生的。
表1-35 配置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 |
可選 缺省情況下,沒有配置本地局域網名稱 該命令隻有在使能了動態主機名進程的路由器上有效。該命令在點到點鏈路的接口上無效 |
表1-36 配置鄰接狀態輸出
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
打開鄰接狀態輸出開關 |
log-peer-change |
必選 缺省情況下,鄰接狀態輸出開關處於打開狀態 |
當打開鄰接狀態輸出開關後,IS-IS鄰接狀態的變化會輸出到配置終端上,直至鄰接狀態輸出開關被關閉。
在安全性要求較高的網絡中,可以通過配置IS-IS驗證來提高IS-IS網絡的安全性。IS-IS驗證特性分為鄰居關係的驗證和區域或路由域的驗證。
在配置IS-IS驗證功能之前,需完成以下任務:
· 配置接口的網絡層地址,使相鄰節點網絡層可達
· 使能IS-IS功能
配置鄰居關係驗證後,驗證密碼將會按照設定的方式封裝到Hello報文中,並對接收到的Hello報文進行驗證密碼的檢查,通過檢查才會形成鄰居關係,否則將不會形成鄰居關係,用以確認鄰居的正確性和有效性,防止與無法信任的路由器形成鄰居。
兩台路由器要形成鄰居關係必須配置相同的驗證方式和驗證密碼。
表1-37 配置鄰居關係驗證
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
配置鄰居關係驗證方式和驗證密碼 |
isis authentication-mode { md5 | simple } [ cipher ] password [ level-1 | level-2 ] [ ip | osi ] |
必選 缺省情況下,接口沒有配置鄰居關係驗證,既不會驗證收到的Hello報文,也不會把驗證密碼插入到Hello報文中 |
· 必須先使用isis enable命令使能該接口才能進行參數level-1和level-2的配置。
· 如果沒有指定level-1或level-2參數,將同時為level-1和level-2的Hello報文配置驗證方式及驗證密碼。
· 如果沒有指定ip或osi參數,將檢查Hello報文中OSI的相應字段的配置內容。
通過配置區域驗證,可以防止將從不可信任的路由器學習到的路由信息加入到本地Level-1的LSDB中。
配置區域驗證後,驗證密碼將會按照設定的方式封裝到Level-1報文(LSP、CSNP、PSNP)中,並對收到的Level-1報文進行驗證密碼的檢查。
同一區域內的路由器必須配置相同的驗證方式和驗證密碼。
表1-38 配置區域驗證
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置區域驗證方式和驗證密碼 |
area-authentication-mode { md5 | simple } password [ ip | osi ] |
必選 缺省情況下,係統沒有配置區域驗證,既不會驗證收到的Level-1報文,也不會把驗證密碼插入到Level-1報文中 |
通過配置路由域驗證,可以防止將不可信的路由信息注入當前路由域。
配置路由域驗證後,驗證密碼將會按照設定的方式封裝到Level-2報文(LSP、CSNP、PSNP)中,並對收到的Level-2報文進行驗證密碼的檢查。
所有骨幹層(Level-2)路由器必須配置相同的驗證方式和驗證密碼。
表1-39 配置路由域驗證
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置路由域驗證方式和驗證密碼 |
domain-authentication-mode { md5 | simple } [ cipher ] password [ ip | osi ] |
必選 缺省情況下,係統沒有配置路由域驗證,既不會驗證收到的Level-2報文,也不會把驗證密碼插入到Level-2報文中 |
IS-IS GR特性與IS-IS NSR特性互斥,不能同時配置。
用戶在IRF環境下,進行成員設備間的主備倒換,需要首先配置irf mac-address persistent always命令,避免主備倒換後接口MAC地址變化,導致ISIS GR失敗。
在普通的路由協議重啟的情況下,路由器與其它鄰居的鄰接關係被拆除。此時會引起網絡暫時的中斷。
基於IS-IS的GR可以解決這個問題:重啟路由器將重啟狀態通知給鄰居,允許鄰居重新建立鄰接關係而不終止連接。
基於IS-IS的GR特性有以下幾個特點:
· 發生了協議重啟時,應用了GR特性的設備可重新向鄰居發送連接請求,而不會終止鄰接關係。
· 在路由協議重啟完畢後,鄰居協助當前設備完成路由信息同步,在盡量短的時間內使該設備的各種路由信息恢複到重啟前的狀態。通過GR,在整個協議重啟過程中,網絡路由和轉發保持高度穩定。
· 對於第一次啟動的路由器,在LSP報文中設置OL(過載標記位)直到數據庫同步,通知其它路由器當前路由器發生了問題,無法正確的執行路由選擇和報文轉發。
分別在作為GR Restarter和GR Helper的設備上進行以下配置。
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
使能IS-IS路由進程,進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
必選 缺省情況下,係統沒有運行IS-IS |
使能IS-IS協議的GR能力 |
graceful-restart |
必選 缺省情況下,IS-IS協議的GR能力處於關閉狀態 |
配置IS-IS協議的GR重啟間隔時間 |
graceful-restart interval timer |
可選 缺省情況下,IS-IS協議的GR重啟間隔時間為300秒 重啟間隔時間用來指定路由器的重啟時間。重啟間隔時間在IS-IS的Hello PDU中設置為保持時間,這樣在該路由器重啟的時間內鄰居不會斷掉與其的鄰接關係 |
配置重啟時抑製SA位 |
graceful-restart suppress-sa |
可選 缺省情況下,重啟時不抑製SA位 配置重啟時抑製SA(Suppress-Advertisement)位,即在重啟路由器的Hello PDU中設置抑製發布SA位,重啟路由器的鄰居將繼續發布該鄰接關係 |
IS-IS NSR特性與IS-IS GR特性互斥,不能同時配置。
用戶在IRF環境下,進行成員設備間的主備倒換,需要首先配置irf mac-address persistent always命令,避免主備倒換後接口MAC地址變化,導致ISIS NSR失敗。
GR特性存在一些缺陷,如主備倒換期間需要周邊設備配合才能完成路由信息的恢複,在網絡應用中有一定的限製;而且在主備倒換後IS-IS進程重新學習所有的路由,如果在主備倒換期間拓撲發生變化,刪除的路由不能及時更新,容易造成黑洞路由。
NSR就是為了解決GR特性的一些缺陷和使用場景限製而實現的一種新特性。NSR將IS-IS鏈路狀態信息從主用主控板備份到備用主控板,在發生主備倒換時不需要周邊設備配合就可以完成鏈路狀態的恢複和路由的重新生成。
表1-41 配置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的時間間隔 |
non-stop-routing interval interval-value |
可選 缺省情況下,NSR的時間間隔為0秒,即沒有配置NSR的時間間隔 |
· 如果配置了NSR的時間間隔,則鄰居關係最大保持時間應該不小於該時間間隔,以保證主備倒換期間鄰居關係不超時,直到完成主備倒換。
· 如果沒有配置NSR的時間間隔,則鄰居關係最大保持時間取決於接口下配置的時間。
· 請根據實際組網環境配置合適的NSR的時間間隔。
· IS-IS支持快速重路由功能不能與IS-IS支持BFD監測同時使用,否則可能導致快速重路由功能失效。
· IS-IS支持快速重路由自動計算備份下一跳功能與IS-IS TE特性互斥。
當IS-IS網絡中的鏈路或某台路由器發生故障時,需要通過故障鏈路或故障路由器傳輸才能到達目的地的報文將會丟失或產生路由環路,數據流量將會中斷,直到IS-IS根據新的拓撲網絡路由收斂完畢後,被中斷的流量才能恢複正常的傳輸。
為了盡可能縮短網絡故障導致的流量中斷時間,網絡管理員可以配置IS-IS快速重路由功能。
圖1-14 IS-IS快速重路由功能示意圖
如圖1-14所示,通過在Router B上使能快速重路由功能,IS-IS將為路由計算或指定備份下一跳,當Router B探測到網絡故障時,IS-IS會使用事先獲取的備份下一跳替換失效下一跳,通過備份下一跳來指導報文的轉發,從而大大縮短了流量中斷時間。在使用備份下一跳指導報文轉發的同時,IS-IS會根據變化後的網絡拓撲重新計算最短路徑,網絡收斂完畢後,使用新計算出來的最優路由來指導報文轉發。
網絡管理員可以配置給所有IS-IS路由自動計算備份下一跳,也可以在路由策略中指定備份下一跳,為符合過濾條件的路由指定備份下一跳。
在配置IS-IS快速重路由特性之前,需完成以下任務:
· 配置接口的網絡層地址,使相鄰節點網絡層可達
· 使能IS-IS功能
表1-42 配置IS-IS支持快速重路由功能(自動計算備份下一跳)
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置BFD Echo報文源地址 |
bfd echo-source-ip ip-address |
必選 缺省情況下,沒有配置BFD Echo報文源地址 |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置IS-IS支持快速重路由功能(自動計算備份下一跳) |
fast-reroute auto |
必選 缺省情況下,IS-IS支持快速重路由功能處於關閉狀態 |
網絡管理員可以通過apply fast-reroute backup-interface命令在路由策略中指定備份下一跳,為符合過濾條件的路由指定備份下一跳,關於apply fast-reroute backup-interface命令以及路由策略的相關配置,請參見“三層技術-IP路由配置指導”中的“路由策略”。
表1-43 配置IS-IS支持快速重路由功能(通過路由策略指定備份下一跳)
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置BFD Echo報文源地址 |
bfd echo-source-ip ip-address |
必選 缺省情況下,沒有配置BFD Echo報文源地址 |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置IS-IS支持快速重路由功能(通過路由策略指定備份下一跳) |
fast-reroute route-policy route-policy-name |
必選 缺省情況下,IS-IS支持快速重路由功能處於關閉狀態 |
表1-44 使能IS-IS的TRAP功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
使能IS-IS的TRAP功能 |
is-snmp-traps enable |
必選 缺省情況下,IS-IS的TRAP功能處於使能狀態 |
表1-45 配置IS-IS和MIB綁定
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入IS-IS視圖 |
isis [ process-id ] [ vpn-instance vpn-instance-name ] |
- |
配置IS-IS和MIB綁定 |
isis mib-binding process-id |
必選 缺省情況下,MIB操作綁定在IS-IS進程1上 |
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入接口視圖 |
interface interface-type interface-number |
- |
指定接口上使能IS-IS |
isis enable [ process-id ] |
必選 缺省情況下,接口上不使能IS-IS路由進程 |
指定接口上使能BFD |
isis bfd enable |
必選 缺省情況下,運行IS-IS的接口不使用BFD提供的鏈路檢測功能 |
在完成上述配置後,在任意視圖下執行display命令可以顯示配置後IS-IS的運行情況,用戶可以通過查看顯示信息驗證配置的效果。
在用戶視圖下執行reset命令可以清除IS-IS的數據庫信息,或者複位特定鄰居的數據信息。
表1-47 IS-IS顯示和維護
操作 |
命令 |
顯示IS-IS的摘要信息 |
display isis brief [ process-id | vpn-instance vpn-instance-name ] [ | { begin | exclude | include } regular-expression ] |
顯示IS-IS調試開關的狀態 |
display isis debug-switches { process-id | vpn-instance vpn-instance-name } [ | { begin | exclude | include } regular-expression ] |
顯示IS-IS協議的GR狀態 |
display isis graceful-restart status [ level-1 | level-2 ] [ process-id | vpn-instance vpn-instance-name ] [ | { begin | exclude | include } regular-expression ] |
顯示使能IS-IS功能接口的信息 |
display isis interface [ statistics | [ interface-type interface-number ] [ verbose ] ] [ process-id | vpn-instance vpn-instance-name ] [ | { begin | exclude | include } regular-expression ] |
顯示IS-IS的鏈路狀態數據庫 |
display isis lsdb [ [ l1 | l2 | level-1 | level-2 ] | [ lsp-id lspid | lsp-name lspname ] | local | verbose ] * [ process-id | vpn-instance vpn-instance-name ] [ | { begin | exclude | include } regular-expression ] |
顯示IS-IS Mesh-Group的配置信息 |
display isis mesh-group [ process-id | vpn-instance vpn-instance-name ] [ | { begin | exclude | include } regular-expression ] |
顯示係統ID到主機名稱的映射關係表 |
display isis name-table [ process-id | vpn-instance vpn-instance-name ] [ | { begin | exclude | include } regular-expression ] |
顯示IS-IS的鄰居信息 |
display isis peer [ statistics | verbose ] [ process-id | vpn-instance vpn-instance-name ] [ | { begin | exclude | include } regular-expression ] |
顯示IS-IS的IPv4路由信息 |
display isis route [ ipv4 ] [ [ level-1 | level-2 ] | verbose ] * [ process-id [ ipv4-unicast topology-name ] | vpn-instance vpn-instance-name ] [ | { begin | exclude | include } regular-expression ] |
顯示IS-IS進行SPF計算的日誌信息 |
display isis spf-log [ process-id | vpn-instance vpn-instance-name ] [ | { begin | exclude | include } regular-expression ] |
顯示IS-IS統計信息 |
display isis statistics [ level-1 | level-1-2 | level-2 ] [ process-id | vpn-instance vpn-instance-name ] [ | { begin | exclude | include } regular-expression ] |
清除所有IS-IS的數據結構信息 |
reset isis all [ process-id | vpn-instance vpn-instance-name ] |
清除IS-IS特定鄰居的數據信息 |
reset isis peer system-id [ process-id | vpn-instance vpn-instance-name ] |
缺省情況下,以太網接口、VLAN接口及聚合接口處於DOWN狀態。如果要對這些接口進行配置,請先使用undo shutdown命令使這些接口處於UP狀態。
如圖1-15所示,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-15 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
(3) 驗證配置結果
# 顯示各交換機的IS-IS LSDB信息,查看LSP是否完整。
[SwitchA] display isis lsdb
Database information for ISIS(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 ISIS(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 ISIS(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 ISIS(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 ISIS(1)
-----------------------------
ISIS(1) IPv4 Level-1 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 RM, L-Advertised in LSPs, U-Up/Down Bit Set
[SwitchC] display isis route
Route information for ISIS(1)
-----------------------------
ISIS(1) IPv4 Level-1 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 RM, L-Advertised in LSPs, U-Up/Down Bit Set
ISIS(1) IPv4 Level-2 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/-
172.16.0.0/16 20 NULL Vlan300 192.168.0.2 R/-/-
Flags: D-Direct, R-Added to RM, L-Advertised in LSPs, U-Up/Down Bit Set
[SwitchD] display isis route
Route information for ISIS(1)
-----------------------------
ISIS(1) IPv4 Level-2 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 RM, L-Advertised in LSPs, U-Up/Down Bit Set
如下圖所示,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-16 配置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 ISIS(1)
----------------------------
System Id: 0000.0000.0002
Interface: Vlan-interface100 Circuit Id: 0000.0000.0003.01
State: Up HoldTime: 21s Type: L1(L1L2) PRI: 64
System Id: 0000.0000.0003
Interface: Vlan-interface100 Circuit Id: 0000.0000.0003.01
State: Up HoldTime: 27s Type: L1 PRI: 64
System Id: 0000.0000.0002
Interface: Vlan-interface100 Circuit Id: 0000.0000.0004.01
State: Up HoldTime: 28s Type: L2(L1L2) PRI: 64
System Id: 0000.0000.0004
Interface: Vlan-interface100 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 ISIS(1)
---------------------------------
Interface: Vlan-interface100
Id IPV4.State IPV6.State MTU Type DIS
001 Up Down 1497 L1/L2 No/No
# 顯示Switch C的IS-IS接口信息。
[SwitchC] display isis interface
Interface information for ISIS(1)
---------------------------------
Interface: Vlan-interface100
Id IPV4.State IPV6.State MTU Type DIS
001 Up Down 1497 L1/L2 Yes/No
# 顯示Switch D的IS-IS接口信息。
[SwitchD] display isis interface
Interface information for ISIS(1)
---------------------------------
Interface: Vlan-interface100
Id IPV4.State IPV6.State MTU Type DIS
001 Up Down 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。
(3) 配置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 ISIS(1)
----------------------------
System Id: 0000.0000.0002
Interface: Vlan-interface100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 21s Type: L1(L1L2) PRI: 64
System Id: 0000.0000.0003
Interface: Vlan-interface100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 27s Type: L1 PRI: 64
System Id: 0000.0000.0002
Interface: Vlan-interface100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 28s Type: L2(L1L2) PRI: 64
System Id: 0000.0000.0004
Interface: Vlan-interface100 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 ISIS(1)
---------------------------------
Interface: Vlan-interface100
Id IPV4.State IPV6.State MTU Type DIS
001 Up Down 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 ISIS(1)
----------------------------
System Id: 0000.0000.0002
Interface: Vlan-interface100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 25s Type: L1 PRI: 64
System Id: 0000.0000.0001
Interface: Vlan-interface100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 7s Type: L1 PRI: 100
[SwitchC] display isis interface
Interface information for ISIS(1)
---------------------------------
Interface: Vlan-interface100
Id IPV4.State IPV6.State MTU Type DIS
001 Up Down 1497 L1/L2 No/No
# 顯示Switch D的IS-IS鄰居和接口信息。
[SwitchD] display isis peer
Peer information for ISIS(1)
----------------------------
System Id: 0000.0000.0001
Interface: Vlan-interface100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 9s Type: L2 PRI: 100
System Id: 0000.0000.0002
Interface: Vlan-interface100 Circuit Id: 0000.0000.0001.01
State: Up HoldTime: 28s Type: L2 PRI: 64
[SwitchD] display isis interface
Interface information for ISIS(1)
---------------------------------
Interface: Vlan-interface100
Id IPV4.State IPV6.State MTU Type DIS
001 Up Down 1497 L1/L2 No/No
如圖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。
· 在Switch D的IS-IS進程中引入RIP路由。
圖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 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
# 顯示各路由器的IS-IS路由信息。
[SwitchA] display isis route
Route information for ISIS(1)
-----------------------------
ISIS(1) IPv4 Level-1 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 RM, L-Advertised in LSPs, U-Up/Down Bit Set
[SwitchC] display isis route
Route information for ISIS(1)
-----------------------------
ISIS(1) IPv4 Level-1 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 RM, L-Advertised in LSPs, U-Up/Down Bit Set
ISIS(1) IPv4 Level-2 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 RM, L-Advertised in LSPs, U-Up/Down Bit Set
[SwitchD] display isis route
Route information for ISIS(1)
-----------------------------
ISIS(1) IPv4 Level-2 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 RM, 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] import-route rip level-2
# 顯示Switch C的IS-IS路由信息。
[SwitchC] display isis route
Route information for ISIS(1)
-----------------------------
ISIS(1) IPv4 Level-1 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 RM, L-Advertised in LSPs, U-Up/Down Bit Set
ISIS(1) IPv4 Level-2 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/-
10.1.4.0/24 10 NULL VLAN300 192.168.0.2 R/L/-
10.1.5.0/24 20 NULL VLAN300 192.168.0.2 R/L/-
10.1.6.0/24 20 NULL VLAN300 192.168.0.2 R/L/-
Flags: D-Direct, R-Added to RM, L-Advertised in LSPs, U-Up/Down Bit Set
如圖1-18所示,Switch A、Switch B和Switch C屬於同一域。這三台交換機都運行IS-IS協議以實現路由互連。
圖1-18 IS-IS GR配置組網圖
(1) 配置各交換機接口的IP地址和IS-IS協議
請按照圖1-18配置各接口的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] graceful-restart interval 150
[SwitchA-isis-1] return
Switch B和Switch C的配置與Switch A相似,配置過程略。
(3) 檢驗配置效果
Switch A分別與Switch B和Switch C建立鄰接關係後,三台交換機開始交換路由信息。Switch A的IS-IS協議重啟,進入重啟模式後,通過GR機製向鄰居重新發送連接請求,同步數據庫。使用display isis graceful-restart status命令,可查看Switch A上IS-IS協議的GR狀態。
# 重啟Switch A的IS-IS進程。
<SwitchA> reset isis all 1
Warning : Reset ISIS process? [Y/N]:y
# 查看Switch A上IS-IS協議的GR狀態。
<SwitchA> display isis graceful-restart status
Restart information for IS-IS(1)
--------------------------------------------------------------------
IS-IS(1) Level-1 Restart Status
Restart Interval: 150
SA Bit Supported
Total Number of Interfaces = 1
Restart Status: RESTARTING
Number of LSPs Awaited: 3
T3 Timer Status:
Remaining Time: 140
T2 Timer Status:
Remaining Time: 59
IS-IS(1) Level-2 Restart Status
Restart Interval: 150
SA Bit Supported
Total Number of Interfaces = 1
Restart Status: RESTARTING
Number of LSPs Awaited: 3
T3 Timer Status:
Remaining Time: 140
T2 Timer Status:
Remaining Time: 59
如圖1-19所示,Switch S、Switch A、Switch B屬於同一IS-IS區域,通過IS-IS協議實現網絡互連。要求對Switch S進行主備倒換時,Switch A和Switch B到Switch S的鄰居沒有中斷,Switch A到Switch B的流量沒有中斷。
圖1-19 IS-IS NSR配置組網圖
(1) 配置各路由器接口的IP地址和IS-IS協議
請按照圖1-19配置各接口的IP地址和子網掩碼,具體配置過程略。
配置各路由器之間采用IS-IS協議進行互連,確保Switch S、Switch A和Switch B之間能夠在網絡層互通,並且各路由器之間能夠借助IS-IS協議實現動態路由更新。具體配置過程略。
(2) 配置IS-IS NSR
# 使能Switch A的IS-IS NSR功能。
<SwitchS> system-view
[SwitchS] isis 1
[SwitchS-isis-1] non-stop-routing
[SwitchS-isis-1] non-stop-routing interval 30
[SwitchS-isis-1] return
(3) 檢驗配置效果
Switch S分別與Switch A和Switch B建立鄰接關係後,三台路由器開始交換路由信息。當網絡穩定後,Switch S進行主備倒換。在Switch S主備倒換期間,使用display isis peer命令查看Switch A和Switch B上到Switch S的鄰居是否發生任何變化;使用display isis route命令查看Switch A上是否有Switch B上Loopback接口的路由,Switch B上是否有Switch A上Loopback接口的路由。
# Switch S主備倒換。
<SwitchS> system-view
[SwitchS] slave switchover enable
[SwitchS] slave switchover
Caution!!! Confirm to swith slave to master? [Y/N]:Y
# 查看Switch A上IS-IS協議的鄰居和路由。
<SwitchA> display isis peer
Peer information for ISIS(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 ISIS(1)
-----------------------------
ISIS(1) IPv4 Level-1 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 RM, L-Advertised in LSPs, U-Up/Down Bit Set
ISIS(1) IPv4 Level-2 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 RM, L-Advertised in LSPs, U-Up/Down Bit Set
# 查看Switch B上IS-IS協議的鄰居和路由。
<SwitchB> display isis peer
Peer information for ISIS(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 ISIS(1)
-----------------------------
ISIS(1) IPv4 Level-1 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 RM, L-Advertised in LSPs, U-Up/Down Bit Set
ISIS(1) IPv4 Level-2 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 RM, L-Advertised in LSPs, U-Up/Down Bit Set
通過上麵信息可以看出Switch A和Switch B的鄰居和路由信息保持不變,即NSR特性使周邊設備無法感知Switch S的主備倒換。
如圖1-20所示,Switch S、Switch A和Switch D屬於同一IS-IS路由域,通過IS-IS協議實現網絡互連。要求當Switch S和Switch D之間的鏈路出現故障時,業務可以快速切換到鏈路B上。
圖1-20 IS-IS快速重路由配置組網圖
(1) 配置各交換機接口的IP地址和IS-IS協議
請按照圖1-18配置各接口的IP地址和子網掩碼,具體配置過程略。
配置各交換機之間采用IS-IS協議進行互連,確保Switch A、Switch D和Switch S之間能夠在網絡層互通,並且各交換機之間能夠借助IS-IS協議實現動態路由更新。
具體配置過程略。
(2) 配置IS-IS快速重路由
IS-IS支持快速重路由配置有兩種配置方法,一種是自動計算,另一種是通過策略指定,兩種方法任選一種。
方法一:使能Switch S和Swtich D的IS-IS協議的自動計算快速重路由能力
# 配置Switch S。
<SwitchS> system-view
[SwitchS] bfd echo-source-ip 1.1.1.1
[SwitchS] isis 1
[SwitchS-isis-1] fast-reroute auto
[SwitchS-isis-1] quit
# 配置Switch D。
<SwitchD> system-view
[SwitchD] bfd echo-source-ip 4.4.4.4
[SwitchD] isis 1
[SwitchD-isis-1] fast-reroute auto
[SwitchD-isis-1] quit
方法二:使能Switch S和Swtich D的IS-IS協議的指定路由策略快速重路由能力
# 配置Switch S。
<SwitchS> system-view
[SwitchS] bfd echo-source-ip 1.1.1.1
[SwitchS] ip ip-prefix abc index 10 permit 4.4.4.4 32
[SwitchS] route-policy frr permit node 10
[SwitchS-route-policy] if-match ip-prefix abc
[SwitchS-route-policy] apply fast-reroute backup-interface vlan-interface 100 backup-nexthop 12.12.12.2
[SwitchS-route-policy] quit
[SwitchS] isis 1
[SwitchS-isis-1] fast-reroute route-policy frr
[SwitchS-isis-1] quit
# 配置Switch D。
<SwitchD> system-view
[SwitchD] bfd echo-source-ip 4.4.4.4
[SwitchD] ip ip-prefix abc index 10 permit 1.1.1.1 32
[SwitchD] route-policy frr permit node 10
[SwitchD-route-policy] if-match ip-prefix abc
[SwitchD-route-policy] apply fast-reroute backup-interface vlan-interface 101 backup-nexthop 24.24.24.2
[SwitchD-route-policy] quit
[SwitchD] isis 1
[SwitchD-isis-1] fast-reroute route-policy frr
[SwitchD-isis-1] quit
(3) 檢驗配置效果
# 在Switch S上查看4.4.4.4/32路由,可以看到備份下一跳信息。
[SwitchS] display ip routing-table 4.4.4.4 verbose
Routing Table : Public
Summary Count : 1
Destination: 4.4.4.4/32
Protocol: ISIS Process ID: 1
Preference: 10 Cost: 10
IpPrecedence: QosLcId:
NextHop: 13.13.13.2 Interface: Vlan-interface200
BkNextHop: 12.12.12.2 BkInterface: Vlan-interface100
RelyNextHop: 0.0.0.0 Neighbor : 0.0.0.0
Tunnel ID: 0x0 Label: NULL
BKTunnel ID: 0x0 BKLabel: NULL
State: Active Adv Age: 00h01m27s
Tag: 0
# 在Switch D上查看1.1.1.1/32路由,可以看到備份下一跳信息。
[SwitchD] display ip routing-table 1.1.1.1 verbose
Routing Table : Public
Summary Count : 1
Destination: 1.1.1.1/32
Protocol: ISIS Process ID: 1
Preference: 10 Cost: 10
IpPrecedence: QosLcId:
NextHop: 13.13.13.1 Interface: Vlan-interface200
BkNextHop: 24.24.24.2 BkInterface: Vlan-interface101
RelyNextHop: 0.0.0.0 Neighbor : 0.0.0.0
Tunnel ID: 0x0 Label: NULL
BKTunnel ID: 0x0 BKLabel: NULL
State: Active Adv Age: 00h01m27s
Tag: 0
如圖1-21所示,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-21 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 eRg
[SwitchA-Vlan-interface100] quit
[SwitchC] interface vlan-interface 100
[SwitchC-Vlan-interface100] isis authentication-mode md5 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 t5Hr
[SwitchB-Vlan-interface200] quit
[SwitchC] interface vlan-interface 200
[SwitchC-Vlan-interface200] isis authentication-mode md5 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 hSec
[SwitchC-Vlan-interface300] quit
[SwitchD] interface vlan-interface 300
[SwitchD-Vlan-interface300] isis authentication-mode md5 hSec
[SwitchD-Vlan-interface300] quit
(4) 在Switch A、Switch B和Switch C上配置區域驗證,驗證方式為MD5密文驗證,驗證密碼為“10Sec”。
[SwitchA] isis 1
[SwitchA-isis-1] area-authentication-mode md5 10Sec
[SwitchA-isis-1] quit
[SwitchB] isis 1
[SwitchB-isis-1] area-authentication-mode md5 10Sec
[SwitchB-isis-1] quit
[SwitchC] isis 1
[SwitchC-isis-1] area-authentication-mode md5 10Sec
[SwitchC-isis-1] quit
(5) 在Switch C和Switch D上配置路由域驗證,驗證方式為MD5密文驗證,驗證密碼為“1020Sec”。
[SwitchC] isis 1
[SwitchC-isis-1] domain-authentication-mode md5 1020Sec
[SwitchC-isis-1] quit
[SwitchD] isis 1
[SwitchD-isis-1] domain-authentication-mode md5 1020Sec
· Switch A、Switch B和Switch C上運行IS-IS,網絡層相互可達。
· 當Switch A和Switch B通過L2 Switch通信的鏈路出現故障時BFD能夠快速感知通告IS-IS協議,並且切換到Switch C進行通信。
圖1-22 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 |
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 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 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 active
[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
# 在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] return
(4) 檢查配置結果
下麵以Switch A為例,Switch B和Switch A類似,不再贅述。
# 顯示Switch A的BFD信息。
<SwitchA> display bfd session
Total Session Num: 1 Init Mode: Active
Session Working Under Ctrl Mode:
LD/RD SourceAddr DestAddr State Holdtime Interface
3/1 10.1.0.102 10.1.0.100 Up 1700ms vlan10
# 在Switch A上查看120.1.1.0/24的路由信息,可以看出Switch A和Switch B是通過L2 Swtich進行通信的。
<SwitchA> display ip routing-table 120.1.1.0 verbose
Routing Table : Public
Summary Count : 2
Destination: 120.1.1.0/24
Protocol: ISIS Process ID: 0
Preference: 0 Cost: 2
IpPrecedence: QosLcId:
NextHop: 192.168.0.100 Interface: Vlan-interface10
BkNextHop: 0.0.0.0 BkInterface:
RelyNextHop: 0.0.0.0 Neighbor : 0.0.0.0
Tunnel ID: 0x0 Label: NULL
BKTunnel ID: 0x0 BKLabel: NULL
State: Active Adv Age: 00h58m10s
Tag: 0
Destination: 120.1.1.0/24
Protocol: ISIS Process ID: 1
Preference: 10 Cost: 4
IpPrecedence: QosLcId:
NextHop: 10.1.1.100 Interface: Vlan-interface11
BkNextHop: 0.0.0.0 BkInterface:
RelyNextHop: 0.0.0.0 Neighbor : 0.0.0.0
Tunnel ID: 0x0 Label: NULL
BKTunnel ID: 0x0 BKLabel: NULL
State: Invalid Adv Age: 00h58m05s
Tag: 0
# 打開Switch A的調試開關。
<SwitchA> debugging isis bfd-event
<SwitchA> terminal debugging
# Switch B和二層交換機之間的鏈路發生故障後。可以看到Switch A能夠快速檢測Switch B的變化。
#Aug 8 14:54:05:362 2008 SwitchA IFNET/4/INTERFACE UPDOWN:
Trap 1.3.6.1.6.3.1.1.5.3<linkDown>: Interface 983041 is Down, ifAdminStatus is 1, ifOperStatus is 2
#Aug 8 14:54:05:363 2008 SwitchA ISIS/4/ADJ_CHANGE:TrapID(1.3.6.1.2.1.138.0.17<isisAdjacencyChange>), ISIS Level-2 Adjencency IN Circuit-983041 State Change.
#Aug 8 14:54:05:364 2008 SwitchA ISIS/4/ADJ_CHANGE:TrapID(1.3.6.1.2.1.138.0.17<isisAdjacencyChange>), ISIS Level-1 Adjencency IN Circuit-983041 State Change.
%Aug 8 14:54:05:365 2008 SwitchA IFNET/4/LINK UPDOWN: Vlan-interface10 link status is DOWN
%Aug 8 14:54:05:366 2008 SwitchA IFNET/4/UPDOWN: Line protocol on the interface Vlan-interface10 is DOWN
%Aug 8 14:54:05:367 2008 SwitchA ISIS/4/ADJLOG:ISIS-1-ADJCHANGE: Adjacency To 0000.0000.0002 (vlan10) DOWN, Level-2 Circuit Down.
%Aug 8 14:54:05:367 2008 SwitchA ISIS/4/ADJLOG:ISIS-1-ADJCHANGE: Adjacency To 0000.0000.0002 (vlan10) DOWN, Level-2 Adjacency clear.
%Aug 8 14:54:05:368 2008 SwitchA ISIS/4/ADJLOG:ISIS-1-ADJCHANGE: Adjacency To 0000.0000.0002 (vlan10) DOWN, Level-1 Circuit Down.
%Aug 8 14:54:05:369 2008 SwitchA ISIS/4/ADJLOG:ISIS-1-ADJCHANGE: Adjacency To 0000.0000.0002 (vlan10) DOWN, Level-1 Adjacency clear.
*Aug 8 14:54:05:370 2008 SwitchA ISIS/6/ISIS:
ISIS-1-BFD: Success to send msg. Msg type 1 delete session. IfPhyIndex: 5 ,DstIPAddr: 10.1.0.100 , SrcIPAddr:10.1.0.102. NeighborType:Level-2.
*Aug 8 14:54:05:370 2008 SwitchA ISIS/6/ISIS:
ISIS-1-BFD: Success to send msg. Msg type 1 delete session. IfPhyIndex: 5 ,DstIPAddr: 10.1.0.100 , SrcIPAddr:10.1.0.102. NeighborType:Level-1.
# 顯示Switch A的BFD信息。
查看Switch A的BFD信息,Switch A已取消與Switch B的鄰居關係,沒有任何輸出信息。
<SwitchA> display bfd session
# 在Switch A上查看120.1.1.0/24的路由信息,可以看出Switch A和Switch B已經切換到Switch C進行通信。
<SwitchA> display ip routing-table 120.1.1.0 verbose
Routing Table : Public
Summary Count : 2
Destination: 120.1.1.0/24
Protocol: ISIS Process ID: 1
Preference: 10 Cost: 4
IpPrecedence: QosLcId:
NextHop: 10.1.1.100 Interface: Vlan-interface11
BkNextHop: 0.0.0.0 BkInterface:
RelyNextHop: 0.0.0.0 Neighbor : 0.0.0.0
Tunnel ID: 0x0 Label: NULL
BKTunnel ID: 0x0 BKLabel: NULL
State: Active Adv Age: 00h58m10s
Tag: 0
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!