Broadcast RIP to each broadcast address on interface with multiple aliases

bird21 at sensation.net.au bird21 at sensation.net.au
Fri Oct 22 09:18:00 CEST 2021


Following up my message from a few days ago. Even the simplest possible 
config causes a syntax error, despite the interface directive being a 
sample copied straight from the docs. I tried bird.conf with ONLY these 3 
lines:

protocol rip {
interface -192.168.1.0/24, 192.168.0.0/16;   # from https://bird.network.cz/doc/bird-3.html#proto-iface
}


bird: /usr/local/etc/bird.conf:2:42 Interface name/mask expected, not IP 
prefix


Is this a bug (in either code or docs), or is the interface directive 
different for RIP? I'm using FreeBSD 12.2 and bird 1.6.8

Thanks.


On Tue, 19 Oct 2021, bird21 at sensation.net.au wrote:

> Hi all,
>
> I want to broadcast a last-resort old-school default route via RIPv1. The 
> following config works:
>
> filter default_route {
>  if net ~ [ 0.0.0.0/0 ] then {
>    accept;
>  }
>  reject;
> }
> # ...snip...
> protocol rip {
>    export filter default_route;
>    interface "em0" {
>       version 1;
>       mode broadcast;
>       update time 5;
>    };
> }
>
> ...but it only sends to the broadcast address of the main interface IP. How 
> can I get it to send to the broadcast addresses of the aliases as well?
>
> These are the networks on the em0 adapter:
>
> x.x.x.192/28 (main)
> 192.168.x.0/24 (alias)
> 192.168.y.0/24 (alias)
>
> After consulting https://bird.network.cz/doc/bird-3.html#proto-iface , I 
> tried the following to force additional/different addresses:
>
> interface x.x.x.193/28 {  # actual interface IP/prefix
>
> interface x.x.x.192/28 {  # network IP/prefix
>
> interface x.x.x.x {  # interface IP only
>
> interface "em0" x.x.x.x {  # interface name and IP
>
> interface "em0" x.x.x.x/28 {  # interface name and IP/prefix
>
> All of these are rejected with the error "Interface name/mask expected, not 
> IP prefix", regardless of whether I list the main interface IP, or main plus 
> aliases (comma separated).
>
> Am I missing something simple in the syntax, or is the RIPv1 implementation 
> not capable of doing this?
>
> Thanks in advance.
>
>


More information about the Bird-users mailing list