Posted on June 18, 2020 5:47 pm
 |  Asked by tomas morales mendoza
 |  117 views
RESOLVED
0
0
Print Friendly, PDF & Email

Hi all

This is a continuation from other post:

https://eos.arista.com/forum/ceos-lab-mpls-traffic-using-different-mac-address-icmp-fails/

I was told by my former employer’s Arista SE that cEOS doesnt support MPLS Data plane and I should try vEOS

So, I have built the same MPLS SR lab using vEOS and I have the same result.

I am using EVE-NG on GCP following https://openeye.blog/2020/04/15/installing-eve-ng-on-google-cloud-platform/

I have tried vEOS64-lab-4.24.1.1F.vmdk and vEOS-lab-4.23.3M.vmdk with the same result. Whenever I sent traffic with a MPLS label, the destination “ignores” it. So it seems  MPLS Data plane is not available neither in vEOS. Please can you confirm?

This is partial config and pings results from r4 to r5 connected link and lo2 VRF interface:

r4#show running-config interfaces e1
interface Ethernet1
no switchport
ip address 10.0.12.1/30
isis enable CORE
isis metric 50
isis network point-to-point
r4#
r4#show running-config interfaces loopback 1
interface Loopback1
description CORE Loopback
ip address 10.0.0.1/32
node-segment ipv4 index 1
isis enable CORE
isis metric 1
r4#show running-config interfaces loopback 2
interface Loopback2
vrf CUST-A
ip address 192.168.0.1/32
r4#
r4#
r4#ping 10.0.12.2
PING 10.0.12.2 (10.0.12.2) 72(100) bytes of data.
80 bytes from 10.0.12.2: icmp_seq=1 ttl=64 time=5.28 ms
80 bytes from 10.0.12.2: icmp_seq=2 ttl=64 time=6.22 ms
80 bytes from 10.0.12.2: icmp_seq=3 ttl=64 time=11.8 ms
80 bytes from 10.0.12.2: icmp_seq=4 ttl=64 time=17.9 ms
80 bytes from 10.0.12.2: icmp_seq=5 ttl=64 time=11.0 ms

— 10.0.12.2 ping statistics —
5 packets transmitted, 5 received, 0% packet loss, time 35ms
rtt min/avg/max/mdev = 5.282/10.470/17.964/4.547 ms, pipe 2, ipg/ewma 8.752/8.095 ms
r4#
r4#
r4#show ip route vrf CUST-A

VRF: CUST-A
Codes: C – connected, S – static, K – kernel,
O – OSPF, IA – OSPF inter area, E1 – OSPF external type 1,
E2 – OSPF external type 2, N1 – OSPF NSSA external type 1,
N2 – OSPF NSSA external type2, B – BGP, B I – iBGP, B E – eBGP,
R – RIP, I L1 – IS-IS level 1, I L2 – IS-IS level 2,
O3 – OSPFv3, A B – BGP Aggregate, A O – OSPF Summary,
NG – Nexthop Group Static Route, V – VXLAN Control Service,
DH – DHCP client installed default route, M – Martian,
DP – Dynamic Policy Route, L – VRF Leaked

Gateway of last resort is not set

C 192.168.0.1/32 is directly connected, Loopback2
B I 192.168.0.2/32 [200/0] via 10.0.0.2/32, IS-IS SR tunnel index 1, label 116384
via 10.0.12.2, Ethernet1, label imp-null(3)
B I 192.168.0.3/32 [200/0] via 10.0.0.3/32, IS-IS SR tunnel index 2, label 116384
via 10.0.13.2, Ethernet2, label imp-null(3)

r4#
r4#
r4#ping vrf CUST-A 192.168.0.2
PING 192.168.0.2 (192.168.0.2) 72(100) bytes of data.

— 192.168.0.2 ping statistics —
5 packets transmitted, 0 received, 100% packet loss, time 42ms

r4#

 

This is what r5 sees at interface level:

 

r5#
r5#show running-config interfaces loopback 2
interface Loopback2
vrf CUST-A
ip address 192.168.0.2/32
r5#
r5#
r5#show ip route vrf CUST-A

