From af2d7aa5757158d7c4c7a21402bbeaad6abdfdae Mon Sep 17 00:00:00 2001 From: Paul Maruhn <paulmaruhn@posteo.de> Date: Thu, 27 Feb 2020 18:26:24 +0100 Subject: [PATCH] add setup role for debian based gateways --- .gitignore | 2 + host_vars/burgtor.yml | 16 ----- host_vars/holstentor.yml | 7 +- host_vars/huextertor.yml | 15 ++-- host_vars/kaisertor.yml | 8 +++ host_vars/muehlentor.yml | 3 +- hosts | 5 +- hosts_new | 5 ++ revert_and_setup.sh | 17 +++++ roles/debian_base/files/etc/bird.conf | 1 - .../files/{bird/base => etc/bird}/bird.conf | 7 -- .../files/{bird/base => etc/bird}/bird6.conf | 20 +++--- .../{bird/base => etc/bird}/bird6_ibgp.conf | 0 .../{bird/base => etc/bird}/bird_ibgp.conf | 0 .../debian_base/files/etc/bird/password.conf | 1 + roles/debian_base/files/etc/bird6.conf | 1 - .../files/etc/fastd/ffhl-gw-vpn/fastd.conf | 15 ---- .../etc/fastd/ffhl-gw-vpn/gateways/burgtor | 3 - .../etc/fastd/ffhl-gw-vpn/gateways/huextertor | 3 - .../etc/fastd/ffhl-mesh-vpn-2/fastd.conf | 17 ----- .../files/etc/fastd/ffhl-mesh-vpn/fastd.conf | 19 ----- .../etc/fastd/ffhl_mesh_gwvpn/fastd.conf | 11 +++ .../gateways/holstentor | 0 .../gateways/muehlentor | 0 .../files/etc/fastd/ffhl_mesh_vpn/fastd.conf | 14 ++++ .../files/etc/iptables/ip6tables.rules | 1 - roles/debian_base/files/etc/ntp.conf | 23 ------ .../etc/systemd/network/00-nat64.network | 7 -- .../etc/systemd/network/04-anycast-dns.netdev | 3 - .../systemd/network/04-anycast-dns.network | 5 -- .../etc/systemd/network/22-ffhl-bat0.network | 5 ++ .../etc/systemd/network/22-mesh-hl.network | 5 -- .../network/25-ffhl-mesh-vpn-2.network | 2 - .../systemd/network/25-ffhl-mesh-vpn.network | 2 - .../systemd/network/26-ffhl-gw-vpn.network | 2 - .../etc/systemd/network/26-ffhl-mesh.network | 5 ++ .../files/etc/systemd/system/alfred@.service | 11 --- .../etc/systemd/system/batadv-vis@.service | 10 --- .../systemd/system/batman-freifunk@.service | 17 ----- .../files/etc/systemd/system/batman@.service | 17 +++++ .../files/etc/systemd/system/dhcpd4.service | 13 ---- .../system/fastd@.service.d/override.conf | 5 +- .../systemd/system/freifunk-ip-rule.service | 28 ++++---- .../etc/systemd/system/iptables-up.service | 10 +++ .../override.service | 3 + .../system/update-ffhl-mesh-vpn.service | 2 +- roles/debian_base/files/etc/tayga.conf | 3 - .../burgtor/etc/bird}/bird6_local.conf | 0 .../burgtor/etc/bird}/bird_local.conf | 0 .../etc/systemd/network}/30-he-ipv6.netdev | 0 .../etc/systemd/network}/30-he-ipv6.network | 0 .../network}/31-ffrhein-fra3-v4.netdev | 0 .../network}/31-ffrhein-fra3-v4.network | 0 .../network}/32-ffrhein-fra3-v6.netdev | 0 .../network}/32-ffrhein-fra3-v6.network | 0 .../systemd/network}/33-ffrhein-dus-v4.netdev | 0 .../network}/33-ffrhein-dus-v4.network | 0 .../systemd/network}/34-ffrhein-dus-v6.netdev | 0 .../network}/34-ffrhein-dus-v6.network | 0 .../holstentor/etc/bird}/bird6_local.conf | 0 .../holstentor/etc/bird}/bird_local.conf | 0 .../etc/systemd/network}/00-eth1.network | 0 .../etc/systemd/network}/30-he-ipv6.netdev | 0 .../etc/systemd/network}/30-he-ipv6.network | 0 .../systemd/network}/31-ffrhein-ber.netdev | 0 .../systemd/network}/31-ffrhein-ber.network | 0 .../systemd/network}/32-ffrhein-fra3.netdev | 0 .../systemd/network}/32-ffrhein-fra3.network | 0 .../huextertor/etc/bird}/bird6_local.conf | 0 .../huextertor/etc/bird}/bird_local.conf | 0 .../host/kaisertor/etc/bird/bird6_local.conf | 27 +++++++ .../host/kaisertor/etc/bird/bird_local.conf | 0 .../muehlentor/etc/bird}/bird6_local.conf | 0 .../muehlentor/etc/bird}/bird_local.conf | 0 roles/debian_base/files/scripts/iptables-up | 8 +++ roles/debian_base/tasks/bird.yml | 2 - roles/debian_base/tasks/dhcpd.yml | 12 ++++ roles/debian_base/tasks/fastd.yml | 43 +++++++++++ roles/debian_base/tasks/ffhl-peers.yml | 4 +- roles/debian_base/tasks/main.yml | 71 ++++++++++++++----- roles/debian_base/tasks/radvd.yml | 3 + roles/debian_base/tasks/software.yml | 46 ++++++++++-- roles/debian_base/tasks/units.yml | 31 ++++---- roles/debian_base/templates/dhcpd.conf.j2 | 4 +- roles/debian_base/templates/fastd-gw-mac.j2 | 1 - roles/debian_base/templates/fastd-mac-2.j2 | 1 - roles/debian_base/templates/fastd-mac.j2 | 1 - .../templates/fastd/ffhl_mesh_gwvpn/fastd-up | 5 ++ .../fastd/ffhl_mesh_gwvpn/gateways/holstentor | 3 + .../fastd/ffhl_mesh_gwvpn/gateways/muehlentor | 3 + .../templates/fastd/ffhl_mesh_vpn/fastd-up | 5 ++ .../10-ffhl.netdev.j2} | 2 +- .../12-ffhl.network.j2} | 4 +- roles/debian_base/templates/radvd.conf.j2 | 16 ----- .../debian_base/templates/radvd/radvd.conf.j2 | 14 ++++ todo.md | 8 +++ 96 files changed, 392 insertions(+), 291 deletions(-) delete mode 100644 host_vars/burgtor.yml create mode 100644 host_vars/kaisertor.yml create mode 100644 hosts_new create mode 100755 revert_and_setup.sh delete mode 100644 roles/debian_base/files/etc/bird.conf rename roles/debian_base/files/{bird/base => etc/bird}/bird.conf (97%) rename roles/debian_base/files/{bird/base => etc/bird}/bird6.conf (95%) rename roles/debian_base/files/{bird/base => etc/bird}/bird6_ibgp.conf (100%) rename roles/debian_base/files/{bird/base => etc/bird}/bird_ibgp.conf (100%) create mode 100644 roles/debian_base/files/etc/bird/password.conf delete mode 100644 roles/debian_base/files/etc/bird6.conf delete mode 100644 roles/debian_base/files/etc/fastd/ffhl-gw-vpn/fastd.conf delete mode 100644 roles/debian_base/files/etc/fastd/ffhl-gw-vpn/gateways/burgtor delete mode 100644 roles/debian_base/files/etc/fastd/ffhl-gw-vpn/gateways/huextertor delete mode 100644 roles/debian_base/files/etc/fastd/ffhl-mesh-vpn-2/fastd.conf delete mode 100644 roles/debian_base/files/etc/fastd/ffhl-mesh-vpn/fastd.conf create mode 100644 roles/debian_base/files/etc/fastd/ffhl_mesh_gwvpn/fastd.conf rename roles/debian_base/files/etc/fastd/{ffhl-gw-vpn => ffhl_mesh_gwvpn}/gateways/holstentor (100%) rename roles/debian_base/files/etc/fastd/{ffhl-gw-vpn => ffhl_mesh_gwvpn}/gateways/muehlentor (100%) create mode 100644 roles/debian_base/files/etc/fastd/ffhl_mesh_vpn/fastd.conf delete mode 100644 roles/debian_base/files/etc/ntp.conf delete mode 100644 roles/debian_base/files/etc/systemd/network/00-nat64.network delete mode 100644 roles/debian_base/files/etc/systemd/network/04-anycast-dns.netdev delete mode 100644 roles/debian_base/files/etc/systemd/network/04-anycast-dns.network create mode 100644 roles/debian_base/files/etc/systemd/network/22-ffhl-bat0.network delete mode 100644 roles/debian_base/files/etc/systemd/network/22-mesh-hl.network delete mode 100644 roles/debian_base/files/etc/systemd/network/25-ffhl-mesh-vpn-2.network delete mode 100644 roles/debian_base/files/etc/systemd/network/25-ffhl-mesh-vpn.network delete mode 100644 roles/debian_base/files/etc/systemd/network/26-ffhl-gw-vpn.network create mode 100644 roles/debian_base/files/etc/systemd/network/26-ffhl-mesh.network delete mode 100644 roles/debian_base/files/etc/systemd/system/alfred@.service delete mode 100644 roles/debian_base/files/etc/systemd/system/batadv-vis@.service delete mode 100644 roles/debian_base/files/etc/systemd/system/batman-freifunk@.service create mode 100644 roles/debian_base/files/etc/systemd/system/batman@.service delete mode 100644 roles/debian_base/files/etc/systemd/system/dhcpd4.service create mode 100644 roles/debian_base/files/etc/systemd/system/iptables-up.service create mode 100644 roles/debian_base/files/etc/systemd/system/isc-dhcp-server.service.d/override.service delete mode 100644 roles/debian_base/files/etc/tayga.conf rename roles/debian_base/files/{bird/burgtor => host/burgtor/etc/bird}/bird6_local.conf (100%) rename roles/debian_base/files/{bird/burgtor => host/burgtor/etc/bird}/bird_local.conf (100%) rename roles/debian_base/files/{netconfig/burgtor => host/burgtor/etc/systemd/network}/30-he-ipv6.netdev (100%) rename roles/debian_base/files/{netconfig/burgtor => host/burgtor/etc/systemd/network}/30-he-ipv6.network (100%) rename roles/debian_base/files/{netconfig/burgtor => host/burgtor/etc/systemd/network}/31-ffrhein-fra3-v4.netdev (100%) rename roles/debian_base/files/{netconfig/burgtor => host/burgtor/etc/systemd/network}/31-ffrhein-fra3-v4.network (100%) rename roles/debian_base/files/{netconfig/burgtor => host/burgtor/etc/systemd/network}/32-ffrhein-fra3-v6.netdev (100%) rename roles/debian_base/files/{netconfig/burgtor => host/burgtor/etc/systemd/network}/32-ffrhein-fra3-v6.network (100%) rename roles/debian_base/files/{netconfig/burgtor => host/burgtor/etc/systemd/network}/33-ffrhein-dus-v4.netdev (100%) rename roles/debian_base/files/{netconfig/burgtor => host/burgtor/etc/systemd/network}/33-ffrhein-dus-v4.network (100%) rename roles/debian_base/files/{netconfig/burgtor => host/burgtor/etc/systemd/network}/34-ffrhein-dus-v6.netdev (100%) rename roles/debian_base/files/{netconfig/burgtor => host/burgtor/etc/systemd/network}/34-ffrhein-dus-v6.network (100%) rename roles/debian_base/files/{bird/holstentor => host/holstentor/etc/bird}/bird6_local.conf (100%) rename roles/debian_base/files/{bird/holstentor => host/holstentor/etc/bird}/bird_local.conf (100%) rename roles/debian_base/files/{netconfig/holstentor => host/holstentor/etc/systemd/network}/00-eth1.network (100%) rename roles/debian_base/files/{netconfig/holstentor => host/holstentor/etc/systemd/network}/30-he-ipv6.netdev (100%) rename roles/debian_base/files/{netconfig/holstentor => host/holstentor/etc/systemd/network}/30-he-ipv6.network (100%) rename roles/debian_base/files/{netconfig/holstentor => host/holstentor/etc/systemd/network}/31-ffrhein-ber.netdev (100%) rename roles/debian_base/files/{netconfig/holstentor => host/holstentor/etc/systemd/network}/31-ffrhein-ber.network (100%) rename roles/debian_base/files/{netconfig/holstentor => host/holstentor/etc/systemd/network}/32-ffrhein-fra3.netdev (100%) rename roles/debian_base/files/{netconfig/holstentor => host/holstentor/etc/systemd/network}/32-ffrhein-fra3.network (100%) rename roles/debian_base/files/{bird/huextertor => host/huextertor/etc/bird}/bird6_local.conf (100%) rename roles/debian_base/files/{bird/huextertor => host/huextertor/etc/bird}/bird_local.conf (100%) create mode 100644 roles/debian_base/files/host/kaisertor/etc/bird/bird6_local.conf create mode 100644 roles/debian_base/files/host/kaisertor/etc/bird/bird_local.conf rename roles/debian_base/files/{bird/muehlentor => host/muehlentor/etc/bird}/bird6_local.conf (100%) rename roles/debian_base/files/{bird/muehlentor => host/muehlentor/etc/bird}/bird_local.conf (100%) create mode 100644 roles/debian_base/files/scripts/iptables-up create mode 100644 roles/debian_base/tasks/dhcpd.yml create mode 100644 roles/debian_base/tasks/fastd.yml create mode 100644 roles/debian_base/tasks/radvd.yml delete mode 100644 roles/debian_base/templates/fastd-gw-mac.j2 delete mode 100644 roles/debian_base/templates/fastd-mac-2.j2 delete mode 100644 roles/debian_base/templates/fastd-mac.j2 create mode 100644 roles/debian_base/templates/fastd/ffhl_mesh_gwvpn/fastd-up create mode 100644 roles/debian_base/templates/fastd/ffhl_mesh_gwvpn/gateways/holstentor create mode 100644 roles/debian_base/templates/fastd/ffhl_mesh_gwvpn/gateways/muehlentor create mode 100644 roles/debian_base/templates/fastd/ffhl_mesh_vpn/fastd-up rename roles/debian_base/templates/{10-freifunk-hl.netdev.j2 => network/10-ffhl.netdev.j2} (75%) rename roles/debian_base/templates/{12-freifunk-hl.network.j2 => network/12-ffhl.network.j2} (74%) delete mode 100644 roles/debian_base/templates/radvd.conf.j2 create mode 100644 roles/debian_base/templates/radvd/radvd.conf.j2 create mode 100644 todo.md diff --git a/.gitignore b/.gitignore index 16d183e..a2b61ae 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,4 @@ /.vagrant /playbook.retry +secret* +/artifacts diff --git a/host_vars/burgtor.yml b/host_vars/burgtor.yml deleted file mode 100644 index 949e137..0000000 --- a/host_vars/burgtor.yml +++ /dev/null @@ -1,16 +0,0 @@ -ip4: 10.130.0.255 -ip6: 2001:67c:2d50::e01 -ip6_ula: fdef:ffc0:3dd7::e01 -fastd_mac: 52:54:00:f3:62:d9 -fastd_mac_2: ea:af:13:66:6d:71 -fastd_gw_mac: 52:54:00:f3:62:da -freifunk_mac: 52:54:00:ee:5c:d7 -dhcpd_start: 10.130.12.63 -dhcpd_end: 10.130.15.254 -snat_dev: ffrhein-+ -snat_ip4: 185.66.193.32 -icvpn_name: luebeck2 -icvpn_ip4: 10.207.0.131 -icvpn_ip6: fec0::a:cf:0:83 -units_enable: - - "'fastd@dn42\\x2dchaos.service'" diff --git a/host_vars/holstentor.yml b/host_vars/holstentor.yml index 669c093..547d4ea 100644 --- a/host_vars/holstentor.yml +++ b/host_vars/holstentor.yml @@ -1,16 +1,17 @@ ip4: 10.130.0.253 ip6: 2001:67c:2d50::c01 ip6_ula: fdef:ffc0:3dd7::c01 -fastd_mac: d6:89:49:08:f6:9d -fastd_mac_2: ce:69:95:f0:a9:53 +fastd_mesh_mac: d6:89:49:08:f6:9d fastd_gw_mac: d6:89:49:08:f6:9e freifunk_mac: 52:54:00:0c:bb:eb dhcpd_start: 10.130.4.191 dhcpd_end: 10.130.8.126 + +# additional config snat_dev: ffrhein-+ snat_ip4: 185.66.193.33 icvpn_name: luebeck1 icvpn_ip4: 10.207.0.130 icvpn_ip6: fec0::a:cf:0:82 units_enable: - - "'fastd@dn42\\x2dchaos.service'" + - "'fastd@dn42-chaos.service'" diff --git a/host_vars/huextertor.yml b/host_vars/huextertor.yml index 1dedb9f..88e5507 100644 --- a/host_vars/huextertor.yml +++ b/host_vars/huextertor.yml @@ -1,9 +1,8 @@ ip4: 10.130.0.252 -ip6: 2001:67c:2d50::801 -ip6_ula: fdef:ffc0:3dd7::801 -fastd_mac: d2:d0:93:63:f7:da -fastd_mac_2: 66:3a:16:58:af:5c -fastd_gw_mac: d2:d0:93:63:f7:db -freifunk_mac: 6e:e4:d2:8a:3b:63 -dhcpd_start: 10.130.1.0 -dhcpd_end: 10.130.4.190 +ip6: 2001:67c:2d50::d01 +ip6_ula: fdef:ffc0:3dd7::d01 +fastd_mesh_mac: de:ad:ca:fe:aa:bb +fastd_gw_mac: de:ad:ca:fe:bb:dd +freifunk_mac: de:ad:ca:fe:cc:dd +dhcpd_start: 10.130.12.63 +dhcpd_end: 10.130.15.255 diff --git a/host_vars/kaisertor.yml b/host_vars/kaisertor.yml new file mode 100644 index 0000000..98e37c2 --- /dev/null +++ b/host_vars/kaisertor.yml @@ -0,0 +1,8 @@ +ip4: 10.130.0.255 +ip6: 2001:67c:2d50::b01 +ip6_ula: fdef:ffc0:3dd7::b01 +fastd_mesh_mac: de:ad:ca:fe:aa:aa +fastd_gw_mac: de:ad:ca:fe:bb:bb +freifunk_mac: de:ad:ca:fe:cc:bb +dhcpd_start: 10.130.1.0 +dhcpd_end: 10.130.4.190 diff --git a/host_vars/muehlentor.yml b/host_vars/muehlentor.yml index a6ae397..b0db1fb 100644 --- a/host_vars/muehlentor.yml +++ b/host_vars/muehlentor.yml @@ -1,8 +1,7 @@ ip4: 10.130.0.254 ip6: 2001:67c:2d50::a01 ip6_ula: fdef:ffc0:3dd7::a01 -fastd_mac: 26:9c:57:9b:5c:b2 -fastd_mac_2: 6a:0a:8d:97:50:69 +fastd_mesh_mac: 26:9c:57:9b:5c:b2 fastd_gw_mac: 26:9c:57:9b:5c:b3 freifunk_mac: de:ad:ca:fe:46:1d dhcpd_start: 10.130.8.127 diff --git a/hosts b/hosts index 491e0d3..b740cba 100644 --- a/hosts +++ b/hosts @@ -1,5 +1,8 @@ [gateways] -ffhl-gateway ansible_ssh_host=10.10.1.100 ansible_ssh_user=root +burgtor ansible_ssh_host=burgtor.luebeck.freifunk.net +holstentor ansible_ssh_host=holstentor.luebeck.freifunk.net +muehlentor ansible_ssh_host=muehlentor.luebeck.freifunk.net +huextertor ansible_ssh_host=huextertor.luebeck.freifunk.net [gateways:vars] ansible_python_interpreter=/usr/bin/env python2 diff --git a/hosts_new b/hosts_new new file mode 100644 index 0000000..03eaa0b --- /dev/null +++ b/hosts_new @@ -0,0 +1,5 @@ +[gateways] +kaisertor ansible_ssh_host=10.8.1.50 ansible_ssh_user=root + +[gateways:vars] +ansible_python_interpreter=/usr/bin/env python2 diff --git a/revert_and_setup.sh b/revert_and_setup.sh new file mode 100755 index 0000000..ac9813c --- /dev/null +++ b/revert_and_setup.sh @@ -0,0 +1,17 @@ +#!/bin/sh + +set -e + +# virsh snapshot-revert --domain ffhl-test-gateway --current +virsh snapshot-revert --domain ffhl-test-gateway 1579128050 +echo "restarting timesyncd and ntp" +ssh -q root@10.8.1.50 systemctl restart systemd-timesyncd +ssh -q root@10.8.1.50 systemctl restart ntp +echo "waiting..." +sleep 7 + +echo "removing artifacts" +rm -rf artifacts + +echo "run the playbook" +ansible-playbook -vvvv -i hosts debian_setup.yml diff --git a/roles/debian_base/files/etc/bird.conf b/roles/debian_base/files/etc/bird.conf deleted file mode 100644 index a44d2a5..0000000 --- a/roles/debian_base/files/etc/bird.conf +++ /dev/null @@ -1 +0,0 @@ -include "bird/bird.conf"; diff --git a/roles/debian_base/files/bird/base/bird.conf b/roles/debian_base/files/etc/bird/bird.conf similarity index 97% rename from roles/debian_base/files/bird/base/bird.conf rename to roles/debian_base/files/etc/bird/bird.conf index 610391d..78507ac 100644 --- a/roles/debian_base/files/bird/base/bird.conf +++ b/roles/debian_base/files/etc/bird/bird.conf @@ -53,13 +53,6 @@ protocol static mesh_freifunk { route 10.0.0.0/8 reject; }; -# 464XLAT -########## - -protocol static static_464xlat { - route 10.130.64.0/18 via "nat64"; -} - # Mesh-internal routing ######################## diff --git a/roles/debian_base/files/bird/base/bird6.conf b/roles/debian_base/files/etc/bird/bird6.conf similarity index 95% rename from roles/debian_base/files/bird/base/bird6.conf rename to roles/debian_base/files/etc/bird/bird6.conf index 0f7d3fb..c69b499 100644 --- a/roles/debian_base/files/bird/base/bird6.conf +++ b/roles/debian_base/files/etc/bird/bird6.conf @@ -22,9 +22,10 @@ define KERNEL_TABLE = ipt_freifunk; # ROA table ############ -roa table roa_icvpn { - include "roa.ip6"; -} +# roa table roa_icvpn { +# include "roa.ip6"; +# } + # filter helpers ################# @@ -49,14 +50,15 @@ function is_self_mgmt() { return net ~ [ 2001:67c:2d50:1::a82:7fe0/123+ ]; } filter bgp_import_filter { if is_self_net() then reject; if is_ula() then accept; - if roa_check(roa_icvpn) = ROA_VALID then { - accept; - } else { - print "ROA check failed for ", net, " ASN ", bgp_path.last; - } - reject; + # if roa_check(roa_icvpn) = ROA_VALID then { + # accept; + # } else { + # print "ROA check failed for ", net, " ASN ", bgp_path.last; + # } + accept; } + # static routes ################ diff --git a/roles/debian_base/files/bird/base/bird6_ibgp.conf b/roles/debian_base/files/etc/bird/bird6_ibgp.conf similarity index 100% rename from roles/debian_base/files/bird/base/bird6_ibgp.conf rename to roles/debian_base/files/etc/bird/bird6_ibgp.conf diff --git a/roles/debian_base/files/bird/base/bird_ibgp.conf b/roles/debian_base/files/etc/bird/bird_ibgp.conf similarity index 100% rename from roles/debian_base/files/bird/base/bird_ibgp.conf rename to roles/debian_base/files/etc/bird/bird_ibgp.conf diff --git a/roles/debian_base/files/etc/bird/password.conf b/roles/debian_base/files/etc/bird/password.conf new file mode 100644 index 0000000..efc2d5e --- /dev/null +++ b/roles/debian_base/files/etc/bird/password.conf @@ -0,0 +1 @@ +password "dummy"; diff --git a/roles/debian_base/files/etc/bird6.conf b/roles/debian_base/files/etc/bird6.conf deleted file mode 100644 index 2c9b7ed..0000000 --- a/roles/debian_base/files/etc/bird6.conf +++ /dev/null @@ -1 +0,0 @@ -include "bird/bird6.conf"; diff --git a/roles/debian_base/files/etc/fastd/ffhl-gw-vpn/fastd.conf b/roles/debian_base/files/etc/fastd/ffhl-gw-vpn/fastd.conf deleted file mode 100644 index 0b1fdd2..0000000 --- a/roles/debian_base/files/etc/fastd/ffhl-gw-vpn/fastd.conf +++ /dev/null @@ -1,15 +0,0 @@ -log to syslog level debug; -user "fastd"; -interface "ffhl-gw-vpn"; -method "salsa2012+umac"; -bind any:10001; -include "secret.conf"; -mtu 1280; -status socket "/run/fastd/gw-vpn.sock"; - -include peers from "gateways"; - -on up " - ip link set address $(cat mac) dev $INTERFACE - ip link set up $INTERFACE -"; diff --git a/roles/debian_base/files/etc/fastd/ffhl-gw-vpn/gateways/burgtor b/roles/debian_base/files/etc/fastd/ffhl-gw-vpn/gateways/burgtor deleted file mode 100644 index 63f3adb..0000000 --- a/roles/debian_base/files/etc/fastd/ffhl-gw-vpn/gateways/burgtor +++ /dev/null @@ -1,3 +0,0 @@ -key "5a15ffbef06ba2f887a17a60bf1feeae56fa6a9a94f3ea7f84390291406b0b4e"; -remote "burgtor.mesh.ffhl.chaotikum.org" port 10001; -float yes; diff --git a/roles/debian_base/files/etc/fastd/ffhl-gw-vpn/gateways/huextertor b/roles/debian_base/files/etc/fastd/ffhl-gw-vpn/gateways/huextertor deleted file mode 100644 index 8d70194..0000000 --- a/roles/debian_base/files/etc/fastd/ffhl-gw-vpn/gateways/huextertor +++ /dev/null @@ -1,3 +0,0 @@ -key "eb2ef5487527ec1643448943dd9427d9965870bc1a5db37f8edc8aea84005f9f"; -remote "huextertor.mesh.ffhl.chaotikum.org" port 10001; -float yes; diff --git a/roles/debian_base/files/etc/fastd/ffhl-mesh-vpn-2/fastd.conf b/roles/debian_base/files/etc/fastd/ffhl-mesh-vpn-2/fastd.conf deleted file mode 100644 index e640465..0000000 --- a/roles/debian_base/files/etc/fastd/ffhl-mesh-vpn-2/fastd.conf +++ /dev/null @@ -1,17 +0,0 @@ -log to syslog level debug; -user "fastd"; -interface "ffhl-mesh-vpn-2"; -method "null"; -method "salsa2012+umac"; -bind any:10002; -include "../ffhl-mesh-vpn/secret.conf"; -mtu 1280; -hide ip addresses yes; -status socket "/run/fastd/mesh-vpn-2.sock"; - -include peers from "../ffhl-mesh-vpn/peers"; - -on up " - ip link set address $(cat mac) dev $INTERFACE - ip link set up $INTERFACE -"; diff --git a/roles/debian_base/files/etc/fastd/ffhl-mesh-vpn/fastd.conf b/roles/debian_base/files/etc/fastd/ffhl-mesh-vpn/fastd.conf deleted file mode 100644 index 338dd95..0000000 --- a/roles/debian_base/files/etc/fastd/ffhl-mesh-vpn/fastd.conf +++ /dev/null @@ -1,19 +0,0 @@ -log to syslog level debug; -user "fastd"; -interface "ffhl-mesh-vpn"; -method "salsa2012+umac"; -method "salsa2012+gmac"; -method "xsalsa20-poly1305"; -bind 0.0.0.0:10000; -include "secret.conf"; -mtu 1426; -hide ip addresses yes; -secure handshakes no; -status socket "/run/fastd/mesh-vpn.sock"; - -include peers from "peers"; - -on up " - ip link set address $(cat mac) dev $INTERFACE - ip link set up $INTERFACE -"; diff --git a/roles/debian_base/files/etc/fastd/ffhl_mesh_gwvpn/fastd.conf b/roles/debian_base/files/etc/fastd/ffhl_mesh_gwvpn/fastd.conf new file mode 100644 index 0000000..27354e0 --- /dev/null +++ b/roles/debian_base/files/etc/fastd/ffhl_mesh_gwvpn/fastd.conf @@ -0,0 +1,11 @@ +log to syslog level debug; +user "fastd"; +interface "ffhl_mesh_gwvpn"; +method "salsa2012+umac"; +bind any:10001; +include "secret.conf"; +mtu 1280; +status socket "/run/fastd/ffhl_mesh_gwvpn.sock"; +on up "./fastd-up"; + +include peers from "gateways"; diff --git a/roles/debian_base/files/etc/fastd/ffhl-gw-vpn/gateways/holstentor b/roles/debian_base/files/etc/fastd/ffhl_mesh_gwvpn/gateways/holstentor similarity index 100% rename from roles/debian_base/files/etc/fastd/ffhl-gw-vpn/gateways/holstentor rename to roles/debian_base/files/etc/fastd/ffhl_mesh_gwvpn/gateways/holstentor diff --git a/roles/debian_base/files/etc/fastd/ffhl-gw-vpn/gateways/muehlentor b/roles/debian_base/files/etc/fastd/ffhl_mesh_gwvpn/gateways/muehlentor similarity index 100% rename from roles/debian_base/files/etc/fastd/ffhl-gw-vpn/gateways/muehlentor rename to roles/debian_base/files/etc/fastd/ffhl_mesh_gwvpn/gateways/muehlentor diff --git a/roles/debian_base/files/etc/fastd/ffhl_mesh_vpn/fastd.conf b/roles/debian_base/files/etc/fastd/ffhl_mesh_vpn/fastd.conf new file mode 100644 index 0000000..93b46e4 --- /dev/null +++ b/roles/debian_base/files/etc/fastd/ffhl_mesh_vpn/fastd.conf @@ -0,0 +1,14 @@ +log to syslog level debug; +user "fastd"; +interface "ffhl_mesh_vpn"; +method "null"; +method "salsa2012+umac"; +bind any:10002; +include "secret.conf"; +mtu 1280; +hide ip addresses yes; +hide mac addresses yes; +status socket "/run/fastd/fastd-ffhl_mesh_vpn.sock"; +include peers from "peers"; + +on up "./fastd-up"; diff --git a/roles/debian_base/files/etc/iptables/ip6tables.rules b/roles/debian_base/files/etc/iptables/ip6tables.rules index 24b8ff1..f9d67a6 100644 --- a/roles/debian_base/files/etc/iptables/ip6tables.rules +++ b/roles/debian_base/files/etc/iptables/ip6tables.rules @@ -4,6 +4,5 @@ COMMIT *mangle -A PREROUTING -i freifunk-+ -j MARK --set-xmark 0x1/0xffffffff --A PREROUTING -i nat64 -j MARK --set-xmark 0x1/0xffffffff -A PREROUTING -i icvpn -j MARK --set-xmark 0x1/0xffffffff COMMIT diff --git a/roles/debian_base/files/etc/ntp.conf b/roles/debian_base/files/etc/ntp.conf deleted file mode 100644 index bbe0281..0000000 --- a/roles/debian_base/files/etc/ntp.conf +++ /dev/null @@ -1,23 +0,0 @@ -# With the default settings below, ntpd will only synchronize your clock. -# -# For details, see: -# - the ntp.conf man page -# - http://support.ntp.org/bin/view/Support/GettingStarted -# - https://wiki.archlinux.org/index.php/Network_Time_Protocol_daemon - -# Associate to public NTP pool servers; see http://www.pool.ntp.org/ -server 0.pool.ntp.org -server 1.pool.ntp.org -server 2.pool.ntp.org - -# Only allow read-only access from localhost -restrict default noquery nopeer -restrict 127.0.0.1 -restrict ::1 - -# ffhl mesh -restrict fdef:ffc0:3dd7:: mask ffff:ffff:ffff:ffff:: nomodify notrap nopeer -restrict 2001:67c:2d50:: mask ffff:ffff:ffff:ffff:: nomodify notrap nopeer - -# Location of drift file -driftfile /var/lib/ntp/ntp.drift diff --git a/roles/debian_base/files/etc/systemd/network/00-nat64.network b/roles/debian_base/files/etc/systemd/network/00-nat64.network deleted file mode 100644 index cc0e092..0000000 --- a/roles/debian_base/files/etc/systemd/network/00-nat64.network +++ /dev/null @@ -1,7 +0,0 @@ -[Match] -Name=nat64 - -[Network] -IPForward=yes -Address=fe80::1/64 -Address=127.0.0.2/8 diff --git a/roles/debian_base/files/etc/systemd/network/04-anycast-dns.netdev b/roles/debian_base/files/etc/systemd/network/04-anycast-dns.netdev deleted file mode 100644 index af7baec..0000000 --- a/roles/debian_base/files/etc/systemd/network/04-anycast-dns.netdev +++ /dev/null @@ -1,3 +0,0 @@ -[NetDev] -Name=anycast-dns -Kind=dummy diff --git a/roles/debian_base/files/etc/systemd/network/04-anycast-dns.network b/roles/debian_base/files/etc/systemd/network/04-anycast-dns.network deleted file mode 100644 index 47153f1..0000000 --- a/roles/debian_base/files/etc/systemd/network/04-anycast-dns.network +++ /dev/null @@ -1,5 +0,0 @@ -[Match] -Name=anycast-dns - -[Network] -Address=2001:67c:2d50:1::10.130.127.224/128 diff --git a/roles/debian_base/files/etc/systemd/network/22-ffhl-bat0.network b/roles/debian_base/files/etc/systemd/network/22-ffhl-bat0.network new file mode 100644 index 0000000..79f1f3e --- /dev/null +++ b/roles/debian_base/files/etc/systemd/network/22-ffhl-bat0.network @@ -0,0 +1,5 @@ +[Match] +Name=ffhl_bat0 + +[Network] +Bridge=ffhl diff --git a/roles/debian_base/files/etc/systemd/network/22-mesh-hl.network b/roles/debian_base/files/etc/systemd/network/22-mesh-hl.network deleted file mode 100644 index ec1f92d..0000000 --- a/roles/debian_base/files/etc/systemd/network/22-mesh-hl.network +++ /dev/null @@ -1,5 +0,0 @@ -[Match] -Name=mesh-hl - -[Network] -Bridge=freifunk-hl diff --git a/roles/debian_base/files/etc/systemd/network/25-ffhl-mesh-vpn-2.network b/roles/debian_base/files/etc/systemd/network/25-ffhl-mesh-vpn-2.network deleted file mode 100644 index a72a611..0000000 --- a/roles/debian_base/files/etc/systemd/network/25-ffhl-mesh-vpn-2.network +++ /dev/null @@ -1,2 +0,0 @@ -[Match] -Name=ffhl-mesh-vpn-2 diff --git a/roles/debian_base/files/etc/systemd/network/25-ffhl-mesh-vpn.network b/roles/debian_base/files/etc/systemd/network/25-ffhl-mesh-vpn.network deleted file mode 100644 index 2902fe3..0000000 --- a/roles/debian_base/files/etc/systemd/network/25-ffhl-mesh-vpn.network +++ /dev/null @@ -1,2 +0,0 @@ -[Match] -Name=ffhl-mesh-vpn diff --git a/roles/debian_base/files/etc/systemd/network/26-ffhl-gw-vpn.network b/roles/debian_base/files/etc/systemd/network/26-ffhl-gw-vpn.network deleted file mode 100644 index 846c180..0000000 --- a/roles/debian_base/files/etc/systemd/network/26-ffhl-gw-vpn.network +++ /dev/null @@ -1,2 +0,0 @@ -[Match] -Name=ffhl-gw-vpn diff --git a/roles/debian_base/files/etc/systemd/network/26-ffhl-mesh.network b/roles/debian_base/files/etc/systemd/network/26-ffhl-mesh.network new file mode 100644 index 0000000..1c1e3cb --- /dev/null +++ b/roles/debian_base/files/etc/systemd/network/26-ffhl-mesh.network @@ -0,0 +1,5 @@ +[Match] +Name=ffhl_mesh_* + +[Network] +LinkLocalAddressing = no diff --git a/roles/debian_base/files/etc/systemd/system/alfred@.service b/roles/debian_base/files/etc/systemd/system/alfred@.service deleted file mode 100644 index b88012e..0000000 --- a/roles/debian_base/files/etc/systemd/system/alfred@.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=A.L.F.R.E.D. -Wants=network.target -BindsTo=sys-subsystem-net-devices-mesh\x2d%i.device -After=sys-subsystem-net-devices-mesh\x2d%i.device - -[Service] -ExecStart=/usr/bin/alfred -i freifunk-%i -b mesh-%i - -[Install] -WantedBy=multi-user.target diff --git a/roles/debian_base/files/etc/systemd/system/batadv-vis@.service b/roles/debian_base/files/etc/systemd/system/batadv-vis@.service deleted file mode 100644 index 872072b..0000000 --- a/roles/debian_base/files/etc/systemd/system/batadv-vis@.service +++ /dev/null @@ -1,10 +0,0 @@ -[Unit] -Description=A.L.F.R.E.D. batadv-vis -After=alfred@%i.service - -[Service] -ExecStart=/usr/bin/batadv-vis -s -i mesh-%i - -[Install] -WantedBy=multi-user.target - diff --git a/roles/debian_base/files/etc/systemd/system/batman-freifunk@.service b/roles/debian_base/files/etc/systemd/system/batman-freifunk@.service deleted file mode 100644 index 52c66fc..0000000 --- a/roles/debian_base/files/etc/systemd/system/batman-freifunk@.service +++ /dev/null @@ -1,17 +0,0 @@ -[Unit] -Description=batman setup for freifunk -Wants=network.target -BindsTo=sys-subsystem-net-devices-ff%i\x2dmesh\x2dvpn.device sys-subsystem-net-devices-ff%i\x2dmesh\x2dvpn\x2d2.device sys-subsystem-net-devices-ff%i\x2dgw\x2dvpn.device -After=sys-subsystem-net-devices-ff%i\x2dmesh\x2dvpn.device sys-subsystem-net-devices-ff%i\x2dmesh\x2dvpn\x2d2.device sys-subsystem-net-devices-ff%i\x2dgw\x2dvpn.device - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/bin/batctl -m mesh-%i if add ff%i-mesh-vpn -ExecStart=/usr/bin/batctl -m mesh-%i if add ff%i-mesh-vpn-2 -ExecStart=/usr/bin/batctl -m mesh-%i if add ff%i-gw-vpn -ExecStart=/usr/bin/batctl -m mesh-%i gw server -ExecStart=-/usr/bin/batctl -m mesh-%i nc disable - -[Install] -WantedBy=multi-user.target diff --git a/roles/debian_base/files/etc/systemd/system/batman@.service b/roles/debian_base/files/etc/systemd/system/batman@.service new file mode 100644 index 0000000..85ab7f0 --- /dev/null +++ b/roles/debian_base/files/etc/systemd/system/batman@.service @@ -0,0 +1,17 @@ +[Unit] +Description=batman setup for freifunk +Wants=network.target +# BindsTo=sys-subsystem-net-devices-%i_mesh_vpn.device sys-subsystem-net-devices-%i_mesh_gwvpn.device +# After=sys-subsystem-net-devices-%i_mesh_vpn.device sys-subsystem-net-devices-%i_mesh_gwvpn.device + +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStart=ip link add %i type batadv +# ExecStart=batctl -m %i_bat0 if add %i_mesh_vpn +# ExecStart=batctl -m %i_bat0 if add %i_mesh_gwvpn +# ExecStart=batctl -m %i_bat0 gw server +# ExecStart=-batctl -m %i_bat0 nc disable + +[Install] +WantedBy=multi-user.target diff --git a/roles/debian_base/files/etc/systemd/system/dhcpd4.service b/roles/debian_base/files/etc/systemd/system/dhcpd4.service deleted file mode 100644 index c1105f2..0000000 --- a/roles/debian_base/files/etc/systemd/system/dhcpd4.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=IPv4 DHCP server -BindsTo=sys-subsystem-net-devices-freifunk\x2dhl.device -After=network.target sys-subsystem-net-devices-freifunk\x2dhl.device - -[Service] -Type=forking -PIDFile=/run/dhcpd4.pid -ExecStart=/usr/bin/dhcpd -4 -q -pf /run/dhcpd4.pid -KillSignal=SIGINT - -[Install] -WantedBy=multi-user.target diff --git a/roles/debian_base/files/etc/systemd/system/fastd@.service.d/override.conf b/roles/debian_base/files/etc/systemd/system/fastd@.service.d/override.conf index cd828b9..3df0c4f 100644 --- a/roles/debian_base/files/etc/systemd/system/fastd@.service.d/override.conf +++ b/roles/debian_base/files/etc/systemd/system/fastd@.service.d/override.conf @@ -1,3 +1,4 @@ [Service] -ExecStartPre=-/usr/bin/mkdir /run/fastd -ExecStartPre=/usr/bin/chown fastd:fastd /run/fastd +# make sure these dirs exists for fastd dignostics/metrics socket +ExecStartPre=mkdir -p /run/fastd +ExecStartPre=chown fastd:fastd /run/fastd diff --git a/roles/debian_base/files/etc/systemd/system/freifunk-ip-rule.service b/roles/debian_base/files/etc/systemd/system/freifunk-ip-rule.service index 30fa746..63c926e 100644 --- a/roles/debian_base/files/etc/systemd/system/freifunk-ip-rule.service +++ b/roles/debian_base/files/etc/systemd/system/freifunk-ip-rule.service @@ -4,20 +4,20 @@ Before=network.target [Service] Type=oneshot -ExecStart=/usr/sbin/ip rule add from 10.130.0.0/16 table freifunk -ExecStart=/usr/sbin/ip rule add from 10.207.0.0/16 table freifunk -ExecStart=/usr/sbin/ip rule add from all fwmark 0x1 table freifunk -ExecStart=/usr/sbin/ip rule add from 185.66.193.32/29 table freifunk -ExecStart=/usr/sbin/ip -6 rule add from 2001:67c:2d50::/48 table freifunk -ExecStart=/usr/sbin/ip -6 rule add from all fwmark 0x1 table freifunk -ExecStart=/usr/sbin/ip -6 rule add from all table freifunk priority 32767 -ExecStop=/usr/sbin/ip rule del from 10.130.0.0/16 table freifunk -ExecStop=/usr/sbin/ip rule del from 10.207.0.0/16 table freifunk -ExecStop=/usr/sbin/ip rule del from all fwmark 0x1 table freifunk -ExecStop=/usr/sbin/ip rule del from 185.66.193.32/29 table freifunk -ExecStop=/usr/sbin/ip -6 rule del from 2001:67c:2d50::/48 table freifunk -ExecStop=/usr/sbin/ip -6 rule del from all fwmark 0x1 table freifunk -ExecStop=/usr/sbin/ip -6 rule del from all table freifunk priority 32767 +ExecStart=ip rule add from 10.130.0.0/16 table freifunk +ExecStart=ip rule add from 10.207.0.0/16 table freifunk +ExecStart=ip rule add from all fwmark 0x1 table freifunk +ExecStart=ip rule add from 185.66.193.32/29 table freifunk +ExecStart=ip -6 rule add from 2001:67c:2d50::/48 table freifunk +ExecStart=ip -6 rule add from all fwmark 0x1 table freifunk +ExecStart=ip -6 rule add from all table freifunk priority 32767 +ExecStop=ip rule del from 10.130.0.0/16 table freifunk +ExecStop=ip rule del from 10.207.0.0/16 table freifunk +ExecStop=ip rule del from all fwmark 0x1 table freifunk +ExecStop=ip rule del from 185.66.193.32/29 table freifunk +ExecStop=ip -6 rule del from 2001:67c:2d50::/48 table freifunk +ExecStop=ip -6 rule del from all fwmark 0x1 table freifunk +ExecStop=ip -6 rule del from all table freifunk priority 32767 RemainAfterExit=yes [Install] diff --git a/roles/debian_base/files/etc/systemd/system/iptables-up.service b/roles/debian_base/files/etc/systemd/system/iptables-up.service new file mode 100644 index 0000000..26b5708 --- /dev/null +++ b/roles/debian_base/files/etc/systemd/system/iptables-up.service @@ -0,0 +1,10 @@ +[Unit] +Description=Load *.rules from /etc/iptables and apply them +After=systemd-networkd + +[Service] +Type=oneshot +ExecStart=/usr/local/bin/iptables-up + +[Install] +WantedBy=multi-user.target diff --git a/roles/debian_base/files/etc/systemd/system/isc-dhcp-server.service.d/override.service b/roles/debian_base/files/etc/systemd/system/isc-dhcp-server.service.d/override.service new file mode 100644 index 0000000..521366d --- /dev/null +++ b/roles/debian_base/files/etc/systemd/system/isc-dhcp-server.service.d/override.service @@ -0,0 +1,3 @@ +[Unit] +BindsTo=sys-subsystem-net-devices-ffhl.device +After=network.target sys-subsystem-net-devices-ffhl.device diff --git a/roles/debian_base/files/etc/systemd/system/update-ffhl-mesh-vpn.service b/roles/debian_base/files/etc/systemd/system/update-ffhl-mesh-vpn.service index 76ddf53..304b0ae 100644 --- a/roles/debian_base/files/etc/systemd/system/update-ffhl-mesh-vpn.service +++ b/roles/debian_base/files/etc/systemd/system/update-ffhl-mesh-vpn.service @@ -1,4 +1,4 @@ [Service] Type=oneshot -WorkingDirectory=/etc/fastd/ffhl-mesh-vpn/peers +WorkingDirectory=/etc/fastd/ffhl_mesh_vpn/peers ExecStart=/usr/bin/git pull diff --git a/roles/debian_base/files/etc/tayga.conf b/roles/debian_base/files/etc/tayga.conf deleted file mode 100644 index 5b441c1..0000000 --- a/roles/debian_base/files/etc/tayga.conf +++ /dev/null @@ -1,3 +0,0 @@ -tun-device nat64 -ipv4-addr 10.130.127.225 -prefix 2001:67c:2d50:1::/96 diff --git a/roles/debian_base/files/bird/burgtor/bird6_local.conf b/roles/debian_base/files/host/burgtor/etc/bird/bird6_local.conf similarity index 100% rename from roles/debian_base/files/bird/burgtor/bird6_local.conf rename to roles/debian_base/files/host/burgtor/etc/bird/bird6_local.conf diff --git a/roles/debian_base/files/bird/burgtor/bird_local.conf b/roles/debian_base/files/host/burgtor/etc/bird/bird_local.conf similarity index 100% rename from roles/debian_base/files/bird/burgtor/bird_local.conf rename to roles/debian_base/files/host/burgtor/etc/bird/bird_local.conf diff --git a/roles/debian_base/files/netconfig/burgtor/30-he-ipv6.netdev b/roles/debian_base/files/host/burgtor/etc/systemd/network/30-he-ipv6.netdev similarity index 100% rename from roles/debian_base/files/netconfig/burgtor/30-he-ipv6.netdev rename to roles/debian_base/files/host/burgtor/etc/systemd/network/30-he-ipv6.netdev diff --git a/roles/debian_base/files/netconfig/burgtor/30-he-ipv6.network b/roles/debian_base/files/host/burgtor/etc/systemd/network/30-he-ipv6.network similarity index 100% rename from roles/debian_base/files/netconfig/burgtor/30-he-ipv6.network rename to roles/debian_base/files/host/burgtor/etc/systemd/network/30-he-ipv6.network diff --git a/roles/debian_base/files/netconfig/burgtor/31-ffrhein-fra3-v4.netdev b/roles/debian_base/files/host/burgtor/etc/systemd/network/31-ffrhein-fra3-v4.netdev similarity index 100% rename from roles/debian_base/files/netconfig/burgtor/31-ffrhein-fra3-v4.netdev rename to roles/debian_base/files/host/burgtor/etc/systemd/network/31-ffrhein-fra3-v4.netdev diff --git a/roles/debian_base/files/netconfig/burgtor/31-ffrhein-fra3-v4.network b/roles/debian_base/files/host/burgtor/etc/systemd/network/31-ffrhein-fra3-v4.network similarity index 100% rename from roles/debian_base/files/netconfig/burgtor/31-ffrhein-fra3-v4.network rename to roles/debian_base/files/host/burgtor/etc/systemd/network/31-ffrhein-fra3-v4.network diff --git a/roles/debian_base/files/netconfig/burgtor/32-ffrhein-fra3-v6.netdev b/roles/debian_base/files/host/burgtor/etc/systemd/network/32-ffrhein-fra3-v6.netdev similarity index 100% rename from roles/debian_base/files/netconfig/burgtor/32-ffrhein-fra3-v6.netdev rename to roles/debian_base/files/host/burgtor/etc/systemd/network/32-ffrhein-fra3-v6.netdev diff --git a/roles/debian_base/files/netconfig/burgtor/32-ffrhein-fra3-v6.network b/roles/debian_base/files/host/burgtor/etc/systemd/network/32-ffrhein-fra3-v6.network similarity index 100% rename from roles/debian_base/files/netconfig/burgtor/32-ffrhein-fra3-v6.network rename to roles/debian_base/files/host/burgtor/etc/systemd/network/32-ffrhein-fra3-v6.network diff --git a/roles/debian_base/files/netconfig/burgtor/33-ffrhein-dus-v4.netdev b/roles/debian_base/files/host/burgtor/etc/systemd/network/33-ffrhein-dus-v4.netdev similarity index 100% rename from roles/debian_base/files/netconfig/burgtor/33-ffrhein-dus-v4.netdev rename to roles/debian_base/files/host/burgtor/etc/systemd/network/33-ffrhein-dus-v4.netdev diff --git a/roles/debian_base/files/netconfig/burgtor/33-ffrhein-dus-v4.network b/roles/debian_base/files/host/burgtor/etc/systemd/network/33-ffrhein-dus-v4.network similarity index 100% rename from roles/debian_base/files/netconfig/burgtor/33-ffrhein-dus-v4.network rename to roles/debian_base/files/host/burgtor/etc/systemd/network/33-ffrhein-dus-v4.network diff --git a/roles/debian_base/files/netconfig/burgtor/34-ffrhein-dus-v6.netdev b/roles/debian_base/files/host/burgtor/etc/systemd/network/34-ffrhein-dus-v6.netdev similarity index 100% rename from roles/debian_base/files/netconfig/burgtor/34-ffrhein-dus-v6.netdev rename to roles/debian_base/files/host/burgtor/etc/systemd/network/34-ffrhein-dus-v6.netdev diff --git a/roles/debian_base/files/netconfig/burgtor/34-ffrhein-dus-v6.network b/roles/debian_base/files/host/burgtor/etc/systemd/network/34-ffrhein-dus-v6.network similarity index 100% rename from roles/debian_base/files/netconfig/burgtor/34-ffrhein-dus-v6.network rename to roles/debian_base/files/host/burgtor/etc/systemd/network/34-ffrhein-dus-v6.network diff --git a/roles/debian_base/files/bird/holstentor/bird6_local.conf b/roles/debian_base/files/host/holstentor/etc/bird/bird6_local.conf similarity index 100% rename from roles/debian_base/files/bird/holstentor/bird6_local.conf rename to roles/debian_base/files/host/holstentor/etc/bird/bird6_local.conf diff --git a/roles/debian_base/files/bird/holstentor/bird_local.conf b/roles/debian_base/files/host/holstentor/etc/bird/bird_local.conf similarity index 100% rename from roles/debian_base/files/bird/holstentor/bird_local.conf rename to roles/debian_base/files/host/holstentor/etc/bird/bird_local.conf diff --git a/roles/debian_base/files/netconfig/holstentor/00-eth1.network b/roles/debian_base/files/host/holstentor/etc/systemd/network/00-eth1.network similarity index 100% rename from roles/debian_base/files/netconfig/holstentor/00-eth1.network rename to roles/debian_base/files/host/holstentor/etc/systemd/network/00-eth1.network diff --git a/roles/debian_base/files/netconfig/holstentor/30-he-ipv6.netdev b/roles/debian_base/files/host/holstentor/etc/systemd/network/30-he-ipv6.netdev similarity index 100% rename from roles/debian_base/files/netconfig/holstentor/30-he-ipv6.netdev rename to roles/debian_base/files/host/holstentor/etc/systemd/network/30-he-ipv6.netdev diff --git a/roles/debian_base/files/netconfig/holstentor/30-he-ipv6.network b/roles/debian_base/files/host/holstentor/etc/systemd/network/30-he-ipv6.network similarity index 100% rename from roles/debian_base/files/netconfig/holstentor/30-he-ipv6.network rename to roles/debian_base/files/host/holstentor/etc/systemd/network/30-he-ipv6.network diff --git a/roles/debian_base/files/netconfig/holstentor/31-ffrhein-ber.netdev b/roles/debian_base/files/host/holstentor/etc/systemd/network/31-ffrhein-ber.netdev similarity index 100% rename from roles/debian_base/files/netconfig/holstentor/31-ffrhein-ber.netdev rename to roles/debian_base/files/host/holstentor/etc/systemd/network/31-ffrhein-ber.netdev diff --git a/roles/debian_base/files/netconfig/holstentor/31-ffrhein-ber.network b/roles/debian_base/files/host/holstentor/etc/systemd/network/31-ffrhein-ber.network similarity index 100% rename from roles/debian_base/files/netconfig/holstentor/31-ffrhein-ber.network rename to roles/debian_base/files/host/holstentor/etc/systemd/network/31-ffrhein-ber.network diff --git a/roles/debian_base/files/netconfig/holstentor/32-ffrhein-fra3.netdev b/roles/debian_base/files/host/holstentor/etc/systemd/network/32-ffrhein-fra3.netdev similarity index 100% rename from roles/debian_base/files/netconfig/holstentor/32-ffrhein-fra3.netdev rename to roles/debian_base/files/host/holstentor/etc/systemd/network/32-ffrhein-fra3.netdev diff --git a/roles/debian_base/files/netconfig/holstentor/32-ffrhein-fra3.network b/roles/debian_base/files/host/holstentor/etc/systemd/network/32-ffrhein-fra3.network similarity index 100% rename from roles/debian_base/files/netconfig/holstentor/32-ffrhein-fra3.network rename to roles/debian_base/files/host/holstentor/etc/systemd/network/32-ffrhein-fra3.network diff --git a/roles/debian_base/files/bird/huextertor/bird6_local.conf b/roles/debian_base/files/host/huextertor/etc/bird/bird6_local.conf similarity index 100% rename from roles/debian_base/files/bird/huextertor/bird6_local.conf rename to roles/debian_base/files/host/huextertor/etc/bird/bird6_local.conf diff --git a/roles/debian_base/files/bird/huextertor/bird_local.conf b/roles/debian_base/files/host/huextertor/etc/bird/bird_local.conf similarity index 100% rename from roles/debian_base/files/bird/huextertor/bird_local.conf rename to roles/debian_base/files/host/huextertor/etc/bird/bird_local.conf diff --git a/roles/debian_base/files/host/kaisertor/etc/bird/bird6_local.conf b/roles/debian_base/files/host/kaisertor/etc/bird/bird6_local.conf new file mode 100644 index 0000000..6284a73 --- /dev/null +++ b/roles/debian_base/files/host/kaisertor/etc/bird/bird6_local.conf @@ -0,0 +1,27 @@ +# public BGP +############# + +protocol bgp ffrhein_ber from bgp_public { + neighbor 2a03:2260:0:59::1 as 201701; +} + +protocol bgp ffrhein_fra3 from bgp_public { + neighbor 2a03:2260:0:60::1 as 201701; +} + +protocol bgp he from bgp_public { + neighbor 2001:470:12:35::1 as 6939; +} + +# dn42 +####### + +protocol bgp bgp_dn42_chaos from bgp_dn42 { + source address fe80::ac16:fd92; + neighbor fe80::ac16:fd91%dn42_chaos as 64784; +} + +protocol bgp bgp_nbsp_router from bgp_dn42 { + source address 2001:67c:2d50::c01; + neighbor 2001:67c:2d50::2b as 76129; +} diff --git a/roles/debian_base/files/host/kaisertor/etc/bird/bird_local.conf b/roles/debian_base/files/host/kaisertor/etc/bird/bird_local.conf new file mode 100644 index 0000000..e69de29 diff --git a/roles/debian_base/files/bird/muehlentor/bird6_local.conf b/roles/debian_base/files/host/muehlentor/etc/bird/bird6_local.conf similarity index 100% rename from roles/debian_base/files/bird/muehlentor/bird6_local.conf rename to roles/debian_base/files/host/muehlentor/etc/bird/bird6_local.conf diff --git a/roles/debian_base/files/bird/muehlentor/bird_local.conf b/roles/debian_base/files/host/muehlentor/etc/bird/bird_local.conf similarity index 100% rename from roles/debian_base/files/bird/muehlentor/bird_local.conf rename to roles/debian_base/files/host/muehlentor/etc/bird/bird_local.conf diff --git a/roles/debian_base/files/scripts/iptables-up b/roles/debian_base/files/scripts/iptables-up new file mode 100644 index 0000000..83d6093 --- /dev/null +++ b/roles/debian_base/files/scripts/iptables-up @@ -0,0 +1,8 @@ +#!/bin/bash + +# this loads all files *.rules in /etc/iptables + + +for i in /etc/iptables/*.rules; do + iptables-restore < "$i" +done diff --git a/roles/debian_base/tasks/bird.yml b/roles/debian_base/tasks/bird.yml index ca6ed3e..3862993 100644 --- a/roles/debian_base/tasks/bird.yml +++ b/roles/debian_base/tasks/bird.yml @@ -1,5 +1,3 @@ --- -- copy: src=bird/base/ dest=/etc/bird -- copy: src=bird/{{ inventory_hostname }}/ dest=/etc/bird - template: src=bird_host.conf.j2 dest=/etc/bird/bird_host.conf - template: src=bird6_host.conf.j2 dest=/etc/bird/bird6_host.conf diff --git a/roles/debian_base/tasks/dhcpd.yml b/roles/debian_base/tasks/dhcpd.yml new file mode 100644 index 0000000..0c75b93 --- /dev/null +++ b/roles/debian_base/tasks/dhcpd.yml @@ -0,0 +1,12 @@ +- name: process dhcpd templates + tags: + - dhcp + template: src=dhcpd.conf.j2 dest=/etc/dhcp/dhcpd.conf + +- name: tell dhcpd what interfaces it should listen + tags: + - dhcp + lineinfile: + path: /etc/default/isc-dhcp-server + regexp: '^INTERFACESv4=' + line: INTERFACESv4="ffhl" diff --git a/roles/debian_base/tasks/fastd.yml b/roles/debian_base/tasks/fastd.yml new file mode 100644 index 0000000..fa5b21a --- /dev/null +++ b/roles/debian_base/tasks/fastd.yml @@ -0,0 +1,43 @@ +--- +- user: name=fastd system=yes home=/etc/fastd + + +- template: + src: fastd/{{ item }}/fastd-up + dest: /etc/fastd/{{ item }}/fastd-up + owner: fastd + mode: 0744 + +- name: generate fastd key + shell: + cmd: fastd --generate-key | awk '/Secret/ {print "secret \"" $2 "\";" }' > /etc/fastd/{{ item }}/secret.conf + creates: /etc/fastd/{{ item }}/secret.conf + +- name: generate peer file + shell: + cmd: fastd --show-key -c /etc/fastd/{{ item }}/fastd.conf | awk '/Public/ {print "key \"" $2 "\";" }' > /etc/fastd/{{ item }}/peer.conf + + +- systemd: + enabled: yes + name: fastd@{{ item }} + + +- fetch: + src: /etc/fastd/{{ item }}/peer.conf + dest: artifacts/ + + + + + # + # - template: + # src: fastd/ffhl_mesh_vpn/fastd-up + # dest: /etc/fastd/ffhl_mesh_vpn/fastd-up + # owner: fastd + # mode: 0744 + # + # - name: generate fastd key + # command: fastd --generate-key | awk -e '/Secret/ {print "secret \"" $2 "\";" }' > /etc/fastd/ffhl_mesh_vpn/secret.conf + # args: + # creates: /etc/fastd/ffhl_mesh_vpn/secret.conf diff --git a/roles/debian_base/tasks/ffhl-peers.yml b/roles/debian_base/tasks/ffhl-peers.yml index e2ab059..12af779 100644 --- a/roles/debian_base/tasks/ffhl-peers.yml +++ b/roles/debian_base/tasks/ffhl-peers.yml @@ -1,3 +1,3 @@ --- -- git: repo=git@srv01.luebeck.freifunk.net:fastd-keys dest=/etc/fastd/ffhl-mesh-vpn/peers accept_hostkey=True -- copy: src=post-merge/ffhl-mesh-vpn dest=/etc/fastd/ffhl-mesh-vpn/peers/.git/hooks/post-merge mode=a+x +- git: repo=git@srv01.luebeck.freifunk.net:fastd-keys dest=/etc/fastd/ffhl_mesh_vpn/peers accept_hostkey=True +- copy: src=post-merge/ffhl-mesh-vpn dest=/etc/fastd/ffhl_mesh_vpn/peers/.git/hooks/post-merge mode=a+x diff --git a/roles/debian_base/tasks/main.yml b/roles/debian_base/tasks/main.yml index f03319f..2513d6e 100644 --- a/roles/debian_base/tasks/main.yml +++ b/roles/debian_base/tasks/main.yml @@ -1,25 +1,62 @@ --- -- include: update.yml +- - include: software.yml + - name: Disable root login with password lineinfile: dest=/etc/ssh/sshd_config regexp="^#?PermitRootLogin" line="PermitRootLogin without-password" -- user: name=fastd system=yes home=/etc/fastd -- copy: src=etc/ dest=/etc -- copy: src=netconfig/{{ inventory_hostname }}/ dest=/etc/systemd/network - ignore_errors: True -- copy: src=host/{{ inventory_hostname }}/etc/ dest=/etc - ignore_errors: True -- file: state=link src=/usr/share/zoneinfo/Europe/Berlin dest=/etc/localtime -- template: src=fastd-mac.j2 dest=/etc/fastd/ffhl-mesh-vpn/mac -- template: src=fastd-mac-2.j2 dest=/etc/fastd/ffhl-mesh-vpn-2/mac -- template: src=fastd-gw-mac.j2 dest=/etc/fastd/ffhl-gw-vpn/mac -- template: src=dhcpd.conf.j2 dest=/etc/dhcpd.conf -- template: src=radvd.conf.j2 dest=/etc/radvd.conf -- template: src=10-freifunk-hl.netdev.j2 dest=/etc/systemd/network/10-freifunk-hl.netdev -- template: src=12-freifunk-hl.network.j2 dest=/etc/systemd/network/12-freifunk-hl.network -- command: systemctl daemon-reload -- copy: content="createUser guest SHA guestffhl AES guestffhl" dest=/var/net-snmp/snmpd.conf + +- name: copy base configs + copy: src=etc/ dest=/etc + +- name: copy host specific configs + copy: src=host/{{ inventory_hostname }}/etc/ dest=/etc + +- name: copy scripts + copy: src=scripts/iptables-up dest=/usr/local/bin/iptables-up mode=755 + + + +# configurations and stuff + +- name: set local timezone + file: state=link src=/usr/share/zoneinfo/Europe/Berlin dest=/etc/localtime + +- name: configure ntp + blockinfile: + path: /etc/ntp.conf + block: | + restrict fdef:ffc0:3dd7:: mask ffff:ffff:ffff:ffff:: nomodify notrap nopeer + restrict 2001:67c:2d50:: mask ffff:ffff:ffff:ffff:: nomodify notrap nopeer + + +- name: networkd templates + block: + - template: src=network/10-ffhl.netdev.j2 dest=/etc/systemd/network/10-ffhl.netdev + - template: src=network/12-ffhl.network.j2 dest=/etc/systemd/network/12-ffhl.network + +# sometimes disabled (dunno why) +- name: enable systemd-networkd + command: systemctl enable systemd-networkd + + +- name: create fastd configs + include_tasks: fastd.yml + loop: + - ffhl_mesh_vpn + - ffhl_mesh_gwvpn + + +- include: radvd.yml + +- include: dhcpd.yml + + +- name: reload systemd + command: systemctl daemon-reload + + - lineinfile: dest=/etc/iproute2/rt_tables line="42\tfreifunk" + - include: bird.yml tags: - bird diff --git a/roles/debian_base/tasks/radvd.yml b/roles/debian_base/tasks/radvd.yml new file mode 100644 index 0000000..1853b43 --- /dev/null +++ b/roles/debian_base/tasks/radvd.yml @@ -0,0 +1,3 @@ +--- +- name: radvd templates + template: src=radvd/radvd.conf.j2 dest=/etc/radvd.conf diff --git a/roles/debian_base/tasks/software.yml b/roles/debian_base/tasks/software.yml index c0381bb..3aef30e 100644 --- a/roles/debian_base/tasks/software.yml +++ b/roles/debian_base/tasks/software.yml @@ -1,6 +1,44 @@ --- -- apt: update_cache=yes +# - lineinfile: +# path: /etc/apt/sources.list +# regexp: '^deb .* main$' +# line: deb http://deb.debian.org/debian stable main + +- name: apt python update + command: apt-get update + +- name: install python-apt + command: apt-get install -y python-apt + - name: install tools - apt: state=present name=openssh-server,openssh-client,git,wget,curl,zsh,tcpdump,iftop,iputils-ping,htop,bridge-utils,batctl -- name: install networking stuff - apt: state=present name=bird,tinc,bind9,fastd,radvd,dhcpd,ntp,haveged + apt: + update_cache: yes + state: present + name: + - iptables-persistent + - apt-file + - batctl + - bind9 + - bird + - bridge-utils + - curl + - isc-dhcp-server + - fastd + - git + - haveged + - htop + - iftop + - iputils-ping + - ntp + - openssh-client + - openssh-server + - python-apt + - radvd + - tcpdump + - tinc + - vim + - wget + - iperf3 + +- name: load batman-adv + command: modprobe batman-adv diff --git a/roles/debian_base/tasks/units.yml b/roles/debian_base/tasks/units.yml index d3e92ce..31cd13d 100644 --- a/roles/debian_base/tasks/units.yml +++ b/roles/debian_base/tasks/units.yml @@ -1,30 +1,27 @@ --- - command: systemctl mask display-manager.service -- command: systemctl enable {{ item }} + + +- name: restart services + systemd: + state: restarted + name: "{{ item }}" with_items: - # - alfred@hl.service - # - batadv-vis@hl.service - - batman-freifunk@hl.service + - batman@ffhl_bat0.service - bird6.service - bird.service - - dhcpd4.service - - "'fastd@ffhl\\x2dmesh\\x2dvpn.service'" - - "'fastd@ffhl\\x2dmesh\\x2dvpn\\x2d2.service'" - - "'fastd@ffhl\\x2dgw\\x2dvpn.service'" + - systemd-networkd.service + - isc-dhcp-server.service + - "fastd@ffhl_mesh_vpn.service" + - "fastd@ffhl_mesh_gwvpn.service" - freifunk-ip-rule.service - haveged.service - - ip6tables.service - - iptables.service - - named.service - - ntpd.service + - bind9.service + - ntp.service - radvd.service - - snmpd.service - sshd.service - - systemd-networkd.service - - tayga.service - update-ffhl-dns.timer - update-ffhl-mesh-vpn.timer - - vnstat.service + - command: systemctl enable {{ item }} with_items: "{{ units_enable|default([]) }}" - diff --git a/roles/debian_base/templates/dhcpd.conf.j2 b/roles/debian_base/templates/dhcpd.conf.j2 index 22af242..e8bb6ed 100644 --- a/roles/debian_base/templates/dhcpd.conf.j2 +++ b/roles/debian_base/templates/dhcpd.conf.j2 @@ -5,6 +5,6 @@ max-lease-time 600; subnet {{ dhcpd_subnet }} netmask {{ dhcpd_netmask }} { range {{ dhcpd_start }} {{ dhcpd_end }}; - option routers {{ ip4 }}; - option domain-name-servers {{ ip4 }}; + option routers {{ ip4 }}; + option domain-name-servers {{ ip4 }}; } diff --git a/roles/debian_base/templates/fastd-gw-mac.j2 b/roles/debian_base/templates/fastd-gw-mac.j2 deleted file mode 100644 index e15d4e1..0000000 --- a/roles/debian_base/templates/fastd-gw-mac.j2 +++ /dev/null @@ -1 +0,0 @@ -{{ fastd_gw_mac }} diff --git a/roles/debian_base/templates/fastd-mac-2.j2 b/roles/debian_base/templates/fastd-mac-2.j2 deleted file mode 100644 index 1a27d4c..0000000 --- a/roles/debian_base/templates/fastd-mac-2.j2 +++ /dev/null @@ -1 +0,0 @@ -{{ fastd_mac_2 }} diff --git a/roles/debian_base/templates/fastd-mac.j2 b/roles/debian_base/templates/fastd-mac.j2 deleted file mode 100644 index 6ee50b1..0000000 --- a/roles/debian_base/templates/fastd-mac.j2 +++ /dev/null @@ -1 +0,0 @@ -{{ fastd_mac }} diff --git a/roles/debian_base/templates/fastd/ffhl_mesh_gwvpn/fastd-up b/roles/debian_base/templates/fastd/ffhl_mesh_gwvpn/fastd-up new file mode 100644 index 0000000..88480f0 --- /dev/null +++ b/roles/debian_base/templates/fastd/ffhl_mesh_gwvpn/fastd-up @@ -0,0 +1,5 @@ +#!/bin/bash + +ip link set address {{ fastd_gw_mac }} dev $INTERFACE +ip link set up $INTERFACE +batctl -m ffhl_bat0 if add $INTERFACE diff --git a/roles/debian_base/templates/fastd/ffhl_mesh_gwvpn/gateways/holstentor b/roles/debian_base/templates/fastd/ffhl_mesh_gwvpn/gateways/holstentor new file mode 100644 index 0000000..4ac8d29 --- /dev/null +++ b/roles/debian_base/templates/fastd/ffhl_mesh_gwvpn/gateways/holstentor @@ -0,0 +1,3 @@ +key "07197da0ff4a294f4356b50c567f957334728d8a1a31b2855ddd1f6f4d2fed07"; +remote "holstentor.mesh.ffhl.chaotikum.org" port 10001; +float yes; diff --git a/roles/debian_base/templates/fastd/ffhl_mesh_gwvpn/gateways/muehlentor b/roles/debian_base/templates/fastd/ffhl_mesh_gwvpn/gateways/muehlentor new file mode 100644 index 0000000..d218c3d --- /dev/null +++ b/roles/debian_base/templates/fastd/ffhl_mesh_gwvpn/gateways/muehlentor @@ -0,0 +1,3 @@ +key "2eba0e70a6b834a8435f7142b06f3ee79849b97f884d961f3dd899861373e54e"; +remote "muehlentor.mesh.ffhl.chaotikum.org" port 10001; +float yes; diff --git a/roles/debian_base/templates/fastd/ffhl_mesh_vpn/fastd-up b/roles/debian_base/templates/fastd/ffhl_mesh_vpn/fastd-up new file mode 100644 index 0000000..a105b0a --- /dev/null +++ b/roles/debian_base/templates/fastd/ffhl_mesh_vpn/fastd-up @@ -0,0 +1,5 @@ +#!/bin/bash + +ip link set address {{ fastd_mesh_mac }} dev $INTERFACE +ip link set up $INTERFACE +batctl -m ffhl_bat0 if add $INTERFACE diff --git a/roles/debian_base/templates/10-freifunk-hl.netdev.j2 b/roles/debian_base/templates/network/10-ffhl.netdev.j2 similarity index 75% rename from roles/debian_base/templates/10-freifunk-hl.netdev.j2 rename to roles/debian_base/templates/network/10-ffhl.netdev.j2 index c3bee1a..943e09d 100644 --- a/roles/debian_base/templates/10-freifunk-hl.netdev.j2 +++ b/roles/debian_base/templates/network/10-ffhl.netdev.j2 @@ -1,4 +1,4 @@ [NetDev] -Name=freifunk-hl +Name=ffhl Kind=bridge MACAddress={{ freifunk_mac }} diff --git a/roles/debian_base/templates/12-freifunk-hl.network.j2 b/roles/debian_base/templates/network/12-ffhl.network.j2 similarity index 74% rename from roles/debian_base/templates/12-freifunk-hl.network.j2 rename to roles/debian_base/templates/network/12-ffhl.network.j2 index 3f83eaa..e82136f 100644 --- a/roles/debian_base/templates/12-freifunk-hl.network.j2 +++ b/roles/debian_base/templates/network/12-ffhl.network.j2 @@ -1,8 +1,10 @@ [Match] -Name=freifunk-hl +Name=ffhl [Network] IPForward=yes Address={{ ip4 }}/20 Address={{ ip6 }}/64 Address={{ ip6_ula }}/64 + +LinkLocalAddressing=no diff --git a/roles/debian_base/templates/radvd.conf.j2 b/roles/debian_base/templates/radvd.conf.j2 deleted file mode 100644 index b38646f..0000000 --- a/roles/debian_base/templates/radvd.conf.j2 +++ /dev/null @@ -1,16 +0,0 @@ -interface freifunk-hl -{ - AdvSendAdvert on; - IgnoreIfMissing on; - MaxRtrAdvInterval 200; - -{% for prefix in radvd_prefixes %} - prefix {{ prefix }} - { - }; - -{% endfor %} - RDNSS 2001:67c:2d50:1::a82:7fe0 - { - }; -}; diff --git a/roles/debian_base/templates/radvd/radvd.conf.j2 b/roles/debian_base/templates/radvd/radvd.conf.j2 new file mode 100644 index 0000000..f7ab354 --- /dev/null +++ b/roles/debian_base/templates/radvd/radvd.conf.j2 @@ -0,0 +1,14 @@ +interface freifunk-hl +{ + AdvSendAdvert on; + IgnoreIfMissing on; + MaxRtrAdvInterval 200; + +{% for prefix in radvd_prefixes %} + prefix {{ prefix }} { + }; +{% endfor %} + + RDNSS 2001:67c:2d50:1::a82:7fe0 { + }; +}; diff --git a/todo.md b/todo.md new file mode 100644 index 0000000..bbb07f0 --- /dev/null +++ b/todo.md @@ -0,0 +1,8 @@ +Things for a working Gateway: + +[x] fastd +[x] batman +[ ] DHCP +[ ] radvd +[ ] BGP +[x] prometheus -- GitLab