جدول محتوایی

سرور DNS

DNS به اختصار Domain Name System است. همانطور که می دانیم کامپیوتر ماشینی است که فقط باینری را می فهمد یا می توانیم با گفتن اینکه کد ماشین را می فهمد آن را آسان کنیم. اکنون وب سایت های مختلفی داریم که دامنه آنها از حروف الفبا تشکیل شده. به عنوان مثال ما facebook.com، google.com را داریم. در واقع این اسامی حروف الفبا برای درک بهتر برای انسان است، و برای ماشین ها آدرس پذیر نیست. بنابراین برای این منظور برخی از سرور ها وجود دارند که آدرس‌های پایه عددی متفاوتی را در برابر این آدرس‌های الفبایی اختصاص می‌دهند تا توسط ماشین شناسایی شوند. چنین سرور هایی که وظیفه تخصیص آدرس ها را بر عهده دارند به عنوان سرور DNS (سرورهای نام دامنه) شناخته می شوند.

در این مقاله قصد داریم روش های مختلف در اوبونتو برای پیکربندی سرور DNS را مورد بحث قرار دهیم.

برای ادامه این آموزش به یک سرور مجازی لینوکس نیاز دارید که میتوانید آن را از ایرانیکاسرور تهیه کنید. (خرید سرور مجازی ایران)

 

چگونه پیکربندی سرور DNS را در اوبونتو انجام دهیم ؟

ما در مورد روش پیکربندی سرور DNS با باز کردن یک ترمینال و اجرای چند دستور صحبت خواهیم کرد:

 

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

ما می توانیم DNS را از طریق ترمینال پیکربندی کنیم. برای این منظور ابتدا ترمینال را با فشار دادن CTRL + ALT + T باز کنید. قبل از فرآیند نصب، مخزن خود را به روز می کنیم:

$ sudo apt update

 

اکنون سرور DNS را با استفاده از دستور bind9 نصب می کنیم:

$ sudo apt install bind9

نصب سرور dns

مرحله بعدی نصب ابزارهای DNS با استفاده از دستور “dnsutils” است:

$ sudo apt install dnsutils

اکنون برای پیکربندی DNS، ابتدا به آدرس /etc/bind/named.conf.options می‌رویم و Google DNS را برای درک درست اضافه می‌کنیم. متن زیر را با باز کردن آدرس در ویرایشگر نانو اضافه می کنیم.

$ sudo nano /etc/bind/named.conf.options

متن زیر را در ویرایشگر جایگزین کنید، 8.8.8.8 در واقع DNS گوگل است:

forwarders {

8.8.8.8;

};

تنظیم dns گوگل

 

با کلید های ctrl + x تغییرات را سیو کنید و اینتر بزنید تا از ویرایشگر خارج شود. اکنون پس از ذخیره آن را ترک کرده و با راه اندازی مجدد DNS با استفاده از دستور systemctl، پیکربندی جدید را فعال کنید.

$ sudo systemctl restart bind9

فعال کردن پیکربندی

 

بررسی وضعیت bind9 :

$ sudo systemctl status bind9

بررسی وضعیت bind9

 

از آنجایی که bind9 اکنون در حال اجرا است، دامنه ای را که در فایل پیکربندی ویرایش می کنیم به صورت زیر آزمایش می کنیم:

$ dig google.com

تست دامین

 

خروجی نشان می دهد که دامنه گوگل است و با موفقیت اجرا می شود.

اکنون پیکربندی ناحیه اولیه را انجام خواهیم داد، اما قبل از پیکربندی باید بدانیم که چه اتفاقی می‌افتد. ما برخی از فایل ها را در یک هاست یا سرور ذخیره کردیم و در این پیکربندی DNS داده های خود را از آن فایل خاص برای منطقه خود دریافت می کند. اکنون برای چنین پیکربندی، ویرایشگر را اجرا می کنیم و تأیید می کنیم که سه دستور زیر وجود دارد و روی آنها توضیح داده نشده است.

include “/etc/bind/named/.conf.option”;

