BIND
Berkeley Internet Names Domain, یک سرویس دهنده برای نام zone که در ابتدا در دانشگاه کالیفرنیا برای نگارش BSD یونیکس نوشته شد,اما در حال حاضر برای بیشتر نگارشهای یونیکس در دسترس است.وظیفه این سرویس دهنده ترجمه نام zone از حالت قابل درک برای انسان به نشانیهای عددی IP است که بطور گسترده در سرویس دهنده های اینترنت مورد استفاده قرار میگیرد

از فرمان زیر به منظور چک کردن اینکه package نصب شده است یا خیر استفاده میکنیم

#rpm -qa bind*

از فرمان زیر به منظوراینکه آیا DNS در حالت اجرا هست یا خیر استفاده میکنیم

#service named status

بطور مثال قصد داریم DNS رابرای سایتی با نام www.pooya.com تنظیم کنیم
همانطور که گفته شده pooya.com اسم دومین و www اسم host میباشد.ابتدا باید domain name و host name را برای سیستمان از طریق مسیر زیر تعیین کنیم
برای تعیین host name در مسیر زیر تغییرات را انجام میدهیم

#vi /etc/sysconfig/network
#HOSTNAME=www

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

#vi /etc/hosts
۱۹۲٫۱۶۸٫۱۰٫۱ pooya.com www

بخاطرداشته باشید ip 192.168.10.1 آدرس DNS ما میباشد و و پس از تغییرات باید سیستم را با فرمان init 6 دوباره راه اندازی کنیم

حال به سراغ پیکربندی named.conf که در دایرکتوری etc/named.conf قرار دارد که محتویات اصلی پیکربندی DNS را شامل میشود میریم.named.conf به BIND میگوید کجا میتواند پیکربندی فایلهای zone را پیدا کند
این فایل معمولا دو حوزه, forward zone که مشخص کننده domain به IP و reverse zone که مشخص کننده IP address به domain است را شامل میشود

جهت پیکربندی named.conf از ادیتور vi طبق فرمان زیر استفاده میکنیم

#vi /etc/named.conf

در این فایل باید دوچیز را تغییر دهیم اولی وارد کردن اسم دومین و دیگری ip مورد نظر ما میباشد
توجه کنید که باید network ID را به صورت برعکس وارد کنیم.یعنی اگر ip ما ۱۹۲٫۱۶۸٫۱۰٫۱ است باید ۱۰٫۱۶۸٫۱۹۲ را وارد کنیم
در فایل مورد نظر دنبال} zone “local.host” IN میگردیم و آن را با توجه به نام دومینمان به صورت زیر تغییر میدهیم

zone “pooya.com” IN {
type master;
file “localhost.zone”;
allow-update { none; };
};

سپس دنبال} zone”0.0.127.in-addr.arpa” IN میگردیم و آن را با توجه به ip مورد نظر تغییر میدهیم

zone “10.168.192.in-addr.arpa” IN {
type master;
file “named.local”;
allow-update { none; };
};
اکنون به سراغ پیکربندی forward lookup zone که وظیفه تحلیل اسم دومین به IP را دارد میپردازیم.این پیکربندی را میتوانید با ادیتور vi در مسیری که زیر مشاهده میکنید انجام دهید

#vi /var/named/chroot/var/named/localhost.zone

خط ) IN SOA @ root @ به شکل زیر تغییر میدهیم
$TTL 3D
@ IN SOA pooya.com. root.pooya.com. (

همچنیین تغییرات زیر را میدهیم

IN NS rooman.com.
www IN A 192.168.10.1
pooya.com IN A 192.168.10.1
حال به توضیحی در مورد موارد بالا مبپردازیم
TTL به معنی Time To Live است و نشان میدهد که اطلاعات در این DNS server سه روز(۳D) نگهداشته میشود
SOA(Start Of Authority دیباچه ای برای همه فایلهای zone است.SOA مدیریت عمومی و کنترل اطلاعات درباره domain را شامل میشود
NS به معنی Name Server است
A که به مفهوم host record است به منظور ذخیره forward lookup zones است
اکنون به پیکربندی revers lookup zone از طریق مسیر زیر میپردازیم

#vi /var/named/chroot/var/named/named.local

حال خط ) IN SOA localhost.root. local host @ را طبق خط زیر تغییر میدهیم

@ IN SOA pooya.com. root.pooya.com. (

همچنین تغییرات زیر را میدهیم

IN NS pooya.com.
۱ IN PTR pooya.com.

PTR به مفهوم POINTER میباشد و عدد ۱ که در ابتدای خط است با توجه به ip 192.168.10.1 است و با توجه به IP مورد نظرمان قابل تغییر است

دراین قسمت پیکربندی DNS به پایان رسید فقط لازم است با فرمان زیر سرویسDNS را restart میکنیم

#service named restart

اکنون با فرمانهای زیر درست تنظیم شدن DNS را امتحام میکنیم و اگر خروجی NOERROR را مشاهده کردیم نشانگر درست پیکربندی شدن این سرویس میباشد

#dig www.pooya.com
#dig pooya.com
#dig -x 192.168.10.1