شما بعنوان یک ادمین شبکه حتما با سرویس DNS بخوبی آشنایی دارید اما ممکن است اطلاعات زیادی درباره یکی از مهم ترین رکورد های DNS یعنی SOA رکورد نداشته باشید.هدف از این مقاله هم دادن اطلاعات خوب و مفید درمورد این Resource record میباشد. برای یک Internet Administrator هیچ چیز مسالمت آمیزتر از پایداری و بهینه سازی DNS سرور نیست.جمله سنگینی بودD: اگر یک پیکربندی اشتباه در DNS سرور وجود داشته باشد DNS سرور قادر به پاسخ گویی صحیح نمیباشد و آنوقت است که وبسایت ها و ایمیل ها down میشوند.بخش مهمی از تنظیمات سرور DNS را رکورد SOA به خود اختصاص داده است.بیایید یکم در مورد Record ها صحبت کنیم ...
DNS Record ها در یک فایل zone و در DNS سرور،وظیفه تبدیل کردن Url ها را به IP آدرس ها را بر عهده دارند.یعنی در واقع این Record ها هستند که عهده دار اصلی تبدیل نام(FQDN) به آدرس IP هستند که با توجه نوع رکورد ها و مصارفشان میتواند متفاوت باشد.مثلا رکورد های مربوط به Mail Server ها MX هستش و رکورد مربوط به تبدیل نام به آدرس IP در شبکه داخلی A Record هستش و ... . در زیر میتوانید یک نوع فایل zone را مشاهده میکنید:

;
; Zone file for mydomain.com
mydomain.com. 14400 IN SOA ns.mynameserver.com. root.ns.mynameserver.com.(
        2004123001
        86000
        7200
        1209600
        600 )

mydomain.com. 14400 IN NS ns.mynameserver.com.
mydomain.com. 14400 IN NS ns2.mynameserver.com.
mydomain.com. 14400 IN NS ns3.mynameserver.com.

mydomain.com. 14400 IN A 216.34.94.184

localhost.mydomain.com. 14400 IN A 127.0.0.1

mydomain.com. 14400 IN MX 0 mydomain.com.
mail 14400 IN CNAME mydomain.com.
www 14400 IN CNAME mydomain.com.
ftp 14400 IN CNAME mydomain.com.

در ادامه این مقاله بخش های مختلفی از رکورد های DNS که در بالا مشاهده میکنید را آنالیز و بررسی خواهیم کرد ...

SOA Record
SOA یا به اختصار Start Of Authority رکوردی است که ضروری ترین بخش از یک فایل zone را تشکیل میدهد.SOA رکورد رکوردی است که به مدیران Domain اطلاعات پایه ای از دامین را میدهد نظیر : چه زمان هایی Update میشود ، زمان آخرین آپدیت چه وقت بوده ، آدرس ایمیل ادمین و غیره.توجه کنید که هر فایل zone شامل یک رکورد SOA میباشد.آپدیت شدن SOA رکورد بین name server ها بخوبی در افزایش پهنای باند و بهینه سازی آن نقش موثری دارد. و همچنین در افزایش سرعت دسترسی به وبسایت ها هنگامی که حتی DNS سرور اصلی Down شود یا از کار بیفتد را نیز بر عهده دارد.در زیر اطلاعات و پارامتر هایی که یک SOA Record دارد را مشاهده میکنید:

; name        TTL     class    rr     Nameserver         email-address
mydomain.com. 14400     IN     SOA
ns.mynameserver.com. root.ns.mynameserver.com.
(
        2004123001 ; Serial number
        86000 ; Refresh rate in seconds
        7200 ; Update Retry in seconds
        1209600 ; Expiry in seconds
        600 ; minimum in seconds )

