تنظیم DNS در لینوکس با دو ابزار انجام میشود: systemd-resolved در توزیعهای مدرن و resolvconf در توزیعهای قدیمیتر. اگر سرورت به اینترنت وصل است، DNS معمولاً از DHCP میآید؛ اگر شبکهات داخلی یا بسته است، باید دستی بگذاریش.
در این راهنما هر دو مسیر را میبینی: تغییر دائمی از فایل تنظیمات، تغییر موقت با resolvectl، و بررسی اینکه DNS واقعاً همان است که فکر میکنی.
DNS
سرویس DNS در شبکه وظیفهی تبدیل دامنه (Domain) به IP را بر عهده دارد.
برای تنظیم DNS در سمت کاربر (کلاینت) در توزیعهای مدرن از systemd-resolved و در توزیعهای قدیمی از resolvconf استفاده میکنیم.
systemd-resolved
در صورتی که از توزیعهای جدید استفاده میکنید از این روش برای تنظیم DNS روی لینوکس استفاده کنید. ابتدا با دستور زیر از نصب بودن پکیج مورد نیاز اطمینان حاصل کنید: sudo apt install -y systemd-resolved سپس به مسیر /etc/systemd/resolved.conf رفته و تنظیمات مربوط به DNS را مشابه مثال زیر انجام دهید.
[Resolve]
DNS=185.142.156.227
FallbackDNS=217.218.127.127 91.245.229.1سپس با این دستور سرویس resolved را ری استارت کنید: sudo systemctl restart systemd-resolvedدر این روش فایل /etc/resolv.conf که در توزیعهای خیلی قدیمی برای تنظیم DNS استفاده میشد رونوشت (overwrite) میشود. پس توجه داشته باشید که تمام تنظیماتی که در این فایل انجام میدهید از بین میرود.
resolvconf
برای استفاده از resolveconf ابتدا پکیج مربوط به اون رو با دستور زیر نصب کنیدsudo apt install -y resolvconf سپس مشابه مثال زیر فایل را کانفیگ کنید: (حداکثر ۳ مورد)nameserver 185.142.156.227
nameserver 217.218.127.127
nameserver 91.245.229.1چند DNS Server عمومی قابل دسترس در شبکه داخلی ایران:
DNS IP Owner 217.218.127.127 TIC (Telecommunication Infrastructure Company) 217.218.155.155 TIC (Telecommunication Infrastructure Company) 194.225.62.80 ourdns1.tums.ac.ir (Oloom Pezekhki Tehran) 91.245.229.1 ns1.kcpcloud.ir 91.245.229.2 ns2.kcpcloud.ir 185.161.112.33 fw1.parvazsys.ir 185.51.200.2 shecan 178.22.122.100 shecan