Тунель піднімається, рукостискання завершується, і розв’язання імен зупиняється. У конфігурації партнера нічого не змінилося, бо рядок DNS ніколи не був її частиною. Він належить помічникові налаштування, тобто збій живе в інструментах резолвера хоста, а не в ключах WireGuard.

Прочитайте перше повідомлення, яке вивів помічник, а не останнє, і різниця між відсутнім інструментом і недоступним сервером стане очевидною.

Рядок DNS — функція помічника

Основні поля конфігурації описують партнерів, ключі та дозволені адреси. Розв’язання імен додається згори тим скриптом, що піднімає інтерфейс, і кожна реалізація робить це по-своєму. Настільний клієнт може керувати DNS через власну службу, скрипт дистрибутива може викликати одну з кількох утиліт резолвера, а контейнер може не робити ні того, ні іншого. Файл конфігурації не може сказати, який із цих шляхів задіяний.

Тому файл конфігурації може бути коректним для протоколу і все одно збоїти під час налаштування: збій належить гаку, якого протокол ніколи не бачить.

Запис розширеного поля в основну конфігурацію й очікування, що інструмент протоколу його прийме, створює ту саму плутанину з іншого боку. Два парсери читають різні файли.

Знати, який із них працює, — перший крок діагностики, і зазвичай це видно в набраній команді, а не у файлі конфігурації.

Прочитайте першу помилку, яку виводить помічник

Підніміть інтерфейс на передньому плані й читайте вивід по черзі. Відсутня утиліта резолвера, невдалий гак і недоступний сервер зупиняють ту саму команду в різних місцях, і кожен має своє виправлення.

wg-quick up wg0
resolvectl status wg0
ip route get 10.66.0.1

Перша команда повідомляє про поступ налаштування, друга показує, які сервери інтерфейс тепер вимагає, а третя — чи справді адреса резолвера доступна через тунель. Резолвер, який налаштований, але не маршрутизується, дає тайм-аути замість помилок конфігурації, тому обидві перевірки йдуть разом. Читання лише виводу стану дає впевнений і неправильний висновок.

Якщо налаштування завершилося, а розв’язання імен досі збоїть, порівняйте резолвер, який установив помічник, із тим, що мережа використовувала раніше. Приватному резолверу потрібен маршрут через тунель, а конфігурація, яка перелічує його, не покриваючи його префікс, залишає кожен запит у очікуванні.

Який резолвер насправді має хост

Сучасні хости Linux часто запускають локальний stub-резолвер, тому адресу, яку встановлює помічник, споживає цей stub, а не застосунки напряму. Ручне редагування згенерованого файлу може виглядати робочим до наступного перепідключення, коли помічник переписує його.

Використовуйте підтримувану інтеграцію для дистрибутива й дозвольте одному компоненту володіти станом резолвера. Два власники створюють ту саму гонку, що й два власники адреси інтерфейсу, а симптом — хост, який правильно розв’язує імена кілька хвилин після кожної зміни.

Внутрішні імена заслуговують на окрему перевірку. Публічний резолвер може відновити звичайний перегляд, але зробити так, щоб кожне корпоративне ім’я збоїло, — це протилежність тому, для чого був тунель. Запитайте в передбаченого сервера внутрішнє ім’я, перш ніж робити висновок, що DNS виправлено.

Очищення важливе не менше налаштування

Опустіть інтерфейс і знову перевірте стан резолвера. Помічник, який відновлює попередню конфігурацію, залишає хост придатним; той, що залишає свої сервери, створює наступний збій, часто через години, коли тунель давно зник.

Застарілий стан легко помітити, коли починаєш його шукати. Список резолверів може вказувати на адресу на інтерфейсі, якого більше немає, а домен пошуку може пережити мережу, яку ви покинули сьогодні вранці. Будь-що з цього робить наступне підключення непередбачуваним, і ні те ні інше не з’являється у власному виводі стану тунелю. Перевірка займає десять секунд і економить наступній людині годину.

Тримайте діагностику окремо від виправлення. Якщо збоїть кожне призначення, а не лише пошук імен, підозрювані — маршрути й пересилання, а рядок DNS відвертає увагу. Посібник wg-quick документує, які поля він обробляє і які належать протоколу, і ця межа — вся відповідь на більшість таких звітів.

Схожі статті