RFC Errata


Errata Search

 
Source of RFC  
Summary Table Full Records

RFC 6396, "Multi-Threaded Routing Toolkit (MRT) Routing Information Export Format", October 2011

Source of RFC: grow (ops)
See Also: RFC 6396 w/ inline errata

Errata ID: 6640
Status: Verified
Type: Technical
Publication Format(s) : TEXT

Reported By: Claudio Jeker
Date Reported: 2021-07-13
Verifier Name: Warren Kumari (Ops AD)
Date Verified: 2021-07-16

Section Appendix A says:

      |   BGP Path Attributes =

              40 01 01 00 50 02 00 0e 02 03 00 00 fb f0 00 00
              fb ff 00 00 fb f6 80 0e 2b 00 02 01 20 20 01 0d
              b8 00 0d 00 ff 00 00 00 00 00 00 01 87 fe 80 00
              00 00 00 00 00 02 12 f2 ff fe 9f 1b 00 00 00 20
              20 01 0d b8

                  Figure 19: MRT RIB_IPV6_UNICAST Example

   The contents of the BGP Path Attribute field above are as follows:

   ORIGIN: IGP
   ASPATH: 64496 64511 64502
   MP_REACH_NLRI(IPv6 Unicast)
   NEXT_HOP: 2001:db8:d:ff::187
   NEXT_HOP: fe80::212:f2ff:fe9f:1b00
   NLRI: 2001:0DB8::/32

                  Figure 20: BGP Path Attribute Contents

It should say:

      |   BGP Path Attributes =

              40 01 01 00 50 02 00 0e 02 03 00 00 fb f0 00 00
              fb ff 00 00 fb f6 80 0e 21 20 20 01 0d b8 00 0d
              00 ff 00 00 00 00 00 00 01 87 fe 80 00 00 00 00
              00 00 02 12 f2 ff fe 9f 1b 00

                  Figure 19: MRT RIB_IPV6_UNICAST Example

   The contents of the BGP Path Attribute field above are as follows:

   ORIGIN: IGP
   ASPATH: 64496 64511 64502
   MP_REACH_NLRI(IPv6 Unicast)
   NEXT_HOP: 2001:db8:d:ff::187
   NEXT_HOP: fe80::212:f2ff:fe9f:1b00

                  Figure 20: BGP Path Attribute Contents

Notes:

The encoding of the MP_REACH_NLRI attribute is not in the form according to Section 4.3.4. RIB Entries:

There is one exception to the encoding of BGP attributes for the BGP
MP_REACH_NLRI attribute (BGP Type Code 14) [RFC4760]. Since the AFI,
SAFI, and NLRI information is already encoded in the RIB Entry Header
or RIB_GENERIC Entry Header, only the Next Hop Address Length and
Next Hop Address fields are included. The Reserved field is omitted.
The attribute length is also adjusted to reflect only the length of
the Next Hop Address Length and Next Hop Address fields.

The example includes a full MP_REACH_NLRI attribute. This is a common issue with TABLE_DUMP_V2 and parsers need to implement a workaround to support the broken form.

One way of solving this is to compare the attribute length of MP_REACH_NLRI with the first byte of the attribute.
If the value of the first byte is equal to the attribute lenght - 1 then it is the RFC encoding else assume that a full MP_REACH_NLRI attribute was dumped in which case the parser needs to skip the first 3 bytes to get to the nexthop.

Report New Errata