Junior
Ինչպես է աշխատում DNS-ը?
sobes.tech AI
Պատասխան AI-ից
DNS, կամ Դոմենային Անվան Համակարգը, մի տարածված տվյալների բազա է, որը փոխարկում է մարդկարդացվող դոմենային անունները (օրինակ, google.com) IP հասցեների (օրինակ, 172.217.16.14)՝ որոնք հասկանում են համակարգիչները:
Փոխարկման (լուծման) գործընթացը դոմենային անունը IP հասցե դարձնելու համար մի քանի քայլ է, որոնք իրականացվում են տարբեր բաղադրիչների միջև:
- Օգտատիրոջ հարցումը: Օգտատերը մուտքագրում է դոմենային անունը բրաուզերում:
- Ռեզոլվեր (DNS Resolver): Օպերացիոն համակարգը կամ ծրագիրը ուղարկում է հարցը տեղական DNS ռեզոլվերին (սովորաբար՝ ինտերնետ ծառայողից կամ տեղական ռոուտերից/համակարգչից):
- Ռեզոլվերի կեշը: Ռեզոլվերը նախ ստուգում է իր տեղական կեշը: Եթե գտնում է IP հասցեն, այն վերադարձնում է հաճախորդին: Սա արագացնում է գործընթացը:
- Հատուկ (Root) DNS սերվերներ: Եթե գրանցում չկա, ռեզոլվերը ուղարկում է հարցը 13 հատուկ (արմատային) DNS սերվերներից մեկին (նշված կետով
.): Այս սերվերները գիտեն, թե որտեղ գտնել TLD (Top-Level Domain) սերվերները: - TLD (Top-Level Domain) DNS սերվերներ: Հատուկ սերվերը ուղղորդում է ռեզոլվերին դեպի TLD սերվերը, որը պատասխանատու է բարձր մակարդակի դոմենների համար (օրինակ,
.com,.org,.ru): - Հավաստագրված (Authoritative) DNS սերվերներ: TLD սերվերը ուղղորդում է ռեզոլվերին դեպի հավաստագրված DNS սերվերը, որը պատասխանատու է կոնկրետ դոմենին (օրինակ,
google.com): Այս սերվերը պահում է DNS գրառումները: - Հավաստագրված սերվերի պատասխան: Հավաստագրված սերվերը գտնում է համապատասխան գրառումը (օրինակ, A գրառումը IPv4-ի համար կամ AAAA գրառումը IPv6-ի համար) և վերադարձնում IP հասցեն ռեզոլվերին:
- Կեշավորում ռեզոլվերում: Ռեզոլվերը ստանում է IP հասցեն, պահում է այն որոշ ժամանակ (TTL - Time To Live) և վերադարձնում հաճախորդին:
- Հաճախորդի կապը: Հաճախորդը օգտագործում է ստացված 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-ը մաշտաբային և դիմացկուն համակարգ։