Hello,

you basically want one router to prepend two ASNs for one hop, if I understand correctly. That’s not an intuitive / default-worthy behavior.

On Thu, Oct 10, 2024 at 10:20:51AM +0000, Ochalski, Radoslaw via Bird-users wrote:

Here you have same route exported via Juniper border, local ASN 20940 is prepended by default:

inet.0: 955317 destinations, 2138917 routes (950415 active, 218793 holddown, 14419 hidden) Prefix Nexthop MED Lclpref AS path * 20.135.0.0/16 Self 20940 8075 I

vs bird:

    BGP.as_path: 8075

[truncated]

BIRD shows the route after filters but before BGP applies the export modifications, which includes prepending the local AS to the AS path iff the session is EBGP. I expect that Juniper is showing the route as-it-goes-to-the-wire.

BIRD 2 doesn’t allow showing routes that way; this is possible in BIRD 3 with export table on by showing routes from the export table.

If you capture tcpdump from BIRD, you’ll see the AS prepended.

Maria


Maria Matejka (she/her) | BIRD Team Leader | CZ.NIC, z.s.p.o.