GH GambleHub

DNS marşrutlaşdırma və failover

1) nasazlıq müqavimət DNS rolu

DNS istifadəçinin ilk «marşrutlaşdırıcısıdır». Onun dizaynı asılıdır:
  • Əlçatanlıq (sürətli/etibarlı failover);
  • Performans (geo/latency-routing);
  • Qiymət (regionlararası egress və 3rd-party zənglərin minimuma endirilməsi);
  • Təhlükəsizlik (DNSSEC, anti-hijack, CAA/DMARC/SPF nəzarət).

Açar: Dinamikanın vacib olduğu yerlərdə qısa TTL və sabit zona arxitekturası (public + private, split-horizon).

2) Qeydlər və təcrübə növləri

A/AAAA - əsas ünvanlar; həmişə mümkün olan yerdə IPv6 dərc edin.
CNAME vs ALIAS/ANAME: domen kökündə ALIAS/ANAME (və ya provayder apex-flattening) istifadə edin.
TXT - SPF/DMARC/DKIM, yoxlama; CAA - sertifikat istehsalçılarının məhdudlaşdırılması.
SRV/NS - Discovery xidməti və nümayəndəlik.
SVCB/HTTPS - prioritetləşdirmə və parametrləri ilə müasir alternativ mexanizmdir (ALPN, limanlar).

Tövsiyə: TTL standartlarını siniflərə görə düzəldin (edge/API/statik).

3) Marşrutlaşdırma siyasəti

Weighted (balanslı) - trafikin nəzarət olunan hissələri (kanaryalar/mavi-yaşıl).
Latency-based - ən yaxın gecikmə hovuzunun seçimi.
Geo-routing - ölkə/qitə/region üzrə; data residency üçün vacibdir.
Failover (primary/secondary) - aktiv monitorinq və keçid.
Multi-value - bir neçə A/AAAA; müştəri özü seçir (health-checks əvəz etmir).
Proximity/ASN routing - bəzi provayderlərdə: müştəri şəbəkəsi vasitəsilə.

Birləşdirin: geo → latency → weight → health.

4) TTL, caching və təbliğat

TTL API/dinamik: 30-120 s (faylover sürəti və yük arasında balans).
Static/CDN: 1–24 ч.
Mənfi TTL (SOA 'Minimum') - ≤ 60-300 s, əks halda NXDOMAIN «yapışqan» olacaq.
Unutmayın: rezolverlər dərhal cache atmaq məcburiyyətində deyil; «çirkli quyruq» nəzərə.

5) Sağlamlıq və end nöqtələrinin yoxlanılması

Bir neçə regiondan sağlamlıq-yoxlamalar: TCP/443 + HTTP 2xx/3xx və lambda-yoxlama biznes meyarları (məsələn, uğurlu '/sağlamlıq? deep = true 'asılılıq yoxlaması ilə).
Sintetika (RUM/active): Əsas marşrutlar üzrə API testləri, TLS/OCSP yoxlaması, DNSSEC yoxlamaları.
Eksponat '/ready '(dərin) və '/live' (səthi); DNS hovuzu/ready-ə bağlanır.

6) Açıq vs xüsusi DNS (split-horizon)

Public zone - müştəri girişi.
Private zone - private endpoints (VPC/VNet, on-prem) üçün daxili qətnamə.
Conditional forwarding между on-prem ↔ cloud, region ↔ region.
Adları: 'api. <brand>.<region>.internal. corp` и `api. <brand>.com`.

7) Təhlükəsizlik: DNSSEC və domen siyasəti

DNSSEC: zonanın imzasını (KSK/ZSK) daxil edin, açarların rotasiyasını və etimad zəncirini izləyin.
CAA: icazə verilən CA siyahıları; alertlər üçün 'iodef' daxil edin.
SPF/DMARC/DKIM: poçt nüfuzu və fişinq qorunması.
DNS provayderinin qeydiyyatında registrar-lok və MFA; dəyişiklik jurnalı (WORM-saxlama).

8) failover dizayn

8. 1 Modellər

Active-Active: iki + sağlam hovuz; latency/weight vasitəsilə balans, health-checks qeyri-sağlam istisna.
Active-Passive: əsas hovuz + ehtiyat (0% qəza əvvəl çəki).
Regional ring: yerli qəza zamanı «qonşu» bölgəyə trafik.
Degraded mode: «yüngül» sayta giriş/backend mövcud deyilsə lending.

8. 2 Addım-addım səhnə

1. Monitorinq '/ready 'deqradasiyasını qeyd edir.
2. DNS cavabları dəyişir (hovuz və ya çəki dəyişir).
3. Trafik sağlam bölgəyə gedir, TTL sürəti təyin edir.
4. Sabitləşmədən sonra - grace-period (15-30 dəq) və yalnız sonra tərəzi geri.

9) Konfiqurasiya nümunələri

9. 1 AWS Route 53 — latency + health + weighted

hcl
Two latency aliases for different regions resource "aws_route53_record" "api_latency_eu" {
zone_id = var. zone_id name  = "api. example. com"
type  = "A"
set_identifier = "eu1"
latency_routing_policy { region = "eu-central-1" }
alias { name = aws_lb. api_eu. dns_name zone_id = aws_lb. api_eu. zone_id evaluate_target_health = true }
health_check_id = aws_route53_health_check. api_eu. id ttl = 60
}

resource "aws_route53_record" "api_latency_us" {
zone_id = var. zone_id name  = "api. example. com"
type  = "A"
set_identifier = "us1"
latency_routing_policy { region = "us-east-1" }
alias { name = aws_lb. api_us. dns_name zone_id = aws_lb. api_us. zone_id evaluate_target_health = true }
health_check_id = aws_route53_health_check. api_us. id ttl = 60
}