VRF: CUST-A
Codes: C – connected, S – static, K – kernel,
O – OSPF, IA – OSPF inter area, E1 – OSPF external type 1,
E2 – OSPF external type 2, N1 – OSPF NSSA external type 1,
N2 – OSPF NSSA external type2, B – BGP, B I – iBGP, B E – eBGP,
R – RIP, I L1 – IS-IS level 1, I L2 – IS-IS level 2,
O3 – OSPFv3, A B – BGP Aggregate, A O – OSPF Summary,
NG – Nexthop Group Static Route, V – VXLAN Control Service,
DH – DHCP client installed default route, M – Martian,
DP – Dynamic Policy Route, L – VRF Leaked

Gateway of last resort is not set

B I 192.168.0.1/32 [200/0] via 10.0.0.1/32, IS-IS SR tunnel index 1, label 116384
via 10.0.12.1, Ethernet1, label imp-null(3)
C 192.168.0.2/32 is directly connected, Loopback2
B I 192.168.0.3/32 [200/0] via 10.0.0.3/32, IS-IS SR tunnel index 2, label 116384
via 10.0.23.2, Ethernet2, label imp-null(3)

r5#
r5#
r5#show running-config interfaces e1
interface Ethernet1
no switchport
ip address 10.0.12.2/30
isis enable CORE
isis metric 50
isis network point-to-point
r5#
r5#bash

Arista Networks EOS shell

[tomas@r5 ~]$ sudo su
bash-4.2#
bash-4.2#
bash-4.2# tcpdump -i et1 icmp or mpls
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on et1, link-type EN10MB (Ethernet), capture size 262144 bytes

10:15:50.366615 50:00:00:03:37:66 (oui Unknown) > 50:00:00:15:f4:e8 (oui Unknown), ethertype IPv4 (0x0800), length 114: 10.0.12.1 > 10.0.12.2: ICMP echo request, id 5151, seq 1, length 80
10:15:50.367005 50:00:00:15:f4:e8 (oui Unknown) > 50:00:00:03:37:66 (oui Unknown), ethertype IPv4 (0x0800), length 114: 10.0.12.2 > 10.0.12.1: ICMP echo reply, id 5151, seq 1, length 80
10:15:50.374305 50:00:00:03:37:66 (oui Unknown) > 50:00:00:15:f4:e8 (oui Unknown), ethertype IPv4 (0x0800), length 114: 10.0.12.1 > 10.0.12.2: ICMP echo request, id 5151, seq 2, length 80
10:15:50.374379 50:00:00:15:f4:e8 (oui Unknown) > 50:00:00:03:37:66 (oui Unknown), ethertype IPv4 (0x0800), length 114: 10.0.12.2 > 10.0.12.1: ICMP echo reply, id 5151, seq 2, length 80
10:15:50.380303 50:00:00:03:37:66 (oui Unknown) > 50:00:00:15:f4:e8 (oui Unknown), ethertype IPv4 (0x0800), length 114: 10.0.12.1 > 10.0.12.2: ICMP echo request, id 5151, seq 3, length 80
10:15:50.380359 50:00:00:15:f4:e8 (oui Unknown) > 50:00:00:03:37:66 (oui Unknown), ethertype IPv4 (0x0800), length 114: 10.0.12.2 > 10.0.12.1: ICMP echo reply, id 5151, seq 3, length 80
10:15:50.391981 50:00:00:03:37:66 (oui Unknown) > 50:00:00:15:f4:e8 (oui Unknown), ethertype IPv4 (0x0800), length 114: 10.0.12.1 > 10.0.12.2: ICMP echo request, id 5151, seq 4, length 80
10:15:50.392037 50:00:00:15:f4:e8 (oui Unknown) > 50:00:00:03:37:66 (oui Unknown), ethertype IPv4 (0x0800), length 114: 10.0.12.2 > 10.0.12.1: ICMP echo reply, id 5151, seq 4, length 80
10:15:50.403448 50:00:00:03:37:66 (oui Unknown) > 50:00:00:15:f4:e8 (oui Unknown), ethertype IPv4 (0x0800), length 114: 10.0.12.1 > 10.0.12.2: ICMP echo request, id 5151, seq 5, length 80
10:15:50.403503 50:00:00:15:f4:e8 (oui Unknown) > 50:00:00:03:37:66 (oui Unknown), ethertype IPv4 (0x0800), length 114: 10.0.12.2 > 10.0.12.1: ICMP echo reply, id 5151, seq 5, length 80

