According to the release notes of the version 10.09, MPLS L3VPN should be supported on the simulator.
However, I am not able to make it working.
My testing topology is really simple: 2 PE and 2 CE.
It seems that the control plane is working perfectly, while the userplane is not.
Example config for PE1:
vrf blue
rd 65000:1
l3vpn-only
address-family ipv4 unicast
route-target export 65000:1
route-target import 65000:1
exit-address-family
interface 1/1/1
description pe1 -> pe2
no shutdown
ip address 10.1.0.1/30
ipv6 address link-local
ip ospf 1 area 0.0.0.0
ip ospf network point-to-point
mpls enable
mpls ldp enable
interface 1/1/2
description pe1 -> edge1 [external]
no shutdown
vrf attach blue
ip address 10.1.0.6/30
router ospf 1
router-id 10.0.0.11
area 0.0.0.0
router bgp 65000
bgp router-id 10.0.0.11
bgp log-neighbor-changes
neighbor 10.0.0.12 remote-as 65000
neighbor 10.0.0.12 description pe2
neighbor 10.0.0.12 update-source loopback 0
address-family ipv4 unicast
neighbor 10.0.0.12 activate
neighbor 10.0.0.12 next-hop-self
neighbor 10.0.0.12 send-community both
network 10.0.0.11/32
exit-address-family
address-family vpnv4 unicast
neighbor 10.0.0.12 activate
neighbor 10.0.0.12 send-community extended
exit-address-family
!
vrf blue
bgp router-id 10.0.0.11
neighbor 10.1.0.5 remote-as 65101
neighbor 10.1.0.5 description edge1
address-family ipv4 unicast
neighbor 10.1.0.5 activate
neighbor 10.1.0.5 send-community standard
redistribute connected
redistribute local loopback
exit-address-family
!
mpls
enable
label-protocol ldp
enable
router-id loopback0
Routing table for VRF blue:
pe1# show ip route vrf blue
Displaying ipv4 routes selected for forwarding
Origin Codes: C - connected, S - static, L - local
R - RIP, B - BGP, O - OSPF
Type Codes: E - External BGP, I - Internal BGP, V - VPN, EV - EVPN
IA - OSPF internal area, E1 - OSPF external type 1
E2 - OSPF external type 2
VRF: blue
Prefix Nexthop Interface VRF(egress) Origin/ Distance/ Age
Type Metric
--------------------------------------------------------------------------------------------------------
10.0.0.21/32 10.1.0.5 1/1/2 - B/E [20/0] 00h:12m:08s
10.0.0.22/32 10.0.0.12 - - B/V [200/0] 00h:12m:03s
10.1.0.4/30 - 1/1/2 - C [0/0] -
10.1.0.6/32 - 1/1/2 - L [0/0] -
10.1.0.8/30 10.0.0.12 - - B/V [200/0] 00h:12m:03s
100.64.1.0/24 10.1.0.5 1/1/2 - B/E [20/0] 00h:12m:08s
100.64.2.0/24 10.0.0.12 - - B/V [200/0] 00h:12m:03s
Total Route Count : 7
As you can see, the routes are correctly exchanged (100.64.1.0/24 and 10.0.0.21/32 are originated from CE1, 100.64.2.0/24 and 10.0.0.22/32 are originated from CE2).
Additionally, all the connected routes are redistributed.
MPLS bindings seems good as well:
pe1# show mpls forwarding
MPLS Bindings
Entry Bindings : 1
Exit Bindings : 3
Transit Bindings : 1
PHP Mode : Explicit-Null
QoS Mode : Uniform
TTL Propagation : Uniform
Entry Bindings:
Origin Prefix Ingress Nexthop Outgoing Egress Egress Status
VRF Address Label Interface VRF
-------------------------------------------------------------------------------------------------------------------------
BGP - blue 10.0.0.12 16 - default operational
Exit Bindings:
Origin Prefix Incoming Egress Status
Label VRF
---------------------------------------------------------------------
BGP n/a 16 blue operational
system n/a exp-null default operational
system n/a 7 default operational
Transit Bindings:
Origin Prefix Incoming Egress Egress Nexthop Outgoing Status
Label Interface VRF Address Label
-----------------------------------------------------------------------------------------------------------------
LDP 10.0.0.12/32 17 1/1/1 default 10.1.0.2 exp-null operational
However, if I try a ping from CE1 to CE2, or even a ping from PE1 to PE2 inside the blue vrf, I got a "net unreachable".
pe1# ping 10.1.0.10 vrf blue source 10.1.0.6
PING 10.1.0.10 (10.1.0.10) from 10.1.0.6 : 100(128) bytes of data.
ping4: sendmsg: Network is unreachable
ping4: sendmsg: Network is unreachable
(if I do a packet tracing, I see the ping arriving from CE1, but never leaving PE1)
Any idea?