On Sun, Jul 05, 2026 at 08:24:55PM +0800, xinzhe liu via Bird-users wrote:
Hello BIRD maintainers,
I would like to report a possible RFC 7607 compliance issue in BIRD's BGP UPDATE validation: routes whose AS_PATH contains AS number 0 appear to be accepted into the BGP table instead of being treated as malformed. Summary
BIRD appears not to reject AS 0 when it appears inside the AS_PATH path attribute.
I tested this with an eBGP session where the peer sent a valid UPDATE whose AS_PATH was:
65002 0
BIRD accepted the route and displayed the AS_PATH with the reserved AS 0 still present.
RFC 7607 Section 2 states that a BGP speaker must not originate or propagate a route with AS number 0 in AS_PATH, and that an UPDATE containing AS number 0 in AS_PATH must be considered malformed and handled according to RFC 7606.
For a malformed AS_PATH attribute with parseable NLRI, RFC 7606 handling should be treat-as-withdraw: the route should not be installed, while the BGP session should remain established. Affected Version
Hello Thanks for the notice, we somehow missed RFC 7607, so we validate AS_PATH just for structural properties according to RFC 7606 section 7.2. We added this (and the other issue with accepting OPEN for ASN 0) to our todo list for the next minor release. -- Elen sila lumenn' omentielvo Ondrej 'Santiago' Zajicek (email: santiago@crfreenet.org) "To err is human -- to blame it on a computer is even more so."