高手讲解IP-VPN连接模型和相应安全问题,对于很多朋友来说,IP-VPN 还是一个很陌生的词语。它到底是干什么的,有什么作用呢?带着这些疑问,我们来了解一下吧。
连接模型
给出了MPLS/BGP VPN的连接模型。从中可以看出,P路由器位于MPLS网络的核心。 PE路由器将使用MPLS与核心MPLS网络通信,同时使用IP路由技术来与CE路由器通信。 P与PE路由器将使用IP路由协议(内部网关协议)来建立MPLS核心网络中的路径,并且使用LDP实现路由器之间的标记分发。
PE路由器使用多协议BGP4来实现彼此之间的通信,完成标记交换和每一个IP-VPN策略。除非使用了路径映射标志(route reflector),否则PE 之间是BGP全网状连接。特别地,中的PE处于同一自治域中,它们之间使用内部BGP (iBGP)协议。P路由器不使用BGP协议而且对VPN一无所知,它们使用普通的MPLS协议与进程。
PE路由器可以通过IP路由协议与CE路由器交换IP路径,也可以使用静态路径。在CE与PE路由器之间使用普通的路由进程。CE路由器不必实现MPLS或对VPN有任何特别了解。PE路由器通过iBGP将用户路径分发到其他的PE路由器。为了实现路径分发,BGP使用IP-VPN地址(由RD和IPv4地址构成)。这样,不同的VPN可以使用重叠的IPv4地址空间而不会发生IP-VPN地址重复的情况。
PE路由器将BGP计算得到的路径映射到它们的路由表中,以便把从CE路由器收到的分组转发到正确的LSP上。这一方案使用两级标记:内部标记用于PE路由器对于各个VPN的识别,外部标记则为MPLS网络中的LSR所用——它们将使用这些标记把分组转发给正确的PE。
建立IP-VPN区域的操作
希望提供IP-VPN业务的网络提供者必须按照连接需求对网络进行设计与配置,这包括:PE必须为其支持的VPN以及与之相连的CE所属的VPN 进行配置;MPLS网络或者是一个路径映射标志中的PE路由器之间必须进行对等关系的配置;为了与CE进行通信,还必须进行普通的路由协议配置;为了与MPLS核心网络进行通信,还必须进行普通的MPLS配置(如LDP、IGP)。另外,P路由器除了要求能够支持MPLS之外,还要能够支持IP-VPN。
IP-VPN成员资格和可到达性信息的传播
PE路由器使用IP路由协议或者是静态路径的配置来交换路由信息,并且通过这一过程获得与之直接相连的用户网站IP地址前缀。PE路由器通过与其BGP对等实体交换IP-VPN地址前缀来获得到达目的VPN站点的路径。
另外,PE路由器还要通过BGP与其PE路由器对等实体交换标记,以此确定PE路由器间连接所使用的LSP。这些标记用作第二级标记,P 路由器看不到这些标记。PE路由器将为其支持的每一个IP-VPN分别建立路由表和转发表,与一个PE路由器相连的CE路由器则根据该连接所使用的接口选择合适的路由表。
IP分组转发
PE之间的路由信息交换完成之后,每一个PE都将为每一个VPN建立一个转发表,该转发表将把VPN用户的特定地址前缀与下一跳PE路由器联系起来。当收到发自CE路由器的IP分组时,PE路由器将在转发表中查询该分组对应的IP-VPN。如果找到匹配的条目,路由器将执行以下操作:
如果下一跳是一个PE路由器,转发进程将首先把从路由表中得到的、该PE路由器所对应的标记(嵌套隧道标记)推入标记栈;PE路由器把基本的标记推入分组,该标记用于把分组转发到到达目的PE路由器的、基本网络LSP上的第一跳;带有两级标记的分组将被转发到基本网络LSP上的下一个LSR。
P路由器(LSR)使用顶层标记及其路由表对分组继续进行转发。当该分组到达目的LER时,最外层的标记可能已发生多次改变,而嵌套在内部的标记保持不变。当PE收到分组时,它使用内部标记来识别VPN。此后, PE将检查与该VPN相关的路由表,以便决定对分组进行转发所要使用的接口。
如果在VPN路由表中找不到匹配的条目,PE路由器将检查Internet路由表(如果网络提供者具备这一能力)。如果找不到路由,相应分组将被丢弃。IP-VPN转发表中包含VPNIP地址所对应的标记,这些标记可以把业务流路由至VPN中的每一个站点。
这一过程由于使用的是标记而不是IP 地址,所以在企业网中,用户可以使用自己的地址体系,这些地址在通过服务提供者网络进行业务传输时无需网络地址翻译(NAT)。通过为每一个VPN使用不同的逻辑转发表,不同的VPN业务将可以被分开。
使用BGP协议,交换机可以根据入口选择一个特定的转发表,该转发表可以只列出一个VPN有效目的地址。为了建立企业的Extranet,服务提供者需要对VPN之间的可到达性进行明确指定(可能还需要进行NAT配置)。
IP-VPN安全
在服务提供者网络中,PE所使用的每一个分组都将与一个RD相关联,这样,用户无法将其业务流或者是分组偷偷送入另一个用户的IP-VPN。要注意的是,在用户数据分组中没有携带RD,只有当用户位于正确的物理端口上或拥有PE路由器中已经配置的、适当的RD时,用户才能加入一个Intranet或 Extranet。这一建立过程可以保证非法用户无法进入VPN,从而为用户提供与帧中继、租用线或ATM业务相同的安全等级。