DNS Bölgesi

Protokoller ve Standartlar
Belirli bir kuruluş veya yönetici tarafından yönetilen DNS ad alanının bir bölümü.
← Sözlüğe Dön

DNS Bölgesi Nedir?

DNS bölgesi, belirli bir kuruluş veya yönetici tarafından yönetilen DNS ad alanının ayrı bir bölümüdür. Bir bölge, bir ya da daha fazla alan adına ait DNS kayıtlarını içerir ve yetkili ad sunucuları tarafından sunulur. Alan adı DNS ağacındaki bir ad iken bölge, sorguları hangi ad sunucularının yanıtlamaktan sorumlu olduğunu belirleyen idari sınırdır.

Alan Adı ile Bölge Arasındaki Fark

Bu ayrımı anlamak kritik önem taşır:

Alan adı

Alan adı, DNS hiyerarşisindeki bir addır:

example.com (domain)

└── www.example.com (subdomain)

└── blog.example.com (subdomain)

└── api.example.com (subdomain)

Bölge

Bölge, kayıtlar üzerindeki idari denetim alanıdır:

Alan adı ve alt alan adları için tek bölge:
example.com zone contains:

- example.com

- www.example.com

- blog.example.com

- api.example.com

Managed by: ns1.example.com, ns2.example.com

Yetkilendirilmiş alt alan adı bölgesi:
example.com zone contains:

- example.com

- www.example.com

- Delegation: api.example.com → different nameservers

api.example.com zone (separate) contains:

- api.example.com

- v1.api.example.com

- v2.api.example.com

Managed by: ns1.apihost.com, ns2.apihost.com

Bölge Bileşenleri

Bölge dosyası

Bir bölgeye ait tüm DNS kayıtlarını içeren metin dosyasıdır:

; example.com zone file

$TTL 3600

@ IN SOA ns1.example.com. admin.example.com. (

2024010101 ; Serial

7200 ; Refresh

3600 ; Retry

1209600 ; Expire

3600 ; Minimum TTL

)

; Nameserver records

@ IN NS ns1.example.com.

@ IN NS ns2.example.com.

; A records

@ IN A 203.0.113.50

www IN A 203.0.113.50

blog IN A 203.0.113.51

; MX records

@ IN MX 10 mail.example.com.

mail IN A 203.0.113.52

; CNAME records

ftp IN CNAME www.example.com.

; TXT records

@ IN TXT "v=spf1 include:_spf.google.com ~all"

SOA kaydı (Yetki başlangıcı)

Her bölgede tam olarak bir SOA kaydı bulunmalıdır:

example.com.  IN  SOA  ns1.example.com. admin.example.com. (

2024010101 ; Serial

7200 ; Refresh

3600 ; Retry

1209600 ; Expire

3600 ; Minimum TTL

)

SOA alanları:
AlanAmaçÖrnek değer
Primary NSBirincil ad sunucusuns1.example.com
Admin Emailİletişim (@ → .)admin.example.com ([email protected])
SerialBölge sürüm numarası2024010101
Refreshİkincil NS denetim aralığı7200s (2 hours)
RetryYenileme başarısız olursa yeniden deneme aralığı3600s (1 hour)
Expireİkincil NS'nin vazgeçme süresi1209600s (14 days)
Minimum TTLNegatif önbellekleme süresi3600s (1 hour)

NS kayıtları (ad sunucuları)

Bölge için hangi sunucuların yetkili olduğunu belirtir:

example.com.  IN  NS  ns1.example.com.

example.com. IN NS ns2.example.com.

Bu kayıtlar, dünyanın bu bölgedeki kayıtlar için hangi sunuculara sorgu göndereceğini bildirir.

Bölge Türleri

Birincil bölge (ana)

Bölge kayıtlarının düzenlendiği yetkili kaynaktır:

ns1.example.com (primary)

→ Zone file edited here

→ Changes made directly

→ Notifies secondaries of updates

