مبانی DNS

انواع رکوردهای DNS

DNS از انواع مختلف رکورد استفاده می‌کند که هرکدام هدف مشخصی دارند — از نگاشت نام‌ها به IP، مسیریابی ایمیل، کشف سرویس‌ها تا ایمن‌سازی فرایند صدور گواهی.

01
A

رکورد آدرس (A)

یک نام میزبان را به یک آدرس IPv4 نگاشت می‌کند.

اشاره دادن www.example.com به آدرس IPv4 سرور وب شمااشاره دادن api.example.com به سرور اپلیکیشن شما
www.example.com.     IN    A    93.184.216.34
api.example.com.     IN    A    203.0.113.10

نحوه کار

1

کاربر در مرورگر www.example.com را وارد می‌کند

2

Resolver رکورد A را جست‌وجو می‌کند → 93.184.216.34 را دریافت می‌کند

3

مرورگر روی پورت 80/443 به 93.184.216.34 متصل می‌شود

02
AAAA

رکورد آدرس IPv6 (AAAA)

یک نام میزبان را به یک آدرس IPv6 نگاشت می‌کند.

پشتیبانی از کلاینت‌های IPv6 برای وب‌سایت یا سرویس‌های شمافراهم کردن اتصال Dual-Stack (هر دو IPv4 و IPv6)
www.example.com.     IN    AAAA    2001:db8:1234::10

نحوه کار

1

کلاینت هم رکورد A و هم AAAA را درخواست می‌کند

2

اگر رکورد AAAA موجود باشد و IPv6 پشتیبانی شود، کلاینت ممکن است آن را ترجیح دهد

3

در غیر این صورت، به رکورد A (IPv4) برمی‌گردد

03
CNAME

رکورد نام متعارف (CNAME)

یک نام دامنه را به نام دامنه دیگری به‌عنوان alias (نام مستعار) متصل می‌کند.

استفاده از www.example.com به‌عنوان alias برای example.comاشاره دادن blog.example.com به یک سرویس میزبانی وبلاگ
www.example.com.     IN    CNAME    example.com.
blog.example.com.    IN    CNAME    myblog.platform.com.

نحوه کار

1

کلاینت www.example.com را جست‌وجو می‌کند → DNS یک CNAME به example.com برمی‌گرداند

2

کلاینت سپس example.com را جست‌وجو می‌کند → رکوردهای A/AAAA را دریافت می‌کند

3

IP نهایی برای برقراری اتصال استفاده می‌شود

محدودیت — یک CNAME نباید هم‌زمان با رکوردهای دیگر (مثل A یا MX) با همان نام وجود داشته باشد. باید یا CNAME استفاده شود یا سایر نوع رکوردها، نه هر دو.

04
MX

رکورد تبادل‌کننده ایمیل (MX)

مشخص می‌کند ایمیل برای یک دامنه باید به کجا تحویل داده شود.

هدایت ایمیل‌های دامنه example.com به سرورهای ایمیل شمااستفاده از ارائه‌دهنده ایمیل شخص ثالث (Google Workspace، Microsoft 365)
رکوردهای MX
example.com.     IN    MX    10 mail1.example.com.
example.com.     IN    MX    20 mail2.example.com.
رکوردهای A برای میزبان‌های ایمیل
mail1.example.com.   IN    A    203.0.113.20
mail2.example.com.   IN    A    203.0.113.21

نحوه کار

1

سرور فرستنده از DNS رکوردهای MX دامنه example.com را می‌پرسد

2

فهرستی با اولویت‌ها دریافت می‌کند: mail1 (10)، mail2 (20)

3

ابتدا mail1.example.com را امتحان می‌کند

4

اگر mail1 در دسترس نباشد، به mail2.example.com برمی‌گردد

05
TXT

رکورد متنی (TXT)

متن دلخواه مرتبط با یک دامنه را ذخیره می‌کند.

SPF – فهرست‌کردن سرورهایی که مجاز به ارسال ایمیل برای دامنه هستندDKIM – ذخیره کلیدهای عمومی برای امضای ایمیلDMARC – تعیین قوانین برای نحوه برخورد با ایمیل‌های جعلیتأیید مالکیت دامنه (گوگل، مایکروسافت، ارائه‌دهندگان SSL)
SPF
example.com.  IN  TXT  "v=spf1 ip4:203.0.113.0/24 include:_spf.mailprovider.com ~all"
تأیید مالکیت
_example-verification.example.com.  IN  TXT  "google-site-verification=abc123xyz"
06
NS

رکورد Name Server (NS)

سرورهای DNS معتبر (Authoritative) برای یک دامنه یا زیر‌دامنه را مشخص می‌کند.

اشاره دادن دامنه شما به یک ارائه‌دهنده میزبانی DNSواگذاری (Delegate) یک زیر‌دامنه به سیستم DNS دیگر
دامنه ریشه
example.com.     IN    NS    ns1.dnsprovider.com.
example.com.     IN    NS    ns2.dnsprovider.com.
زیر‌دامنه واگذار شده
internal.example.com.   IN    NS    ns1.internal-dns.example.com.
internal.example.com.   IN    NS    ns2.internal-dns.example.com.

نحوه کار

1

Resolver از سرورهای TLD مربوط به .com در مورد example.com می‌پرسد

2

