You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Following the principle "be liberal in what you accept and conservative in what you send" we should remove the path attributes ORIGIN and AS_PATH from UPDATE messages that only contain the MP_UNREACH_NLRI because RFC4760 states:
An UPDATE message that contains the MP_UNREACH_NLRI is not required
to carry any other path attributes.
Currently, when sending a BGP withdraw, here is what that update message looks like on the wire:
Both ORIGIN and AS_PATH are path attributes that, according to RFC4760, are not required to be sent in the update message (I am fully aware that this is not a "must not" but more of a "should not").
OS
Debian Linux
root@exabgp-test:~# uname -a
Linux exabgp-test 4.19.0-8-cloud-amd64 #1 SMP Debian 4.19.98-1 (2020-01-26) x86_64 GNU/Linux
After the update to ExaBGP 4.2.6 (from 3.x), IPv6 withdraws are tearing down the IPv6 BGP session with the FRR neighbor. That is because older versions of FRR expect either no path attributes at all or the nexthop attribute to be present as well when sending MP_UNREACH_NLRI. FRRouting/frr@404c82d fixes this for FRR.
Credits
Many thanks to @donaldsharp for pointing out that ExaBGP is sending superfluous path attributes (ORIGIN and AS_PATH) when the update message contains the MP_UNREACH_NLRI.
I believe we currently send both reach and unreach in the same message. I need to see what the impact would be on the code but in principle it makes sense.
subsecond
changed the title
Remove path attributes in an UPDATE message that contains the MP_UNREACH_NLRI
Remove path attributes in an UPDATE message that only contains MP_UNREACH_NLRI
Apr 17, 2020
Summary
Following the principle "be liberal in what you accept and conservative in what you send" we should remove the path attributes
ORIGIN
andAS_PATH
from UPDATE messages that only contain theMP_UNREACH_NLRI
because RFC4760 states:Currently, when sending a BGP
withdraw
, here is what that update message looks like on the wire:Both
ORIGIN
andAS_PATH
are path attributes that, according to RFC4760, are not required to be sent in the update message (I am fully aware that this is not a "must not" but more of a "should not").OS
Version
Installation
Environment
Configuration
Steps to reproduce
Importance
After the update to ExaBGP 4.2.6 (from 3.x), IPv6 withdraws are tearing down the IPv6 BGP session with the FRR neighbor. That is because older versions of FRR expect either no path attributes at all or the nexthop attribute to be present as well when sending
MP_UNREACH_NLRI
. FRRouting/frr@404c82d fixes this for FRR.Credits
Many thanks to @donaldsharp for pointing out that ExaBGP is sending superfluous path attributes (
ORIGIN
andAS_PATH
) when the update message contains theMP_UNREACH_NLRI
.References
Could be related to:
#573
#954
The text was updated successfully, but these errors were encountered: