Ask Your Question
0

The MPLS Label1 and MPLS Label2 fields cannot be displayed correctly in MAC Route(EVPN) [closed]

asked 2019-07-29 06:59:04 +0000

updated 2019-07-29 08:54:13 +0000

grahamb gravatar image

EVPN NLRI: MAC Advertisement Route Route Type: MAC Advertisement Route (2) 0000 0000 0000 0000 0000 .... = MPLS Label 1: 0--->wrong, should be 2(dec). 0000 0000 0000 0000 1100 .... = MPLS Label 2: 12--->wrong, should be 200(dec).

The MPLS Label1 and MPLS Label2 fields cannot be displayed correctly.

Actual original packet field is :00 00 02 00 00 c8.

Original packet information:

Frame 14: 173 bytes on wire (1384 bits), 173 bytes captured (1384 bits) on interface 0
Ethernet II, Src: 38:0b:4c:02:01:01 (38:0b:4c:02:01:01), Dst: 38:0b:4c:01:01:01 (38:0b:4c:01:01:01)
Internet Protocol Version 4, Src: 2.2.2.2, Dst: 1.1.1.1
Transmission Control Protocol, Src Port: 179, Dst Port: 53724, Seq: 20, Ack: 20, Len: 119
Border Gateway Protocol - UPDATE Message
    Marker: ffffffffffffffffffffffffffffffff
    Length: 119
    Type: UPDATE Message (2)
    Withdrawn Routes Length: 0
    Total Path Attribute Length: 96
    Path attributes
        Path Attribute - ORIGIN: INCOMPLETE
        Path Attribute - AS_PATH: empty
        Path Attribute - LOCAL_PREF: 100
        Path Attribute - EXTENDED_COMMUNITIES
        Path Attribute - MP_REACH_NLRI
            Flags: 0x90, Optional, Extended-Length, Non-transitive, Complete
            Type Code: MP_REACH_NLRI (14)
            Length: 51
            Address family identifier (AFI): Layer-2 VPN (25)
            Subsequent address family identifier (SAFI): EVPN (70)
            Next hop network address (4 bytes)
            Number of Subnetwork points of attachment (SNPA): 0
            Network layer reachability information (42 bytes)
                EVPN NLRI: MAC Advertisement Route
                    Route Type: MAC Advertisement Route (2)
                    Length: 40
                    Route Distinguisher: 0000000100000016 (1:22)
                    ESI: 00:00:00:00:00:00:00:00:00:00
                    Ethernet Tag ID: 0
                    MAC Address Length: 48
                    MAC Address: HuaweiTe_62:30:31 (54:89:98:62:30:31)
                    IP Address Length: 32
                    IPv4 address: 192.168.20.3
                    0000 0000 0000 0000 0000 .... = MPLS Label 1: 0
                    0000 0000 0000 0000 1100 .... = MPLS Label 2: 12
edit retag flag offensive reopen merge delete

Closed for the following reason not a real question by Jaap
close date 2019-07-29 14:00:35.755927

2 Answers

Sort by ยป oldest newest most voted
0

answered 2019-07-29 16:33:07 +0000

cmaynard gravatar image

updated 2019-07-29 16:34:19 +0000

The relevant RFC appears to be RFC 7432 - BGP MPLS-Based Ethernet VPN.

Section 7.2. MAC/IP Advertisement Route does indicate that the MPLS Label1 is 3 octets, and MPLS Label2 is 0 or 3 octets:

A MAC/IP Advertisement route type specific EVPN NLRI consists of the following:

            +---------------------------------------+
            |  RD (8 octets)                        |
            +---------------------------------------+
            |Ethernet Segment Identifier (10 octets)|
            +---------------------------------------+
            |  Ethernet Tag ID (4 octets)           |
            +---------------------------------------+
            |  MAC Address Length (1 octet)         |
            +---------------------------------------+
            |  MAC Address (6 octets)               |
            +---------------------------------------+
            |  IP Address Length (1 octet)          |
            +---------------------------------------+
            |  IP Address (0, 4, or 16 octets)      |
            +---------------------------------------+
            |  MPLS Label1 (3 octets)               |
            +---------------------------------------+
            |  MPLS Label2 (0 or 3 octets)          |
            +---------------------------------------+

However, section 9.2.1. Constructing MAC/IP Address Advertisement clarifies the encoding to explicitly state that both the MPLS Label1 and MPLS Label2 fields are to be encoded in the high-order 20 bits only.

MPLS Label1:

The MPLS Label1 field is encoded as 3 octets, where the high-order
20 bits contain the label value.  The MPLS Label1 MUST be downstream
assigned, and it is associated with the MAC address being advertised
by the advertising PE.  The advertising PE uses this label when it
receives an MPLS-encapsulated packet to perform forwarding based on
the destination MAC address toward the CE.  The forwarding procedures
are specified in Sections 13 and 14.

MPLS Label2:

The MPLS Label2 field is an optional field.  If it is present, then
it is encoded as 3 octets, where the high-order 20 bits contain the
label value.

So as far as I can tell, Wireshark is dissecting and displaying the MPLS Label information correctly.

edit flag offensive delete link more
0

answered 2019-07-29 14:00:12 +0000

Jaap gravatar image

Bug report go into bugs.wireshark.org, including version information, capture file (not screenshots!!) showing the problem and whatever other relevant information you can provide.

edit flag offensive delete link more

Question Tools

1 follower

Stats

Asked: 2019-07-29 06:59:04 +0000

Seen: 32 times

Last updated: Jul 29