[ixpmanager] BIRD2 configuration question

Pete Ashdown pashdown at xmission.com
Tue Apr 6 15:38:34 IST 2021


On Ubuntu, I first disable the installed bird.service:

     systemctl disable bird.service

     systemctl mask bird.service

Then I create two new bird services, one for v4 & v6, that point to new 
envvars files, that subsequently point to the IXP generated configs.

/etc/bird/envvars-v4:

BIRD_RUN_USER=bird
BIRD_RUN_GROUP=bird
BIRD_ARGS="-s /var/run/bird/bird-rs1-slix-ipv4.ctl -c 
/etc/bird/bird-rs1-slix-ip
v4.conf"

/etc/bird/envvars-v6:

BIRD_RUN_USER=bird
BIRD_RUN_GROUP=bird
BIRD_ARGS="-s /var/run/bird/bird-rs1-slix-ipv6.ctl -c 
/etc/bird/bird-rs1-slix-ip
v6.conf"

/etc/systemd/system/bird-v4.service:

[Unit]
Description=BIRD Internet Routing Daemon v4
After=network.target

[Service]
EnvironmentFile=/etc/bird/envvars-v4
ExecStartPre=/usr/lib/bird/prepare-environment
ExecStartPre=/usr/sbin/bird -p
ExecReload=/usr/sbin/birdc configure
ExecStart=/usr/sbin/bird -f -u $BIRD_RUN_USER -g $BIRD_RUN_GROUP $BIRD_ARGS
Restart=on-abort

[Install]
WantedBy=multi-user.target

/etc/systemd/system/bird-v6.service:

[Unit]
Description=BIRD Internet Routing Daemon v4
After=network.target

[Service]
EnvironmentFile=/etc/bird/envvars-v6
ExecStartPre=/usr/lib/bird/prepare-environment
ExecStartPre=/usr/sbin/bird -p
ExecReload=/usr/sbin/birdc configure
ExecStart=/usr/sbin/bird -f -u $BIRD_RUN_USER -g $BIRD_RUN_GROUP $BIRD_ARGS
Restart=on-abort

[Install]
WantedBy=multi-user.target


Reload systemd and enable the services on boot:

     systemctl daemon-reload

     systemctl enable bird-v4

     systemctl enable bird-v6


On 4/6/21 7:15 AM, Tom Duff wrote:
> Hi everyone,
>
> We're trying to transition from Birdv1 to v2 at our IX, and I was
> looking through the ixpmanager mailing list archives to see if anyone
> had any info about running two instances of BIRD v2 on the same box. I
> saw this thread in which it was explained the decision behind not
> unifying the config:
>
>   https://www.inex.ie/pipermail/ixpmanager/2019-August/002328.html
>
> ...which makes sense to me, but I've gone through all the bird docs,
> and I cannot for the life of me figure out how to run an apt-installed
> version of BIRD 2.0.7 as two separate daemons. I'm now thinking
> there's no way to use the packaged version of bird, and compiling two
> separate instances of BIRD v2 and running one with the IPv4-specific
> config and one with the IPv6-specific config is what people are doing?
>   Or is there some kind of compile-time flag that spits out the two
> separate binaries (bird and bird6) like bird v1 used to have? I could
> use a nudge in the right direction



More information about the ixpmanager mailing list