summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorroot <root@freyanet.lan>2024-08-23 15:51:21 +0000
committerroot <root@freyanet.lan>2024-08-23 15:51:21 +0000
commit7c9a2ca6af162a44df480486d77c1ee761fe0828 (patch)
treeb9ab7c072d8ef345e8a73a1437cc74f59b344f33
parentforgot license (diff)
downloadfreyanet-7c9a2ca6af162a44df480486d77c1ee761fe0828.tar.gz
freyanet-7c9a2ca6af162a44df480486d77c1ee761fe0828.tar.bz2
freyanet-7c9a2ca6af162a44df480486d77c1ee761fe0828.zip
add openwrt
-rw-r--r--Makefile8
-rwxr-xr-xbin/inet2.sh6
-rwxr-xr-xdeployments/initd/inet2.initd25
3 files changed, 35 insertions, 4 deletions
diff --git a/Makefile b/Makefile
index 38ac300..1582c1e 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,7 @@
-.PHONY: install
+.PHONY: install alpine openwrt
install:
+ mkdir -p /usr/local/bin
mkdir -p /var/lib/inet2
cp ./bin/* /usr/local/bin
cp ./lib/* /var/lib/inet2
@@ -9,3 +10,8 @@ alpine:
apk add --no-cache wireguard-tools bind-tools bird
cp ./deployments/openrc/inet2.initd /etc/init.d/inet2
rc-update add inet2
+
+openwrt:
+ opkg install wireguard-tools bind-tools bird2
+ cp ./deployments/initd/inet2.initd /etc/init.d/inet2
+ service inet2 enable
diff --git a/bin/inet2.sh b/bin/inet2.sh
index 7a93cbb..cb98c6c 100755
--- a/bin/inet2.sh
+++ b/bin/inet2.sh
@@ -26,7 +26,7 @@ start() {
rm -fr /run/inet2/wg 2> /dev/null
mkdir -p /run/inet2/wg
- mkbirdconfig.sh
+ /usr/local/bin/mkbirdconfig.sh
step "Setting loopback addresses"
getval Loopback | while read -r addr; do
@@ -35,7 +35,7 @@ start() {
getval interface | while read -r inter; do
step "Generating config for $inter"
- run mkwgconfig.sh "$inter" /run/inet2/wg/"$inter"
+ run /usr/local/bin/mkwgconfig.sh "$inter" /run/inet2/wg/"$inter"
# create the wireguard interface *in the default namespace*
step "Adding Wireguard interface $inter"
@@ -90,7 +90,7 @@ stop() {
reload() {
getval interface | while read -r inter; do
step "Generating config for $inter"
- run mkwgconfig.sh "$inter" /run/inet2/wg/"$inter" /config/inet2.conf
+ run /usr/local/bin/mkwgconfig.sh "$inter" /run/inet2/wg/"$inter" /etc/inet2.conf
step "Setting Wireguard config for $inter"
run wg setconf "$inter" /run/inet2/wg/"$inter"
diff --git a/deployments/initd/inet2.initd b/deployments/initd/inet2.initd
new file mode 100755
index 0000000..41bb887
--- /dev/null
+++ b/deployments/initd/inet2.initd
@@ -0,0 +1,25 @@
+#!/bin/sh /etc/rc.common
+
+START=70
+STOP=10
+
+start() {
+ /usr/local/bin/inet2.sh start
+ /sbin/service bird start
+}
+
+stop() {
+ /usr/local/bin/inet2.sh stop
+ /sbin/service bird stop
+}
+
+restart() {
+ stop
+ start
+}
+
+reload() {
+ /usr/local/bin/inet2.sh reload
+ /sbin/service bird restart
+}
+