Skip to content

Add new MRT attributes#71

Merged
zakird merged 8 commits into
mainfrom
phillip/27-mrt-attributes
May 5, 2026
Merged

Add new MRT attributes#71
zakird merged 8 commits into
mainfrom
phillip/27-mrt-attributes

Conversation

@phillip-stephens
Copy link
Copy Markdown
Contributor

@phillip-stephens phillip-stephens commented Apr 29, 2026

Changes

  • Adds support for all MRT path attributes GoBGP supports in its latest version
  • Print an INFO message for any path attributes GoBGP doesn't support, both RIPE RIS and RouteViews' latest MRT file contains one (see details below)
  • Add a test using a minimal MRT file

Reviewer Note

I changed the behavior so that if an error is encountered when parsing a MRT body, we'll skip that MRT msg rather than aborting.

A couple RIB MRT's I pulled from RouteViews (and also from RIPE RIS) had an attribute that GoBGP didn't recognize, even with the latest version. It seems even subtype = 249 is used by some router vendors to implement custom logic since it's unassigned by IANA.

I think skipping these unparseable ones (and logging at info level) and continuing is the best we can do.

echo "1.1.1.1" | ./zannotate --routing --routing-mrt-file=/tmp/bview.20260301                                                                                     11:11:06
INFO[0029] failed to parse mrt body: unknown evpn subtype: 249 

@phillip-stephens phillip-stephens force-pushed the phillip/27-mrt-attributes branch from 3b68a53 to 99e555a Compare April 30, 2026 02:59
@phillip-stephens phillip-stephens marked this pull request as ready for review May 4, 2026 21:51
@phillip-stephens phillip-stephens marked this pull request as draft May 5, 2026 00:43
@phillip-stephens phillip-stephens marked this pull request as ready for review May 5, 2026 04:41
@phillip-stephens phillip-stephens requested a review from zakird May 5, 2026 04:41
@zakird zakird merged commit b94bb71 into main May 5, 2026
3 checks passed
@zakird zakird deleted the phillip/27-mrt-attributes branch May 5, 2026 05:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants