Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

将 3 层 VPN 连接到第 2 层 VPN

使用 3 层 VPN 互连第 2 层 VPN 概述

随着MPLS 2 层服务的需求不断增长,服务提供商必须能够与 2 层和 3 层服务进行互操作并为客户提供增值服务,也带来了新的挑战。Junos OS具有多种功能,可解决服务提供商的需求。其中一项功能是使用逻辑隧道接口。此功能Junos OS通道 PIC 来从路由器回环数据包数据包转发引擎将第 2 层网络与第 3 层网络相链路。解决方案受到通道 PIC 施加的逻辑通道带宽约束的限制。

将 2 层 VPN 与 3 层 VPN 应用互连

将第 2 层 VPN 与 3 层 VPN 互连可提供以下优势:

  • 提供多个服务的单个接入线路 — 传统第 2 层电路上的 VPN 需要为 IP 和 VPN 服务调配和维护单独的网络。相比之下,第 2 层 VPN 则支持在 IP 服务和 2 层 VPN 服务之间共享提供商的核心网络基础架构,从而降低这些服务的提供成本。

  • 灵活性 — 服务提供商可以支持许多不同类型的网络。如果 VPN 中所有站点都由同一企业所有,则属于内部网。如果不同站点由不同的企业所有,VPN 就是一个外网。一个站点可以位于多个 VPN 中。

  • 各种可能的策略 — 您可为 VPN 中每个站点提供其他每个站点不同的路由,也可强制通过第三个站点路由的某些站点对之间的流量,以便让某些流量通过防火墙。

  • 可扩展网络 - 此设计可增强可扩展性,因为它无需提供商边缘 (PE) 路由器来维护服务提供商的所有 VPN 路由。每个 PE 路由器都维护每个直接连接的站点的 VRF 表。每个客户连接(例如帧中继 PVC、ATM PVC 或 VLAN)映射到特定 VRF 表。因此,这是 PE 路由器上的端口,而不是与 VRF 表相关联的站点。PE 路由器上的多个端口可以与单个 VRF 表相关联。PE 路由器能够维护多个支持路由信息按 VPN 分隔的转转表。

  • 路由反射器使用 — 提供商边缘路由器可维护 IBGP 会话以路由反射器,作为 IBGP 全网状会话的替代。部署多个路由反射器可增强 RFC 2547bis 模型的可扩展性,因为它无需任何单一网络组件来维护所有 VPN 路由。

  • 多个 VPN 相互独立且不同 — 客户边缘路由器相互之间不对等。两个站点仅在通用主干上具有 IP 连接,并且仅在有包含两个站点 VPN 时。即使两个 VPN 的地址空间重叠,此功能也保持 VPN 彼此独立和独特。

  • 客户使用简单 — 客户可以从服务提供商处获得 IP 骨干服务,而不需要维护自己的骨干网。

示例:将第 2 层 VPN 与 3 层 VPN 互连

此示例提供了使用第 3 层 VPN 互连和验证第 2 层 VPN 的逐步过程和命令。其中包含以下部分:

要求

此示例具有以下硬件和软件组件:

  • Junos OS 9.3 或更高版本

  • 五个 MX 系列路由器

  • 三M Series路由器

  • 两T Series路由器

概述和拓扑

第 2 层 VPN 是一种虚拟专用网络 (VPN),它使用MPLS标签来传输数据。通信在提供商边缘 (PE) 路由器之间发生。

第 2 层 VPN BGP信号协议,因此设计更简单,比传统第 2 层电路的调配开销更低。BGP信号还支持自动发现 2 层 VPN 对等方。第 2 层 VPN 可以具有全网状拓扑或中心辐式拓扑。核心网络的通道机制通常MPLS。但是,第 2 层 VPN 也可使用其他隧道协议,如 GRE。

3 层 VPN 基于 RFC 2547bis、BGP /MPLS IP VPN。RFC 2547bis 定义了一种机制,服务提供商可以使用其 IP 骨干网为客户提供 VPN 服务。第 3 层 VPN 是一组共享通用路由信息的站点,其连接由一组策略控制。作为第 3 层 VPN 的站点通过提供商的现有公共互联网主干网进行连接。RFC 2547bis VPN 也称为 BGP/MPLS VPN,因为 BGP 用于跨提供商的主干分发 VPN 路由信息,而 MPLS 用于跨骨干网将 VPN 流量转发至远程 VPN 站点。

