跳到主要内容

11. 从 VPN 访问互联网

11. 从 VPN 访问互联网 (Accessing the Internet from a VPN)​

许多 VPN 站点既需要访问公共互联网(public Internet),又需要访问其他 VPN 站点。下面描述实现这一点的若干替代方式。

  1. 在某些 VPN 中,一个或多个站点会借助连接到某个 ISP 的非 VRF 接口的"互联网网关"(Internet gateway,可能是一台防火墙)来获得互联网接入。该 ISP 与提供 VPN 服务的 SP 可以是、也可以不是同一组织。往来于该互联网网关的流量(traffic)将依据 PE 路由器的缺省转发表(default forwarding table)进行路由。

    在这种情况下,拥有互联网接入的站点可能会向它们的 PE 分发一条缺省路由(default route),后者进而将其重新分发到其他 PE,并由此进入 VPN 的其他站点。这就为该 VPN 的所有站点提供了互联网接入。

    为了妥善处理来自互联网的流量,ISP 必须向互联网分发那些通往位于该 VPN 内部的地址的路由。这完全独立于本文档描述的任何路由分发过程。该 VPN 的内部结构一般而言不会从互联网上可见;这类路由只会简单地指向连接到该 VPN 互联网网关的那个非 VRF 接口。

    在这种模型中,PE 路由器的缺省转发表与它的任何 VRF 之间都不交换路由。VPN 路由分发过程与互联网路由分发过程完全独立。

    注意,尽管该 VPN 的某些站点使用一个 VRF 接口来与互联网通信,但最终所有往来于互联网的报文在离开/进入该 VPN 之前,都会穿越一个非 VRF 接口,因此我们称之为"非 VRF 互联网接入"(non-VRF Internet access)。

    注意,那个非 VRF 接口所连接的 PE 路由器,并不一定要在其缺省转发表中维护全部互联网路由。该缺省转发表可以只有少到一条路由,即"缺省"路由,它指向另一台(可能是相邻的一台)持有互联网路由的路由器。此方案的一个变体是:将经由非 VRF 接口从 PE 路由器收到的报文隧道转发到另一台路由器,由该路由器维护全部的互联网路由集合。

  2. 某些 VPN 可能经由一个 VRF 接口获得互联网接入("VRF 互联网接入")。如果一个报文被一台 PE 经一个 VRF 接口收到,且该报文的目的地址与该 VRF 中的任何路由都不匹配,那么它可能被拿来与该 PE 的缺省转发表匹配。如果在那里匹配成功,则该报文可以原生(natively)经由骨干网被转发到互联网,而非通过 MPLS 转发。

    为了使流量能够沿反方向(从互联网到 VRF 接口)原生流动,必须将 VRF 中的部分路由导出(export)到互联网转发表(Internet forwarding table)。不用说,任何此类路由都必须对应于全局唯一的地址。

    在这种方案中,缺省转发表可能持有全部的互联网路由集合,也可能只有少到一条指向另一台在其缺省转发表中持有全部互联网路由集合的路由器的缺省路由。

  3. 假设 PE 有能力在 VRF 中存储"非 VPN 路由"(non-VPN routes)。如果一个报文的目的地址匹配了一条"非 VPN 路由",那么该报文被原生传输,而非经由 MPLS 传输。如果该 VRF 含有一条非 VPN 缺省路由,那么所有发往公共互联网的报文都会匹配它,并被原生转发到该缺省路由的下一跳。在那个下一跳处,报文的目的地址将在缺省转发表中被查表,并可能匹配更具体的路由。

    只有当没有任何 CE 路由器在分发缺省路由时,此技术才可用。

  4. 也可以让 VRF 中含有互联网路由,从而经由一个 VRF 接口获得互联网接入。与模型 2 相比,这消除了第二次查表,但缺点是要求互联网路由在每个这样的 VRF 中都被复制。

    如果使用此技术,SP 可能希望使其通往互联网的接口成为一个 VRF 接口,并使用第 4 节的技术将互联网路由作为 VPN-IPv4 路由分发到其他 VRF。

应当清楚地理解:缺省情况下,VRF 与缺省转发表之间不交换路由。这只有在客户与 SP 达成一致、并且仅在符合客户策略时才会进行。