”DNS on rikki” on johtopäätös, eikä se ole johtopäätös, jonka pohjalta auttaja voi toimia. Raportin hyödyllinen osa on vian muoto: mikä nimi, minkä resolverin kautta, millä vastauksella. Kolme yksityiskohtaa tekevät valituksesta toistettavan, ja kaikki kolme voi jakaa turvallisesti, kun yksityiset osat on nimetty uudelleen. Seuraava on vähimmäisvaatimus, jonka VPN:n DNS-raportti tarvitsee ennen kuin kukaan voi auttaa.

Nimen luokka, ei tuomio

Aloita nimestä itsestään ja luokittele se: julkinen, sisäinen, lyhyt, täysin kvalifioitu tai yhden tietyn päätteen palvelema. Sisäinen nimi, joka epäonnistuu samalla kun julkiset nimet ratkeavat, viittaa resolverin valintaan eikä tavoitettavuuteen. Jos kaikki nimet epäonnistuvat, se viittaa polkuun resolverille, ja se on toinen tutkimus toisilla todisteilla. Luokka kantaa diagnoosin, ja tarkka merkkijono voidaan peittää.

Kerro, vaatiiko vika tunnelin olevan pystyssä vai tapahtuuko se sen katkaisemisen jälkeen. Nimi, joka rikkoutuu vain VPN:n ollessa aktiivinen, viittaa linkkikohtaiseen kokoonpanoon, kun taas katkaisun jälkeen rikkoutuva viittaa jääneeseen tilaan. Raportit jättävät tämän yleensä pois ja ihmettelevät sitten, miksei ensimmäinen ehdotus auta.

Kirjaa resolverin polku

Kysely eksplisiittisesti valitulle palvelimelle ja sovelluksen tavallinen haku ovat eri kokeita. Kerro, kumpi tuotti vian, koska käsin tehty kysely toimivalle palvelimelle todistaa vain, että palvelin toimii. Alla olevat komennot erottavat järjestelmän polun suorasta kysymyksestä.

resolvectl status --no-pager
getent hosts host.internal
dig +short host.internal @10.20.30.53

Tilatuloste nimeää linkkikohtaiset palvelimet ja reititysverkkotunnukset, mikä on missä split DNS päätetään. getent-kutsu seuraa samaa polkua kuin sovellus, mukaan lukien nsswitch-järjestys. Suora kysely ohittaa molemmat ja testaa yhtä palvelinta erikseen. Kerro, mikä kolmesta epäonnistui ja mikä onnistui, eikä lukijan enää tarvitse arvata polkua.

Ilmoita kontrolloitu vertailu

Muuta yhtä muuttujaa ja kerro, mikä muuttui. Se, että julkiset nimet ratkeavat sisäisten epäonnistuessa, on valintaongelma; se, että jokainen nimi aikakatkaistaan, on polkuongelma; ja yksityinen nimi, joka ratkeaa julkiseksi osoitteeksi, on vuoto väärään resolveriin. Kahdella noista kolmesta ei ole mitään tekemistä sen kanssa, onko tunneli pystyssä. Raportti, joka väittää kaikkien kyselyjen olevan rikki, sisältää yleensä vertailun, jota ei koskaan tehty.

Erota ratkaiseminen toimituksesta. Kun nimi ratkeaa ja sivusto silti epäonnistuu, DNS-vaihe onnistui ja raportin pitäisi sanoa niin, koska seuraava askel on reitti tai kuuntelija eikä resolveri. Tämä yksi ero säästää useammin kokonaisen kyselykierroksen kuin yksikään lokin ote.

Peitä nimiavaruus, säilytä suhteet

Sisäiset nimet voidaan korvata, kunhan korvaukset säilyttävät rakenteen. Kohdista jokainen erillinen palvelin ja pääte vakaaseen tunnisteeseen ja pidä tuo kohdistus jaetun kopion ulkopuolella. Jokaisen sisäisen isännän korvaaminen samalla paikkamerkillä tuhoaa juuri sen todisteen, jonka raportti tarvitsee, koska lukija ei enää näe, että yksi pääte ratkesi ja toinen ei. Sama sääntö koskee osoitteita: säilytä etuliitteiden suhteet ja muuta isännän bittejä, jos käytäntö sitä vaatii.

Lähetä tietue vahvistettua kanavaa pitkin ja jätä pois se, mitä diagnoosi ei koskaan tarvitse. Salasanat, yksityiset avaimet ja asiaankuulumattomat yritysnimet eivät kuulu DNS-kysymykseen. Lukija tarvitsee vian luokan, resolverin polun, tarkan virheen ja sen yhden vertailun, jonka teit.

Aiheeseen liittyvät artikkelit