目录

简介

先决条件

要求

使用的组件

规则

什么是路由泄漏？

如何能使用路由泄漏？

如何能配置路由泄漏？

相关信息

简介

本文档概述了中间系统到中间系统(IS-IS)路由泄漏。

先决条件

要求

本文档没有任何特定的要求。

使用的组件

本文档不限于特定的软件和硬件版本。

规则

有关文件规则的更多信息请参见“ Cisco技术提示规则”。

什么是路由泄漏？

IS-IS路由协议允许路由信息的两级层次结构。可以有多个1级区域通过连续的2级主干互连。路由器可以属于1级、2级或两者。1级链路状态数据库仅包含有关该区域的信息。第2级链路状态数据库包含有关该级别以及每个第1级区域的信息。L1/L2路由器同时包含1级和2级数据库。它向L2通告有关其所属L1区域的信息。每个L1区域实质上是末节区域。发往L1区域外的地址的数据包会路由到最近的L1/L2路由器，以转发到目标区域。当到目的地的最短路径是通过不同的L1/L2路由器时，路由到最近的L1/L2路由器可能会导致次优路由。通过提供将L2信息泄漏或重分发到L1区域的机制，路由泄漏有助于减少次优路由。通过更详细地了解区域间路由，L1路由器可以更好地选择哪台L1/L2路由器转发数据包。

RFC 2966 中定义了路由泄漏，以便与窄度量类型、长度和值(TLV)类型128和130一起使用。IS-IS扩展用于流量工程 ，定义了用于宽度量TLV类型135的路由泄漏。两个草案都定义了/down位，指示TLV中定义的路由是否已泄露。如果上/下位设置为0，则路由在该L1区域内产生。如果未设置上/下位（为0），则路由已从L2重分发到区域。上/下位用于防止路由信息和转发环路。L1/L2路由器不会向L2重新通告设置了上/下位的任何L1路由。

如何能使用路由泄漏？

通常，L1路由器将发往本地区域外部地址的数据包转发到最近的L1/L2路由器，这可能导致次优的路由决策。在下面的网络图中，路由器C通过路由器X和Y转发发往区域2和3的所有流量。如果我们假设所有链路的开销为1，所有链路的开销为2，而到达路由器Y的开销为5。同样，路由器D通过路由器B路由路由器X和Y的流量。

当您使用路由泄漏时，有关区域2和3的信息可由路由器A和路由器B重新分发到区域1。这允许路由器C和路由器D选择最佳路径到达区域2和区域3。路由器C现在通过路由器A将流量发送到区域3;这样，在通过路由器A转发到区域2的同时，将开销降到3。同样，路由器D通过路由器C转发到区域2，同时仍通过路由器B路由到区域3。

通过在路由器A和路由器B上启用路由泄漏，路由器C和D能够确定它们到达区域2和区域3的真正成本。路由泄漏使IS-IS能够对发往其他区域的数据包执行“最短路径退出”。

在MPLS-VPN环境中，需要为每个提供商边缘(PE)路由器的环回地址提供可达性信息。PE环回的漏路允许在此类实施中使用多区域层次结构。

路由泄漏也可用于实施粗糙形式的交通工程。通过从特定L1/L2路由器泄漏个别计算机或服务的路由，您可以控制从L1区域到达这些地址的出口点。

如何能配置路由泄漏？

Cisco IOS®软件版本12.0S、12.0T和12.1中实施并支持路由泄漏。12.0T和12.1版本使用相同的配置命令。12.0S版本的命令语法不同，但是，在路由器IS-IS配置中输入了这两个命令。您必须创建IP扩展访问列表，以定义哪些路由将从2级泄露到1级。IOS 12.0S仅支持使用135 TLV类型的路由泄漏。如果配置了路由泄漏而未配置宽样式度量，则不会发生路由泄漏。IOS 12.0T和12.1支持使用窄样式或宽样式度量的路由泄漏，但我们建议使用宽样式度量。

下表显示了每个IOS版本的配置命令：

