Обновление WireGuard: syncconf не применяет всю сетевую конфигурацию wg-quick

Запросить

Фотография конкретного исполнения не приложена.

При изменении туннеля нужно различать параметры WireGuard и внешнюю сетевую настройку. Wg понимает ключи, peer и связанные параметры, а Address, DNS, Table и hooks обслуживаются wg-quick. Одно успешное обновление списка peer не подтверждает применение всех этих полей.

Setconf задаёт конфигурацию, addconf добавляет её к существующей, syncconf сначала сравнивает действующее состояние и меняет различающиеся параметры. Strip удаляет специальные поля wg-quick, подготавливая вход для wg. Поэтому использование strip вместе с syncconf не является автоматическим обновлением маршрутов, адресов и resolver-настроек из исходного файла.

В Linux-коде выпуска 1.0.20260223 загрузка в set_config использует addconf. Это важно при анализе взаимодействия с PreUp и отличается от предположения, что любой запуск обёртки безусловно заменяет всё ранее созданное состояние. Для установленной версии проверяют фактическое поведение и состав обновления, а не только похожее имя операции.

В приёмке отдельно сравнивают runtime peer, интерфейсные адреса, маршруты и DNS. Проверяют сохранение требуемых сеансов и удаление именно тех настроек, которые должны исчезнуть. Отсутствие разрыва текущего соединения полезно, но не доказывает полноту применения новой конфигурации всего сетевого пути.

Основание — Official wireguard-tools1.0.20260223 release manual/code sources; Linux wg-quick scope, разделы wg.8 setconf; addconf; syncconf; wg-quick.8 strip; configuration; linux.bash set_config implementation. Сохранён текст публичной справочной публикации; конкретная реализация может поддерживать только часть возможностей. Использованы руководства и указанные фрагменты Linux-реализации из wireguard-tools 1.0.20260223. Совместимость ядра и установленной сборки не проверялась; ключи, туннели, маршруты, DNS и firewall не изменялись.

Все разборы