İkincil bölge (yedek)

Birincil bölgeden çoğaltılan salt okunur kopyalardır:

ns2.example.com (secondary)

→ Retrieves zone data from primary

→ Cannot be edited directly

→ Automatically syncs based on SOA refresh interval

Bölge aktarımı (AXFR):
1. Secondary checks SOA serial number

2. If primary serial is higher → request full zone transfer

3. Primary sends entire zone

4. Secondary updates its copy

Artımlı aktarım (IXFR):
1. Secondary requests only changes since last serial

2. Primary sends diff

3. More efficient for large zones with small changes

İleri bölge

Alan adlarını IP adreslerine eşler (en yaygın kullanım):

example.com → 203.0.113.50

www.example.com → 203.0.113.50

Ters bölge

IP adreslerini alan adlarına eşler (PTR kayıtları):

50.113.0.203.in-addr.arpa → example.com

Şu amaçlarla kullanılır:

Bölge Yetkilendirmesi

Yetkilendirme, alt alan adları için ayrı bölgeler oluşturur:

Üst bölge (example.com)

; example.com zone

@ IN A 203.0.113.50

www IN A 203.0.113.50

; Delegate api.example.com to different nameservers

api IN NS ns1.apihost.com.

api IN NS ns2.apihost.com.

; Glue records (if needed)

ns1.api IN A 198.51.100.1

ns2.api IN A 198.51.100.2

Yetkilendirilmiş bölge (api.example.com)

Farklı ad sunucularında bulunan tamamen ayrı bir bölge dosyasıdır:

; api.example.com zone (on ns1.apihost.com)

@ IN A 198.51.100.10

v1 IN A 198.51.100.11

v2 IN A 198.51.100.12

Neden yetkilendirme yapılır?

Bölge Yönetimi

Seri numarası yönetimi

Seri numaraları bölge sürümlerini izler (genellikle YYYYMMDDnn biçiminde):

2024010101  ; January 1, 2024, version 01

2024010102 ; January 1, 2024, version 02

2024010201 ; January 2, 2024, version 01

Kritik kural: Her değişiklikte seri numarası artırılmalıdır, aksi halde ikincil sunucular güncellenmez.

Bölge aktarımı güvenliği

Sorun: Bölge aktarımları tüm DNS kayıtlarını açığa çıkarır Çözüm: Bölge aktarımlarını yetkili ikincil sunucularla sınırlandırın BIND yapılandırması:
zone "example.com" {

type master;

file "/var/named/example.com.zone";

allow-transfer { 203.0.113.52; 203.0.113.53; }; // Secondary IPs only

notify yes;

};

TSIG (İşlem imzası): Paylaşılan anahtarlarla bölge aktarımlarının kimliğini doğrulayın:
key "transfer-key" {

algorithm hmac-sha256;

secret "base64-encoded-key";

};

allow-transfer { key transfer-key; };

Bölge Yapılandırmasını Denetleme

SOA kaydını sorgulama

dig example.com SOA

; ANSWER SECTION:

example.com. 3600 IN SOA ns1.example.com. admin.example.com. (

2024010101 7200 3600 1209600 3600 )

NS kayıtlarını sorgulama

dig example.com NS

; ANSWER SECTION:

example.com. 86400 IN NS ns1.example.com.

example.com. 86400 IN NS ns2.example.com.

Bölge aktarımı isteme (AXFR)

dig @ns1.example.com example.com AXFR

# If allowed, returns entire zone

# If denied, returns transfer failed

Bilgi ifşasını önlemek için çoğu herkese açık ad sunucusu AXFR isteklerini reddeder.

Yaygın Bölge Yapılandırmaları

Basit web sitesi

example.com zone:

@ A 203.0.113.50

www A 203.0.113.50

@ MX 10 mail.example.com

mail A 203.0.113.51

@ TXT "v=spf1 mx -all"

Çok hizmetli bölge