IOS软件版本

命令

12.0S

advertise ip l2-into-l1 <100-199>度量样式宽
注意：第二条语句为必填项。

12.0T和12.1

redistribute isis ip level-2 into level-1 distribute-list <100-199>metric-style wide
注：第二条语句是可选的，但建议使用。

泄露的路由在路由表和IS-IS数据库中称为区域间路由。查看路由表时，泄漏的路由标有IA标识。

RtrB# show ip route

Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP

D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP

i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area

* - candidate default, U - per-user static route, o - ODR

P - periodic downloaded static route

Gateway of last resort is 55.55.55.1 to network 0.0.0.0

i ia 1.0.0.0/8 [115/30] via 55.55.55.1, Serial1/0

i ia 2.0.0.0/8 [115/30] via 55.55.55.1, Serial1/0

i ia 3.0.0.0/8 [115/30] via 55.55.55.1, Serial1/0

i ia 4.0.0.0/8 [115/30] via 55.55.55.1, Serial1/0

55.0.0.0/24 is subnetted, 1 subnets

C       55.55.55.0 is directly connected, Serial1/0

i ia 5.0.0.0/8 [115/30] via 55.55.55.1, Serial1/0

7.0.0.0/24 is subnetted, 1 subnets

C       7.7.7.0 is directly connected, FastEthernet0/0

44.0.0.0/24 is subnetted, 1 subnets

i L1    44.44.44.0 [115/20] via 55.55.55.1, Serial1/0

i*L1 0.0.0.0/0 [115/10] via 55.55.55.1, Serial1/0

在IS-IS数据库中，泄漏的路由标有IP-Rea间标识。

RtrB# show isis database detail

IS-IS Level-1 Link State Database:

LSPID                 LSP Seq Num  LSP Checksum  LSP Holdtime      ATT/P/OL

rpd-7206g.00-00       0x00000008   0x0855        898               1/0/0

Area Address: 49.0002

NLPID:        0xCC

Hostname: rpd-7206g

IP Address:   44.44.44.2

Metric: 10         IP 55.55.55.0/24

Metric: 10         IP 44.44.44.0/24

Metric: 10         IS-Extended rpd-7206a.00

Metric: 20         IP-Interarea 1.0.0.0/8

Metric: 20         IP-Interarea 2.0.0.0/8

Metric: 20         IP-Interarea 3.0.0.0/8

Metric: 20         IP-Interarea 4.0.0.0/8

Metric: 20         IP-Interarea 5.0.0.0/8

在引入128和130 TLV的路由泄漏上/下位之前，默认度量的位8保留用于以下用途：传输时应设置为零，接收时应忽略。第7位（I/E位）用于区分TLV 130中重分发路由的内部和外部度量类型。在IOS版本12.0S及更早版本中，第8位用作I/E位，而不是第7位。这在使用窄型度量时引入了12.0S和12.0T/12.1版本之间的几个互操作性差异。

运行IOS 12.0T或12.1的路由器识别上/下位，并相应地处理路由，无论该路由器上是否配置了路由泄漏。如果L1或L1/L2路由器未运行IOS 12.0T或12.1代码，则使用metric-type external重分发路由，它会将默认度量的位8设置为1。运行12.0T或12.12.1的L1/L2路由器看到位8（上/下位），并将其解释为具有被泄露了。因此，该路由不会在该路由器的L2 LSP中重新通告。这可能导致路由信息不在整个网络中传播的不理想效果。

相反，如果某条路由被运行IOS 12.0T或12.1的路由器泄漏到L1，它会将位8设置为1。在运行IOS 12.0S或更早版本的L1区域中，路由器会看到已设置位8，并将该路由视为具有度量类型外部路由。运行IOS版本12.0S或更低版本的L1/L2路由器在其L2 LSP中重新通告该路由，因为它不将第8位识别为up/down位。这可能导致路由环路。