10:16:13.852082 50:00:00:03:37:66 (oui Unknown) > 50:00:00:15:f4:e8 (oui Unknown), ethertype MPLS unicast (0x8847), length 118: MPLS (label 116384, exp 0, [S], ttl 65) 192.168.0.1 > 192.168.0.2: ICMP echo request, id 5163, seq 1, length 80
10:16:13.861402 50:00:00:03:37:66 (oui Unknown) > 50:00:00:15:f4:e8 (oui Unknown), ethertype MPLS unicast (0x8847), length 118: MPLS (label 116384, exp 0, [S], ttl 65) 192.168.0.1 > 192.168.0.2: ICMP echo request, id 5163, seq 2, length 80
10:16:13.863875 50:00:00:03:37:66 (oui Unknown) > 50:00:00:15:f4:e8 (oui Unknown), ethertype MPLS unicast (0x8847), length 118: MPLS (label 116384, exp 0, [S], ttl 65) 192.168.0.1 > 192.168.0.2: ICMP echo request, id 5163, seq 3, length 80
10:16:13.871162 50:00:00:03:37:66 (oui Unknown) > 50:00:00:15:f4:e8 (oui Unknown), ethertype MPLS unicast (0x8847), length 118: MPLS (label 116384, exp 0, [S], ttl 65) 192.168.0.1 > 192.168.0.2: ICMP echo request, id 5163, seq 4, length 80
10:16:13.881925 50:00:00:03:37:66 (oui Unknown) > 50:00:00:15:f4:e8 (oui Unknown), ethertype MPLS unicast (0x8847), length 118: MPLS (label 116384, exp 0, [S], ttl 65) 192.168.0.1 > 192.168.0.2: ICMP echo request, id 5163, seq 5, length 80

^C
15 packets captured
17 packets received by filter
0 packets dropped by kernel
bash-4.2# exit

[tomas@r5 ~]$ logout
r5#

 

 

 

See attached diagram and show-tech from R4.

 

Thanks

tomas

 

Attachments:
0
Posted by Tamas Plugor
Answered on June 18, 2020 5:52 pm

Hi Tomas,

You need to configure Ethernet interfaces in all VRFs to make this work in vEOS, this thread might be helpful: https://eos.arista.com/forum/see-bgp-routes-unable-to-ping/

0
Answered on June 19, 2020 3:47 pm

Hi Tamas

Thanks for that. It works know!

r4#ping vrf CUST-A 192.168.0.2 source 192.168.0.1
PING 192.168.0.2 (192.168.0.2) from 192.168.0.1 : 72(100) bytes of data.
80 bytes from 192.168.0.2: icmp_seq=1 ttl=65 time=72.4 ms
80 bytes from 192.168.0.2: icmp_seq=2 ttl=65 time=66.0 ms
80 bytes from 192.168.0.2: icmp_seq=3 ttl=65 time=61.8 ms
80 bytes from 192.168.0.2: icmp_seq=4 ttl=65 time=54.8 ms
80 bytes from 192.168.0.2: icmp_seq=5 ttl=65 time=50.5 ms

--- 192.168.0.2 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 44ms
rtt min/avg/max/mdev = 50.552/61.147/72.436/7.799 ms, pipe 5, ipg/ewma 11.007/66.228 ms
r4#

 

I think I had a similar issue some time ago but clearly it didnt sink in my mind that I was missing an eth interface in the VRF.

 

Thanks

tomas

Post your Answer

You must be logged in to post an answer.