summaryrefslogtreecommitdiff
path: root/roles/linux-ns/files/systemd/dn42_bird.service
diff options
context:
space:
mode:
authoruvok cheetah2025-02-02 15:21:26 +0100
committeruvok cheetah2025-02-02 15:21:26 +0100
commit526797b41c8dfffc7e74a951c17ef96734980e7a (patch)
tree84e562022de12f2cedc089ae8d0cbfdc02c595e9 /roles/linux-ns/files/systemd/dn42_bird.service
parent0ee94b306e667225b64804f169f15a961e966511 (diff)
Add role for Dn42 and network namespace
Diffstat (limited to 'roles/linux-ns/files/systemd/dn42_bird.service')
-rw-r--r--roles/linux-ns/files/systemd/dn42_bird.service27
1 files changed, 27 insertions, 0 deletions
diff --git a/roles/linux-ns/files/systemd/dn42_bird.service b/roles/linux-ns/files/systemd/dn42_bird.service
new file mode 100644
index 0000000..a4e74fd
--- /dev/null
+++ b/roles/linux-ns/files/systemd/dn42_bird.service
@@ -0,0 +1,27 @@
+# bird service for dn42
+
+[Unit]
+Description=BIRD Internet Routing Daemon - DN42 daemon
+After=network.target
+Wants=dn42_tinc@tn_int.service
+After=dn42_tinc@tn_int.service
+
+[Service]
+EnvironmentFile=/etc/bird/envvars
+ExecStartPre=/bin/sleep 3
+ExecStartPre=/usr/lib/bird/prepare-environment
+ExecStartPre=/usr/sbin/bird -c /etc/bird/dn42/bird.conf -p
+ExecStart=/usr/sbin/bird -c /etc/bird/dn42/bird.conf -f -g bird -u bird -s /var/run/bird/bird_dn42.sock
+ExecReload=/usr/sbin/birdc -s /var/run/bird/bird_dn42.sock configure
+Restart=on-abort
+
+NetworkNamespacePath=/run/netns/dn42
+BindReadOnlyPaths=/etc/netns/dn42/resolv.conf:/etc/resolv.conf
+ProtectSystem=strict
+# rel: /var/log
+# nope, doesn't work, bird must start with root
+#LogsDirectory=
+ReadWritePaths=/run/bird/ /var/log/bird/dn42/
+
+[Install]
+WantedBy=multi-user.target