حال به توضیح تک تک پارامتر های بالا میپردازیم ...
-mydomain.com:نام zone ما را مشخص میکند.که همان نام domain ما هست.مثل:itpro.ir
-TTL – 14400 :این پارامتر معرف مدت زمانی است که کلاینت میتواند این رکورد را cache کند.که اگر مقدارش را صفر انتخاب کنید یعنی کلاینت نمیتواند آنرا در خود کش کند.بازه زمانی این پارامتر بین 0 تا 2147483647 ثانیه هست.(نزدیک 68 سال!!!)
-IN:این پارامتر یک class است که نوع رکورد را نشان میدهد.IN در اینترنت بیشتر بکار می آید.اگر DNS شما مدت زمان طولانی است که در در اینترنت یا شبکه داخلی(اینترانت) هست شما باید از IN استفاده کنید.
-Nameserver – ns.nameserver.com:
nameserver سروری است که فایل های zone را در خود نگهداری میکند.مثلا من یک دامین کنترولر دارم به اسم dc01.itpro.ir که فایل zone ام رو که itpro.ir هستش رو نگهداری میکنه.به همین سادگیD:
-Email address:این پارامتر نشانگر آدرس ایمیل دامین ما هستش که در اینجا .root.ns.nameserver.com هستش،شاید برای خیلیا مبهم باشه که چرا @ توش وجود نداره؟!!جواب اینه که ایمیل به آدرس روت یعنی root@ns.nameserver.com فرستاده میشه اما بصورت .root.ns.nameserver.com نوشته میشه.دات(.) که بعد از com هستش همون root هست که ما هیچوقت نمینویسمیش ولی به اون صورت نوشته میشه.
-Serial number – 2004123001:این شماره چیزی نیست جز عددی که آخرین آپدیت zone رو نشون میده که معمولا به همراه تاریخش میاد.و به فرمت date/revision بیشتر رایجه.توجه کنید اگه سریال نامبر مربوط به Primary nameserver کمتر یا مساوی Secondary nameserver باشه هیچ تغییراتی یا بهتر بگیم هیچ انتقالی از Secondary nameserver یه Primary nameserver رخ نداده.
-Refresh :مقدار این پارامتر که به ثانیه هستش معرف فاصله زمانی refresh شدن slave dns server و primary dns server هست.که در اینجا مقدارش 86000 ثانیه هست.dns سرور دومی به سریال نامبرش نگاه میکنه اگه مقدارش کمتر از سریال نامبر dns سرور پرایمری باشه درخواست رفرش میده و اطلاعات zone اش رو بروز رسانی میکنه.
-Retry:اینجا فرض کنید که dns سرور دومی یا slave میخواد با dns سرور Primary ارتباط برقرار کنه ولی میبینه سرور down هستش و جواب نمیده.مقدار Retry اینجاس که بکارمون میاد.اگه مثلا روی 10 دقیقه تنظیم شده باشه بعد از هر پاسخ ناموفق ده دیقه صبر میکنه و دوباره درخواست میفرسته.این پارامتر زیاد مهم نیستش جدی نگیریدشD:
-Expiry:این پارامتر معرف مدت زمانی است که DNS سرور slave فایل zone رو تو خودش نگه میداره یا بهتره بگیم کش میکنه اگه سرور DNS پرایمری نتونه جواب بده.توصیه شده که این مدت زمان بین 2 تا 4 هفته باشه.
-Minimum – 600:
این پارامتر معرف مدت زمانی است که DNS سرور slave باید فایل zone رو داخلش کش کنه.این پارامتر یکی از مهم ترین پارامتر ها در رکورد SOA هستش.اگر dns سرور شما اطلاعاتش دائما در حال تغییر و بروزرسانی هست مقدارش رو 1 روز یا کمتر انتخاب کنید.برعکس اگه رکورد های dns سرور شما خیلی کم تغییر میکنه مقدارش رو بین 1 تا 5 روز در نظر بگیرید.مزیت تنظیم کردن بالاترین مقدار این پارامتر اینه که سرعت وبسایت شما بشدت افزایش پیدا میکنه چون که جستجو ها کاهش پیدا میکنه و سرعت میره بالا.امیدوارم از خوندن این مقاله لذت کافی رو برده باشید.ITPRO باشید