Sobes.tech
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:

  1. Korisnički zahtev: Korisnik unosi domena ime u pretraživač.
  2. 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).
  3. Keš resolvera: Resolver prvo proverava svoj lokalni keš. Ako pronađe IP adresu, vraća je klijentu. To ubrzava proces.
  4. 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.
  5. TLD (Top-Level Domain) DNS serveri: Korenski server usmerava resolver ka TLD serveru, odgovornom za domenu najvišeg nivoa (na primer, .com, .org, .ru).
  6. 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.
  7. 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.
  8. Keširanje od resolvera: Resolver dobija IP adresu, kešira je na određeni period (TTL - Time To Live) i vraća je klijentu.
  9. 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.