Canary in EU: 10% of the weight of the resource "aws_route53_record" "api_weighted_canary" {
zone_id = var. zone_id name  = "api. example. com"
type  = "A"
set_identifier = "eu1-canary"
weighted_routing_policy { weight = 10 }
alias { name = aws_lb. api_eu_canary. dns_name zone_id = aws_lb. api_eu_canary. zone_id evaluate_target_health = true }
ttl = 30
}

9. 2 Cloudflare - geo/ASN və failover pool (ideya)

Load Balancer Pools c health-checks (HTTP/TCP), Geo Steering (qitələr/ölkələr) və Session affinity ilə Load Balancer.
Fallback: Page Rule/Transform Rule 5xx piklərdə sadələşdirilmiş arxa planda.

9. 3 Azure/GCP

Azure Traffic Manager: Priority/Weighted/Performance/Geographic.
Google Cloud Load Balancing + Cloud DNS policy: geo-policy + health-checks через External HTTP(S) LB.

10) Müşahidə və SLO DNS

SLI: TTL daxilində success-rate rezolver, 95-ci persentil rezolver vaxtı, təzə (qeyri-stale) cavabların payı.
SLO: məsələn, '99. 95% uğurlu cavablar ≤ 100 ms.
Metriklər: NXDOMAIN-rate, SERVFAIL-rate, health-state hovuzları, regionlar üzrə trafik payı, kanaryaların payı.
Exemplars: SLI-ni sintetikada 'trace _ id' vasitəsilə HTTP izləri ilə əlaqələndirin.

11) Test və əməliyyat

Müxtəlif ASN/regionlardan sintetika (RIPE Atlas, Catchpoint, k6-DNS).
DNSSEC-i yoxlamaq üçün dnsviz/' delv '; anomaliyalar zamanı' dig + trace '.
Staging zona ('stg. example. com ') feyloverin məşqləri üçün; rehearsal script çəki/prioritet dəyişir və geri qayıdır.
Runbook: kim və necə əl ilə artırır/çəkisini azaldır, hovuzu necə söndürmək olar, necə «freeze» etmək olar.

12) Antipattern

TTL = 3000 + kritik A/AAAA → yavaş/xaotik feylover.
No health-checks və ya yoxlama yalnız TCP-port biznes invariantları olmadan.
Bir dəstə CNAME zəncirləri → yavaş rezolves, cash-xaos.
secondary/axfr ehtiyat olmadan yeganə DNS provayderi.
DNSSEC tələbi ilə imzalanmamış zona; qeyri-aktual CAA.
Şəxsi IP-ləri göstərən qeydlər/DB.

13) iGaming/Maliyyə Xüsusiyyətləri

Yurisdiksiyalar: geo-/country-routing tələblərə cavab vermək üçün (yerli domen/cəbhəyə yönləndirmə).
PSP/KYC: ayrı TTL və feylover siyasətləri ilə ayrılmış alt domenlər; ehtiyat PSP sürətli transfer.
Məsuliyyətli oyun: hüquqi səhifələri olan alt domenlər həmişə mövcuddur (ehtiyat statik/CDN).
Audit: WORM-saxlama zonasında dəyişikliklər jurnalı, dəyişikliklərin imzası və müntəzəm review.
Blok vərəqləri: Regionlar üzrə DNS uyğunluq qaydaları (edge-filtrasiya + DNS-marşrutlaşdırma).

14) Prod hazırlıq yoxlama siyahısı

  • Siniflər üzrə TTL profilləri; mənfi TTL ≤ 300 s.
  • İki müstəqil DNS anycast şəbəkəsi (primary/secondary), MFA/lok registrator.
  • Siyasət: geo/latency/weight + health-checks bir neçə regiondan.
  • DNSSEC daxil, CAA/DMARC/DKIM/SPF aktualdır.
  • Split-horizon (public/private), daxili trafik üçün xüsusi zonalar.
  • Feylover/geri Runbook, rehearsal skript, kanarya domenləri.
  • SLI/SLO monitorinqi, NXDOMAIN/SERVFAIL/RTT artımı.
  • Stajinq zonası və mütəmadi «təlimlər» failover.
  • iGaming üçün: yurisdiksiya marşrutu, PSP/KYC üçün ayrı-ayrı domenlər, dəyişməz audit.

15) TL; DR

Birləşdirilmiş siyasət qurun: geo/latency + health-checks + çəki, TTL 30-120 ilə dinamik. public/private (split-horizon) bölmək, DNSSEC və CAA daxil, secondary DNS saxlayın. rehearsal feylover edin və SLI/SLO DNS-ni müşahidə edin. iGaming üçün ayrı qaydalar və WORM-də dəyişikliklərin loqotipi ilə PSP/KYC domenlərinin yurisdiksiyalarını və rezervasiyalarını nəzərə alın.

Contact

Bizimlə əlaqə

Hər hansı sualınız və ya dəstək ehtiyacınız varsa — bizimlə əlaqə saxlayın.Həmişə köməyə hazırıq!

Telegram
@Gamble_GC
İnteqrasiyaya başla

Email — məcburidir. Telegram və ya WhatsApp — istəyə bağlıdır.

Adınız istəyə bağlı
Email istəyə bağlı
Mövzu istəyə bağlı
Mesaj istəyə bağlı
Telegram istəyə bağlı
@
Əgər Telegram daxil etsəniz — Email ilə yanaşı orada da cavab verəcəyik.
WhatsApp istəyə bağlı
Format: ölkə kodu + nömrə (məsələn, +994XXXXXXXXX).

Düyməyə basmaqla məlumatların işlənməsinə razılıq vermiş olursunuz.