配置思路:
1.配置公网隧道(PE与PE之间普通IGP,BGP协议,启用MPLS和LDP)
2.配置本地VPN(在PE上的建立VRF,配置RD和RT,配置PE-CE之间的路由协议)
3.配置MP-BGP(PE与PE之间的VPNv4的对等体,做PE-CE协议与MP-BGP的双向重发布)
知识准备:路由基础知识,单区域ospf,多区域isis,bpg,mpls,vpn基础,常用comware命令
拓扑和IP地址配置如下图
简要说明:在R1和R4上建立loopback1,2来模拟两个需要通过VPN互访的用户,R1,4为用户边缘设备CE,R2,R3为网络边缘设备PE,因为P设备仅作简单的路由和标签转发,因此本例中未加入P设备。
一、配置公网隧道
1.在R2和R3上使用ospf建立igp的基础路由,使两台交换机的lo0可以通过该路由实现互通
[R2PE]
ospf 1
area 0.0.0.0
network 10.1.23.0 0.0.0.255
network 2.2.2.2 0.0.0.0
[R3PE]
ospf 1
area 0.0.0.0
network 10.1.23.0 0.0.0.255
network 3.3.3.3 0.0.0.0
这条基础路由的功能是为了使R2与R3之间之后的BGP可以建立有效的连接,已实现标签交换路径,如果R2和R3启用了LDP协议,这两台路由器的loopback0将作为源接口
在两台路由器内使用本地回环ping对面回环联通即可
2.在R2和R3上建立公网igbp路由
[R2PE]
bgp 1
group ibgp internal
peer ibgp connect-interface LoopBack0
peer 3.3.3.3 group ibgp
#
address-family ipv4 unicast
peer 3.3.3.3 enable
[R3PE]
bgp 1
group ibgp internal
peer ibgp connect-interface LoopBack0
peer 2.2.2.2 group ibgp
#
address-family ipv4 unicast
peer 2.2.2.2 enable
通过使用查看命令
display bgp peer ipv4
确认建立的对等体状态已经established即可
3.启用MPLS和LDP
启用R2的全局mpls
(comware v7仅配置mplslsr-id即可,一般使用当前路由器的router-id作为lsr-id)
[R2PE]mpls lsr-id 2.2.2.2
[R2PE]mpls
[R2PE]mpls ldp
启用R3的全局mpls
[R3PE]mpls lsr-id 3.3.3.3
[R3PE]mpls
[R3PE]mpls ldp
使能R2-R3互联接口的mpls和ldp
[R2PE]interface GigabitEthernet0/0
[R2PE-GigabitEthernet0/0]mpls enable
[R2PE-GigabitEthernet0/0]mpls ldp enable
[R3]interface GigabitEthernet0/0
[R3PE-GigabitEthernet0/0]mpls enable
[R3PE-GigabitEthernet0/0]mpls ldp enable
配置完成后可以通过命令查看LDP(标签分发协议)的状态和会话
[R2PE]display mpls ldp peer
如果state为operational表示LDP的会话建立完成了
至此公网隧道配置部分完成了
我们可以在R2或R3上通过命令查看LSP(标签交换路径)状态
[R2PE]display mpls lsp
可以通过命令查看通过LDP协议学习到的LSP
[R2PE]display mpls ldp lsp
说明:LDP协议会为所有的本地路由条目建立标签路径,这就是MPLS VPN的动态隧道建立的基础,也是MPLSVPN在所有VPN协议中脱颖而出的关键点
二、配置本地的VPN
1.在PE建立VRF,配置RD和RT,绑定接口,配置PE与CE之间的路由协议
配置R1CE-R2PE
配置[R2PE]VRF
[R2PE]ip vpn-instance jjgd
[R2PE-vpn-instance-jjgd]route-distinguisher 1:2
[R2PE-vpn-instance-jjgd]vpn-target 1:1 import-extcommunity
[R2PE-vpn-instance-jjgd]vpn-target 1:1 import-imtcommunity
绑定vpn-instance至接口
[R2PE-GigabitEthernet0/1]ip binding vpn-instance jjgd
[R2PE-GigabitEthernet0/1]ip address 10.1.12.2 24
备注:此时将无法直接Ping通R1的接口地址10.1.12.1,因为一旦接口被绑定vpn-instance之后该接口将不再属于实体路由器,而属于虚拟路由器vpn-instance jjgd了,如果需要ping的话需要使用带有vpn参数的ping
[R2PE]ping -vpn-instance jjgd 10.1.12.1
启用PE-CE之间的属于VRF的OSPF路由
在路由器[R2PE]上的jjgd建立ospf 2如下:
[R2PE]ospf 2 vpn-instance jjgd
[R2PE-ospf-2-area-0.0.0.0]network 10.1.12.2 0.0.0.255
在路由器[R1CE]上建立ospf如下
ospf 1
area 0.0.0.0
network 172.16.1.1 0.0.0.0
network 192.168.1.1 0.0.0.0
network 10.1.12.1 0.0.0.0
在路由器[R1CE]上使用正常的命令查看邻居和路由表
但是在[R2PE]上查看vpn内部的路由要使用如下命令
[R2PE]disp ip routing-table vpn-instance jjgd
[R2PE]disp ip routing-table vpn-instance jjgd protocol ospf
通过上述命令确认PE-CE间路由工作正常
2.配置R4CE-R3PE
过程和上例类似,只是把本地路由换成了isis
[R3PE]
ip vpn-instance jjgd
route-distinguisher 1:3
vpn-target 1:1 import-extcommunity
vpn-target 1:1 export-extcommunity
interface GigabitEthernet0/1
port link-mode route
combo enable copper
ip bindingvpn-instance jjgd
ip address 10.1.34.3 255.255.255.0
配置vpn的isis路由
isis 1 vpn-instance jjgd
network-entity00.3333.3333.3333.00
在接口上使能isis
[R3PE-GigabitEthernet0/1]isis enable
使用如下命令查看vpn内部路由
[R3PE]disp ip routing-table vpn-instance jjgd
[R3PE]disp ip routing-table vpn-instance jjgd protocol isis
[R4CE]
在R4上正常配置isis路由,使用正常路由命令查看路由和邻居
isis 1
network-entity00.4444.4444.4444.00
interface LoopBack0
ip address 4.4.4.4 255.255.255.255
isis enable 1
interface LoopBack1
ip address192.168.2.1 255.255.255.255
isis enable 1
interface LoopBack2
ip address 172.16.2.1 255.255.255.255
isis enable 1
interface GigabitEthernet0/1
port link-mode route
combo enable copper
ip address 10.1.34.4 255.255.255.0
isis enable 1
三、配置MP-BGP的vpnv4的对等体,做PE-CE双向重发布
1.配置PE与PE之间的MP-BGP,分别增加了vpnv4对等体的配置
[R2PE]
bgp1
group ibgp internal
peer ibgp connect-interface LoopBack0
peer 3.3.3.3 group ibgp
#
address-family ipv4 unicast
peer 3.3.3.3 enable
#
address-family vpnv4
peer 3.3.3.3 enable
[R3PE]
bgp1
group ibgp internal
peer ibgp connect-interface LoopBack0
peer 2.2.2.2 group ibgp
#
address-family ipv4 unicast
peer 2.2.2.2 enable
#
address-family vpnv4
peer 2.2.2.2 enable
使用命令
[R3PE]display bgp peer vpnv4
查看vpnv4的对等体关系如为对向IP且状态为Established则建立成功
之后BGP之间会建立两种邻居关系,一种是普通BGP的peer,一种是VPNv4的peer
2.配置本地路由和VPNv4路由的双向重发布
在[R2PE]的BGP路由中增加引入ospf 2配置
bgp1
group ibgp internal
peer ibgp connect-interface LoopBack0
peer 3.3.3.3 group ibgp
#
address-family ipv4 unicast
peer 3.3.3.3 enable
#
address-family vpnv4
peer3.3.3.3 enable
#
ip vpn-instance jjgd
#
address-family ipv4unicast
import-route ospf 2
在[R2PE]的ospf 2vpn-instance路由配置中引入bgp1配置
ospf2 vpn-instance jjgd
import-route bgp
area 0.0.0.0
network 10.1.12.2 0.0.0.0
在[R3PE]的BGP路由中增加引入isis 1配置
bgp1
group ibgp internal
peer ibgp connect-interface LoopBack0
peer 2.2.2.2 group ibgp
#
address-family ipv4 unicast
peer 2.2.2.2 enable
#
address-family vpnv4
peer 2.2.2.2 enable
#
ip vpn-instance jjgd
#
address-family ipv4unicast
import-route isis 1
在[R3PE]的isis 1vpn-instance路由配置中引入bgp1的配置
isis1 vpn-instance jjgd
network-entity 00.3333.3333.3333.00
#
address-family ipv4unicast
import-route bgp
通过在R1CE和R4CE两侧执行以下命令查看路由表和对向ping来确认配置全部完成
检查路由表中已经含有R1CE或R4CE的路由表项
[R1CE]disp ip routing-table
通过带有源地址的ping检查连通性
[R1CE]ping -a 172.16.1.1 172.16.2.1
至此全部BGP/MPLS-vpn的基础配置全部完成
备注:实验采用H3C HCL 2.1.0 模拟器
领取专属 10元无门槛券
私享最新 技术干货