Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

示例:配置基于 MPLS 的第 2 层 VPN

此示例说明如何在运行 Junos OS 的路由器或交换机上配置和验证基于 MPLS 的第 2 层 VPN。

注意:

我们的内容测试团队已经验证并更新了此示例。

您可以使用运行 Junos OS 的路由器和交换机部署基于 MPLS 的第 2 层虚拟专用网络,通过第 2 层连接互连客户站点。第 2 层 VPN 让客户可以完全控制自己选择的传输和路由协议。

基于 MPLS 的 VPN 需要提供商网络中的基准 MPLS 功能。基本 MPLS 开始运行后,您就可以配置使用标签交换路径 (LSP) 的 VPN,以便通过提供商的核心进行传输。

添加 VPN 服务不会影响提供商网络中的基本 MPLS 交换作。事实上,提供商 (P) 设备不需要基准 MPLS 配置,因为它们无法感知 VPN。VPN 状态仅在 PE 设备上维护。这也是基于 MPLS 的 VPN 具有如此可扩展性的一个关键原因。

要求

此示例使用以下硬件和软件组件:

  • Junos OS 15.1 或更高版本

    • 在 Junos OS 20.1R1 版上重新验证

  • 两台提供商边缘 (PE) 设备

  • 一个提供商 (P) 设备

  • 两台客户边缘 (CE) 设备

该示例重点介绍如何将第 2 层 VPN 添加到预先存在的 MPLS 基准。如果您的网络尚未部署 MPLS,则会提供基本的 MPLS 配置。

要支持基于 MPLS 的 VPN,底层 MPLS 基准必须提供以下功能:

  • 面向核心的环路接口,支持 MPLS 系列

  • OSPF 或 IS-IS 等内部网关协议,用于在提供商设备的环路地址(P 和 PE)之间提供可访问性

  • 用于 LSP 信号的 MPLS 信令协议(如 LDP 或 RSVP)

  • 在 PE 设备环路地址之间建立的 LSP

参与给定 VPN 的每对 PE 设备之间都需要 LSP。最好在所有 PE 设备之间构建 LSP,以适应未来的 VPN 增长。您可以在 [edit protocols mpls] 层级配置 LSP。与用于电路交叉连接 (CCC) 的 MPLS 配置不同,您不需要手动将 LSP 与 PE 设备面向客户的(边缘)接口相关联。相反,第 2 层 VPN 使用 BGP 信令来传达第 2 层站点可达性。此 BGP 信令可自动将远程第 2 层 VPN 站点映射到 LSP 转发下一跃点。这意味着,使用第 2 层 VPN,无需将 LSP 显式映射到 PE 设备面向边缘的接口。

有关 CCC 的详细信息,请参阅 使用第 2 层电路配置基于 MPLS 的 VLAN CCC

概述和拓扑

第 2 层 VPN 可在提供商网络和客户网络之间实现完全隔离。第 2 层 VPN 的优势包括支持非标准传输协议,以及隔离客户和提供商网络之间的链路寻址和路由协议作。

VPN 的定义仅涉及对本地和远程 PE 设备的更改。提供商设备上不需要其他配置(基准 MPLS 支持除外),因为这些设备仅提供基本 MPLS 交换功能。CE 设备不使用 MPLS。它们只需要一个基本接口,如果需要,还需要协议配置,即可在第 2 层 VPN 上运行。对于第 2 层 VPN,您可以将 CE 设备配置为已连接到共享链路的设备。

建立 MPLS 基准后,您必须在 PE 设备上配置以下功能,以建立基于 MPLS 的第 2 层 VPN:

  • 具有的 BGP 组 family l2vpn signaling

  • 具有实例类型的路由实例 l2vpn

  • PE 设备上面向客户的接口必须按如下方式配置:

    • 指定 ethernet-cccvlan-ccc 物理层封装,具体取决于是否正在使用 VLAN 标记。

    • 在路由实例配置中配置匹配的封装类型。

    • 使用配置 family ccc用于第 2 层 VPN 的逻辑接口(单元)。

