DNS(Domain Name System) تنظیم و پیکربندی و نصب در لینوکس ,linux
سیستم سلسله مراتبی که میزبان (host) موجود در اینترنت از طریق آن صاحب نشانی نام حوزه مثل www.subnet.ir میشوند و هم صاحب ip address مثل 192.173.5.3
نشانی نام حوزه توسط اشخاص به کار برده میشود و به طور خودکار به ip address عددی تبدیل میشود.این نشانی توسط نرم افزار تعیین کننده مسیر بسته ها مورد استفاده قرار میگیرد
شماره پورت 53 به DNS تعلق گرفته است
اجزای تشکیل دهنده DNS
1.Logical components-DNS name space
2.Physical components-ZOnes
DNS name space
ِِDNS name space ساختار و سلسله مراتب استفاده از اسم domain را مشخص میکند
Zones
zone ها یک شی هستند که پیکربندی DNS را شامل میشوند
DNS ساختار
انواع مختلف zone عبارتند از
1.Forward lookup zone
2.Reverse lookup zone
Forward lookup zone
این zone اطلاعات تبدیل اسم domain به ip address را در بردارد
به یاد داشته باشید آدرسی مثل www.subnet.ir را (FQDN(Fully Qualified Domain Name میگویم که subnet.ir اسم دومین و www اسم host میباشد.پس به تعبیری دیگر forward lookup zone عمل تبدیل FQDN را به IP بر عهده دارد
host recod ها در forward lookup zone قرار دارند
host recod ها به منظور ذخیره forward lookup zone ساخته میشود
Reverse lookup zone
این zone حاوی ip address برای host و یک pointer(اشاره گر) برای host record ها در forward lookup zone میباشد
هر zone میتواند به انواع مختلفی پیکربندی شود
1.Primary zone
2.secondary zone
3.stub zone
Primary zone(Default zone
اولین zone که درست میکنیم primary است
Secondary zone
یک نسخه مشابه از primary zone است که به دلیل back up و load balancing(توزیع بار کاری ) ایجاد میشود
Stub zone
name server record ها را در بردارد
قبل از اینکه به سراغ پیکربندی DNS برویم لازم است که با بعضی اصطلاحات و تنظیمات آشنا شوید
Daemon
فرایندی که در پس زمینه است و از سرویسی که در سیستم در جریان هست را پشتیبانی میکند و تنها در صورت نیاز فعال میشود
daemon که برای DNS استفاده میشود named نامیده میشود
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
192.168.10.1 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 ما 192.168.10.1 است باید 10.168.192 را وارد کنیم
در فایل مورد نظر دنبال} 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 سه روز(3D) نگهداشته میشود
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.
1 IN PTR pooya.com.
PTR به مفهوم POINTER میباشد و عدد 1 که در ابتدای خط است با توجه به 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
نظرات شما عزیزان:
برچسبها: تنظیم لینوکس,