客户网络是私有网络,因此可使用公共地址或私有地址,如 RFC 1918"专用互联网的地址分配" 中定义。当使用专用地址的客户网络连接到公共 Internet 基础架构时,专用地址可能会与其他网络用户使用的相同专用地址重叠。MPLS/BGP VPN 通过添加路由识别器来 解决此问题。路由区分符是添加到特定 VPN 站点每个地址的 VPN 标识符前缀,从而创建 VPN 内部和 Internet 中唯一的地址。

此外,每个 VPN 都有其自己的 VPN 特定路由表,仅包含该 VPN 的路由信息。为了将 VPN 的路由与公共互联网中的路由或其他 VPN 中的路由分开,PE 路由器为每个 VPN 创建称为 VPN 路由和转发 (VRF) 表的单独路由表。PE 路由器为每个与客户边缘 (客户边缘) 路由器连接的 VPN 创建一个 VRF 表。属于 VPN 的任何客户或站点只能访问该 VPN 的 VRF 表中路由。每个 VRF 表都有一个或多个与之关联的扩展社区属性,用于将路由识别为属于特定路由器集合。其中一个路由 目标 属性标识 PE 路由器用于分配路由的站点(VRF 表)集合。PE 路由器使用路由目标约束将远程路由导入其 VRF 表中。

当入口 PE 路由器接收直接从直接客户边缘路由器播发的路由时,它根据该 VPN 的 VRF 导出策略检查收到的路由。

  • 如果匹配,则路由转换为 VPN-IPv4 格式 — 即将路由识别器添加到路由中。然后,PE 路由器会向远程 PE 路由器公布 VPN-IPv4 格式的路由。它还将路由目标连接到从直接连接站点学习的每个路由。连接到路由的路由目标基于 VRF 表的已配置导出目标策略的值。然后,路由使用 IBGP 会话进行分配,这些会话在提供商的核心网络中配置。

  • 如果 客户边缘 路由器中的路由不匹配,它不会导出到其他 PE 路由器,但仍可在本地使用路由,例如,如果相同 VPN 中的两个 客户边缘 路由器直接连接到同一 PE 路由器。

当出口 PE 路由器收到路由时,会根据 PE 路由器之间的 IBGP 会话上的导入策略检查路由。如果接受,路由器将路由放入其 bgp.l3vpn.0 表中。同时,路由器根据 VPN 的 VRF 导入策略检查路由。如果匹配,则从路由中移除路由识别器,且路由以 IPv4 格式置入 VRF routing-instance-name表(.inet.0 表)。

拓扑

图 1 显示了第 2 层 VPN 到第 3 层 VPN 互连的物理拓扑。

图 1:终端到第 3 层 VPN 的 2 层 VPN 的物理拓扑 Physical Topology of a Layer 2 VPN Terminating into a Layer 3 VPN

图 2 中显示了第 2 层 VPN 至第 3 层 VPN 互连的逻辑 拓扑

图 2:终端到第 3 层 VPN 的 2 层 VPN 的逻辑拓扑 Logical Topology of a Layer 2 VPN Terminating into a Layer 3 VPN

以下定义描述图 1 和图 2 中使用的设备缩写 的含义

  • 客户边缘 (客户边缘) 设备 — 客户场所的设备,通过数据链路连接到一个或多个提供商边缘 (PE) 路由器,提供对服务提供商 VPN 的访问。

    通常,客户边缘设备是一个 IP 路由器,用于建立与直接连接的 PE 路由器的邻接关系。建立邻接关系后,客户边缘路由器将站点的本地 VPN 路由播发至 PE 路由器,从 PE 路由器学习远程 VPN 路由。

  • 提供商边缘 (PE) 设备—提供商网络边缘的一台设备或一组设备,用于显示提供商的客户站点视图。

    PE 路由器与 客户边缘交换路由信息。PE 路由器会注意到通过 VPN 连接的 VPN,PE 路由器则维护 VPN 状态。PE 路由器只需为直接连接的 VPN 维护 VPN 的 VPN 路由。从路由器学习客户边缘 VPN 路由后,PE 路由器使用 IBGP 与其他 PE 路由器交换 VPN 路由信息。最后,使用 MPLS 通过提供商的主干转发 VPN 数据流量时,入口 PE 路由器将用作入口 标签交换路由器 (标签交换路由器),出口 PE 路由器将用作出口标签交换路由器。

  • 提供商 (P) 设备 — 在提供商核心网络内部操作的设备,不直接连接到任何客户边缘。

    虽然 P 设备是服务提供商客户实施 VPN 的关键部分,可为许多提供商运营的隧道(属于不同 VPN)提供路由,但它本身无法感知 VPN,不维护 VPN 状态。其主要角色是允许服务提供商扩展其 VPN 产品,例如,充当多个 PE 路由器的聚合点。

    P 路由器在 PE MPLS之间转发 VPN 数据流量时,用作传输 LSR。P 路由器只需维护到提供商 PE 路由器的路由;不需要为每个客户站点维护特定的 VPN 路由信息。

