配置6VPE
通过配置6VPE功能,可以将私网实例下被分割的IPv6网络利用LSP隧道连接起来。
应用环境
6VPE的典型组网如图8-3所示。其中,PE1和PE2之间建立BGP/MPLS IPv6 VPN(即6vPE),CE1与PE1、CE2与PE2之间建立BGP私网邻居,CE侧Site内的IPv6用户通过CE与PE间的IPv4网络实现互通。
配置VPN实例
配置使能IPv6地址族的VPN实例,用以管理IPv6 VPN路由。
背景信息
BGP/MPLS IPv6 VPN为每个VPN进行实例化,构建本VPN私有转发信息实例,即VPN实例(VPN-instance)。VPN实例也称为VPN路由转发表VRF(VPN Routing and Forwarding table)。在相关标准(BGP/MPLS IP VPNs)中,VPN实例被称为per-site forwarding table。在所有BGP/MPLS IPv6 VPN组网方案中,都需要配置VPN实例。
在6VPE场景下,VPN实例需要同时使能IPv4和IPv6地址族,VPN实例的IPv4路由表用来管理用于建立私网LDP LSP的路由,VPN实例的IPv6路由表用来管理收到的私网IPv6路由。
操作步骤
- 执行命令system-view,进入系统视图。
- 执行命令ip vpn-instance vpn-instance-name,创建VPN实例,并进入VPN实例视图。
VPN实例的名字区分大小写。例如,“vpn1”和“VPN1”将被认为是不同的VPN实例。
- (可选)执行命令description description-information,配置VPN实例的描述信息。
描述信息的作用类似于主机名和接口描述信息,可以方便用户记忆VPN实例的创建信息。
- 执行命令ipv4-family,使能VPN实例IPv4地址族,并进入VPN实例IPv4地址族视图。
根据通告路由和转发数据的类型使能相应的地址族后,才能进行VPN的相关配置。
- 执行命令route-distinguisher route-distinguisher,配置VPN实例IPv4地址族的RD。
VPN实例IPv4地址族只有配置了RD后才生效。同一PE上的不同VPN实例IPv4地址族下的RD不能相同。
RD配置后不能被修改,但是可以被删除。如果删除了RD,则该VPN实例IPv4地址族下的所有配置都会被删除。
若创建VPN实例进入VPN实例视图后,直接配置VPN实例IPv4地址族的RD,配置完成后则会自动使能VPN实例IPv4地址族并跳至VPN实例IPv4地址族视图,可直接进行相应配置。
- 执行命令vpn-target vpn-target &<1-8> [ both | export-extcommunity | import-extcommunity ],为VPN实例IPv4地址族配置VPN-target扩展团体属性。
VPN Target是BGP的扩展团体属性,用来控制VPN路由信息的接收和发布。一条vpn-target命令最多可以配置8个VPN Target。如果希望在VPN实例IPv4地址族下配置更多的VPN Target,可以多次使用vpn-target命令进行配置。
- 执行命令quit,退出VPN实例IPv4地址族视图。
- 执行命令ipv6-family,使能VPN实例IPv6地址族,并进入VPN实例IPv6地址族视图。
VPN实例下支持双栈,即IPv4地址族和IPv6地址族。根据通告路由和转发数据的类型使能相应的地址族后,才能进行VPN的相关配置。
- 执行命令route-distinguisher route-distinguisher,配置VPN实例IPv6地址族的RD。
VPN实例IPv6地址族只有配置了RD后才生效。同一PE上的不同VPN实例IPv6地址族下的RD不能相同。
RD配置后不能被修改,但是可以被删除。如果删除了RD,则该VPN实例IPv6地址族下的所有配置都会被删除。
- 执行命令vpn-target vpn-target &<1-8> [ both | export-extcommunity | import-extcommunity ],为VPN实例IPv6地址族创建VPN-target扩展团体。
VPN Target是BGP的扩展团体属性,用来控制VPN-IPv6路由信息的接收和发布。一条vpn-target命令最多可以配置8个VPN Target。如果希望在VPN实例IPv4地址族下配置更多的VPN Target,可以多次使用vpn-target命令进行配置。
- 执行命令commit,提交配置。
(可选)配置BGP-VPN实例下的Router ID
配置PE与PE间使用MP-IBGP
通过配置PE与PE间使用MP-IBGP,使其能够在PE设备之间传播VPNv6路由。
背景信息
在基本的BGP/MPLS IPv6 VPN组网中,PE之间需要通过MP-IBGP协议传递携带RD属性的VPNv6路由信息,实现VPN实例间的通信。由于所有的PE处于同一个AS,所以PE之间将建立MP-IBGP关系。在当前实现中,PE之间建立的是IPv4 BGP对等体。
请在每个PE上进行如下配置。
操作步骤
- 执行命令system-view,进入系统视图。
- 执行命令bgp as-number,进入BGP视图。
- 执行命令peer ipv4-address as-number as-number,将对端PE配置为对等体。
- 执行命令peer ipv4-address connect-interface loopback interface-number,指定建立TCP连接的接口。
PE之间必须使用32位掩码的Loopback接口地址来建立MP-IBGP对等体关系,以便能够迭代到隧道。以Loopback接口地址为目的地址的路由通过MPLS骨干网上的IGP发布给对端PE。
- 执行命令ipv6-family vpnv6,进入BGP-VPNv6地址族视图。
- 执行命令peer ipv4-address enable,使能对等体交换VPN-IPv6路由信息的能力。
- 执行命令commit,提交配置。
配置PE和CE间的BGP私网邻居
在6VPE里,为了实现CE和PE间的通信,需要在PE和CE之间配置BGP私网邻居。
背景信息
如果用户希望PE和CE间使用IP路由转发,则需要PE和CE间的链路接口上同时配置IPv4地址和IPv6地址。
- CE属于客户端设备,不能感知到VPN的存在,所以在CE上的配置路由协议时,不会带VPN的相关参数。
- PE属于运营商网络的边缘设备,用来与CE设备连接,交换路由信息。PE可以与不同VPN的CE相连接,因此PE上需要维护不同的VRF,所以在PE上配置路由协议时,需要指定该路由协议属于的VPN实例名称,即携带VPN的相关参数。在PE上配置路由协议时,需要在MP-BGP和路由协议间引入对方的路由。
操作步骤
- 配置PE和CE间BGP私网邻居(IP转发)
配置PE和CE间BGP私网邻居前,PE和CE互相连接的接口上需要配置IPv6地址。
在PE上执行如下配置:
- 执行命令system-view,进入系统视图。
- 执行命令route-policy route-policy-name { permit | deny } node node,创建Route-Policy的节点,并进入Route-Policy视图。
- (可选)配置if-match子句,过滤不同Site间传输的路由。具体配置请参见(可选)配置If-match子句。
- 执行命令apply ipv6 next-hop address,修改路由的下一跳。ipv6-address设置为PE上与CE连接的接口上的IPv6地址。
- 执行命令quit,退回上一级视图。
- 执行命令bgp as-number,进入BGP视图。
- 执行命令vpn-instance vpn-instance-name,创建BGP-VPN实例,并进入BGP-VPN实例视图。
- 执行命令peer ipv4-address as-number as-number,将CE配置为BGP私网对等体。
- (可选)执行命令peer ipv4-address connect-interface interface-type interface-number [ ipv4-source-address ],指定BGP对等体之间建立TCP连接会话的源接口和源地址。
- 执行命令quit,退回上一级视图。
- 执行命令ipv6-family vpn-instance vpn-instance-name,进入BGP-VPN实例IPv6地址族视图。
- 执行命令peer ipv4-address enable,使能私网BGP IPv4对等体(组)交换BGP路由信息。
- 执行命令peer ipv4-address route-policy route-policy-name export,应用出口路由策略。
- 执行命令quit,退回上一级视图。
- 执行命令commit,提交配置。
在CE上执行如下配置:
- 执行命令system-view,进入系统视图。
- 执行命令route-policy route-policy-name { permit | deny } node node,创建Route-Policy的节点,并进入Route-Policy视图。
- (可选)配置if-match子句,过滤不同Site间传输的路由。具体配置请参见(可选)配置If-match子句。
- 执行命令apply ipv6 next-hop address,修改路由的下一跳。ipv6-address设置为CE上与PE连接的接口上的IPv6地址。
- 执行命令quit,退回上一级视图。
- 执行命令bgp as-number,进入BGP视图。
- 执行命令peer ipv4-address as-number as-number,配置BGP对等体。
- (可选)执行命令peer ipv4-address connect-interface interface-type interface-number [ ipv4-source-address ],指定BGP对等体之间建立TCP连接会话的源接口和源地址。
- 执行命令ipv6-family unicast,进入BGP-IPv6单播地址族视图。
- 执行命令peer ipv4-address enable,使能BGP IPv4对等体。
- 执行命令peer ipv4-address route-policy route-policy-name export,应用出口路由策略。
- 执行命令commit,提交配置。
- 配置PE和CE间IBGP私网邻居(隧道转发)
在PE上执行如下配置:
在CE上执行如下配置:
- 配置PE和CE间直连EBGP私网邻居(隧道转发)
在PE上执行如下配置:
在CE上执行如下配置:
- 配置PE和CE间非直连EBGP私网邻居(隧道转发)
配置PE和CE间非直连EBGP私网邻居(隧道转发)前,PE和CE需要通过配置实现路由互通,例如使用静态路由。
在PE上执行如下配置:
在CE上执行如下配置:
检查配置结果
配置了6VPE后,可以在PE设备上看到VPN实例IPv6地址族下与CE建立了BGP IPv4对等体关系。
操作步骤
- 在PE设备上执行以下命令可以看到创建的VPN实例IPv6地址族的信息,包括RD值及其相关属性。
使用display ip vpn-instance vpn-instance-name命令查看指定VPN实例的简要信息。
使用display ip vpn-instance verbose vpn-instance-name命令查看指定VPN实例的详细信息,包括VPN实例IPv4地址族和IPv6地址族下的信息。
使用display ip vpn-instance import-vt ivt-value命令查看所有具备指定入口vpn-target属性的VPN实例信息。
- 使用display ip vpn-instance [ vpn-instance-name ] interface命令查看指定VPN实例所绑定的接口信息。
- 在PE设备上执行以下命令可以查看到VPN实例IPv6地址族下与CE建立的BGP IPv4对等体关系。
- 使用display bgp vpnv6 vpn-instance vpn-instance-name peer ipv4-address verbose命令在PE上查看VPN实例IPv6地址族下与CE建立的BGP IPv4对等体关系。