BSD & non-/32 prefixes on p2p linkes

Alexander V. Chernikov melifaro at yandex-team.ru
Sat Sep 21 10:32:18 CEST 2013


On 20.09.2013 21:09, Alexander V. Chernikov wrote:
> Hello list!
>
> Currently bird assumes (bsd sysdep) that any prefix on p2p link is /32.
Just to be more specific: krt_read_addr() assumes the following for 
every non-multiaccess interfaces:

else /* PtP iface */
{
ifa.flags |= IA_PEER;
ifa.prefix = ifa.opposite = ifa.brd;
}

For every mask != 32 this (except /31 and higher address) gives you 
wrong prefix like in example below:
>
> For example:

ifconfig gif15 inet 10.0.0.2/31 10.0.0.3
ifconfig gif15
gif15: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1280
...
         inet 10.0.0.2 --> 10.0.0.3 netmask 0xfffffffe

>
> bird: direct1 < primary address 10.0.0.3/31 on interface gif15 added
> bird: Ignoring bogus prefix 10.0.0.3/31 received via direct1
> bird: direct1 > invalid 10.0.0.3/31 dev gif15
>
> IPv6 case was fixed in 3f5843740 
> <https://gitlab.labs.nic.cz/labs/bird/commit/3f58437405f8e37e9c14d83274a6b82ffd9583f8>.
> Can we do the same for IPv4 ?
>
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://trubka.network.cz/pipermail/bird-users/attachments/20130921/f8109606/attachment-0001.html>


More information about the Bird-users mailing list