L2TPv3 为 VPN 流量提供了针对外部攻击的内置保护。一位恶意用户可能会向 PE 发送 VPN 封装分组,从而试图向 VPN 输入分组。在使用 MPLS 传输时,一般可通过拒绝客户访问接口上来自 VPN 用户的 MPLS 分组,来防御这类攻击。在实施 IP MPLS VPN 传输时, PE 设备一般更易于受到 IP 电子欺骗攻击。网络边界或 PE 本身需特殊配置和额外处理(如访问控制列表,即 ACL 等)来识别和阻塞伪装的 VPN 分组。通过直接在 PE 中采用强大的电子欺骗防御功能, L2TPv3 在接近客户的地点提供电子欺骗防御。所以,无论有无 IP ACL , L2TPv3 都可防止特定 VPN 上的外部电子欺骗攻击,这是因为每个 PE 利用预先加密的随机 64 位 Cookie 来转发分组。
图 3 IP 网络上提供的 MPLS VPN 服务与 MPLS 网络上提供的 MPLS VPN 服务的具体封装比较VPN 路由分发,隧道终端发现
无论采用什么骨干传输( IP 或 MPLS ), MPLS VPN 都使用相同的 VPN 路由分发机制。但 VPN 路由解析在思科 IP MPLS VPN 和 MPLS 上的 MPLS VPN 中的运行方式不同。在处理输入 VPNv4 BGP 更新时, MPLS VPN 一般需要 PE 对 BGP 下一跳执行回归式路由查询。当采用 MPLS 骨干时, PE 将把下一跳与现有 LSP 匹配。当采用 IP 骨干时, PE 将把下一跳与现有隧道终端相匹配。
成功的匹配可选出作为分组输出接口的多点隧道。该过程保证分组能正确地通过隧道、以正确的封装转发。为正确地进行解析, BGP 下一跳被分解为与隧道相关的独立地址空间。否则就会针对全球路由空间尝试解析,以搜索不存在的 LSP 。
思科 IP MPLS VPN 提供自动隧道终端发现和隧道参数标记。在能进行正确的 VPNv4 BGP 下一跳解析之前,每个 PE 都需要知道可通过多点隧道访问其他哪些 PE (终端)。此外,每个 PE 需知道其他 PE 希望使用的 L2TPv3 进程 ID 和 Cookie ,以便 VPN 分组能准确封装。此信息的手动配置不可扩展;随着 PE 数目的增加,隧道简单的多点特性就会被破坏。
PE 利用现有多协议 BGP(MP-BGP) 基础设施来分发隧道终端信息。思科 IP MPLS VPN 在 MP-BGP 中定义了一个新的隧道地址系列扩展。此地址系列可用于标记 L2TPv3 隧道地址、进程 ID 和 Cookie 。 L2TPv3 只可用作封装机制。本地 L2TPv3 控制面板不起作用。因为已需 MP-BGP 来分发 VPNv4 路由信息,此扩展的运行和处理影响极低。相反,当 MPLS 用作传输机制时,终端发现与 VPNv4 广播相关联,不标记封装类型 (MPLS) 及其 (LSP) 参数。有关通过 MP-BGP 了解的隧道终端信息,请访问 cisco.com/packet/171_5c1 。
思科 IP MPLS VPN 将 L2TPv3 用作 IP 隧道技术,提供了纯 IP 和 GRE 均缺乏的防电子欺骗保护。控制面板操作得到了扩展,可支持隧道终端发现和通过隧道的 VPNv4 下一跳解析。凭借思科 IP MPLS VPN ,现在 MPLS VPN 能以一种可扩展、安全的方式,部署于任意 IP 网络之上。
责任编辑:小草