Junior
Kako funkcioniše DNS?
sobes.tech АИ
Одговор од АИ
DNS, ili Sistem za domena imena, je distribuirana baza podataka koja pretvara čitljive domena imena (na primer, google.com) u IP adrese (na primer, 172.217.16.14), razumljive računarima.
Proces pretvaranja (rešavanja) domena imena u IP adresu uključuje nekoliko koraka saradnje između različitih komponenti:
- Korisnički zahtev: Korisnik unosi domena ime u pretraživač.
- Resolver (DNS Resolver): Operativni sistem ili aplikacija šalje zahtev lokalnom DNS resolveru (često pruža internet provajder ili se nalazi na lokalnom ruteru/računaru).
- Keš resolvera: Resolver prvo proverava svoj lokalni keš. Ako pronađe IP adresu, vraća je klijentu. To ubrzava proces.
- Koreni (Root) DNS serveri: Ako u kešu nema zapisa, resolver šalje zahtev na jedan od 13 korenskih DNS servera (označen tačkom
.). Ovi serveri znaju gde da pronađu TLD (Top-Level Domain) servere. - TLD (Top-Level Domain) DNS serveri: Korenski server usmerava resolver ka TLD serveru, odgovornom za domenu najvišeg nivoa (na primer,
.com,.org,.ru). - Autoritativni (Authoritative) DNS serveri: TLD server usmerava resolver ka autoritativnom DNS serveru, odgovornom za konkretnu domenu (na primer,
google.com). Ovaj server čuva DNS zapise za taj domen. - Odgovor autoritativnog servera: Autoritativni server pronalazi odgovarajući zapis (na primer, A zapis za IPv4 ili AAAA zapis za IPv6) i vraća IP adresu resolveru.
- Keširanje od resolvera: Resolver dobija IP adresu, kešira je na određeni period (TTL - Time To Live) i vraća je klijentu.
- Klijentska veza: Klijent koristi dobijenu IP adresu za uspostavljanje veze sa veb serverom.
DNS serveri čuvaju različite tipove zapisa:
- A: Pretvara domena ime u IPv4 adresu.
- AAAA: Pretvara domena ime u IPv6 adresu.
- CNAME: Kreira pseudonim za drugo domena ime.
- MX: Određuje poštanske servere odgovorne za domen.
- NS: Ukazuje na autoritativne DNS servere za domen.
- PTR: Pretvara IP adresu u domena ime (koristi se u obrnutoj DNS pretrazi).
# Primer DNS zahteva pomoću dig
dig google.com A
; <<>> DiG 9.16.1-Ubuntu <<>> google.com A
;; globalne opcije: +cmd
;; Dobijen odgovor:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42650
;; zastavice: qr rd ra; UPIT: 1, ODGOVOR: 1, AUTORITATIVNO: 0, DODATNO: 1
;; OPT PSEUDOSECTION:
; EDNS: verzija: 0, zastavice:; udp: 65494
;; Pitanje sekcija:
;google.com. IN A
;; Odgovor sekcija:
google.com. 300 IN A 172.217.16.142
;; Vreme upita: 42 ms
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; KADA: uto 26. oktobar 2023 10:00:00 UTC
;; PORUKA VELIČINE rcvd: 55
Ovaj distribuirani i hijerarhijski pristup čini DNS skalabilnim i otpornim sistemom.