图 1 提供了此基于 MPLS 的第 2 层 VPN 示例的拓扑。该图详细说明了提供商网络中使用的接口名称、IP 寻址和协议。它还强调了 CE 设备寻址和协议栈作的端到端性质。与第 3 层 VPN 不同,在第 2 层 VPN 中,CE 设备作对提供商网络是不透明的。CE 设备与提供商网络之间没有对等关系。因此,您希望 CE 设备在提供商网络 形成 OSPF 邻接关系, 而非在提供商网络中形成 OSPF 邻接关系。

图 1:基于 MPLS 的第 2 层 VPN An MPLS-Based Layer 2 VPN

快速配置

使用本部分中的配置可快速启动并运行基于 MPLS 的第 2 层 VPN。这些配置包括支持第 2 层 VPN 的功能性 MPLS 基准。此示例重点介绍配置的 VPN 方面。有关此示例中使用的基线 MPLS 功能的其他信息,请参阅以下链接:

CLI 快速配置

注意:

设备配置省略了管理界面、静态路由、系统日志记录、系统服务和用户登录信息。配置的这些部分因位置而异,与 MPLS 或 VPN 功能没有直接关系。

根据环境的具体情况编辑以下命令,并将其粘贴到本地 CE (CE1) 设备终端窗口中:

CE1 设备的完整配置。

根据环境的具体情况编辑以下命令,并将其粘贴到本地 PE (PE1) 设备终端窗口中:

PE1 设备的完整配置。

P 设备的完整配置。

PE2 设备的完整配置。

CE2 设备的完整配置。

当您对工作感到满意时,请务必在所有设备上提交配置更改。恭喜您获得基于 MPLS 的全新第 2 层 VPN!请参阅 “验证 ”部分,了解确认 VPN 是否按预期工作所需的步骤。

为基于 MPLS 的第 2 层 VPN 配置本地 PE (PE1) 设备

本节介绍在此示例中配置 PE1 设备所需的步骤。有关此示例中使用的 CE 设备和 P 设备配置,请参阅 示例:配置基于 MPLS 的第 2 层 VPN 部分。

配置 MPLS 基准(如果需要)

在配置第 2 层 VPN 之前,请确保 PE 设备具有有效的 MPLS 基准。如果已有 MPLS 基准,则可以跳到分步过程,将第 2 层 VPN 添加到本地 PE 设备。

  • 配置主机名。

  • 配置接口。

    谨慎:

    第 2 层 VPN 不支持提供商网络中的分段。提供商网络必须支持 PE 设备添加 MPLS 和虚拟路由转发 (VRF) 标签 CE 设备可以生成的最大帧,这一点至关重要。此示例将 CE 设备保留为默认的 1500 字节最大传输单元 (MTU),同时将提供商核心配置为支持 4000 字节 MTU。此配置可确保 CE 设备不会超过提供商网络中的 MTU,从而避免丢弃。

  • 配置协议。

    注意:

    RSVP 信号 LSP 支持流量工程,但基本 MPLS 交换或 VPN 部署不需要流量工程。提供的 MPLS 基准使用 RSVP 向 LSP 发出信号,并支持 OSPF 的流量工程。但是,未配置任何路径限制,因此您希望 LSP 通过内部网关协议的最短路径进行路由。

  • 将 LSP 定义为远程 PE 设备的环路地址。

程序

分步过程