TLD با رکوردهای NS پاسخ می‌دهد (ns1.dnsprovider.com، ns2.dnsprovider.com)

3

Resolver برای رکوردهای مشخص، آن Name Serverها را کوئری می‌کند

07
SOA

رکورد آغاز اختیار (SOA)

اطلاعات مدیریتی کلیدی درباره یک ناحیه DNS (Zone) را تعریف می‌کند.

هر Zone در DNS باید دقیقاً یک رکورد SOA داشته باشدکنترل زمان‌بندی Zone Transfer بین سرورهای اصلی و ثانویه
example.com.  IN  SOA  ns1.dnsprovider.com. admin.example.com. (
  2024060101 ; Serial
  3600       ; Refresh (1 hour)
  900        ; Retry (15 minutes)
  1209600    ; Expire (14 days)
  86400      ; Minimum TTL (1 day)
)

سرورهای DNS ثانویه از شماره سریال (Serial) برای تشخیص تغییرات Zone استفاده می‌کنند. تایمرها مشخص می‌کنند هرچند وقت یک بار برای دریافت به‌روزرسانی‌ها بررسی انجام شود.

08
SRV

رکورد مکان سرویس (SRV)

مکان (میزبان و پورت) یک سرویس مشخص را برای یک دامنه تعیین می‌کند.

سرویس‌های SIP (VoIP)سرویس‌های چت XMPP (Jabber)Active Directory و کشف سرویس در محیط‌های سازمانی
قالب (Format)
_service._protocol.domain.  IN  SRV  priority weight port target
SIP روی TCP
_sip._tcp.example.com.  IN  SRV  10  60  5060  sipserver1.example.com.
_sip._tcp.example.com.  IN  SRV  20  20  5060  sipserver2.example.com.

کلاینت‌ها رکورد SRV را جست‌وجو می‌کنند و به‌صورت خودکار متوجه می‌شوند باید به کدام میزبان و روی چه پورتی متصل شوند — نیازی به تنظیم دستی نیست.

09
PTR

رکورد اشاره‌گر (PTR)

یک آدرس IP را به نام میزبان نگاشت می‌کند (Reverse DNS).

اعتبارسنجی سرورهای ایمیل (بسیاری از ارائه‌دهندگان ایمیل Reverse DNS را بررسی می‌کنند)عیب‌یابی و ثبت لاگ (نمایش نام‌ها به‌جای IPها)امنیت و ممیزی
رکورد PTR برای IPv4 — برای IP برابر 203.0.113.20
20.113.0.203.in-addr.arpa.  IN  PTR  mail1.example.com.

نحوه کار

1

سرور اتصالی از 203.0.113.20 دریافت می‌کند

2

یک Reverse Lookup روی 20.113.0.203.in-addr.arpa انجام می‌دهد

3

DNS با mail1.example.com پاسخ می‌دهد

4

سرور ممکن است بررسی کند که PTR با رکورد A (Forward) مطابقت داشته باشد

10
CAA

رکورد مجوز مرجع صدور گواهی (CAA)

کنترل می‌کند کدام مراجع صدور گواهی (CA) مجازند برای یک دامنه گواهی SSL/TLS صادر کنند.

محدود کردن صدور گواهی به یک CA مشخص (مثلاً Let's Encrypt، DigiCert)مسدود کردن کامل صدور گواهی برای برخی زیر‌دامنه‌ها
اجازه فقط به Let's Encrypt
example.com.  IN  CAA  0 issue "letsencrypt.org"
اجازه به DigiCert برای گواهی‌های Wildcard
example.com.  IN  CAA  0 issuewild "digicert.com"

نحوه کار

1

CA یک درخواست گواهی برای example.com دریافت می‌کند

2

CA در DNS به دنبال رکوردهای CAA می‌گردد

3

اگر CAA این CA را مجاز بداند، گواهی می‌تواند صادر شود

4

در غیر این صورت، CA باید درخواست را رد کند

11
DNSSEC

رکوردهای مرتبط با DNSSEC

DNSSEC به داده‌های DNS تمامیت و اصالت اضافه می‌کند و اطمینان می‌دهد پاسخ‌ها دستکاری نشده‌اند.

RRSIG

امضای دیجیتال برای رکوردهای DNS

DNSKEY

کلیدهای رمزنگاری عمومی برای تأیید امضاها

DS

رکورد Delegation Signer که Zone والد و فرزند را به هم متصل می‌کند

NSEC/NSEC3

برای اثبات عدم وجود رکوردها استفاده می‌شود

مرجع سریع

چه زمانی از کدام نوع رکورد استفاده کنیم.

نوع رکوردکاربرد
A / AAAAاشاره دادن نام میزبان‌ها به آدرس‌های IPv4 / IPv6
CNAMEایجاد alias از یک نام میزبان به نام دیگر
MXمشخص‌کردن سرورهای ایمیل برای یک دامنه
TXTSPF، DKIM، DMARC، تأیید مالکیت و تنظیمات متنی
NSواگذاری سرورهای نام معتبر برای یک Zone
SOAاطلاعات اجباری مدیریت Zone و زمان‌بندی‌ها
SRVکشف سرویس — میزبان، پورت و اولویت
PTRReverse DNS — نگاشت IP به نام میزبان
CAAکنترل این‌که کدام CAها مجاز به صدور گواهی هستند