include “/etc/bind/named/.conf.local”;

include “/etc/bind/named/.conf.default-zones”;

 

برای تأیید این موضوع، ویرایشگر را با دستور زیر باز می کنیم:

$ sudo vi /etc/bind/named.conf

در نتیجه خواهیم دید:

ویرایش فایل

 

هر سه خط در خروجی وجود دارد. حالا به عنوان مثال ما یک دامنه “gamer.com” داریم که می خواهیم آن را پیکربندی کنیم، بنابراین فایل name.conf.local را با باز کردن به صورت زیر ویرایش می کنیم:

sudo vi /etc/bind/named.conf.local

متن زیر را در ویرایشگر به صورت زیر ویرایش کنید:

zone “gamer.com” {
type master;
file “/etc/bind/db.gamer.com”;
};

ویرایش فایل named.conf.local

ما محتویات را از db.local به db.gamer.com کپی می کنیم:

$ sudo cp /etc/bind/db.local /etc/bind/db.gamer.com

و در این مرحله فایل جدید ایجاد شده gamer.com را با دستور زیر باز می کنیم:

$ sudo vi /etc/bind/db.gamer.com

خروجی باید به این صورت باشد:

فایل db.gamer.com

 

پس از ایجاد تغییرات، سرور DNS را مجددا راه اندازی می کنیم.

$ sudo systemctl restart bind9

برای ارتباط دامنه ایجاد شده “gamer.com” با برخی از آدرس های IP، باید یک فایل منطقه معکوس انجام دهیم. برای چنین منظوری، فایل ناحیه معکوس را نیز به صورت زیر پیکربندی می کنیم:

$ sudo vi /etc/bind/named.conf.local

 

در اینجا متن زیر را اضافه می کنیم:

zone “192.168.18.in-addr.arpa” {
type master;
file “/etc/bind/db.10”;
};

 

جایی که 192.168.18 سه اکتت اول شبکه است، در اینجا شما آن را با شبکه خود جایگزین خواهید کرد. حالا فایل جدید را با db.10 به صورت زیر کپی و ایجاد می کنیم:

$ sudo cp /etc/bind/db.127 /etc/bind/db.10

 

حال این فایلی را که ایجاد کرده ایم باز می کنیم و خروجی آن باید مانند شکل زیر باشد:

$ sudo vi /etc/bind/db.10

فایل پیکربندی سرور dns

 

در این قسمت آخر، ابتدا تنظیمات را با اجرای همه این دستورات تأیید می کنیم و بررسی می کنیم که آیا آنها خطا ایجاد می کنند یا خیر:

$ named-checkzone gamer.com /etc/bind/db.gamer.com

$ named-checkzone 192.168.0.0 /32 /etc/bind/db.10

$ named-checkconf /etc/bind/named.conf.local

$ named-checkconf /etc/bind/named.conf

نصب سرور dns

 

با اجرای تمام دستورات بالا هیچ خطایی دریافت نکردیم بنابراین سرور DNS ما با موفقیت پیکربندی شد.

 

جمع بندی

DNS تکنیکی است که از طریق آن دامنه‌های وب‌سایت‌های مختلف را به صورت حروف الفبا و عددی نام‌گذاری می‌کنیم تا درک آن برای سرور ها آسان باشد. پیکربندی سرور DNS (سیستم نام دامنه) را در مقاله یاد گرفتیم. ما آموخته ایم که DNS برای تخصیص آدرس های مبتنی بر عددی به دامنه های الفبایی استفاده می شود. دامنه google را به روش خط فرمان پیکربندی کردیم و همچنین آن را تست کردیم، همچنین در روش ترمینال با ایجاد دامنه gamer.com تنظیمات منطقه فایل رو به جلو و معکوس انجام دادیم. امیدواریم این مقاله به شما کمک زیادی کند و تمام سوالات مربوط به پیکربندی DNS را حل کند.

 

22رای - امتیاز 4.8 ممنون از امتیازی که دادید..!

دسته بندی شده در: