From cbc2f5bf45e6c18a5275097f31adb43753b42804 Mon Sep 17 00:00:00 2001 From: Ruslan Date: Tue, 14 Apr 2026 00:48:04 +0300 Subject: [PATCH] =?UTF-8?q?fix(gui):=20=D0=B8=D0=BD=D1=82=D0=B5=D1=80?= =?UTF-8?q?=D0=B0=D0=BA=D1=82=D0=B8=D0=B2=D0=BD=D0=BE=20=D0=BF=D1=80=D0=B5?= =?UTF-8?q?=D0=B4=D0=BB=D0=B0=D0=B3=D0=B0=D1=82=D1=8C=20=D1=81=D0=B1=D1=80?= =?UTF-8?q?=D0=BE=D1=81=20=D0=91=D0=94=20=D0=BF=D1=80=D0=B8=20=D1=81=D1=82?= =?UTF-8?q?=D0=B0=D1=80=D0=BE=D0=B9=20=D0=BF=D0=BE=D0=B4=D1=81=D0=B5=D1=82?= =?UTF-8?q?=D0=B8=2010.252.1.x?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 ++ server/install_server.sh | 12 ++++++++++++ 2 files changed, 14 insertions(+) diff --git a/README.md b/README.md index 96896a5..51b4eb5 100644 --- a/README.md +++ b/README.md @@ -294,6 +294,8 @@ docker ps -a --format '{{.Names}}' | grep -E '(^|[_-])wireguard-ui($|[_-])' | xa Если клиенты из GUI создаются в неправильной подсети (например `10.252.1.x` вместо вашей `10.66.66.x`), запустите установщик с `--gui-reset-db yes`, затем создайте клиента заново и пересканируйте QR. +Почему так бывает: `wireguard-ui` хранит глобальные настройки в своей БД. Если БД была создана ранее со старой подсетью, новые переменные окружения не всегда перезаписывают эти значения автоматически. + ## Важные пути - Серверный конфиг: `/etc/wireguard/wg0.conf` diff --git a/server/install_server.sh b/server/install_server.sh index b81a48e..0e6f4ef 100755 --- a/server/install_server.sh +++ b/server/install_server.sh @@ -290,6 +290,18 @@ setup_gui() { elif [[ -n "$(find /opt/wireguard-ui/db -mindepth 1 -maxdepth 1 2>/dev/null)" ]]; then log_warn "Обнаружена существующая БД GUI. Дефолты (подсеть/endpoint/пароль) могли сохраниться старыми." log_warn "Если нужен чистый старт GUI, перезапустите с --gui-reset-db yes" + + # Частый кейс миграции: старая БД wireguard-ui хранит дефолт 10.252.1.0/24. + # В интерактивном режиме даем быстрый вариант синхронизации с текущей подсетью WG. + if (( ! NON_INTERACTIVE )); then + if grep -aEq '10\\.252\\.1\\.' /opt/wireguard-ui/db/* 2>/dev/null; then + log_warn "В БД GUI обнаружены старые значения подсети (10.252.1.x)." + if confirm "Сбросить БД GUI сейчас, чтобы синхронизировать подсеть с ${WG_NETWORK}?"; then + rm -rf /opt/wireguard-ui/db/* + log_warn "БД GUI очищена по подтверждению пользователя." + fi + fi + fi fi cat > /opt/wireguard-ui/docker-compose.yml <