Tunel se zvedne, handshake doběhne a překlad jmen přestane fungovat. V konfiguraci peer se nic nezměnilo, protože řádek DNS nikdy nebyl její součástí. Patří pomocníku nastavení, což znamená, že závada sídlí v nástrojích překladače na hostiteli, ne v klíčích WireGuardu.

Přečtěte první zprávu, kterou pomocník vypsal, ne tu poslední, a rozdíl mezi chybějícím nástrojem a nedostupným serverem bude zřejmý.

Řádek DNS je funkce pomocníka

Základní konfigurační pole popisují peery, klíče a povolené adresy. Překlad jmen se přidává navrch skriptem, který rozhraní zvedá, a každá implementace to dělá jinak. Klientská aplikace pro počítač může DNS spravovat vlastní službou, distribuční skript může zavolat jeden z několika nástrojů překladače a kontejner nemusí dělat ani jedno. Konfigurační soubor vám neřekne, která z těchto cest je ve hře.

Proto může být konfigurační soubor pro protokol platný a přesto při nastavení selhat: závada patří háku, který protokol nikdy nevidí.

Zapsat rozšířené pole do základní konfigurace a čekat, že ho nástroj protokolu přijme, vytváří stejný zmatek z opačného směru. Oba parsery čtou jiné soubory.

Vědět, který z nich běží, je prvním diagnostickým krokem a obvykle je to vidět v příkazu, který jste napsali, ne v konfiguračním souboru.

Přečtěte první chybu, kterou pomocník vypíše

Zvedněte rozhraní na popředí a čtěte výstup popořadě. Chybějící nástroj překladače, selhaný hák a nedostupný server zastaví stejný příkaz na různých místech a každý má jinou opravu.

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

První příkaz hlásí průběh nastavení, druhý ukazuje, které servery si rozhraní nyní nárokuje, a třetí ukazuje, zda je adresa překladače skutečně dostupná tunelem. Překladač, který je nakonfigurovaný, ale nesměrovatelný, vytváří časové limity místo konfiguračních chyb, a proto obě kontroly patří k sobě. Čtení pouze stavového výstupu vede k sebejistému a špatnému závěru.

Pokud nastavení doběhlo a překlad jmen stále selhává, porovnejte překladač, který pomocník nainstaloval, s tím, který síť používala dříve. Soukromý překladač potřebuje cestu skrz tunel a konfigurace, která ho uvádí bez pokrytí jeho prefixu, nechává každý dotaz čekat.

Který překladač hostitel skutečně má

Moderní hostitelé Linuxu často provozují místní stub překladač, takže adresu, kterou pomocník instaluje, spotřebovává tento stub, ne aplikace přímo. Ruční úprava generovaného souboru může vypadat funkčně až do dalšího připojení, kdy ho pomocník přepíše.

Použijte podporovanou integraci pro distribuci a nechte stav překladače vlastnit jednu komponentu. Dva vlastníci vytvářejí stejný závod jako dva vlastníci adresy rozhraní a symptomem je hostitel, který po každé změně několik minut překládá správně.

Interní názvy si zaslouží vlastní kontrolu. Veřejný překladač může obnovit běžné brouzdání, zatímco každé firemní jméno selže, což je opak toho, k čemu tunel byl. Než uzavřete, že DNS je opraveno, zeptejte se zamýšleného serveru na interní název.

Úklid je stejně důležitý jako nastavení

Sundejte rozhraní a znovu prohlédněte stav překladače. Pomocník, který obnoví předchozí konfiguraci, nechá hostitele použitelného; ten, který po sobě nechá vlastní servery, vytváří další závadu, často o hodiny později, když je tunel dávno pryč.

Zastaralý stav je snadné spatřit, jakmile ho začnete hledat. Seznam překladačů může ukazovat na adresu rozhraní, které už neexistuje, a vyhledávací doména může přežít síť, kterou jste dnes ráno opustili. Obojí dělá další připojení nepředvídatelným a ani jedno se neobjevuje ve vlastním stavovém výstupu tunelu. Kontrola trvá deset sekund a ušetří dalšímu člověku hodinu.

Držte diagnostiku odděleně od opravy. Pokud selhává každý cíl, ne jen vyhledávání jmen, podezřelé jsou trasy a předávání a řádek DNS je rozptýlení. Manuál wg-quick dokumentuje, která pole obsluhuje a která patří protokolu, a tato hranice je celá odpověď na většinu těchto hlášení.

Související články