Hi Lucas,

I have some working bgp sessions over link-local addresses. Only that they are hand-configured, not automatic ones. And I have bird2, not bird3. My config is something like this:

protocol bgp bgp_router_c6 {
        neighbor fe80::2 as 65000;
        local fe80::1 as 65000;
        interface "vlan100";
        direct;
        strict bind yes;
        free bind yes;

        ipv6 {
                next hop keep; ...
        };
}

"free bind" should not be necessary here, I think. Do you have "protocol device" in your config?

Regards,
Alexander Zubkov

On Thu, Mar 26, 2026 at 8:21 PM Lucas da Vila <dev@ldv.ar> wrote:
Hi!

I'm a member of the DN42 network, and I have a mikrotik router connected to it, I've only have 1 peer and I'm receiving over MP-BGP IPv4 and IPv6 prefixes. Also on the mikrotik I'm running a route-reflector.

With my bird3 (3.2.0 from debian repo) instance I'm trying to connect to the route reflector over a couple of IPv6 LL addresses. But it doesn't seem to be working. This is my bird3 config:

```
router id 192.168.1.200;

log "/var/log/bird/bird.log" all;

protocol bgp mkt01_dn42_rr {
        description "mkt01 dn42 RR";
        # local 192.168.1.200 as 64512;
        local fe80::42e2:30ff:fe60:edbb%wlp2s0 as 64512;
        # neighbor 192.168.1.201 as 64512;
        neighbor fe80::2805%wlp2s0 as 64512;

        interface "wlp2s0";
        direct;
        strict bind yes;

        ipv4 {
                import all;
        };

        ipv6 {
                import all;
        };

}

protocol bmp {
        station address ip 127.0.0.1 port 5000;
        monitoring rib in pre_policy;
        monitoring rib in post_policy;
}
```

After trying adding and removing params liks strict bind, interface, etc I was not able to land a configuration that finally worked.

I must say that over IPv4 the session was established, but over IPv6 stills in Idle.

Is anyone out there with a similar config? Any ideas why this happens?

Regards, 
Lucas