按照以下步骤为第 2 层 VPN 配置 PE1 设备。

  1. 配置面向边缘的接口。在单元 0 上指定 with 的family ccc物理封装类型ethernet-ccc。这是未标记以太网接口的唯一有效单元号。如果使用 VLAN 标记,请指定vlan-ccc封装并将 CCC 家族添加到所需单元。

    提示:

    您可以在同一 PE 设备上同时配置基于 MPLS 的第 2 层 VPN 和基于 MPLS 的第 3 层 VPN。但是,您不能将同一个面向客户边缘的接口配置为同时支持第 2 层 VPN 和第 3 层 VPN。

    注意:

    第 2 层 VPN 要求在物理设备级别配置 PE 设备面向边缘的接口,并在设备级别配置 CCC 家族。无论您是部署 CCC、基于 MPLS 的第 2 层 VPN,还是部署基于 MPLS 的第 3 层 VPN,提供商设备的配置方式都是相同的。这是因为它们没有面向边缘的接口或 VPN 感知。

  2. 为本地和远程 PE 设备之间的对等互连配置 BGP 组。使用 PE 设备的环路地址作为本地地址并启用 family l2vpn signaling

  3. 将 BGP 组类型配置为内部。

  4. 将远程 PE 设备的环路地址配置为 BGP 邻接方。

  5. 配置 BGP 自治系统编号。

  6. 配置路由实例。首先指定实例名称 l2vpn1,并以 instance-typel2vpn

  7. 将 PE 设备面向客户的接口配置为属于路由实例。

  8. 配置路由实例的路由识别符。此设置用于区分从特定 PE 设备上的特定 VRF 发送的路由。对于每个 PE 设备上的每个路由实例,它应该是唯一的。

  9. 配置实例的虚拟路由和转发 (VRF) 表路由目标。该 vrf-target 语句将指定的社区标记添加到所有播发的路由,同时自动匹配相同的路由导入值。为了实现正确的路由交换,需要在共享给定 VPN 的 PE 设备上配置匹配的路由目标。

    注意:

    您可以通过使用导入和导出选项显式配置 VRF 导入和导出策略来创建更复杂的策略。有关详细信息,请参阅 vrf-importvrf-export

  10. 配置 l2vpn 实例中的协议,并指定在面向边缘的链路上使用的封装。如果边缘接口已标记 VLAN,请务必指定 ethernet-vlan

  11. 在实例 l2vpn 的节下添加面向边缘的接口以及描述。

  12. 配置第 2 层 VPN 站点信息,并将面向边缘的接口与本地客户站点进行关联。

    注意:

    在此示例中,PE1 设备的站点 ID 为 1,PE2 设备的站点 ID 为 2对于本地 PE 设备 (PE1),远程站点的值 2 已正确配置remote-site-id

  13. 在 PE1 设备上提交更改,然后返回到 CLI作模式。

结果

显示 PE1 设备上的配置结果。输出仅反映此示例中添加的功能配置。

为基于 MPLS 的第 2 层 VPN 配置远程 PE (PE2) 设备

本节讲解在此示例中配置 PE2 设备所需的步骤。有关此示例中使用的 CE 设备和 P 设备配置,请参阅 示例:配置基于 MPLS 的第 2 层 VPN 部分。

配置 MPLS 基准(如果需要)

在配置第 2 层 VPN 之前,请确保 PE 设备具有有效的 MPLS 基准。如果已有 MPLS 基准,则可以跳到分步过程,将第 2 层 VPN 添加到本地 PE 设备。

  • 配置主机名。

  • 配置接口。

    谨慎:

    第 2 层 VPN 不支持提供商网络中的分段。提供商网络必须支持 PE 设备添加 MPLS 和虚拟路由转发 (VRF) 标签 CE 设备可以生成的最大帧,这一点至关重要。此示例将 CE 设备保留为默认的 1500 字节最大传输单元 (MTU),同时将提供商核心配置为支持 4000 字节 MTU。此配置可确保 CE 设备不会超过提供商网络中的 MTU,从而避免丢弃。

  • 配置协议。

    注意:

    RSVP 信号 LSP 支持流量工程,但基本 MPLS 交换或 VPN 部署不需要流量工程。提供的 MPLS 基准使用 RSVP 向 LSP 发出信号,并支持 OSPF 的流量工程。但是,未配置任何路径限制,因此您希望 LSP 通过内部网关协议的最短路径进行路由。

  • 将 LSP 定义为远程 PE 设备的环路地址。