配置

要第 2 层 VPN 与 3 层 VPN 互连,请执行以下任务:

配置基本协议和接口

逐步过程
  1. 在每个 PE 和 P 路由器上,OSPF所有接口上的信息流工程扩展来配置路由。禁用OSPF fxp0.0 接口上的配置。

  2. 在所有核心路由器上,在所有MPLS均启用配置。禁用MPLS fxp0.0 接口上的配置。

  3. 在所有核心路由器上,创建BGP 对等体组,将路由反射器地址 (192.0.2.7) 指定为邻接方。此外,BGP层次结构级别包含 语句,允许管理员为此对等组承载第 2 层 VPLS 网络层可达性信息 (NLRI) signaling [edit protocols bgp group group-name family l2vpn] 消息。

  4. 在路由器 PE3 上,创建BGP 对等体组,将路由反射器 IP 地址 (192.0.2.7) 指定为邻接方。允许BGP此对等组承载第 2 层 VPLS NLRI 消息,并且支持在 层次结构级别包含 语句,以处理 VPN-IPv4 unicast [edit protocols bgp group group-name family inet-vpn] 地址。

  5. 对于路由器 PE3 和路由器 PE5 上的第 3 层 VPN 域,在所有接口上启用 RSVP。禁用 fxp0.0 接口上的 RSVP。

  6. 在路由器 PE3 和路由器 PE5 上,创建到路由反射器和其他 PE 路由器的标签交换路径 (LSP)。以下示例显示路由器 PE5 上的配置。

  7. 在路由器 PE1、PE2、PE3 和 PE5 上,使用 IPv4 地址配置核心接口并启用MPLS地址族。以下示例显示路由器 PE2 上的 xe-0/1/0 接口配置。

  8. 在路由器 PE2 和路由器 PE3 上,为所有接口的 L2 VPN MPLS信号协议配置 LDP。禁用 fxp0.0 接口上的 LDP。(也可使用 RSVP。)

  9. 在路由反射器上,创建BGP 对等体组,将 PE 路由器 IP 地址指定为邻设备。

  10. 在路由反射器上,配置MPLS路由器 PE3 和 PE5 的 LSP,以从 inet.3 路由表BGP下一跃点。

配置 VPN 接口

逐步过程

