Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Debug EVPN VXLAN on RPD and Linux

You can debug EVPN type 2 routes by enabling VXLAN encapsulation.

Before you start debugging for EVPN over VXLAN support in cRPD, ensure you have the configuration created.

Configure EVPN Over VXLAN

Configure Layer 2 EVPN over VXLAN with MAC-VRF on cRPD.

Verify Layer 2 EVPN Over VXLAN Support on cRPD

  1. Verify the bridge device is created in RPD and Linux kernel.

    root@PE1_CRPD> show evpn instance evpn-vxlan extensive

    RPD view

    root@PE1_CRPD> show krt table | grep evpn-vxlan

    Kernel view

    root@PE1_CRPD:/# ip link show __crpd-brd2

    __crpd-brd<2> is kernel id from show krt table

    root@PE1_CRPD:/# ip -d link show __crpd-brd2

  2. Verify if the VXLAN devices are created corresponding to the VXLAN configuration under bridge domains.

    RPD view

    VXLAN configs of interest under routing-instance bridge-domains.​

    Kernel view

    root@PE1_CRPD:/# ip -d link show vxlan2600

    root@PE1_CRPD:/# ip -d link show vxlan2601

  3. Verify all the instance interfaces (bridge domain interfaces including vxlan devices) are enslaved to bridge device in kernel.

    RPD view

    Interface configs of interest under routing-instance bridge-domains.​

    Kernel view

    Ensure all the instance IFL have "master __crpd-brd2" which means they are enslaved to __crpd-brd2 bridge device through ip link.

    root@PE1_CRPD:/# ip link show master __crpd-brd2

  4. Verify if all the instance interfaces which are part of the bridge device are assigned to vids matching the bridge-domain on RPD.

    RPD view

    VLAN/interface configs of interest under routing-instance bridge-domains.​

    Kernel view

    root@PE1_CRPD:/# bridge vlan show

  5. Verify if irb interface (vlan sub interface with bridge-domains vlan-id) is created in kernel corresponding to the routing-interface configuration under bridge-domains.

    RPD view

    IRB interface configs of interest under routing-instance bridge-domains.​

    Kernel view

    root@PE1_CRPD:/# ip -d link show irb.600

    root@PE1_CRPD:/# ip -d link show irb.601

  6. Ensure if IPv4/IPv6 addresses are assigned to the irb interfaces.

    RPD view

    IP address configs of IRB interfaces.​

    Kernel view

    root@PE1_CRPD:/# ip addr show irb.600

    root@PE1_CRPD:/# ip addr show irb.601

  7. Verify bridge flood entries are created in kernel, corresponding to the received IM (inclusive multicast) route entries received from peers.

    RPD view

    root@PE1_CRPD> show route table evpn-vxlan.evpn.0 protocol bgp | grep IM​

    Kernel view

    root@PE1_CRPD:/# bridge fdb show br __crpd-brd2 state static | grep 00:00:00:00:00:00

  8. Verify local MAC entries are learnt and advertised by EVPN to remote peers.

    RPD view

    root@PE1_CRPD> show evpn database instance evpn-vxlan origin local

    root@PE1_CRPD> show route table evpn-vxlan.evpn.0 protocol evpn | grep MAC

    Kernel view

    Mac entries are learnt from bridge fdb table

    root@PE1_CRPD:/# bridge fdb show br __crpd-brd2 brport ens3f2.600 state dynamic

    root@PE1_CRPD:/# bridge fdb show br __crpd-brd2 brport ens3f3.601 state dynamic

    Mac+ip bindings are learnt from ip neigh table​

    root@PE1_CRPD:/# ip neigh show dev irb.600 | grep -v PERMANENT​

    root@PE1_CRPD:/# ip neigh show dev irb.601 | grep -v PERMANENT

  9. Verify remote MAC entries are learnt and programmed to kernel.

    RPD view

    root@PE1_CRPD> show route table evpn-vxlan.evpn.0 protocol bgp | grep MAC

    root@PE1_CRPD> show evpn database instance evpn-vxlan origin remote

    Kernel view

    Macs are programmed to bridge fdb table in Linux

    root@PE1_CRPD:/# bridge fdb show br __crpd-brd2 dev vxlan2600 state static

    root@PE1_CRPD:/# bridge fdb show br __crpd-brd2 dev vxlan2601 state static

    Mac+ip bindings are programmed to ip neigh table

    root@PE1_CRPD:/# ip neigh show dev irb.600 | grep PERMANENT​

    root@PE1_CRPD:/# ip neigh show dev irb.601 | grep PERMANENT​