程序

分步过程

请按照以下步骤为第 2 层 VPN 配置 PE2 设备。

  1. 配置面向边缘的接口封装和家族。回想一下,这是一个未标记的接口,因此只有单元 0 对 ccc 该系列有效。

  2. 配置 BGP 组。将 PE 设备的环路地址指定为本地地址并启用 family l2vpn signaling

  3. 将 BGP 组类型配置为内部。

  4. 将 PE1 设备配置为 BGP 邻接方。请务必将 PE1 的环路地址指定为 BGP 邻接方。

  5. 配置 BGP 自治系统编号。

  6. 配置路由实例。首先用 指定l2vpn实例instance-type名称l2vpn1

  7. 将 PE 设备面向客户边缘的接口配置为属于路由实例。

  8. 配置实例的路由识别符。

  9. 配置实例的 VPN 虚拟路由和转发 (VRF) 表路由目标。分配的目标必须与在 PE1 设备上配置的目标匹配。

  10. 配置协议的 l2vpn 实例,并指定在面向边缘的链路上使用的封装。

  11. 在实例 l2vpn 的层次结构下添加 PE 设备面向边缘的接口以及描述。

  12. 配置实例的第 2 层 VPN 站点信息,并在本地站点下列出 PE 设备的边缘接口。在 PE2 设备上配置的本地站点 ID 必须与您在 PE1 设备上配置的远程站点 ID 匹配,反之亦然。

    注意:

    在此示例中,PE2 设备的站点 ID 为 2,PE1 设备的站点 ID 为 1对于 PE2 设备,远程站点的值已正确配置为 remote-site-id 1。

  13. 在 PE2 设备上提交更改,然后返回到 CLI作模式。

结果

显示 PE2 设备上的配置结果。

验证

执行以下任务以验证基于 MPLS 的第 2 层 VPN 是否工作正常:

验证提供商 OSPF 邻接和路由交换

目的

通过验证邻接状态和 OSPF 学习的路由到远程提供商设备的环路地址,确认 OSPF 协议在提供商网络中工作正常。正确的 IGP作对于成功建立 MPLS LSP 至关重要。

行动

意义

输出显示 PE1 设备已与 P 设备 (192.168.0.2) 建立 OSPF 邻接关系。它还显示,通过本地 PE 设备的 OSPF 学习 P 和远程 PE 设备环路地址 (192.168.0.2) 和 (192.168.0.3)。

验证 MPLS 和 RSVP 接口设置

目的

验证 RSVP 和 MPLS 协议是否配置为在 PE 设备面向核心的接口上运行。此步骤还会验证 family mpls 在面向核心的接口的单元级别是否正确配置。

行动

意义

输出显示,MPLS 和 RSVP 已在本地 PE 设备的面向核心的环路接口上正确配置。

验证 RSVP 信号 LSP

目的

验证是否在 PE 设备之间正确建立了 RSVP 会话(入口和出口)。

行动

意义

输出显示已在 PE 设备之间正确建立入口和出口 RSVP 会话。成功建立 LSP 表明 MPLS 基准已正常运行。

验证 BGP 会话状态

目的

验证 PE 设备之间的 BGP 会话是否已正确建立,并支持第 2 层 VPN 网络层可达性信息 (NLRI)。

行动

意义

输出显示到远程 PE 设备 (192.168.0.3) 的 BGP 会话已正确建立 (Establ),并通过Up/Dwn字段显示该会话处于当前状态 ()1:34 的时间。它还会显示发送到 () 和从远程 PE 设备 (56) 接收的 BGP 数据包数。字段flaps确认未发生状态转换 (0),表示会话稳定。另请注意,第 2 层 VPN NLRI 已在 PE 设备之间正确交换。此输出确认 PE 设备之间的 BGP 对等互连已准备好支持第 2 层 VPN。

验证路由表中的第 2 层 VPN 路由

