用的什么路由協議(路由器上協議選哪個)
一、IS-IS
IS-IS 是一個非常靈活的路由協議,具有很好地可擴展性,而且已經整合了諸如 MPLS
(多協議標記交換)之類的特性,其主要特點如下:
1. 維護一個鏈路狀態數據庫,并使用 SPF 算法來計算最佳路徑;
2.用 Hello 包建立和維護鄰居關系;
3.使用區域來構造兩級層次化的拓撲結構;
4.在區域之間可以使用路由匯總來減少路由器的負擔;
5.支持 VLSM 和 CIDR;
6.在廣播多路訪問網絡,通過選舉指定 IS(DIS)來管理和控制網絡上的泛洪擴散;
7.具有認證功能;
8. IS-IS 采用 cost 作為度量值;
9. IS-IS 管理距離為 115;
10. 快速收斂;
11. 適合大型網絡。
二、IS-IS相關術語
1. CLNS( Connectionless Network Service,無連接網絡服務):使用數據報傳輸服
務,在數據傳輸之前不需要建立連接,它描述提供給傳輸層的服務;
2. CLNP( Connectionless Network Protocol, 無連接網絡協議):是 OSI 模型中網絡
層中的一種無連接的網絡協議,和 IP 有相同的特質;
3. ES(End system,端系統): 沒有路由能力的網絡節點;
4. IS(Intermediate System,中間系統): 有數據包轉發能力的網絡節點,即路由器;
5. NSAP(Network Service Access Point ,網絡服務訪問點),是網絡層和傳輸層邊
界上概念性的點。每一個傳輸層實體都會分配得到唯一的 NSAP 地址;
6. Level 1 路由器:類似 OSPF 的內部路由器;
7. Level 1/2 路由器:類似 OSPF 的 ABR;
8. Level 2 路由器:類似 OSPF 的主干路由器;
9.SNPA(Subnetwork Point of Attachment,子網連接點):是和三層地址對應的二層
地址,如 MAC 地址、DLCI 等;
10. ISO 地址:ISO 地址有兩種形式,NET(網絡實體標題)和 NSAP 地址,其中 NET 是
NSEL 的值為 0x00 時的 NSAP 地址,NSAP 地址長度為 8-20 個字節,包括區域、系統 ID 和 NSEL
三個部分,其中前兩部分可以分得更細。
三、集成 IS-IS 的基本配置
1、目的
(1)在路由器上啟動 IS-IS 路由進程
(2)啟用參與路由協議的接口
(3)度量值 cost 的計算
(4)NET 地址配置
(5)DIS 選舉的控制
(6)查看和調試 IS-IS 路由協議相關信息
2、拓撲

