Bird pipe/filter change on "external" conditions

ico ico at petrzalka.net
Mon Feb 22 19:34:44 CET 2021


Hello,

Well I was hoping for something like

     import filter {
         if env.somevariable = 0 then reject;
         accept;
     };

And then somehow set somevariable via birdc....

But using symlinks sounds better than overwriting config files.

Thanks

ico

On 21. 2. 2021 11:43, Alexander Zubkov wrote:
> Hello,
> 
> I do almost the same, but do not rewrite the config. I have an include
> in the place I want to change to a symlinked file. I change the
> symlink and reload the config. So I have my configs static, I change
> only symlinks.
> 
> On Fri, Feb 19, 2021 at 2:44 AM ico <ico at petrzalka.net> wrote:
>>
>> Hello,
>>
>> Is there some way to change bird's configuration on some external event?
>> I would use it like this:
>>
>> There are 2 routers, active and passive. Active router exports default
>> route for the rest of network. Passive router has exactly the same
>> configuration, but filters out default route. When active/passive switch
>> function, the new active somehow removes default route filter, the new
>> passive adds default route filter.
>>
>> Another usage would be to change interface cost in OSPF at run-time and
>> thus redirecting traffic from that particular interface.
>>
>> Currently I am doing it with rewritting bird's config file and reloading
>> configuration. Is there some better way? Like setting some variable,
>> which causes changes some filter conditions?
>>
>> Thanks
>>
>> ico


More information about the Bird-users mailing list