目的

验证 PE1 设备上的路由表是否填充了用于在 CE 设备之间转发流量的第 2 层 VPN 路由。

行动

意义

命令 show route table bgp.l2vpn.0 显示已在 PE 设备上接收的所有第 2 层 VPN 路由。命令 show route table l2vpn1.l2vpn.0 显示由于匹配的路由目标而导入到路由实例中的 l2vpn1 第 2 层 VPN 路由。该 l2vpn1.l2vpn.0 表包含本地 PE 设备的第 2 层 VPN 路由,以及通过 BGP 对等连接到远程 PE 设备获知的远程路由。两个表均显示,远程第 2 层 VPN 路由已与 lsp_to_pe2 LSP 正确关联,作为转发下一跃点。输出确认本地 PE 设备已从 PE2 设备获知远程客户站点。它还显示,它可以通过提供商网络使用 MPLS 传输将第 2 层 VPN 流量转发到 PE2 设备。

验证第 2 层 VPN 连接状态

目的

验证第 2 层 VPN 连接的状态。

行动

意义

St输出中的字段显示,到 Remote PE 192.168.0.3 at connection-site 2 的第 2 层 VPN 连接为 Up。输出还会确认 PE 设备的面向边缘的接口名称ge-0/0/0.0和作状态为 up。您还可以验证是否在 PE 设备面向客户的接口上配置了以太网封装。这是此示例中使用的未标记以太网接口的正确封装。到目前为止执行的验证步骤表明第 2 层 VPN 的控制平面可运行。您可以通过以下步骤验证第 2 层 VPN 的数据平面。

使用第 2 层 VPN 连接对远程 PE 设备执行 Ping 命令

目的

验证本地和远程 PE 设备之间的第 2 层 VPN 连接。显示了命令的 ping mpls l2vpn 两种形式。两者都测试 PE 设备之间的第 2 层 VPN 路由和 MPLS 转发。第一个命令假定单个远程站点,而第二个命令指定本地和远程站点标识符,这在测试多站点第 2 层 VPN 时很有用。这是因为远程站点 ID 可用于定位所需的远程 PE 设备。

注意:

命令 ping mpls l2vpn 将验证 PE 设备之间的第 2 层 VPN 路由交换和 MPLS 转发。方法是将流量从本地 PE 的第 2 层 VPN 路由实例生成为远程 PE 设备的 127.0.0.1 环路地址。此命令不验证 CE 设备接口或其配置的作。这是因为在第 2 层 VPN 中,CE 设备作对提供商网络是不透明的。

行动

意义

输出确认第 2 层 VPN 转发平面在 PE 设备之间正常运行。

验证 CE 设备通过第 2 层 VPN 的端到端作

目的

验证 CE 设备之间的第 2 层 VPN 连接。此步骤将确认 CE 设备是否具有作接口,并且已针对第 2 层连接进行了正确配置。为此,请验证 CE 设备是否已建立 OSPF 邻接关系,并能够在其环路地址之间进行端到端传输流量。

行动

意义

输出显示,CE 设备之间的第 2 层 VPN 连接工作正常。它确认本地 CE 设备已通过提供商核心与远程 CE 设备 172.16.1.2建立了 OSPF 邻接关系,并且本地 CE 设备已通过 OSPF 学习了到远程 CE 设备环路地址 172.16.255.2 的路由。输出还显示,CE 设备能够传递 1500 字节 IP 数据包,而不会引起本地分段。成功的 ping作还会验证帧是否超过提供商网络支持的 MTU。

注意:

size添加到命令中的ping参数将生成 1472 字节的回显数据。另外增加了 8 个字节的互联网控制消息协议 (ICMP) 和 20 个字节的 IP 报头,使总数据包大小达到 1500 字节。添加交换机可do-not-fragment确保 CE 设备无法基于其本地 MTU 执行分段。此方法可确认在 CE 设备之间发送标准长度的以太网帧时,不可能或不需要分段。