koti > tietopohja > DNS > miten DNS-kysely toimii?
kun avaat selaimen ja kirjoitat ”www.example.com”, tai DNS-asiakas tarvitsee etsiä ohjelman käyttämä nimi, se tiedustelee DNS-palvelimia nimen ratkaisemiseksi. Jokainen asiakkaan lähettämä kyselyviesti sisältää kolme informaatiota, joissa määritellään kysymys, johon DNS-palvelin vastaa:
- määritelty DNS verkkotunnus, ilmoitettu täysin pätevä verkkotunnus (FQDN), kuten ” www.esimerkiksi.com ”
- määritelty kyselytyyppi, joka voi joko määrittää resurssitietueen tyypin mukaan tai erikoistuneen kyselytoiminnan tyypin, kuten A, CNAME, NS jne.
- DNS-verkkotunnukselle määritelty luokka, kuten (Internet)
– mitä?
Jep, kaikki tämä on melko teknistä hölynpölyä DNS-pyynnön todellisesta sisällöstä, ja se tapahtuu kulissien takana. Yksinkertaistetaan sitä osoittamalla, miten se toimii jotain teet joka päivä. Tässä on, miten se toimii visuaalisesti, jos olisit avata selaimen ja yrittää mennä verkkosivuilla.
DNS-kysely esimerkki
I Tässä esimerkissä määritetyn kohteen URL-osoite (nimi) voisi olla FQDN verkkosivustolle, kuten ”example.com.”, ja kyselyn tyyppi määritetty etsimään osoitetta (a) resurssitietue tällä nimellä (se on ’a’ tietuekysely, koska haluamme IP-osoitteen).
ajattele DNS-kyselyä asiakkaana, joka kysyy palvelimelta kaksiosaisen kysymyksen, kuten ”onko sinulla’ a ’ resurssitietueita verkkosivustolle nimeltä ”example.com.’?”Kun asiakas saa vastauksen DNS-palvelimelta, se lukee ja tulkitsee vastatun ’a’ – resurssitiedoston ja opettelee nimen perusteella pyytämänsä tietokoneen IP-osoitteen.
DNS-välimuisti
DNS-kyselyt ratkeavat useilla eri tavoilla. Asiakas voi joskus vastata kyselyyn paikallisesti käyttämällä aiemmasta kyselystä saatuja välimuistiin tallennettuja (tallennettuja) tietoja. DNS-palvelin voi käyttää omaa välimuistia resurssitietueen tiedot vastata kyselyyn.
DNS-palvelin voi myös tiedustella tai ottaa yhteyttä muihin DNS-palvelimiin pyynnön esittäneen asiakkaan puolesta selvittääkseen nimen täysin ja lähettääkseen sitten vastauksen takaisin asiakkaalle. Tätä prosessia kutsutaan rekursioksi. Se on kuvattu yllä olevassa kuvassa, jossa DNS-Resolverilla ei ole vastausta, joten sen on mentävä juuripalvelimelle. Juuripalvelin ohjaa oikean TLD-palvelimen todellisen vastauksen, joka välitetään sitten takaisin käyttäjälle.
se, kuinka kauan vastaus viipyy välimuistissa, määräytyy tietueen alun perin luoneen verkkotunnuksen omistajan asettaman TTL: n (time-to-live) mukaan. Oikein rakennettu rekursiivinen DNS-palvelimet tottelevat tätä ja hylkää välimuisti jälkeen TTL päättyy, mutta on vielä ISPs että väärin sivuuttaa tämän kriittisen tiedon eri syistä.
lisäksi asiakas itse voi yrittää ottaa yhteyttä muihin DNS-palvelimiin nimen selvittämiseksi. Kun asiakas tekee niin, se käyttää erillisiä ja ylimääräisiä kyselyitä, jotka perustuvat palvelimilta saatuihin lähetevastauksiin. Tätä prosessia kutsutaan iteraatioksi. Esimerkiksi, jos pyydän ”www.example.com”, a-kirjainta ei välttämättä ole olemassa. Se voi itse asiassa palauttaa CNAME kertoo minulle, että minun pitäisi tehdä toinen pyyntö selvittää, mikä IP-osoite on.
yleensä DNS-kyselyprosessi tapahtuu kahdessa osassa:
- nimikysely alkaa asiakastietokoneesta ja siirtyy DNS-asiakaspalvelun resolveriin ratkaistavaksi.
- kun kyselyä ei voida ratkaista paikallisesti, DNS-palvelimia voidaan tiedustella tarpeen mukaan nimen selvittämiseksi.
kun se ei toimi…
kuten näette, DNS-kyselyn resoluutiossa on enemmän kuin silmä näkee. Jos DNS-palvelin ei anna vastausta ajoissa, se voi hidastaa kaikkea. Kunnes selaimesi tietää syöttämäsi URL-osoitteen IP-osoitteen, se ei voi tehdä muuta kuin odottaa. Siksi on tärkeää, että arvovaltaiset DNS-palvelimet ovat nopeita. Lisäksi, jos arvovaltainen DNS-palvelin menee alas, niin kysely lopulta aikalisä ja vastausta ei anneta. Olet luultavasti nähnyt tämän aika ajoin, kun olet tutkinut Internetiä klikkaamalla linkkiä sivustolle, joka ei koskaan saavu.