提要:
Readers of this document should have a basic knowledge of:
·
Border Gateway Protocol (BGP) and IS-IS routing protocols.
正文:
介绍:IS-IS OVERLOAD BIT (OL)位
l
传统应用:如果运行它的设备因内存不足而不能记录完整的链路状态数据库时,它具有通知其他路由器的能力,OL位就是用来指示路由器可能不能在进行正确的路由选择决策了,因为它的链路状态数据库已经不再完整。其他的路由器将仍然会转发数据包到这台过载路由器的直连网络上,但是,在这台过载路由器发送一个清除OL位的LSP数据包之前,其他路由器不会再利用这台路由器转发经过它传送的数据流了。
l
扩展应用:过载特性是在路由器没有那么多内存时期的产物。但是,OL位在现代的网络中,特别是在BGP网络中还有另外一个非常有用的用途。虽然像IS-IS这样的链路状态协议收敛速度非常快,但是BGP网络的收敛却比较慢――有时要花几分钟的时间。在BGP网络的内部,路由可能具有距离好几跳路由器的下一跳地址。当一个数据包到达时,将在BGP路由查找它的目的地址。转发这个数据包之前,在IGP的路由表中必须能够查找到该BGP路由的下一跳。
现在假定一台路由器重启,并且IGP已经被收敛但BGP还没有完成收敛。如果另外一台路由器根据的IGP路由确认这台的路由器是到达BGP下一跳的最优路径,那么它将把向下一跳地址转发的数据包转发到这台路由器上。但是,如果BGP还没有在这台路由器中完成收敛,该路由器可能没有关于这个数据包的BGP路由,从而丢弃该数据包,结果变成路由业务黑洞。
在BGP完成收敛之前,通过设置ISIS数据包的OL位,我们就可以避免这个问题。如果设置了OL位,那么其他路由器将会绕过这台新的路由器进行路由选择。一旦BGP完成收敛,OL位将被清除,数据包将可以通过这台路由器进行转发。
l
命令介绍:set-overload-bit on-startup 可以指定一个秒数,用来说明重启需要设置OL位的时间。当超过指定秒数时,OL位会被自动清除。
Set-overload-bit on-startup wait-for-bgp 这样一旦BGP完成收敛就会清除OL位。虽然这比使用一个静态的秒数更可以动态地调整。但是这种做法也有一个致命的弱点:如果某个BGP会话因为某些原因无法形成,那么OL位将永远都不会被清除。因此,通常的做法最好还是指定一个秒数来代替wait-for-bgp选项。
set-overload-bit 后面不指定参数就是手工模糊设置OL位。这在我们希望把一台路由器连接到IS-IS网络上并接收全部的数据库,但是又不希望这台路由器当作转发路径的路由器。这种应用地一个例子就是,把一台试验地路由器连接到一个商用的网络。
set-overload-bit suppress external 不通告重其他协议重分布进来的路由
set-overload-bit suppress interlevel 不通告其他level泄漏进来的
实验一
TOPO如下:
基本配置如下:
l
R1
l
R2
l
R3
R1基本配置
| interface Loopback0
ip address 1.1.1.1 255.255.255.0
!
interface Serial1/0
ip address 12.1.1.1 255.255.255.0
!
router bgp 1
no synchronization
bgp router-id 1.1.1.1
bgp log-neighbor-changes
network 1.1.1.0 mask 255.255.255.0
neighbor 12.1.1.2 remote-as 23
no auto-summary
|
R2基本配置
| !
interface Loopback0
ip address 2.2.2.2 255.255.255.0
!
interface Serial1/0
ip address 23.1.1.2 255.255.255.0
ip router isis
!
interface Serial2/0
ip address 12.1.1.2 255.255.255.0
!
router isis
net 10.0020.0200.2002.00
passive-interface Loopback0
default-information originate
! 向内部路由器注入一条默认路由
router bgp 23
no synchronization
bgp router-id 2.2.2.2
bgp log-neighbor-changes
redistribute connected route-map from-isis
redistribute isis level-1-2
neighbor 12.1.1.1 remote-as 1
no auto-summary
!
route-map from-isis permit 10
match interface Loopback0 Serial1/0
|
R3基本配置
| interface Loopback0
ip address 3.3.3.3 255.255.255.0
!
interface Serial2/0
ip address 23.1.1.3 255.255.255.0
ip router isis
!
router isis
net 10.0030.0300.3003.00
passive-interface Loopback0
|
测试⑴:
在R2进程下使用set-overload-bit on-startup wait-for-bgp
r2(config-router)#set-overload-bit on-startup wait-for-bgp
保存重启,观察BGP邻居起来前后情况
r2#sho isis da
IS-IS Level-1 Link State Database:
LSPID
LSP Seq Num
LSP Checksum
LSP Holdtime
ATT/P/OL
0010.0100.1001.00-00
0x00000004
0x9640
0 (1191)
0/0/0
r2.00-00
* 0x0000000C
0x15AA
1191
0/0/1
r3.00-00
0x0000000E
0x2396
1187
0/0/0
IS-IS Level-2 Link State Database:
LSPID
LSP Seq Num
LSP Checksum
LSP Holdtime
ATT/P/OL
0010.0100.1001.00-00
0x00000003
0x983F
0 (1191)
0/0/0
r2.00-00
* 0x00000013
0x4A40
1197
0/0/1
r3.00-00
0x00000009
0xA27E
1187
0/0/0
r2#
*Mar 31 09:15:18.895: %BGP-5-ADJCHANGE: neighbor 12.1.1.1 Up
――――- bgp起来了,发现OL位置0了
r2#sho isis da
IS-IS Level-1 Link State Database:
LSPID
LSP Seq Num
LSP Checksum
LSP Holdtime
ATT/P/OL
0010.0100.1001.00-00
0x00000004
0x9640
0 (1092)
0/0/0
r2.00-00
* 0x0000000D
0x0FB3
1124
0/0/0
r3.00-00
0x0000000E
0x2396
1088
0/0/0
IS-IS Level-2 Link State Database:
LSPID
LSP Seq Num
LSP Checksum
LSP Holdtime
ATT/P/OL
0010.0100.1001.00-00
0x00000003
0x983F
0 (1092)
0/0/0
r2.00-00
* 0x00000014
0x4449
1124
0/0/0
r3.00-00
0x00000009
0xA27E
1088
0/0/0
测试⑵:
在R2进程下使用set-overload-bit on-startup 120命令
保存重启,观察
r2#sho isis da
IS-IS Level-1 Link State Database:
LSPID
LSP Seq Num
LSP Checksum
LSP Holdtime
ATT/P/OL
r2.00-00
* 0x00000004
0x25A2
1195
0/0/1
r3.00-00
0x00000005
0x358D
1191
0/0/0
IS-IS Level-2 Link State Database:
LSPID
LSP Seq Num
LSP Checksum
LSP Holdtime
ATT/P/OL
r2.00-00
* 0x00000013
0x8AA0
1195
0/0/1
r3.00-00
0x00000010
0x9485
1191
0/0/0
过了两分钟我们看到OL位已经置0了
r2#sho version
r2 uptime is 2 minutes
r2#sho isis database
IS-IS Level-1 Link State Database:
LSPID
LSP Seq Num
LSP Checksum
LSP Holdtime
ATT/P/OL
r2.00-00
* 0x00000005
0x1FAB
1163
0/0/0
r3.00-00
0x00000005
0x358D
1049
0/0/0
IS-IS Level-2 Link State Database:
LSPID
LSP Seq Num
LSP Checksum
LSP Holdtime
ATT/P/OL
r2.00-00
* 0x00000015
0x424A
1163
0/0/0
r3.00-00
0x00000010
0x9485
1049
0/0/0
――――――――――――――――――――――――――――-
实验二
TOPO如下:

