Sobes.tech
Junior

Ինչպես է աշխատում DNS-ը?

sobes.tech AI

Պատասխան AI-ից

DNS, կամ Դոմենային Անվան Համակարգը, մի տարածված տվյալների բազա է, որը փոխարկում է մարդկարդացվող դոմենային անունները (օրինակ, google.com) IP հասցեների (օրինակ, 172.217.16.14)՝ որոնք հասկանում են համակարգիչները:

Փոխարկման (լուծման) գործընթացը դոմենային անունը IP հասցե դարձնելու համար մի քանի քայլ է, որոնք իրականացվում են տարբեր բաղադրիչների միջև:

  1. Օգտատիրոջ հարցումը: Օգտատերը մուտքագրում է դոմենային անունը բրաուզերում:
  2. Ռեզոլվեր (DNS Resolver): Օպերացիոն համակարգը կամ ծրագիրը ուղարկում է հարցը տեղական DNS ռեզոլվերին (սովորաբար՝ ինտերնետ ծառայողից կամ տեղական ռոուտերից/համակարգչից):
  3. Ռեզոլվերի կեշը: Ռեզոլվերը նախ ստուգում է իր տեղական կեշը: Եթե գտնում է IP հասցեն, այն վերադարձնում է հաճախորդին: Սա արագացնում է գործընթացը:
  4. Հատուկ (Root) DNS սերվերներ: Եթե գրանցում չկա, ռեզոլվերը ուղարկում է հարցը 13 հատուկ (արմատային) DNS սերվերներից մեկին (նշված կետով .): Այս սերվերները գիտեն, թե որտեղ գտնել TLD (Top-Level Domain) սերվերները:
  5. TLD (Top-Level Domain) DNS սերվերներ: Հատուկ սերվերը ուղղորդում է ռեզոլվերին դեպի TLD սերվերը, որը պատասխանատու է բարձր մակարդակի դոմենների համար (օրինակ, .com, .org, .ru):
  6. Հավաստագրված (Authoritative) DNS սերվերներ: TLD սերվերը ուղղորդում է ռեզոլվերին դեպի հավաստագրված DNS սերվերը, որը պատասխանատու է կոնկրետ դոմենին (օրինակ, google.com): Այս սերվերը պահում է DNS գրառումները:
  7. Հավաստագրված սերվերի պատասխան: Հավաստագրված սերվերը գտնում է համապատասխան գրառումը (օրինակ, A գրառումը IPv4-ի համար կամ AAAA գրառումը IPv6-ի համար) և վերադարձնում IP հասցեն ռեզոլվերին:
  8. Կեշավորում ռեզոլվերում: Ռեզոլվերը ստանում է IP հասցեն, պահում է այն որոշ ժամանակ (TTL - Time To Live) և վերադարձնում հաճախորդին:
  9. Հաճախորդի կապը: Հաճախորդը օգտագործում է ստացված IP հասցեն՝ կապ հաստատելու համար վեբ սերվերի հետ:

DNS սերվերները պահում են տարբեր տեսակի գրառումներ:

  • A: Դոմենային անունը փոխարկում է IPv4 հասցե:
  • AAAA: Դոմենային անունը փոխարկում է IPv6 հասցե:
  • CNAME: Ստեղծում է այլ դոմենային անունի մականուն:
  • MX: Հաստատում է էլեկտրոնային փոստի սերվերները, որոնք պատասխանատու են դոմենին:
  • NS: Նշում է հավաստագրված DNS սերվերները դոմենին:
  • PTR: IP հասցեն փոխարկում է դոմենային անուն (օգտագործվում է հակադարձ DNS հարցումներում):
# Օրինակ DNS հարցում dig-ով
dig google.com A
; <<>> DiG 9.16.1-Ubuntu <<>> google.com A
;; գլոբալ ընտրանքներ: +cmd
;; Պատասխան ստացվեց:
;; ->>HEADER<<- հարցում: QUERY, կարգավիճակ: NOERROR, id: 42650
;; նշաններ: qr rd ra; Հարցում: 1, Պատասխան: 1, Հավաստագրված: 0, Ավելացված: 1

;; OPT PSEUDOSECTION:
; EDNS: տարբերակ: 0, նշաններ:; udp: 65494
;; Հարցման բաժին:
;google.com.                    IN      A

;; Պատասխան բաժին:
google.com.             300     IN      A       172.217.16.142

;; Հարցման ժամանակը: 42 մվ
;; Սերվեր: 127.0.0.53#53(127.0.0.53)
;; Երբ: Մտ 26 հոկտեմբեր 2023 10:00:00 UTC
;; Հաղորդագրության չափը  rcvd: 55

Այս տարածված և հիերարխիկ մոտեցումը դարձնում է DNS-ը մաշտաբային և դիմացկուն համակարգ։