در این آموزش سرور ns1 با IP 192.168.10.5 برای zone داخلی corp.sahor.ir مرجع است و درخواستهای دیگر را برای کلاینتهای شبکهی 192.168.10.0/24 resolve میکند.
۱. نصب
sudo dnf install -y bind bind-utils۲. تنظیمات اصلی
در /etc/named.conf بخش options را اینطور تغییر دهید (بقیهی خطوط پیشفرض بمانند):
acl internal { 127.0.0.1; 192.168.10.0/24; };
options {
listen-on port 53 { 127.0.0.1; 192.168.10.5; };
listen-on-v6 { none; };
directory "/var/named";
allow-query { internal; };
recursion yes;
allow-recursion { internal; };
forwarders { 1.1.1.1; 9.9.9.9; };
dnssec-validation auto;
version "not disclosed";
...
};recursion فقط برای internal باز است. سرور DNS باز روی اینترنت ابزار حملهی amplification میشود.
zoneها را در انتهای همان فایل تعریف کنید:
zone "corp.sahor.ir" IN {
type primary;
file "corp.sahor.ir.zone";
allow-update { none; };
};
zone "10.168.192.in-addr.arpa" IN {
type primary;
file "192.168.10.rev";
allow-update { none; };
};در BIND 9.16 و جدیدتر primary هممعنی master قدیمی است.
۳. فایلهای zone
/var/named/corp.sahor.ir.zone:
$TTL 3600
@ IN SOA ns1.corp.sahor.ir. hostmaster.corp.sahor.ir. (
2026110801 ; serial (YYYYMMDDnn)
3600 ; refresh
900 ; retry
1209600 ; expire
300 ) ; negative TTL
IN NS ns1.corp.sahor.ir.
ns1 IN A 192.168.10.5
gw IN A 192.168.10.1
web01 IN A 192.168.10.21
portal IN CNAME web01/var/named/192.168.10.rev:
$TTL 3600
@ IN SOA ns1.corp.sahor.ir. hostmaster.corp.sahor.ir. ( 2026110801 3600 900 1209600 300 )
IN NS ns1.corp.sahor.ir.
5 IN PTR ns1.corp.sahor.ir.
1 IN PTR gw.corp.sahor.ir.
21 IN PTR web01.corp.sahor.ir.مالکیت و برچسب SELinux را درست کنید (named فقط فایلهایی با نوع named_zone_t را میخواند):
sudo chown root:named /var/named/corp.sahor.ir.zone /var/named/192.168.10.rev
sudo chmod 640 /var/named/corp.sahor.ir.zone /var/named/192.168.10.rev
sudo restorecon -v /var/named/*.zone /var/named/*.rev۴. بررسی و راهاندازی
sudo named-checkconf
sudo named-checkzone corp.sahor.ir /var/named/corp.sahor.ir.zone
sudo named-checkzone 10.168.192.in-addr.arpa /var/named/192.168.10.rev
sudo systemctl enable --now named
sudo firewall-cmd --permanent --add-service=dns && sudo firewall-cmd --reload۵. آزمایش
dig @192.168.10.5 portal.corp.sahor.ir +short
dig @192.168.10.5 -x 192.168.10.21 +short
dig @192.168.10.5 example.com +shortهر بار zone را ویرایش میکنید، serial را یکی بالا ببرید و بارگذاری مجدد کنید:
sudo rndc reload corp.sahor.ir
sudo journalctl -u named -n 20 --no-pager