以下示例演示了这些不规范之处。RtrA运行IOS版本12.1，并使用窄型度量泄露了多条路由。RtrB运行IOS 12.0S，并使用metric-type external重分发多条路由。

在RtrA上，从RtrB重分发的路由被错误地视为区域间路由：

RtrA# show ip route

Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP

D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP

i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter

area

* - candidate default, U - per-user static route, o - ODR

P - periodic downloaded static route

Gateway of last resort is not set

i L2 1.0.0.0/8 [115/20] via 44.44.44.1, ATM3/0

i L2 2.0.0.0/8 [115/20] via 44.44.44.1, ATM3/0

i L2 3.0.0.0/8 [115/20] via 44.44.44.1, ATM3/0

i L2 4.0.0.0/8 [115/20] via 44.44.44.1, ATM3/0

55.0.0.0/24 is subnetted, 1 subnets

C       55.55.55.0 is directly connected, Serial1/0

i L2 5.0.0.0/8 [115/20] via 44.44.44.1, ATM3/0

7.0.0.0/24 is subnetted, 1 subnets

C       7.7.7.0 is directly connected, FastEthernet0/0

i ia 110.0.0.0/8 [115/138] via 55.55.55.2, Serial1/0

44.0.0.0/24 is subnetted, 1 subnets

C       44.44.44.0 is directly connected, ATM3/0

i ia 120.0.0.0/8 [115/138] via 55.55.55.2, Serial1/0

i ia 140.0.0.0/8 [115/138] via 55.55.55.2, Serial1/0

i ia 130.0.0.0/8 [115/138] via 55.55.55.2, Serial1/0

i ia 150.0.0.0/8 [115/138] via 55.55.55.2, Serial1/0

在RtrB上，RtrA泄漏的路由被错误地视为外部：

RtrB# show ip route

Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP

D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP

i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter

area

* - candidate default, U - per-user static route, o - ODR

Gateway of last resort is 55.55.55.1 to network 0.0.0.0

i L1 1.0.0.0/8 [115/158] via 55.55.55.1, Serial1/0

i L1 2.0.0.0/8 [115/158] via 55.55.55.1, Serial1/0

i L1 3.0.0.0/8 [115/158] via 55.55.55.1, Serial1/0

i L1 4.0.0.0/8 [115/158] via 55.55.55.1, Serial1/0

55.0.0.0/24 is subnetted, 1 subnets

C       55.55.55.0 is directly connected, Serial1/0

i L1 5.0.0.0/8 [115/158] via 55.55.55.1, Serial1/0

7.0.0.0/24 is subnetted, 1 subnets

C       7.7.7.0 is directly connected, FastEthernet0/0

S    110.0.0.0/8 is directly connected, Null0

44.0.0.0/24 is subnetted, 1 subnets

i L1    44.44.44.0 [115/20] via 55.55.55.1, Serial1/0

S    120.0.0.0/8 is directly connected, Null0

i*L1 0.0.0.0/0 [115/10] via 55.55.55.1, Serial1/0

S    140.0.0.0/8 is directly connected, Null0

S    130.0.0.0/8 is directly connected, Null0

S    150.0.0.0/8 is directly connected, Null0

如果不将重分发与度量类型外部一起使用，则不设置第8位。此解决方法可防止运行IOS 12.1的L1/L2路由器在其L2 LSP中不重新通告重分发的路由。如果使用宽度度量，则运行IOS 12.0S的路由器能够识别上下位。此解决方法可防止12.0S路由器在128和130 TLV类型中不识别上/下位时引入路由环路。

此外，窄样式度量仅为6位，而宽样式度量使用的32位。使用窄型度量时，许多区域间路由可能以最大内部度量63泄漏，而不管真实度量如何。出于这些原因，我们建议避免使用度量类型外部和使用宽样式度量进行重分发。

相关信息

- RFC 1142 - OSI IS-IS域内路由协议

- RFC 1195 — 在TCP/IP和双环境中使用OSI IS-IS进行路由

- IS-IS 支持页

- 技术支持 - Cisco Systems