3.實驗步驟
(1)步驟 1:配置路由器 R1
R1(config)# router isis //啟動 IS-IS 路由進程
R1(config-router)# net 49.0001.1111.1111.1111.00 //配置 NET 地址
R1(config)# interface Loopback0
R1(config-if)# ip address 1.1.1.1 255.255.255.0
R1(config-if)# ip router isis //接口下啟用 IS-IS
R1(config-if)# interface Serial0/0/0
R1(config-if)# ip address 192.168.12.1 255.255.255.0
R1(config-if)# ip router isis
R1(config-if)# no shutdown
(2)步驟 2:配置路由器 R2
R2(config)# router isis
R2(config-router)# net 49.0001.2222.2222.2222.00
R2(config)# interface Loopback0
R2(config-if)# ip address 2.2.2.2 255.255.255.0
R2(config-if)# ip router isis
R2(config)# interface gigabitethernet0/0
R2(config-if)# ip address 192.168.1.2 255.255.255.0
R2(config-if)# ip router isis
R2(config-if)# no shutdown
R2(config)# interface Serial0/0/0
R2(config-if)# ip address 192.168.12.2 255.255.255.0
R2(config-if)# clockrate 128000
R2(config-if)# ip router isis
R2(config-if)# no shutdown
(3)步驟 3:配置路由器 R3
R3(config)# router isis
R3(config-router)# net 49.0001.3333.3333.3333.00
R3(config)# interface Loopback0
R3(config-if)# ip address 3.3.3.3 255.255.255.0
R3(config-if)# ip router isis
R3(config)# interface gigabitethernet0/0
R3(config-if)# ip address 192.168.1.3 255.255.255.0
R3(config-if)# ip router isis
R3(config-if)# no shutdown
(4)步驟 4:配置路由器 R4
R4(config)# router isis
R4(config-router)# net 49.0001.4444.4444.4444.00
R4(config)# interface Loopback0
R4(config-if)# ip address 4.4.4.4 255.255.255.0
R4(config-if)# ip router isis
R4(config)# interface gigabitethernet0/0
R4(config-if)# ip address 192.168.1.4 255.255.255.0
R4(config-if)# ip router isis
R4(config-if)# no shutdown
4.實驗調試
(1) show clns neighbors
該命令用來顯示 IS-IS 的鄰居。
R2# show clns neighbors
System Id Interface SNPA State Holdtime Type Protocol
R1 Se0/0/0 *HDLC* Up 24 L1L2 IS-IS
R3 Gi0/0 ca02.0f78.0000 Up 26 L1L2 IS-IS
R4 Gi0/0 ca03.0f78.0000 Up 8 L1L2 IS-IS
從以上輸出可以看出,路由器 R2 有 3 個鄰居,而且都是“ L1L2”類型的,這也是啟動
IS-IS 的路由器的默認類型。由于 R1 和 R2 是通過串行連接的,所以 SNPA 為“ *HDLC*”,而
R2與R3和R4是通過以太網連接的,所以SNPA分別是R3和R4以太口“ gigabitethernet0/0”
的 MAC 地址。
【提示】
從IOS12.0(5)版本開始,Cisco路由器支持動態主機名字映射,可以通過命令“show isis
hostname
show isis
hostname”查看:
R2# show isis hostname
Level System ID Dynamic Hostname (notag)
1 4444.4444.4444 R4
2 3333.3333.3333 R3
1 1111.1111.1111 R1
* * 2222.2222.2222 R2
上面輸出清楚的顯示了系統 ID 和動態主機名的映射關系,其中“* *” 表示本地路由器。
【注意】
缺省情況下,Hello 包每 10 秒中發送一次,holddown 時間為 30 秒,即 3 倍的關系。可
以在接口下通過“ isis hello-interval” 命令修改 Hello 包發送的周期,同時通過“isis
hello-multiplier
isis
hello-multiplier”命令定義 holddown 是 Hello 周期的倍數。
(2) show clns protocol
該命令顯示和 CLNS 路由協議相關的信息。
R2# show clns protocol
IS-IS Router:
System Id: 2222.2222.2222.00 IS-Type: level-1-2
//系統 ID 以及 IS-IS 路由器類型
Manual area address(es):
49.0001
Routing for area address(es):
49.0001
Interfaces supported by IS-IS:
Gigabitethernet0/0 - IP
Serial0/0/0 - IP
Loopback0 – IP
//以上四行表示運行 IS-IS 路由協議的接口
Redistribute:
static (on by default)
Distance for L2 CLNS routes: 110
//管理距離
RRR level: none
Generate narrow metrics: level-1-2
Accept narrow metrics: level-1-2
//使用“窄”度量
Generate wide metrics: none
Accept wide metrics: none
(3) show clns interface
該命令顯示 clns 接口狀態的基本信息。
R2# show clns interface s0/0/0
Serial0/0/0 is up, line protocol is up
Checksums enabled, MTU 1500, Encapsulation HDLC
ERPDUs enabled, min. interval 10 msec.
CLNS fast switching enabled
//CLNS 快速交換啟動
CLNS SSE switching disabled
//CLNS SSE 交換關閉
DEC compatibility mode OFF for this interface
Next ESH/ISH in 47 seconds
Routing Protocol: IS-IS
Circuit Type: level-1-2 //電路類型
Interface number 0x1, local circuit ID 0x100
Neighbor System-ID: R1
Level-1 Metric: 10, Priority: 64, Circuit ID: R2.00
// 接口 Level-1 的度量值、接口優先級以及電路 ID
Level-1 IPv6 Metric: 10
Number of active level-1 adjacencies: 1
Level-2 Metric: 10, Priority: 64, Circuit ID: R2.00
// 接口 Level-2 的度量值、接口優先級以及電路 ID
Level-2 IPv6 Metric: 10
Number of active level-2 adjacencies: 1
Next IS-IS Hello in 7 seconds
if state UP
(4) show clns route
該命令查看 CLNS 第二層路由信息。
R2# show clns route
Codes: C - connected, S - static, d - DecnetIV
I - ISO-IGRP, i - IS-IS, e - ES-IS
B - BGP, b - eBGP-neighbor
C 49.0001.2222.2222.2222.00 [1/0], Local IS-IS NET
C 49.0001 [2/0], Local IS-IS Area
因為這條命令用于 OSI 路由選擇,所以以上輸出沒有太多的信息。
(5) show isis topology
該命令顯示 IS-IS 的拓撲結構信息,包含到其它中間系統的路徑信息。
R2# show isis topology
IS-IS IP paths to level-1 routers
System Id Metric Next-Hop Interface SNPA
R1 10 R1 Se0/0/0 *HDLC*
R2 --
R3 10 R3 Gi0/0 ca02.0f78.0000
R4 10 R4 Gi0/0 ca03.0f78.0000
IS-IS IP paths to level-2 routers
System Id Metric Next-Hop Interface SNPA
R1 10 R1 Se0/0/0 *HDLC*
R2 --
R3 10 R3 Gi0/0 ca02.0f78.0000
R4 10 R4 Gi0/0 ca03.0f78.0000
以上輸出表明 IS-IS 為 L1 路由器和 L2 路由器分別存放拓撲結構數據庫的,其中
“metric”是到達目標的 cost 之和。
(6) show isis database
該命令顯示 IS-IS 鏈路狀態數據庫。
R2# show isis database
IS-IS Level-1 Link State Database:
LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL
R1.00-00 0x0000001C 0x5F4F 1077 0/0/0
R2.00-00 * 0x0000001E 0xF57A 974 0/0/0
R3.00-00 0x0000001C 0x0608 855 0/0/0
R4.00-00 0x0000001B 0xA5FA 701 0/0/0
R4.02-00 0x00000018 0x9BE2 592 0/0/0
IS-IS Level-2 Link State Database:
LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL
R1.00-00 0x00000020 0xFD8C 882 0/0/0
R2.00-00 * 0x00000020 0x125F 493 0/0/0
R3.00-00 0x0000001E 0x658B 869 0/0/0
R4.00-00 0x0000001B 0x1870 542 0/0/0
R4.02-00 0x00000018 0x4DB9 916 0/0/0
以上輸出表明:
① IS-IS 為第一層路由和第二層路由分別維護獨立的鏈路狀態數據庫。由于 IS-IS 是
鏈路狀態路由協議,而且四臺路由器具有相同區域,所以它們的鏈路狀態數據庫是相同的;
② 路由器 R4 是 DIS,LSPID(鏈路狀態協議數據單元 ID)由三個部分構成:
第一部分是系統 ID,長度為 6 個字節;
第二部分是偽節點 ID,長度為一個字節,它代表了一個 LAN,當這個值非 0 時,表示該路
由器為 DIS;
第三部分是 LSP 分段號,長度為一個字節,如果是 00 表示所有的數據都在單個的 LSP
中;
③ 系統 ID 和偽節點就構成了電路 ID(Circuit ID),如:“R4.02”。
【技術要點】
DIS 的選舉原則如下:
① 只有形成鄰接關系的路由器才有資格參與選舉;
② 接口優先級最高成為 DIS;
③ 如果接口優先級相同,則最高的 SNPA 地址成為 DIS;
④ DIS 選舉是搶占的。
修改接口優先級的命令是“ isis priority”,默認是 64,取值范圍為 0-127。在本例中
可以將 R2 的以太口的接口優先級改為 100,則 R2 馬上被選為 DIS,顯示如下:
R2# show isis database
IS-IS Level-1 Link State Database:
LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL
R1.00-00 0x00000020 0x5753 1196 0/0/0
R2.00-00 * 0x00000023 0xD562 1197 0/0/0
R2.02-00 * 0x00000001 0x63FE 1189 0/0/0
R3.00-00 0x00000021 0xC80D 1191 0/0/0
R4.00-00 0x00000020 0x68FF 1191 0/0/0
IS-IS Level-2 Link State Database:
LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL
R1.00-00 0x00000024 0xF590 1196 0/0/0
R2.00-00 * 0x00000025 0x58E0 1198 0/0/0
R2.02-00 * 0x00000001 0x15D5 1198 0/0/0
R3.00-00 0x00000024 0xB0B5 1196 0/0/0
R4.00-00 0x00000021 0x639A 1196 0/0/0
(7) show isis route
該命令查看 CLNS 第一層路由信息。
R2# show isis route
IS-IS not running in OSI mode (*) (only calculating IP routes)
(*) Use "show isis topology" command to display paths to all routers
由于該命令是針對 OSI 路由選擇協議的,所以沒有具體的輸出。
(8) show ip protocols
該命令顯示和 IP 路由協議相關的信息。
R2# show ip protocols
Routing Protocol is " isis"
Invalid after 0 seconds, hold down 0 0, flushed after 0
//更新計時器全部為 0,表示 IS-IS 路由協議采用出發更新
Outgoing update filter list for all interfaces is not set
Incoming update filter list for all interfaces is not set
Redistributing: isis
Address Summarization:
None
Maximum path: 4
Routing for Networks:
Loopback0
Serial0/0/0
Gigabitethernet0/0
//以上四行表示運行 IS-IS 路由協議的接口
Routing Information Sources:
Gateway Distance Last Update
4.4.4.4 115 00:06:51
3.3.3.3 115 00:06:51
1.1.1.1 115 00:06:51
//以上五行表示路由信息源
Distance: (default is 115)
//默認管理距離
(9) show ip route
R2# show ip route isis
1.0.0.0/24 is subnetted, 1 subnets
i L1 1.1.1.0 [115/20] via 192.168.12.1, Serial0/0/0
3.0.0.0/24 is subnetted, 1 subnets
i L1 3.3.3.0 [115/20] via 192.168.1.3, GigabitEthernet0/0
4.0.0.0/24 is subnetted, 1 subnets
i L1 4.4.4.0 [115/20] via 192.168.1.4, GigabitEthernet0/0
以上輸出表明,如果路由器類型為“L1/L2”,區域內的路由用“ i L1”表示,即 level-1
路由。
【提示】
默認情況下,IS-IS 使用窄度量計算度量值,所有鏈路都使用 10 作為度量值,因為 IS-IS
不能象 OSPF 那樣基于帶寬自動的計算度量值。