example.com zone:

@ A 203.0.113.50

www A 203.0.113.50

blog CNAME hosting.wordpress.com.

shop CNAME shops.myshopify.com.

cdn CNAME d111111abcdef8.cloudfront.net.

@ MX 10 aspmx.l.google.com.

Yetkilendirilmiş alt alan adları

example.com zone:

@ A 203.0.113.50

www A 203.0.113.50

; Delegate api to AWS Route 53

api NS ns-123.awsdns-01.com.

api NS ns-456.awsdns-02.net.

; Delegate cdn to Cloudflare

cdn NS ns1.cloudflare.com.

cdn NS ns2.cloudflare.com.

Bölge Dosyası İçin En İyi Uygulamalar

1. Seri numarasını her zaman artırın: Her değişiklikten sonra artırılmazsa ikincil sunucular güncellenmez

2. Tarih tabanlı seri numaraları kullanın: Açıklık için YYYYMMDDnn biçimini kullanın

3. Bölge aktarımlarını sınırlandırın: Yalnızca yetkili ikincil sunuculara izin verin

4. Birden fazla ad sunucusu kullanın: En az 2, tercihen farklı ağlarda olsun

5. Uygun TTL değerleri belirleyin: Önbellekleme faydası ile güncelleme hızını dengeleyin

6. Uygulamadan önce test edin: Yüklemeden önce bölge dosyası söz dizimini doğrulayın

7. Bölge aktarımlarını izleyin: İkincil sunucuların eşitlendiğinden emin olun

8. Yetkilendirmeleri belgeleyin: Hangi bölgelerin nereye devredildiğini not edin

9. Bölge dosyalarını yedekleyin: Düzenli yedekler veri kaybını önler

10. Sürüm denetimi kullanın: Bölge dosyası değişikliklerini zaman içinde izleyin

Gelişmiş Bölge Özellikleri

DNSSEC (Bölge imzalama)

Bölge kayıtlarını kriptografik olarak imzalayın:

example.com.  IN  A       203.0.113.50

example.com. IN RRSIG A 8 2 3600 (

signature-data-here )

Önbellek zehirlenmesine ve veri kurcalamaya karşı koruma sağlar.

Dinamik DNS (DDNS)

Programatik bölge güncellemelerine izin verin:

# Update A record dynamically

nsupdate -k Kupdate.key <<EOF

server ns1.example.com

update delete www.example.com A

update add www.example.com 300 A 203.0.113.51

send

EOF

Şu amaçlarla kullanışlıdır:

Bölge görünümleri (Split Horizon DNS)

İstemci IP adresine göre farklı bölge verileri sunun:

Internal clients: example.com → 10.0.0.50 (internal)

External clients: example.com → 203.0.113.50 (public)

Kullanım alanları:

Bölge Sorunlarını Giderme

Bölge aktarımı hataları

Belirti: İkincil sunucular eşitlenmiyor Denetlenecekler:
# Check if primary allows transfers

dig @ns1.example.com example.com AXFR

# Check secondary logs for errors

tail -f /var/log/named.log

Çözümler:

Seri numarası artmıyor

Belirti: Değişiklikler ikincil sunuculara yayılmıyor Çözüm: Her bölge düzenlemesinde seri numarasını artırın

Yetkilendirme çalışmıyor

Belirti: Alt alan adı çözümlenmiyor Denetlenecekler:
# Verify delegation

dig example.com NS

dig api.example.com NS

# Should show different nameservers for delegated subdomain

Çözümler:

Dağıtık DNS yönetiminin temeli olan DNS bölgelerinin yapısını, yetkilendirmeyi ve yönetimini anlamak, her büyüklükteki kuruluş için DNS'i etkili biçimde tasarlamanızı sağlar.

Bu Bilgiyi Uygulamaya Koyun

Alan adı uygunluğunu, durumunu ve daha fazlasını kontrol etmek için DomScan API'sini kullanın.