آموزش PfSense قسمت 10 : راه اندازی DNS

در این بخش شما با راهاندازی کردن سرور DNS در pfsense آشنا میشوید. یکی از سرویسهای مهم در شبکه اینترنت که باعث برقرار ارتباط شما با سایتهای مختلف میشود سرور DNS است که داشتن یک سرور DNS در شبکه علاوه بر کاهش ترافیکهای این سرویس، سرعت شمارا هم درباز کردن سایتهای مختلف بالا میبرد. در تنظیمات شبکه هر سیستمی شما میتوانید دو آدرس مربوط به سرورهای DNS معروف دنیا را وارد کنید تا از طریق آنها بتوانید عمل تبدیل کردن نام به آدرس IP را برای برقرار کردن ارتباط با سرویسهای مختلف در شبکه را انجام دهید. در ادامه این بخش شما با ساختار و روش جستجوی اسمی در اینترنت آشنا میشوید.
ساختار سلسله مراتبی سرورهای DNS:
ساختار موجود در شبکه جهانی برای استفاده کرده از سرویس DSN بهصورت سلسله مراتبی است و در شکل زیر شما با نمایی از این ساختار آشنا میشوید:

همهچیز از سرور root شروع میشود که به نقطه یا (.) معروف است، تعداد این سرورها در اینترنت مشخص است و آدرسهای IP خاصی دارند که بهصورت فراگیر در شبکه جهانی اینترنت وجود دارند. در رده دوم از این بخش اول نام دامنه قرار دارد که بهصورت 3 حرفی برای دامنههای معروف و بهصورت دوحرفی برای هر کشور در نظری گرفتهشده است برای مثال .com برای ثبت دامنههای تجاری استفاده میشود و .ir هم برای دامنههایی که در کشور ایران است استفاده میشود، وظیفه فروش و مدیریت کردن دامنههای هر کشور به عهده همان کشور است. در این سطح شما میتوانید بخش دولتی و شخصی نام هر دامنه را جدا کنید.در سطح دوم یک نام وجود دارد که این نام خاص و منحصربهفرد است و برای شخصی که درخواست میشود ثبتشده و برای خرید آن هزینه پرداخت میکند. در ادامه همین نام شما می توایندSub Domain هم ایجاد کرده و نام اصلی خود را به زیر دامنهها خاص هم تقسیمبندی کنید، این ساختار کلی نام دهی در اینترنت است.
راهاندازی کردن سرور DNS در pfsense
در فایروال pfsense شما با دو سرویس DNS مواجه هستید. یکی از این سرویسها به resolver معروف است که مسئول کش کردن درخواستهایی است که از سمت کلاینتها شبکه داخلی شما ارسال میشود و کلاینتهای شما نیاز به برقراری ارتباط با سرورهای راه دور خود از طریق نام بهجای آدرس IP دارند، بهصورت پیشفرض در سرویسدهندههای اینترنتی چندین سرور کش DNS وجود دارد که شما میتوانید از آنها استفاده کنید و یا از آدرسهای معروف مثل 4.2.2.4 و 8.8.8.8 استفاده کنید که بازهم باعث افزایش ترافیک شبکه شما میشود. برای کاهش این بخش کافی است که شما سرور Resolver را در pfsense فعال کنید که بهصورت پیشفرض فعال است و DNS سرور سیستمهای شبکه داخلی خود را به آدرس ip فایروال داخلی خودتنظیم کنید، در ادامه شما با روش فعال کردن و بخشهای مختلف آن آشنا میشوید.
فعال کردن DNS Resolver
همانطوری که میدانید و در بخشهای قبلی به آن پرداختیم همه سرویسها چه آنهایی که بهصورت پیشفرض نصب هستند و چه آنهایی که بعداً نصب میشود در زیرشاخه service قرار دارند. برای وارد شدن به این بخش کافی است که از منوی service وارد بخش زیر شوید:

بعد از وارد شدن به بخش DNS Resolver شما با منوی بهصورت نمایش دادهشده در شکل زیر مواجه میشوید:

بهصورت پیشفرض این سرویس فعال بوده و شما میتوانید از آن استفاده کنید، برای غیرفعال کردن آن کافی است که تیک بخش enable را برداشته و Save کنید تا سرویس غیرفعال شود، در ادامه شما میتوانید حتی شماره پورت سرویس را تغییر دهید که البته شماره پورت پیشفرض آن 53 است. این بخش همچنین به شما این اجازه را میدهد که کارتهای شبکهای را که شما قصد دارید از طریق آن سرویس دهید و یا اینکه از کدام شبکه برای ارسال درخواستهای خود استفاده کند را مشخص کنید.
در بخش شما با مفهوم local zone آشنا میشوید که در سرور unbound پیادهسازی میشود. در پاسخ دادن به درخواستهای کاربران حالتهایی وجود دارد که از دیتابیس داخلی هم میتواند برای پاسخگویی استفاده کند که البته در ادامه با روش اضافه کردن رکوردها در بخش local آشنا میشوید. در برخی از موارد شما دامینهایی دارید که بهصورت محلی بر روی pfsense خود تعریف میکنید و قصد دارید که اولویت با آنها در پاسخگویی باشد در این حالت شما باید گزینه transparent را از میان این گزینه انتخاب کنید که حالت پیشفرض دی این بخش است. در شکل زیر شما حالتهای موجود در این بخش را مشاهده میکنید.

در حالت Deny همه درخواستهای DNS از سمت کلاینت پاسخ داده نمیشود مگر اینکه در دیتابیس محل متغیر داشته باشد.
در حالت مثل حالت Deny است با این تفاوت که به سمت کلاینت یک کد REFUSED ارسال میشود درزمانی که خطایی ایجادشده است.
در حالت transparent اول دیتابیس اسمی محلی چک میشود که اگر در آن متغیر متناسب بانام درخواستی باشد به آن پاسخ داده میشود و اگر هم نباشد مراحل جستجوی نامی از سرورهای دیگر انجام میشود.
حالت redirect زمانی استفاده میشود که شما قصد داشته باشید که یک نام را به نام دیگری Redirect کنید.
برای redirect کردن یکهاست خاص به یک آدرس ip خاص کافی است که شما حالتهای redirect یا transparent را انتخاب کنید و بعد در بخش زیرین این صفحه وارد قسمت Host Overrides یا Domain Overrides شوید که در شکل زیر آنها مشاهده میکنید:

با رفتن بر روی گزینه Add شما میتوانید در هرکدام از این دو بخشهاست و یا دامین برای تغییر دادن آدرس اصلی ایجاد کنید، همانطوری که در شکل بالا مشاهده میکنید هاست www از دامین mabedini.com را به آدرس ip شماره 4.2.2.1 redirect کردهایم که در شکل زیر با استفاده nslookup تغییرات اعمالشده را مشاهده میکنید:

همانطوری که مشاهده میکنید ip دامین mabedini.com به آدرس اصلی برگشت داده میشود هاست www از این دامین به آدرس تنظیمشده در بخش قبل بازگردانی میشود. شما در بخش Domain Overrides میتوانید کلیه زیر دامین های و هاست های یک دامین را به آدرسی خاص redirect کنید.