DNS menejmenti va marshrutlash
Qisqacha xulosa
DNS - «nomlar darajasi routeri». Foydalanuvchilar kerakli frontlarga/shlyuzlarga qanchalik tez va oldindan bilishi savodli TTL, zonalar va siyosatchilarga bog’liq. Minimal to’plam: Anycast-provayder, sog’lom TTL, avtomatik failover bilan health-checks, DNSSEC + CAA, IaC-boshqaruv va kuzatish (javoblar va rezolv vaqti bo’yicha SLO).
Asosiy arxitektura
Nufuzli serverlar (zones) - kompaniyaning domenlari uchun javob beradi.
Rekursiv rezolverlar (clients/ISP/o’z) - so’raydi → TLD → nufuzli ildiz.
Anycast - ko’plab PoP’larda bir xil IP manzillari: yaqin PoP tezroq javob beradi va baxtsiz hodisalarni boshdan kechiradi.
Zonalar va vakolat berish
Nufuzli server provayderlariga →’NS’domenining ildiz zonasi.
Poddomenlar (masalan,’api. example. com’) ni mustaqillik uchun alohida’NS ’/provayderlarga topshirish mumkin.
Yozuv turlari (minimal)
’A ’/’ AAAA’ - IPv4/IPv6 manzillar.
’CNAME’ - nomiga taxallus; (buning o’rniga provayderlarda ALIAS/ANAME).
’TXT’ - verifikatsiya, SPF, custom-belgilar.
’MX’ - pochta (agar foydalanilsa).
’SRV’ - servislar (SIP, LDAP va h.k.).
’CAA’ - domen uchun sertifikatlarni kim chiqarishi mumkin.
’NS ’/’ SOA’ - vakolat/hudud parametrlari.
’DS’ - DNSSEC kalitlari.
Zona namunasi (parcha)
$TTL 300
@ IN SOA ns1.dns.example. noc.example. (2025110501 3600 600 604800 300)
IN NS ns1.dns.example.
IN NS ns2.dns.example.
@ IN A 203.0.113.10
@ IN AAAA 2001:db8::10 api IN CNAME api-prod.global.example.
_www IN CNAME cdn.example.net.
_caa IN CAA 0 issue "letsencrypt.org"
TTL va keshlash
Qisqa TTL (30-300 c) - dinamika uchun (API-frontlar, failover).
Oʻrtacha TTL (300-3600 c) - CDN/statika uchun.
Uzoq TTL (1 kun ≥) - kamdan-kam o’zgarishlar uchun (MX/NS/DS).
Migratsiyani rejalashtirayotganda, TTLni 24-72 soat oldin pasaytiring.
Negative Caching TTL (NXDOMAIN) ni hisobga oling:’SOA MINIMUM’boshqariladi.
Marshrutlash siyosati (GSLB darajasi)
Failover (active/passive) - asosiy IP’ni feyl health-checkom bilan beramiz, keyin zaxira.
Weighted (traffic-split) - trafikni taqsimlash (masalan, canary 5/95).
Latency-based tarmoq kechikishi bo’yicha eng yaqin RO/mintaqadir.
Geo-routing - mamlakat/qitʼa boʻyicha; mahalliy qonunlar/PCI/PII uchun foydalidir.
Multivalue - bir nechta A/AAAA’lar.
Kengashlar
Tanqidiy API uchun latency-based + health-checks + qisqa TTLni ulang.
Silliq relizlar uchun - weighted va ulushning asta-sekin o’sishi.
Mintaqaviy cheklovlar uchun - geo va ruxsat etilgan provayderlar ro’yxati.
Salomatlik va avtomatik almashtirish
Health-checks: HTTP (S) (200 OK, tana/sarlavha), TCP (port), ICMP.
Obroʻ/fingerprint: nafaqat portni, balki backend’a (versiya, build-id) ning toʻgʻriligini ham tekshiring.
Sezuvchanlik chegarasi:’N’flappingdan qochish uchun ketma-ket muvaffaqiyatli/muvaffaqiyatsiz tekshiruvlar.
Metrikni oling: healthy-endpoint ulushi, reaksiya vaqti, o’zgarishlar soni.
Xususiy zonalar va split-horizon
Private DNS: VPC/VNet/On-prem ichki zonalari (masalan,’svc. local. example`).
Split-horizon: ichki va tashqi mijozlar uchun turli javoblar (ichki IP vs ommaviy).
Sizib chiqishdan himoya qilish: «ichki» nomlardan tashqarida foydalanmang; xususiy zonalar ommaviy provayderlar orqali birlashmasligini tekshiring.
DNS xavfsizligi
DNSSEC: zonalar imzosi (ZSK/KSK), ota-ona zonasida’DS’e’lon qilish, kalitlar rolloveri.
CAA: TLS sertterlarini ishonchli CA bilan cheklang.
Rekursorlar uchun DoT/DoH - mijozlar so’rovlarini shifrlash.
ACL/Rate-limit avtoritativ: aks ettiruvchi DDoS/ANY-soʻrovlardan himoya qilish.
Subdomain Takeover: «osilgan» CNAME/ALIASni masofadagi xizmatlarga muntazam ravishda skanerlang.
NS/Glue yozuvlari: registrator va DNS provayderi o’rtasidagi konsistentlik.
SLO va kuzatish
SLO (misollar)
Avtoritativ javoblarning mavjudligi: ≥ 99. 99 %/30 kun.
Repursorga javob berish vaqti (p95): ≤ 50 ms lokal/ ≤ 150 ms global.
Health-checks muvaffaqiyati: ≥ 99. 9%, soxta ishlanmalar - ≤ 0. 1%.
O’zgarishdan keyin yig’ilish vaqti (propagation): TTL 60 soatda 5 daqiqadan ≤
Metrika
RCODE (NOERROR/NXDOMAIN/SERVFAIL), QPS, p50/p95 javob vaqti.
IPv6/IPv4 ulushi, EDNS hajmi, Truncated (TC) javoblar.
Health-check, flapping, DNSSEC imzolari xatosi.
So’rovlarning DoH/DoT ulushlari (agar siz rekursorni nazorat qilsangiz).
Logi
So’rovlar (qname, qtype, rcode, client ASN/geo), anomaliyalar (ANY-bo’ronlar, bir prefiks bo’yicha tez-tez NXDOMAIN).
IaC va avtomatlashtirish
Terraform/DNS provayderlari: hududlarni omborxonada saqlang, PR-revyu, reja/appruv.
ExternalDNS (K8s): Ingress/Service dasturidan yozuvlarni avtomatik ravishda yaratish/olib tashlash.
Oraliq muhit:’dev. ’/’ stg.’prefikslari va DNS provayderining alohida akkauntlari.
Terraform (soddalashtirilgan misol)
hcl resource "dns_a_record_set" "api" {
zone = "example.com."
name = "api"
addresses = ["203.0.113.10","203.0.113.20"]
ttl = 60
}
resource "dns_caa_record" "caa" {
zone = "example.com."
name = "@"
ttl = 3600 record {
flags = 0 tag = "issue"
value = "letsencrypt.org"
}
}
Rezolverlar, kesh va unumdorlik
Oʻz rekursorlari (Unbound/Knot/Bind) ilovalarga yaqinroq → p95 dan kichik.
Avtoritet mavjud boʻlmaganda, serve-stale xabarlarini yoqing.
EDNS (0) va toʻgʻri bufer oʻlchami, DNS Cookies, minimal-responses.
Rezolv va ilova trafigini (QoS) ajrating.
Negative TTLni hisobga oling: «sindirilgan» mijozdan ko’p NXDOMAIN’lar keshni to’ldirishi mumkin.
DDoS va barqarorlik
Global PoP va bot-trafik agregatsiyasi bilan Anycast-provayder.
Response Rate Limiting (RRL) avtoritativ, amplification himoyasi.
’ANY’ ni taqiqlash, EDNS-buferni cheklash, «og’ir» turdagi filtrlar.
Zonalar segmentatsiyasi: eng yaxshi DDoS-qalqoni bo’lgan provayderda - tanqidiy; kamroq tanqidiy - alohida.
Rezerv provayder (secondaries) s’AXFR/IXFR’va avtomatik NS feyloveri bilan ro’yxatdan o’tkazuvchi darajasida.
Operatsiyalar va jarayonlar
Oʻzgarishlar: PR-review, canary-yozuvlar, keshni isitish (past TTL → deploy → qaytarish TTL).
DNSSEC rolloveri: reglament, derazalar, validlik monitoringi (RFC 8901 KSK/ZSK).
Runbook: PoP qulashi, noto’g’ri NS delegatsiyasi, qulab tushgan health-check, ommaviy SERVFAIL.
DR-reja: muqobil DNS provayderi, tayyor zonalar shablonlari, registratorga kirish, NS almashtirish uchun SLA.
Joriy etish chek-varaqasi
- Ro’yxatdan o’tkazuvchining "NS" ga to’g "ri keladigan ikkita mustaqil avtoritativ provayder/ROr (Anycast).
- TTL strategiyasi: dinamika uchun qisqa, barqaror yozuvlar uchun uzun; negative TTL nazorat ostida.
- Health-checks va siyosat: services profili boʻyicha failover/weighted/latency/geo.
- DNSSEC (KSK/ZSK/DS), «CAA» sertifikatlarni chiqarishni cheklaydi.
- Zonalar uchun IaC, K8s uchun ExternalDNS, alohida muhit/akkauntlar.
- Monitoring: rcode/QPS/latency/propagation, SERVFAIL/imzolar bo’yicha alertlar.
- DDoS: Anycast, RRL, EDNS cheklovlari, roʻyxatlar bloki/ACL.
- 48-72 soatda domen migratsiyasi va TTL pasayishi reglamentlari
- «Osilgan» CNAME/ALIAS, MX/SPF/DKIM/DMARC muntazam auditi (agar pochta ishlatilsa).
Tipik xatolar
Tanqidiy’A/AAAA’uchun juda katta TTL - uzoq migratsiya/feyloverlar.
Bitta DNS/bitta PoP - SPOF provayderi.
DNSSEC/CAA yo’qligi - almashtirish/nazorat qilinmaydigan sertifikatlar xavfi.
Nomaʼlum split-horizon → ichki nomlar chiqib ketadi.
GSLBda health-checks yo’q - qo’llarni o’zgartirish va kechikishlar.
Tashqi xizmatlar uchun unutilgan CNAME → takeover xavfi.
IaC → «qor» ning yo’qligi - qo’lda tuzatishlarda konfiga va xatolar.
iGaming/fintech uchun xususiyatlar
Mintaqaviy versiyalar va PSP: geo/latency-routing, IP/ASN sheriklarining oq ro’yxatlari, shlyuzlarning tezkor failoveri.
Piki (o’yinlar/turnirlar): qisqa TTL, CDN isitish, eventlar uchun alohida nomlar (’event-N. example. com’) bilan tartibga solinadi.
Yuridik to’g "rilik: tanqidiy o’zgarishlar yuz berganda vaqtni va zonalarning versiyasini qayd qiling (audit jurnali).
Antifrod/BOT-himoya: tiebreakers/kapchi/chek-endpoint uchun alohida nomlar; hujumlarda «qora tuynuk» (sinkhole) ga tez chiqish.
Mini pleybuklar
Frontning kanar relizi (weighted):1. `api-canary. example. com’→ 5% trafik; 2) monitorim p95/p99/xatolar; 3) 25/50/100% gacha oshiramiz; 4) tanazzulga uchraganda qisqartiramiz.
Shoshilinch failover:1. TTL 60 s; 2) health-check mintaqani belgiladi down → GSLB javoblardan olib tashladi; 3) tashqi rezolverlarni tekshirish; 4) maqom kommunikatsiyasi.
DNS provayderining migratsiyasi:1. Zonani yangi provayderga import qilish; 2) Eskisini sinxron secondary bilan yoqish; 3) ro’yxatdan o’tkazuvchining’NS’ini «jim» oynaga o’zgartiramiz; 4) SERVFAIL/val-xatolarni kuzatmoqdamiz.
Jami
Ishonchli DNS-kontur - bu Anycast-avtoritetlar + oqilona TTL + salomatlik/kechikish yo’nalishi + DNSSEC/CAA + IaC va kuzatish qobiliyati. Migratsiya va rollover jarayonlarini qayd qiling, zaxira provayderni ushlab turing, doimiy ravishda «osilgan» yozuvlar uchun zonani tekshiring - va foydalanuvchilaringiz hatto eng issiq soatlarda ham kerakli frontlarga kirishadi.