Junior
Kuidas töötab DNS?
sobes.tech AI
Vastus AI-lt
DNS, ehk Domeeninimede süsteem, on jaotatud andmeba, mis teisendab loetavaid domeeninimesid (näiteks google.com) IP-aadressideks (näiteks 172.217.16.14), mida arvutid mõistavad.
Domeeninime IP-aadressiks muutmise (lahendamise) protsess hõlmab mitmeid samme, kus osalevad erinevad komponendid:
- Kasutaja päring: Kasutaja sisestab brauserisse domeeninime.
- Resolver (DNS Resolver): Operatsioonisüsteem või rakendus saadab päringu kohaliku DNS resolvri (tavaliselt internetiteenuse pakkuja või kohaliku ruuteri/arvuti kaudu).
- Resolveri vahemälu: Resolver kontrollib esmalt oma kohaliku vahemälu. Kui see leiab IP-aadressi, tagastab selle kliendile. See kiirendab protsessi.
- Juure (Root) DNS-serverid: Kui kirjet pole vahemälus, saadab resolver üheksast kolmeteistkümnest juure DNS-serverist päringu (märgitud punktiga
.). Need serverid teavad, kust leida TLD (Top-Level Domain) serverid. - TLD (Top-Level Domain) DNS-serverid: Juure server suunab resolveri TLD serverile, mis vastutab kõrgeima taseme domeenide eest (näiteks
.com,.org,.ru). - Autoritatiivsed (Authoritative) DNS-serverid: TLD server suunab resolveri autoritatiivsele DNS-serverile, mis vastutab konkreetse domeeni eest (näiteks
google.com). See server hoiab DNS kirjeid. - Autoritatiivse serveri vastus: Autoritatiivne server leiab sobiva kirje (näiteks A kirje IPv4 jaoks või AAAA kirje IPv6 jaoks) ja tagastab IP-aadressi resolverile.
- Resolveri vahemälu: Resolver saab IP-aadressi, salvestab selle ajutiselt (TTL - Time To Live) ja tagastab kliendile.
- Kliendi ühendus: Klient kasutab saadud IP-aadressi ühenduse loomiseks veebiserveriga.
DNS-serverid salvestavad erinevat tüüpi kirjeid:
- A: Muudab domeeninime IPv4-aadressiks.
- AAAA: Muudab domeeninime IPv6-aadressiks.
- CNAME: Loob pseudonüümi teisele domeeninimele.
- MX: Määrab e-posti serverid, mis vastutavad domeeni eest.
- NS: Näitab autoritatiivseid DNS-servereid domeeni jaoks.
- PTR: Muudab IP-aadressi domeeninimeks (kasutatakse pöörduvates DNS-päringutes).
# Näide DNS-päringust dig-iga
dig google.com A
; <<>> DiG 9.16.1-Ubuntu <<>> google.com A
;; globaalvalikud: +cmd
;; Vastus:
;; ->>HEADER<<- käsk: QUERY, staatus: NOERROR, id: 42650
;; lipud: qr rd ra; KÜSIMUS: 1, VASTUS: 1, AUTORITATIIVNE: 0, LISAND: 1
;; OPT PSEUDOSECTION:
; EDNS: versioon: 0, lipud:; udp: 65494
;; KÜSIMUSE SEKTSIOON:
;google.com. IN A
;; VASTUSE SEKTSIOON:
google.com. 300 IN A 172.217.16.142
;; Päringu aeg: 42 ms
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; KUI: Teis Oct 26 10:00:00 UTC 2023
;; SÕNUMI SUURUS rcvd: 55
See jaotatud ja hierarhiline lähenemine muudab DNS-i skaleeritavaks ja vastupidavaks süsteemiks.