1

While parsing an TABLE_DUMP_V2 RIB_IPV6_UNICAST entry I encountered this binary sequence representing a MP_REACH_NLRI BGP Path Attribute:

80 E 26 0 2 1 20 20 1 5 4 0 1 0 0 0 0 A5 1 30 30
 0 1 FE 80 0 0 0 0 0 0 2 1B ED FF FE 32 A1 1 0 0

Whereas:

  Attribute Header
  80  -> 10000000 attribute is optional and no other flag set
  E   -> attribute type 14 (MP_REACH_NLRI)
  26  -> a length of 38 octets
  Attribute
  0 2 -> AFI-Type two is IPv6 (as indicated by dump subtype)
  1   -> SAFI-Type 1 which is unicast (as indicated by dump subtype)
  20  -> indicates a length of 32 bytes

And that last part is the point where I am confused as an IPv6 address is supposed to be at most 16 bytes of length and the rfc does not state that more than a single next hop address can be specified.

How am I supposed to interprete an IPv6 address(es?) of length 32 in this context?

  • Is it multiple prefixes? I need to read about MRT to provide a more useful input... – cpt_fink Oct 18 '14 at 22:14
  • I am not sure I understand your question, I provided the links of the corresponding RFCs in the question. If you clear up your question I am happy to provide further details if I am able to. – Sim Oct 19 '14 at 7:31
  • I skimmed the relevant section but didn't have the time to piece it all together. Maybe someone with MRT experience will come along and be able to provide a detailed answer. – cpt_fink Oct 20 '14 at 3:51
1

32 length specifies 16 bytes of global ipv6 address and 16 bytes for link-local address. See "RFC- 2545 Use of BGP-4 Multiprotocol Extensions for IPv6 Inter-Domain Routing" for more details.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.