منطقة DNS

البروتوكولات والمعايير
جزء من مساحة أسماء DNS تديره مؤسسة أو مسؤول محدد.
← العودة إلى القاموس

ما هي منطقة DNS؟

منطقة DNS هي جزء مستقل من مساحة أسماء DNS تديره مؤسسة أو مسؤول محدد. تضم المنطقة سجلات DNS لنطاق واحد أو أكثر وتخدمها خوادم أسماء موثوقة. وبينما يكون النطاق اسماً في شجرة DNS، تمثل المنطقة حدّاً إدارياً يحدد خوادم الأسماء المسؤولة عن الإجابة عن الاستعلامات.

النطاق مقارنةً بالمنطقة

من الضروري فهم الفرق بينهما:

النطاق

النطاق اسم في تسلسل DNS:

example.com (domain)

└── www.example.com (subdomain)

└── blog.example.com (subdomain)

└── api.example.com (subdomain)

المنطقة

المنطقة هي نطاق إداري للسجلات:

منطقة واحدة للنطاق والنطاقات الفرعية:
example.com zone contains:

- example.com

- www.example.com

- blog.example.com

- api.example.com

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

منطقة لنطاق فرعي مفوض:
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

مكونات المنطقة

ملف المنطقة

ملف نصي يضم جميع سجلات DNS الخاصة بالمنطقة:

; 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 (بداية السلطة)

يجب أن تحتوي كل منطقة على سجل SOA واحد بالضبط:

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

2024010101 ; Serial

7200 ; Refresh

3600 ; Retry

1209600 ; Expire

3600 ; Minimum TTL

)

حقول SOA:
الحقلالغرضقيمة مثال
خادم الأسماء الأساسيخادم الأسماء الرئيسيns1.example.com
بريد المسؤولجهة الاتصال، مع تحويل @ إلى .admin.example.com ([email protected])
Serialرقم إصدار المنطقة2024010101
Refreshفترة فحص الخادم الثانوي7200 ثانية، ساعتان
Retryفترة إعادة المحاولة عند فشل التحديث3600 ثانية، ساعة
Expireالمدة قبل توقف الثانوي عن الاعتماد على النسخة1209600 ثانية، 14 يوماً
Minimum TTLمدة التخزين السلبي3600 ثانية، ساعة

سجلات NS (خوادم الأسماء)

تحدد الخوادم الموثوقة للمنطقة:

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

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

وتخبر هذه السجلات العالم بالخوادم التي ينبغي الاستعلام منها عن سجلات المنطقة.

أنواع المناطق

المنطقة الأساسية (Master)

المصدر الموثوق الذي تعدل فيه سجلات المنطقة:

ns1.example.com (primary)

→ Zone file edited here

→ Changes made directly

→ Notifies secondaries of updates

المنطقة الثانوية (Slave)

نسخ للقراءة فقط تكرر بياناتها من الأساسي:

ns2.example.com (secondary)

→ Retrieves zone data from primary

→ Cannot be edited directly

→ Automatically syncs based on SOA refresh interval

نقل المنطقة (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

النقل التزايدي (IXFR):
1. Secondary requests only changes since last serial

2. Primary sends diff

3. More efficient for large zones with small changes

المنطقة الأمامية

تربط أسماء النطاقات بعناوين IP، وهي الأكثر شيوعاً:

example.com → 203.0.113.50

www.example.com → 203.0.113.50

المنطقة العكسية

تربط عناوين IP بأسماء النطاقات، باستخدام سجلات PTR:

50.113.0.203.in-addr.arpa → example.com

وتُستخدم من أجل:

تفويض المنطقة

ينشئ التفويض مناطق مستقلة للنطاقات الفرعية:

المنطقة الأم، 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

المنطقة المفوضة، api.example.com

ملف منطقة مستقل تماماً على خوادم أسماء مختلفة:

; 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

لماذا نستخدم التفويض؟

إدارة المنطقة

إدارة الرقم التسلسلي

تتتبع الأرقام التسلسلية إصدارات المنطقة، وغالباً تستخدم صيغة YYYYMMDDnn:

2024010101  ; January 1, 2024, version 01

2024010102 ; January 1, 2024, version 02

2024010201 ; January 2, 2024, version 01

قاعدة حاسمة: يجب أن يزيد الرقم التسلسلي مع كل تغيير، وإلا فلن تحدث الخوادم الثانوية.

أمان نقل المنطقة

المشكلة: تكشف عمليات نقل المنطقة جميع سجلات DNS. الحل: اقصر نقل المناطق على الخوادم الثانوية المصرح بها. إعداد BIND:
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، توقيع المعاملة: صادق على عمليات النقل بمفاتيح مشتركة:
key "transfer-key" {

algorithm hmac-sha256;

secret "base64-encoded-key";

};

allow-transfer { key transfer-key; };

التحقق من إعداد المنطقة

الاستعلام عن سجل SOA

dig example.com SOA

; ANSWER SECTION:

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

2024010101 7200 3600 1209600 3600 )

