From b81ee39634c2f3b24dedca631c46b6cc676b54a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexander=20B=C3=B6hm?= Date: Mon, 11 Apr 2022 18:01:29 +0200 Subject: [PATCH] Removed predefined env file, some refactoring --- .env | 10 +++--- batman/entry-point.sh | 24 +++++++------- debug/Dockerfile | 20 +++++++++--- debug/entry-point.sh | 4 +++ docker-compose.yml | 4 ++- restart.sh | 4 +-- setup.yml | 75 +++++++++++++++++++++++++++++++++++++++++++ 7 files changed, 117 insertions(+), 24 deletions(-) create mode 100644 debug/entry-point.sh create mode 100644 setup.yml diff --git a/.env b/.env index b326759..ef79577 100644 --- a/.env +++ b/.env @@ -1,6 +1,6 @@ -BATMAN_BRIDGE_IPV4=172.29.0.1/24 -BATMAN_BRIDGE_IPV6=fc00:1234:5678::1/24 -BATMAN_BRIDGE=br-batman0 +BATMAN_IPV4=172.29.0.1/24 +BATMAN_IPV6=fc00:1234:5678::1/24 +BATMAN_BRIDGE=batman0 BATMAN_FORWARD_GATEWAY4=172.28.0.2 BATMAN_FORWARD_GATEWAY6=fc00:172:28::2 BATMAN_LIMIT_DOWNLOAD=1000 @@ -22,9 +22,9 @@ DHCPD_V4_RANGE=172.29.0.16 172.29.0.32 DHCPD_V4_GATEWAY=172.29.0.1 DHCPD_V6_NET=fc00:1234:5678::/64 DHCPD_V6_RANGE=fc00:1234:5678::1000 fc00:1234:5678::1fff -DHCPD_INTERFACE=br-batman0 +DHCPD_INTERFACE=batman0 -RADVD_INTERFACE=br-batman0 +RADVD_INTERFACE=batman0 RADVD_PREFIX=fc00:1234:5678::/64 RADVD_SOURCE_LL_ADDRESS=on RADVD_ADV_MANAGEMENT_FLAG=on diff --git a/batman/entry-point.sh b/batman/entry-point.sh index ff0098e..e55983c 100644 --- a/batman/entry-point.sh +++ b/batman/entry-point.sh @@ -5,28 +5,28 @@ batctl meshif ${BATMAN_INTERFACE} interface create ip link set ${BATMAN_INTERFACE} up # setup ips -if [ "${BATMAN_BRIDGE_IPV4}" ] ; then - ip -4 addr add ${BATMAN_BRIDGE_IPV4} dev ${BATMAN_INTERFACE} +if [ "${BATMAN_IPV4}" ] ; then + ip -4 addr add ${BATMAN_IPV4} dev ${BATMAN_INTERFACE} fi if [ "${BATMAN_BRIDGE_IPV6}" ] ; then - ip -6 addr add ${BATMAN_BRIDGE_IPV6} dev ${BATMAN_INTERFACE} + ip -6 addr add ${BATMAN_IPV6} dev ${BATMAN_INTERFACE} fi # mark node as dhcp server batctl meshif ${BATMAN_INTERFACE} gw server ${BATMAN_LIMIT_DOWNLOAD}Mbit/${BATMAN_LIMIT_UPLOAD}Mbit -nft add table ip nat || true -nft add chain 'ip nat POSTROUTING { type nat hook postrouting priority srcnat; policy accept; }' || true -nft add rule nat POSTROUTING counter masquerade || true -nft add table ip6 nat || true -nft add chain 'ip6 nat POSTROUTING { type nat hook postrouting priority srcnat; policy accept; }' || true -nft add rule ip6 nat POSTROUTING counter masquerade || true - -# remove dns defintion, because resolv.conf is write protected in the container if [ "${WIREGUARD_CONFIG}" ] ; then \ + nft add table ip nat || true + nft add chain 'ip nat POSTROUTING { type nat hook postrouting priority srcnat; policy accept; }' || true + nft add rule nat POSTROUTING counter masquerade || true + nft add table ip6 nat || true + nft add chain 'ip6 nat POSTROUTING { type nat hook postrouting priority srcnat; policy accept; }' || true + nft add rule ip6 nat POSTROUTING counter masquerade || true + + # remove dns defintion, because resolv.conf is write protected in the container egrep -v '^\s*DNS\s*=' ${WIREGUARD_CONFIG} >/etc/wireguard/${WIREGUARD_INTERFACE}.conf wg-quick up ${WIREGUARD_INTERFACE} - ip rule add iif br-batman0 table 5000 + ip rule add iif ${BATMAN_INTERFACE} table 5000 fi cat >/etc/radvd.conf <