From e74d607a52b31feb3f9f78947cc0b54379eccfdd Mon Sep 17 00:00:00 2001 From: Peter Galonza Date: Wed, 2 Apr 2025 23:55:27 +0300 Subject: [PATCH] feature: improved increase of the last octet of the address for wireguard --- client/configurators/wireguard_configurator.cpp | 2 +- client/server_scripts/awg/configure_container.sh | 4 +++- client/server_scripts/wireguard/configure_container.sh | 4 +++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/client/configurators/wireguard_configurator.cpp b/client/configurators/wireguard_configurator.cpp index 5a7a8bd7..aadbe9fa 100644 --- a/client/configurators/wireguard_configurator.cpp +++ b/client/configurators/wireguard_configurator.cpp @@ -124,6 +124,7 @@ WireguardConfigurator::ConnectionData WireguardConfigurator::prepareWireguardCon .toObject() .value(config_key::subnet_address) .toString(protocols::wireguard::defaultSubnetAddress)); + lastIp.setAddress(lastIp.toIPv4Address() + 1); } else { lastIp = ips.last(); } @@ -131,7 +132,6 @@ WireguardConfigurator::ConnectionData WireguardConfigurator::prepareWireguardCon switch (lastOctet) { case 254: result.setAddress(lastIp.toIPv4Address() + 3); break; case 255: result.setAddress(lastIp.toIPv4Address() + 2); break; - case 0: result.setAddress(lastIp.toIPv4Address() + 2); break; default: result.setAddress(lastIp.toIPv4Address() + 1); break; } diff --git a/client/server_scripts/awg/configure_container.sh b/client/server_scripts/awg/configure_container.sh index f4611e94..e2c8804c 100644 --- a/client/server_scripts/awg/configure_container.sh +++ b/client/server_scripts/awg/configure_container.sh @@ -9,7 +9,9 @@ echo $WIREGUARD_SERVER_PUBLIC_KEY > /opt/amnezia/awg/wireguard_server_public_key WIREGUARD_PSK=$(wg genpsk) echo $WIREGUARD_PSK > /opt/amnezia/awg/wireguard_psk.key -AWG_SERVER_IP=$(echo $AWG_SUBNET_IP | sed 's/\.0$/\.1/') +IFS='.' read -r a b c d <<< "$WIREGUARD_SUBNET_IP" +((d++)) +WIREGUARD_SERVER_IP="${a}.${b}.${c}.${d}" cat > /opt/amnezia/awg/wg0.conf < /opt/amnezia/wireguard/wireguard_server_publ WIREGUARD_PSK=$(wg genpsk) echo $WIREGUARD_PSK > /opt/amnezia/wireguard/wireguard_psk.key -WIREGUARD_SERVER_IP=$(echo $WIREGUARD_SUBNET_IP | sed 's/\.0$/\.1/') +IFS='.' read -r a b c d <<< "$WIREGUARD_SUBNET_IP" +((d++)) +WIREGUARD_SERVER_IP="${a}.${b}.${c}.${d}" cat > /opt/amnezia/wireguard/wg0.conf <