Network
DNS
DNS (Domain Name System) internet əsaslarından biridir və domain adlarını IP ünvanlarına çevirən paylanmış sistemdir. İnternetdəki bütün əlaqələr IP ünvanları ilə həyata keçirilir, lakin DNS sayəsində biz asan yadda qalan domain adları istifadə edə bilərik.
Nə üçün lazımdır?
- İnsanlar üçün asan: IP əvəzinə yadda qalan domain adları (
google.comvs142.250.185.46) - Mərkəzləşdirilmiş idarəetmə: Domain adlarının vahid sistemlə idarə edilməsi
- Scalability: Milyardlarla domain adının səmərəli idarə edilməsi
- Redundancy: Çoxsaylı serverlər sayəsində etibarlılıq
- Load Distribution: DNS servers arasında yük paylaşdırması
- Geographic Routing: İstifadəçini yaxın serverlərə yönləndirmə
DNS Komponentləri
- DNS Resolver: İstifadəçi tərəfindən domain sorğularını həll edən komponent. Sürətli cavab verir. Cache-ləmə imkanı. ISP tərəfindən təqdim edilir
- Root Name Servers: DNS iyerarxiyasının ən üst səviyyəsi (13 əsas root server). Bütün domain sorğularının başlanğıcı. Yüksək etibarlılıq. Dünya üzrə paylanmış
- TLD Name Servers: Top-Level Domain (.com, .org, .az) serverleri. Domain uzantılarını idarə edir. Hər TLD üçün ayrıca. Yüksək yük daşıyır
- Authoritative Name Servers: Konkret domainlərin məlumatlarını saxlayan serverlər. Son cavabı verir. Domain sahibi tərəfindən idarə edilir. Dəqiq məlumat saxlayır
Resource Record Növləri
- A Record: IPv4 ünvanını göstərir. Ən çox istifadə olunan növ. Sadə konfiqurasiya. IPv6 dəstəyi yoxdur
- AAAA Record: IPv6 ünvanını göstərir. Gələcək üçün vacib. IPv6 dəstəyi. Az istifadə edilir
- CNAME: Başqa domain adına yönləndirmə. Subdomain idarəsi üçün. Çevik konfiqurasiya. Əlavə sorğu lazımdır
- NS Record: Nameserver məlumatını göstərir. Domain idarəsini həvalə edir. DNS iyerarxiyası üçün. Dəqiqlik vacibdir
- MX Record: Mail server məlumatını saxlayır. Email çatdırılması üçün. Prioritet sistemi. Çoxsaylı server dəstəyi
- TXT Record: Mətni məlumatları saxlayır. SPF, DKIM üçün istifadə. Çox çevik. Təhlükəsizlik üçün vacib
Query Növləri
- Recursive Query: DNS resolver bütün işi özü görür və son cavabı verir. İstifadəçi üçün sadə. Cache imkanı. Server resursları çox istəyir
- Iterative Query: Hər server növbəti serverin ünvanını verir. Daha səmərəli. Az server yükü. Çoxsaylı sorğu lazımdır
- Non-Recursive Query: Cache-də mövcud məlumat sorğulanır. Çox sürətli. Şəbəkə trafikini azaldır. Cache miss halında faydasız
Protokollar
- UDP: DNS-in əsas protokolu. Sürətli, yüngül. Əlaqəsizdir. 512 byte məhdudluğu
- TCP: Böyük cavablar üçün istifadə edilir. Etibarlı ötürmə. Zone transfer üçün. Yavaş başlanğıc
Cache Mexanizmi
- Browser Cache: İstifadəçinin brauzeri məlumatı saxlayır. Çox sürətli. TTL məhdudluğu. İstifadəçi kontrolu
- OS Cache: Əməliyyat sistemi səviyyəsində cache. Bütün tətbiqlər istifadə edir. Sistem yenidən başlanana qədər. Flushing imkanı
- ISP Cache: Internet provayderin DNS cache-i. Bir çox istifadəçi faydalanır. Regional məlumat. ISP kontrolunda
- Authoritative Cache: DNS serverin öz cache-i. Sorğu sayını azaldır. TTL əsasında. Server performansını artırır
Əsas Problemlər
- DNS Spoofing: Saxta DNS cavabları ilə istifadəçini yanlış sayta yönləndirmə → DNSSEC protokolunu aktiv et
- DNS Hijacking: DNS sorğularının başqa serverlərə yönləndirilməsi → Təhlükəsiz DNS serverlər işlət (CloudFlare, Google)
- Cache Poisoning: DNS cache-inin saxta məlumatla çirkləndirilməsi → Güvənli resolver və DNSSEC
- DDoS Attacks: DNS serverlərinin yükləndirilməsi → Rate limiting və Anycast network
- Slow Resolution: DNS sorğularının yavaş cavablanması → Multiple resolvers və local cache
- Single Point of Failure: Tək DNS serverin nasaz olması → Secondary DNS və monitoring