الاستعلام عن سجلات NS

dig example.com NS

; ANSWER SECTION:

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

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

طلب نقل المنطقة (AXFR)

dig @ns1.example.com example.com AXFR

# If allowed, returns entire zone

# If denied, returns transfer failed

ترفض معظم خوادم الأسماء العامة AXFR لمنع إفشاء المعلومات.

إعدادات المناطق الشائعة

موقع ويب بسيط

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"

منطقة متعددة الخدمات

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.

نطاقات فرعية مفوضة

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.

أفضل ممارسات ملف المنطقة

1. زد الرقم التسلسلي دائماً: بعد كل تغيير، وإلا فلن تحدث الخوادم الثانوية.

2. استخدم أرقاماً تسلسلية مبنية على التاريخ: صيغة YYYYMMDDnn أوضح.

3. قيد نقل المنطقة: اسمح للخوادم الثانوية المصرح بها فقط.

4. استخدم خوادم أسماء متعددة: اثنان على الأقل، ويفضل على شبكات مختلفة.

5. اضبط TTL مناسباً: وازن بين فائدة التخزين وسرعة التحديث.

6. اختبر قبل التطبيق: تحقق من صيغة الملف قبل تحميله.

7. راقب نقل المناطق: تأكد من مزامنة الخوادم الثانوية.

8. وثق التفويضات: سجل المناطق المفوضة ومواقع خوادمها.

9. انسخ ملفات المنطقة احتياطياً: تمنع النسخ المنتظمة فقدان البيانات.

10. استخدم التحكم في الإصدارات: تتبع تغييرات الملف بمرور الوقت.

ميزات متقدمة للمنطقة

DNSSEC (توقيع المنطقة)

وقّع سجلات المنطقة تشفيرياً:

example.com.  IN  A       203.0.113.50

example.com. IN RRSIG A 8 2 3600 (

signature-data-here )

يحمي ذلك من تسميم الذاكرة والتلاعب.

DNS الديناميكي (DDNS)

اسمح بتحديثات المنطقة برمجياً:

# 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

وهو مفيد من أجل:

عروض المنطقة (DNS المنقسم)

قدم بيانات منطقة مختلفة حسب عنوان IP للعميل:

Internal clients: example.com → 10.0.0.50 (internal)

External clients: example.com → 203.0.113.50 (public)

حالات الاستخدام:

استكشاف مشكلات المنطقة وإصلاحها

فشل نقل المنطقة

العرض: الخوادم الثانوية غير متزامنة. الفحص:
# Check if primary allows transfers

dig @ns1.example.com example.com AXFR

# Check secondary logs for errors

tail -f /var/log/named.log

الحلول:

عدم زيادة الرقم التسلسلي

العرض: لا تنتشر التغييرات إلى الخوادم الثانوية. الحل: زد الرقم التسلسلي دائماً مع كل تعديل للمنطقة.

عدم عمل التفويض

العرض: لا يُحل النطاق الفرعي. الفحص:
# Verify delegation

dig example.com NS

dig api.example.com NS

# Should show different nameservers for delegated subdomain

الحلول:

مناطق DNS هي أساس الإدارة الموزعة لـ DNS، وفهم بنيتها وتفويضها وإدارتها يتيح تصميم DNS بفاعلية للمؤسسات بمختلف أحجامها.

استفد من هذه المعرفة

استخدم API الخاص بـ DomScan للتحقق من توفر النطاقات وصحتها والمزيد.