路由器 PE2 是 2 层 VPN 的一端。路由器 PE3 正在第 2 层 VPN 和第 3 层 VPN 之间执行第 2 层 VPN 拼接。路由器 PE3 使用使用两个不同的第 2 层 VPN 实例下应用的不同逻辑接口单元配置的逻辑隧道接口 (lt 接口)。数据包通过路由器 PE3 上配置的 lt 接口循环。路由器 PE5 的配置包含 PE-客户边缘接口。

  1. 在路由器 PE2 上,配置 ge-1/0/2 接口封装。包括封装语句,在 层次结构 ethernet-ccc 级别指定 选项vlan-ccc ( 支持 [edit interfaces ge-1/0/2] 封装)。整个第 2 层 VPN 域(路由器 PE2 和 PE3)中的封装应相同。此外,配置接口 lo0。

  2. 在路由器 PE2 上,将路由实例配置为 [edit routing-instances] 层次结构级别。此外,还可在 [ 层次结构级别配置第edit routing-instances routing-instances-name protocols] 2 层 VPN 协议。将远程站点 ID 配置为 3。站点 ID 3 表示路由器 PE3 (中心-PE)。第 2 层 VPN 使用 LDP 作为信号协议。请注意,在下面的示例中,路由实例和协议均命名为 l2vpn

  3. 在路由器 PE5 上,为 PE-客户边缘 ge-2/0/0 配置千兆位以太网接口并配置 lo0 接口。

  4. 在路由器 PE5 上,在 层次结构级别配置第 3 层 VPN 路由[edit routing-instances]实例 (L3VPN)。还要在BGP级别配置[edit routing-instances L3VPN protocols]

  5. 在 MX 系列路由器(如路由器 PE3)中,您必须创建用于通道服务的通道服务接口。要创建通道服务接口bandwidth[edit chassis fpc slot-number pic slot-number tunnel-services],请包含 该语句并指定在层次结构级别中为隧道服务保留的带宽量(以千兆位/秒)。

  6. 在路由器 PE3 上,配置千兆以太网接口。

    在 层次结构 address 级别中包括 [edit interfaces ge-1/0/1.0 family inet] 语句,并指定为 198.51.100.9/24 IP 地址。

  7. 在路由器 PE3 上,在 lt-1/1/10.0 层次结构级别配置逻辑 [edit interfaces lt-1/1/10 unit 0] 隧道接口。路由器 PE3 是使用逻辑隧道接口 第 2 层 VPN 拼接到第 3 层 VPN 的路由器。对等方单元接口的配置就是实现互连。

    要配置接口,请包含 语句 encapsulation 并指定 ethernet-ccc 选项。包括 语句 peer-unit ,将逻辑接口单元指定为 1 对等通道接口。包括 语句 family 并指定 ccc 选项。

  8. 在路由器 PE3 上,在 lt-1/1/10.1 层次结构级别配置逻辑 [edit interfaces lt-1/1/10 unit 1] 隧道接口。

    要配置接口,请包含 语句 encapsulation 并指定 ethernet 选项。包括 语句 peer-unit ,将逻辑接口单元指定为 0 对等通道接口。包括 语句 family 并指定 inet 选项。在 层次结构 address 级别中包括 [edit interfaces lt-1/1/10 unit 0] 语句,并指定为 198.51.100.7/24 IPv4 地址。

  9. 在路由器 PE3 上,将 lt 接口单元 1 添加到层级的路由 [edit routing-instances L3VPN] 实例中。将实例类型 vrf 与对等 lt 方单元 1 配置为 PE-客户边缘 接口,以将路由器 PE2 上的 2 层 VPN 端入路由器 PE3 上的第 3 层 VPN。

  10. 在路由器 PE3 上,将 lt 接口单元 0 添加到层次结构级别的路由 [edit routing-instances protocols l2vpn] 实例。还要为第 2 层 VPN 和 3 层 VPN 路由实例配置相同的 vrf 目标,使路由可在实例之间泄露。上一步中的配置示例显示路由实例的 L3VPN vrf 目标。以下示例显示路由实例的 vrf l2vpn 目标。

  11. 在路由器 PE3 policy-statement 上,配置 语句,以将 lt 从直接连接的接口单元 1 学到的路由导出到所有 客户边缘 路由器,以根据需要实现连接。

结果

以下输出显示路由器 PE2 的完整配置:

路由器 PE2

以下输出显示路由器 PE5 的最终配置:

路由器 PE5

以下输出显示路由器 PE3 的最终配置:

路由器 PE3

验证

验证 2 层 VPN 到第 3 层 VPN 的互连:

验证路由器 PE2 VPN 接口

目的

检查第 2 层 VPN 是否已启动且在路由器 PE2 接口上工作,以及所有路由都在那里。

行动
  1. show l2vpn connections使用 命令验证连接站点 ID 对于路由器 PE3 为 3,以及状态为 Up

  2. show route table使用 命令验证第 2 层 VPN 路由是否存在,以及接口是否有下一10.10.5.2xe-0/2/0.0点。以下输出验证 l2vpn.l2vpn.0 表中是否包含第 2 层 VPN 路由。应该为路由器 PE3 显示类似输出。

  3. 验证路由器 PE2 是否具有两个方向(PUSH 和 MPLS 都指向路由器 PE3 的 LDP 标签 2 层 VPN 接入点。

意义

路由 l2vpn 实例在接口上已启动 ge-1/0/2 ,第 2 层 VPN 路由显示在表 l2vpn.l2vpn.0 中。表 mpls.0 显示了第 2 层 VPN 路由,用于使用 LDP 标签转发信息流。

验证路由器 PE3 VPN 接口

目的

检查路由器 PE2 和路由器 PE3 之间的第 2 层 VPN 连接是否工作正常 Up

行动
  1. 验证与BGP及家族的路由反射l2vpn-signalinginet-vpn器之间的已建立会话。

  2. 以下输出用于验证第 2 层 VPN 路由及关联的标签。

  3. 以下输出显示 mpls.0 路由表中的 L2VPN MPLS.0 路由。

  4. show route table mpls.0使用 命令和 选项detail查看BGP属性,例如下一跃点类型和标签操作。

验证从路由器 CE2 到路由器 CE5 和路由器 CE3 的端到端连接

目的

检查路由器 CE2、CE3 和 CE5 之间的连接。

行动
  1. 对路由器 CE2 中的路由器 CE3 IP 地址执行 Ping。

  2. 对路由器 CE2 中的路由器 CE5 IP 地址执行 Ping。