R1基本配置
| interface Loopback0
ip address 1.1.1.1 255.255.255.0
!
interface Serial1/0
ip address 135.8.1.1 255.255.255.0
ip router isis
!
router isis
net 11.0010.0100.1001.00
is-type level-2-only
passive-interface Loopback0
|
R2基本配置
| interface Loopback0
ip address 2.2.2.2 255.255.255.0
!
interface Serial1/0
ip address 135.8.2.2 255.255.255.0
ip router isis
!
interface Serial2/0
ip address 135.8.1.2 255.255.255.0
ip router isis
!
router isis
net 10.0020.0200.2002.00
redistribute static ip metric 11 level-1
redistribute isis ip level-2 into level-1 distribute-list 100
passive-interface Loopback0
!
ip classless
ip route 22.22.22.22 255.255.255.255 Loopback0
!
access-list 100 permit ip any any
|
R3基本配置
| interface Loopback0
ip address 3.3.3.3 255.255.255.0
!
interface Serial2/0
ip address 135.8.2.3 255.255.255.0
ip router isis
!
router isis
net 10.0030.0300.3003.00
is-type level-1
passive-interface Loopback0
|
测试⑴:
在R2上面查看IS-IS的数据库
r2#sho isis da detail | be r2
r2.00-00
* 0x0000000B
0x9A72
824
1/0/0
Area Address: 10
NLPID:
0xCC
Hostname: r2
IP Address:
2.2.2.2
Metric: 10
IP 135.8.2.0 255.255.255.0
Metric: 10
IP 135.8.1.0 255.255.255.0
Metric: 0
IP 2.2.2.0 255.255.255.0
Metric: 10
IS r3.00
Metric: 138
IP-Interarea 1.1.1.0 255.255.255.0
Metric: 11
IP-External 22.22.22.22
255.255.255.255
在R3上面查看路由表
r3# sho ip route | be Ga
Gateway of last resort is 135.8.2.2 to network 0.0.0.0
1.0.0.0/24 is subnetted, 1 subnets
i ia
1.1.1.0 [115/148] via 135.8.2.2, Serial2/0
2.0.0.0/24 is subnetted, 1 subnets
i L1
2.2.2.0 [115/10] via 135.8.2.2, Serial2/0
3.0.0.0/24 is subnetted, 1 subnets
C
3.3.3.0 is directly connected, Loopback0
22.0.0.0/32 is subnetted, 1 subnets
i L1
22.22.22.22 [115/21] via 135.8.2.2, Serial2/0
135.8.0.0/24 is subnetted, 2 subnets
C
135.8.2.0 is directly connected, Serial2/0
i L1
135.8.1.0 [115/20] via 135.8.2.2, Serial2/0
i*L1 0.0.0.0/0 [115/10] via 135.8.2.2, Serial2/0
抑制外部路由
r2(config-router)#set-overload-bit suppress external
查看R3的路由表,我们发现22.22.22.22和0.0.0.0/0的路由没有了
r3#sho ip route | be Ga
Gateway of last resort is not set
1.0.0.0/24 is subnetted, 1 subnets
i ia
1.1.1.0 [115/148] via 135.8.2.2, Serial2/0
2.0.0.0/24 is subnetted, 1 subnets
i L1
2.2.2.0 [115/10] via 135.8.2.2, Serial2/0
3.0.0.0/24 is subnetted, 1 subnets
C
3.3.3.0 is directly connected, Loopback0
135.8.0.0/24 is subnetted, 2 subnets
C
135.8.2.0 is directly connected, Serial2/0
i L1
135.8.1.0 [115/20] via 135.8.2.2, Serial2/0
抑制内部、外部路由
router isis
set-overload-bit suppress external interlevel
查看R3的路由表,我们发现重发布进来的路由都没有了
r3#sho ip route | be Ga
Gateway of last resort is not set
2.0.0.0/24 is subnetted, 1 subnets
i L1
2.2.2.0 [115/10] via 135.8.2.2, Serial2/0
3.0.0.0/24 is subnetted, 1 subnets
C
3.3.3.0 is directly connected, Loopback0
135.8.0.0/24 is subnetted, 2 subnets
C
135.8.2.0 is directly connected, Serial2/0
i L1
135.8.1.0 [115/20] via 135.8.2.2, Serial2/0
查看数据库,我们发现OL位已经置1了
r2#sho isis database detail
IS-IS Level-1 Link State Database:
LSPID
LSP Seq Num
LSP Checksum
LSP Holdtime
ATT/P/OL
r2.00-00
* 0x0000000F
0x1606
1075
0/0/1
Area Address: 10
NLPID:
0xCC
Hostname: r2
IP Address:
2.2.2.2
Metric: 10
IP 135.8.2.0 255.255.255.0
Metric: 10
IP 135.8.1.0 255.255.255.0
Metric: 0
IP 2.2.2.0 255.255.255.0
Metric: 10
IS r3.00
|