BGP: Add support for peering with link-local IPv6 addresses

Matthias Schiffer mschiffer at universe-factory.net
Tue Dec 21 11:45:20 CET 2010


On 12/21/2010 01:21 AM, Ondrej Zajicek wrote:
> diff --git a/sysdep/bsd/krt-sock.c b/sysdep/bsd/krt-sock.c
>> index 53b30ca..fc73be8 100644
>> --- a/sysdep/bsd/krt-sock.c
>> +++ b/sysdep/bsd/krt-sock.c
>> @@ -541,7 +541,7 @@ krt_read_addr(struct ks_msg *msg)
>>      _I0(ifa.ip) = 0xfe800000;
>>  #endif
>>  
>> -  if (iface->flags & IF_MULTIACCESS)
>> +  if ((iface->flags & IF_MULTIACCESS) || ipa_has_link_scope(ifa.ip))
>>    {
>>      ifa.prefix = ipa_and(ifa.ip, ipa_mkmask(masklen));
>>  
> What is exactly that? Link-local addresses are broken (in BIRD)
> on non-multiaccess devices on *BSD?
>
Without that patch, on *BSD link-local addresses will be marked as
unnumbered on pointopoint interfaces, while they are in fact /64. This
breaks the is_connected() check that's called from neigh_find2(), as
there is no opposite address.

Matthias Schiffer


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 262 bytes
Desc: OpenPGP digital signature
URL: <http://trubka.network.cz/pipermail/bird-users/attachments/20101221/cc1009b0/attachment-0001.asc>


More information about the Bird-users mailing list