Subject: Bird3 - Establishing a BGP session over IPv6 LL addresses

Lucas da Vila dev at ldv.ar
Mon Mar 30 00:40:11 CEST 2026


Alexander!

The protocol "device" was the clue to get an established session!

Thanks!

Best regards
Lucas


On Thu, Mar 26, 2026, 20:22 Alexander Zubkov <green at qrator.net> wrote:

> Just for the note. "direct" and "device" - are different protocols.
>
> On Thu, Mar 26, 2026 at 11:21 PM Lucas da Vila <dev at ldv.ar> wrote:
>
>> Well, at least over IPv4 it was not necessary to have a "direct" protocol.
>>
>> But I'll try
>>
>> Regards,
>> Lucas
>>
>> On Thu, Mar 26, 2026, 18:28 Alexander Zubkov <green at qrator.net> wrote:
>>
>>> Hi Lucas,
>>>
>>> "protocol device" might be an issue, I think it's almost must-have for
>>> bgp. Because to establish the session bird needs to know interfaces and ip
>>> information. And that is supplied by "protocol device".
>>> https://bird.nic.cz/doc/bird-3.2.0.html#device
>>>
>>> Regards,
>>> Alexander
>>>
>>> On Thu, Mar 26, 2026 at 10:10 PM Lucas da Vila <dev at ldv.ar> wrote:
>>>
>>>> Hi Alexander,
>>>>
>>>> I don't have a "protocol device" I was just hoping to receive the
>>>> announcements from the RR a get the BMP output for analysis.
>>>>
>>>> Regards
>>>> lucas
>>>>
>>>>
>>>> On Thu, Mar 26, 2026, 16:46 Alexander Zubkov <green at qrator.net> wrote:
>>>>
>>>>> 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 at 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
>>>>>>
>>>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://trubka.network.cz/pipermail/bird-users/attachments/20260329/548626b5/attachment.htm>


More information about the Bird-users mailing list