Tunelul urcă, strângerea de mână se încheie și rezolvarea numelor se oprește. Nimic din configurația peer nu s-a schimbat, pentru că linia DNS nu a fost niciodată parte din ea. Aparține asistentului de configurare, ceea ce înseamnă că defectul trăiește în uneltele resolverului gazdei, nu în cheile WireGuard.

Citiți primul mesaj tipărit de asistent, nu pe ultimul, și diferența dintre un utilitar lipsă și un server inaccesibil devine evidentă.

Linia DNS este o funcție a asistentului

Câmpurile de bază ale configurației descriu peeri, chei și adrese permise. Rezolvarea numelor este adăugată deasupra de scriptul care ridică interfața, și fiecare implementare o face altfel. Un client desktop poate gestiona DNS prin propriul serviciu, un script de distribuție poate apela unul dintre mai multe utilitare de resolver, iar un container poate să nu facă niciuna. Fișierul de configurare nu vă poate spune care dintre aceste căi este în joc.

De aceea un fișier de configurare poate fi valid pentru protocol și totuși să eșueze în timpul configurării: defectul aparține unui cârlig pe care protocolul nu îl vede niciodată.

Scrierea unui câmp extins într-o configurație de bază și așteptarea ca unealta protocolului să îl accepte produce aceeași confuzie din direcția opusă. Cei doi parseri citesc fișiere diferite.

Să știi care rulează este primul pas de diagnostic, și de obicei se vede în comanda tastată, nu în fișierul de configurare.

Citiți prima eroare pe care o tipărește asistentul

Ridicați interfața în prim-plan și citiți ieșirea în ordine. Un utilitar de resolver lipsă, un cârlig eșuat și un server inaccesibil opresc aceeași comandă în puncte diferite, și fiecare are o reparație diferită.

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

Prima comandă raportează progresul configurării, a doua arată ce servere revendică acum interfața, iar a treia arată dacă adresa resolverului este într-adevăr accesibilă prin tunel. Un resolver configurat dar nerutabil produce expirări de timp în loc de erori de configurare, de aceea cele două verificări merg împreună. Citirea doar a ieșirii de stare produce o concluzie sigură și greșită.

Dacă configurarea s-a încheiat și rezolvarea numelor încă eșuează, comparați resolverul instalat de asistent cu cel pe care rețeaua îl folosise înainte. Un resolver privat are nevoie de o rută prin tunel, iar o configurație care îl listează fără a-i acoperi prefixul lasă fiecare interogare în așteptare.

Ce resolver are de fapt gazda

Gazdele Linux moderne rulează adesea un resolver stub local, așa că adresa instalată de asistent este consumată de acel stub și nu direct de aplicații. Editarea manuală a unui fișier generat poate părea că funcționează până la următoarea reconectare, când asistentul îl rescrie.

Folosiți integrarea acceptată pentru distribuție și lăsați un singur component să dețină starea resolverului. Doi proprietari produc aceeași cursă ca doi proprietari ai unei adrese de interfață, iar simptomul este o gazdă care rezolvă corect câteva minute după fiecare schimbare.

Numele interne merită o verificare proprie. Un resolver public poate restabili navigarea generală făcând în același timp fiecare nume corporativ să eșueze, ceea ce este opusul scopului tunelului. Întrebați serverul vizat despre numele intern înainte de a concluziona că DNS-ul este reparat.

Curățarea contează la fel de mult ca configurarea

Coborâți interfața și inspectați din nou starea resolverului. Un asistent care restaurează configurația anterioară lasă gazda utilizabilă; unul care își lasă propriile servere în urmă creează următoarea defecțiune, adesea ore mai târziu, când tunelul a dispărut de mult.

Starea învechită este ușor de observat când o cauți. O listă de resolveri poate indica o adresă pe o interfață care nu mai există, iar un domeniu de căutare poate supraviețui unei rețele pe care ai părăsit-o azi-dimineață. Oricare dintre ele face următoarea conexiune imprevizibilă, și niciunul nu apare în ieșirea de stare a tunelului însuși. Verificarea durează zece secunde și economisește o oră următoarei persoane.

Țineți diagnosticul separat de reparație. Dacă eșuează fiecare destinație, nu doar căutările de nume, rutele și forwardingul sunt suspecții, iar linia DNS este o distragere. manualul wg-quick documentează ce câmpuri tratează și care aparțin protocolului, iar acea graniță este tot răspunsul pentru majoritatea acestor rapoarte.

Articole similare