实验拓扑:
保证CE1能和CE4通信,CE3能和CE2通信。
配置思路:
一、配置公网环境,包括公网的OSPF和MPLS,最后在PE1和PE2上查看到MPLS隧道成功建立:(成功)
二、配置4个CE,IP地址规划如图所示,并以CE1为例:
ospf 1
area 0.0.0.0
network 0.0.0.0 255.255.255.255
interface GigabitEthernet0/0/0
ip address 10.1.1.100 255.255.255.0
三、配置PE上的VPN实例和接口绑定,并在实例上允许OSPF获取路由:
以PE1为例:(vpna 的tag全部统一为100:1,vpnb的tag全部统一为200:1,RD值由CE1-CE4一次为101:1-104:1)
ip vpn-instance vpna
ipv4-family
route-distinguisher 101:1
vpn-target 100:1 export-extcommunity
vpn-target 100:1 import-extcommunity
ip vpn-instance vpnb
ipv4-family
route-distinguisher 103:1
vpn-target 200:1 export-extcommunity
vpn-target 200:1 import-extcommunity
interface GigabitEthernet0/0/0
ip binding vpn-instance vpna
ip address 10.1.1.254 255.255.255.0
interface GigabitEthernet0/0/2
ip binding vpn-instance vpnb
ip address 10.1.1.254 255.255.255.0
ospf 2 vpn-instance vpna
area 0.0.0.0
network 10.1.1.254 0.0.0.0
ospf 3 vpn-instance vpnb
area 0.0.0.0
network 10.1.1.254 0.0.0.0
四、配置BGP和条目双向引入:
以PE1为例:
bgp 100
undo default ipv4-unicast
peer 3.3.3.3 as-number 100
peer 3.3.3.3 connect-interface LoopBack0
ipv4-family vpnv4
policy vpn-target
peer 3.3.3.3 enable
ipv4-family vpn-instance vpna
import-route ospf 2
ipv4-family vpn-instance vpnb
import-route ospf 3
ospf 2 vpn-instance vpna
import-route bgp
ospf 3 vpn-instance vpnb
import-route bgp
五、配置完成后检测PE1和PE2上学习到的VPN条目:
以PE1为例:
[PE1]dis bgp vpnv4 all routing-table
我们可以看到PE1上学习到了相同IP地址的路由条目,但是因为RD值的不同也正常的分别开了,最后通过私网路由交叉,将对应VPN的路由加入自己的实例中:
最后再重分发进入了ospf中:
在CE1上查看:
用CE1pingCE4进行检查通信是否正常:
注意:
- 当路由相同的时候通过的是RD值来区分路由,RD值需要全局唯一。如果没有RD值来区分,设备只会接收一条对应条目,多出来的条目一律不接收,这样的链路缺少了冗余性。
- PE设备会接收所有符合要求的公网VPN路由信息(不管自己是否需要),然后通过私网路由交叉将对应站点所需要的路由自动重分发进入对应的BGP实例中。
- 私网标签会根据对应的RD值和路由网段进行分配,例如在本例中,FEC相同,但是因为不在同一个VPN中,RD值不同,所以分配的内网标签不一样。