Op een Mac lost ping een tailnet-machinenaam op terwijl nslookup een fout teruggeeft, en beide opdrachten vertellen de waarheid. Apps lossen namen op via de systeemresolver, die Tailscale per interface configureert, terwijl nslookup en host een statisch bestand lezen dat MagicDNS nooit aanraakt. De twee paden kunnen verschillen zonder dat er één pakket verloren gaat. Bepaal welk pad je mislukkende app heeft genomen voordat je een DNS-instelling wijzigt.

Twee oplospaden, twee verschillende antwoorden

App-verkeer op macOS loopt via de systeemresolver, en per interface beperkte resolver-vermeldingen bepalen welke server voor welk domein antwoordt. Tailscale installeert daar zijn MagicDNS-vermelding, daarom vinden Safari en ssh tailnet-namen. nslookup, host en dig lezen in plaats daarvan /etc/resolv.conf of nemen een server op de opdrachtregel, en dat bestand noemt gewoonlijk nog steeds de router of een kantoorserver. Een tailnet-naam die naar dat bestand wordt gestuurd, heeft geen gezaghebbend antwoord dat erop wacht, dus de tool meldt een fout terwijl het systeempad slaagt.

Geen van beide tools gedraagt zich verkeerd. Ze vragen verschillende servers, en slechts één van die servers kent je tailnet.

Test dezelfde naam via het systeempad

Gebruik de systeemzoekaanroep als eerste test en vergelijk die daarna met een query die rechtstreeks op de MagicDNS-resolver is gericht. Houd de spelling in beide identiek, inclusief het tailnet-domein, want een korte naam en een volledig gekwalificeerde naam zijn verschillende vragen met verschillende antwoorden.

dscacheutil -q host -a name nas-01.tailnet-a1b2.ts.net
scutil --dns
dig @100.100.100.100 nas-01.tailnet-a1b2.ts.net

Die drie uitvoerwaarden beantwoorden drie vragen: wat het systeem teruggeeft, welke resolvers voor welke domeinen zijn geconfigureerd en wat MagicDNS zelf weet. Een naam die in de tweede en derde voorkomt maar in de eerste ontbreekt, wijst op lokale configuratie en niet op het tailnet.

Zodra de naam oplost, test de dienst

Een correct DNS-antwoord bewijst alleen dat een naam naar een adres wijst. De dienst erachter kan gestopt zijn, de poort kan door een toegangsregel worden gefilterd, en een certificaat kan een andere host noemen dan die je hebt getypt.

nc -vz nas-01.tailnet-a1b2.ts.net 445
ping -c 3 nas-01.tailnet-a1b2.ts.net

Bewaar de oorspronkelijke fouttekst, want een certificaatwaarschuwing, een verbindingstime-out en een niet-gevonden naam leiden elk ergens anders heen. Het wijzigen van naamservers repareert de derde en verspilt een middag aan de eerste twee.

MagicDNS is geen vervanging voor kantoor-DNS

Een naam binnen een kantoorzone is geen tailnet-apparaatnaam, zelfs niet wanneer dezelfde client beide kan bereiken. Wanneer de bestemming achter een subnet-router zit, heeft de client split DNS voor die zone nodig die naar de interne resolver wijst, wat een andere instelling is dan MagicDNS en ernaast wordt gedocumenteerd.

Zoekdomeinen zijn ook belangrijk. Aan een niet-gekwalificeerde korte naam wordt elk geconfigureerd achtervoegsel in volgorde toegevoegd, zodat een laptop die onlangs bij een ander netwerk kwam, via een verouderd achtervoegsel kan oplossen. Controleer welk achtervoegsel is toegepast voordat je de zone als kapot verklaart.

Wanneer beide paden falen, beslissen de tailnet-feiten

Als zowel de systeemzoekopdracht als de directe query falen voor een apparaat waarvan je gelooft dat het bestaat, zit het probleem boven de resolver van de Mac.

Bevestig de machinenaam en het tailnet-domein in de beheerconsole, bevestig dat het apparaat online en goedgekeurd is, en bevestig dat de DNS-instellingen van de client niet lokaal zijn uitgeschakeld. Een apparaat dat offline is, behoudt zijn naam en heeft simpelweg geen adres om terug te geven.

Kies dan op basis van bewijs. Een naam die via het systeempad oplost en in nslookup mislukt, is een verschil in toolpad; een naam die oplost terwijl de dienst weigert, is een toegangs- of certificaatprobleem; een naam die nergens oplost, is een tailnet- of DNS-configuratieprobleem. Drie eigenaars, drie correcties, en de MagicDNS-documentatie behandelt de macOS-bijzonderheden van het eerste geval.

Gerelateerde artikelen