正向解析
-
編輯/etc/named.conf
listen-on port 53 { 172.0.0.1; 192.168.209.134; }; //listen-on-v6 port 53 { ::1; }; allow-query { any; }; dnssec-enable no; dnssec-validation no;
-
編輯/etc/named.rfc1912.zones
zone "iounix.com" IN { type master; file "iounix.com.zone"; };
-
創建/var/named/iounix.com.zone
$TTL 3600 iounix.com. IN SOA iounix.com. admin.iounix.com. ( 2017052301 1H 10M 3D 1D ) IN NS ns1.iounix.com. ns1 IN A 192.168.209.134 www IN A 172.16.0.1 aaa IN A 4.1.1.1 web IN CNAME www
-
檢查
named-checkconf named-checkzone iounix.com iounix.com.zone
-
rndc reload
-
修改問價權限
~]# chown .named /var/named/iounix.com.zone ~]# chmod o= /var/named/iounix.com.zone
-
測試
~]# dig -t A www.iounix.com @192.168.209.134
或
如果未指定DNS服務器地址,則采用默認的地址;在/etc/resolv.conf中設置默認DNS服務器;~]# vim /etc/resolv.conf # Generated by NetworkManager search localdomain nameserver 192.168.209.134 ~]# dig -t A www.iounix.com
反向解析
-
編輯/etc/named.rfc1912.zones
zone "209.168.192.in-addr.arpa" IN { type master; file "192.168.209.zone"; };
-
編輯/var/named/192.168.209.zone
$TTL 3600 @ IN SOA iounix.com. admin.iounix.com. ( 2017052301 1H 10M 3D 1D ) @ IN NS ns1.iounix.com. 100 IN PTR www.iounix.com. 200 IN PTR bbc.iounix.com.
-
檢查
~]# named-checkconf ~]# named-checkzone 209.168.192.in-addr.arpa 192.168.209.zone
-
修改問價權限
~]#chown .named /var/named/192.168.209.zone ~]#chmod o= /var/named/192.168.209.zone
-
測試
~]# dig -x 192.168.209.100 @192.168.209.134 ;; QUESTION SECTION: ;100.209.168.192.in-addr.arpa. IN PTR ;; ANSWER SECTION: 100.209.168.192.in-addr.arpa. 3600 IN PTR www.iounix.com. ;; AUTHORITY SECTION: 209.168.192.in-addr.arpa. 3600 IN NS ns1.iounix.com. ;; ADDITIONAL SECTION: ns1.iounix.com. 3600 IN A 192.168.209.134
主從服務器
- 當主服務器發生改變時,序列號加1,之后tail /var/log/messages,消息顯示從服務器到主服務器中更新數據;
-
在從服務器中,編輯:/etc/named.rfc1912.zones
正向解析: zone "iounix.com" IN { type slave; file "slaves/iounix.zone"; masters { 192.168.209.134; }; }; 反向解析: zone "209.168.192.in-addr.arpa" IN { type slave; file "slaves/192.168.209.zone"; masters { 192.168.209.134; }; };
-
-
在主服務器中編輯:/var/named/linux.io.zone
$TTL 3600 iounix.com. IN SOA iounix.com. admin.iounix.com. ( 2017052301 1H 10M 3D 1D ) IN NS ns1.iounix.com. IN NS ns2.iounix.com. ns1 IN A 192.168.209.134 ns2 IN A 192.168.209.137 www IN A 172.16.0.1 aaa IN A 4.1.1.1 web IN CNAME www 注:編輯完之后,修改序列號,以便通知從服務器;
主服務器上:rndc reload
主服務器上:tail /var/log/messagesMay 27 22:36:58 localhost named[4447]: client 192.168.209.137#57555 (iounix.com): transfer of 'iounix.com/IN': AXFR started May 27 22:36:58 localhost named[4447]: client 192.168.209.137#57555 (iounix.com): transfer of 'iounix.com/IN': AXFR ended May 27 22:36:58 localhost named[4447]: client 192.168.209.137#50945: received notify for zone 'iounix.com'
-
在主服務器上編輯:/var/named/192.168.209.zone
$TTL 3600 @ IN SOA iounix.com. admin.iounix.com. ( 2017052303 1H 10M 3D 1D ) @ IN NS ns1.iounix.com. 137 IN NS ns2.iounix.com. 100 IN PTR www.iounix.com. 200 IN PTR bbc.iounix.com. 注:編輯完之后,修改序列號,以便通知從服務器;
主服務器上:rndc reload
主服務器上:tail /var/log/messagesMay 27 22:54:34 localhost named[4447]: zone 209.168.192.in-addr.arpa/IN: loaded serial 2017052303 May 27 22:54:34 localhost named[4447]: zone 209.168.192.in-addr.arpa/IN: sending notifies (serial 2017052303)
-
-
-
測試時:dig -t A web.iounix.com @192.168.209.137
注意:使用從服務器進行解析;; ANSWER SECTION: web.iounix.com. 3600 IN CNAME www.iounix.com. www.iounix.com. 3600 IN A 172.16.0.1 ;; AUTHORITY SECTION: iounix.com. 3600 IN NS ns1.iounix.com. iounix.com. 3600 IN NS ns2.iounix.com. ;; ADDITIONAL SECTION: ns1.iounix.com. 3600 IN A 192.168.209.134 ns2.iounix.com. 3600 IN A 192.168.209.137
-
測試時:~]# dig -x 192.168.209.100 @192.168.209.137
注意:使用從服務器進行解析;; QUESTION SECTION: ;100.209.168.192.in-addr.arpa. IN PTR ;; ANSWER SECTION: 100.209.168.192.in-addr.arpa. 3600 IN PTR www.iounix.com. ;; AUTHORITY SECTION: 209.168.192.in-addr.arpa. 3600 IN NS ns1.iounix.com. ;; ADDITIONAL SECTION: ns1.iounix.com. 3600 IN A 192.168.209.134
-
子域授權
-
在主服務器中進行編輯/var/named/linux.io.zone
$TTL 3600 linux.io. IN SOA linux.io. admin.linux.io. ( 2017052302 1H 10M 3D 1D ) IN NS ns1.linux.io. IN NS ns2.linux.io. ns1 IN A 192.168.209.134 ns2 IN A 192.168.209.135 www IN A 172.16.0.1 aaa IN A 8.8.8.8 web IN CNAME www ops.linux.io. IN NS ns1.ops.linux.io. dev.linux.io. IN NS ns1.dev.linux.io. ns1.ops IN A 192.168.209.137 ns1.dev IN A 192.168.209.136
-
同步時間:ntpdate 172.16.0.1
-
編寫子域服務器192.168.209.137中的/etc/named.conf文件;
options { listen-on port 53 { 127.0.0.1; 192.168.209.137; }; allow-query { any; }; dnssec-enable no; dnssec-validation no;
-
在192.168.209.137中配置/etc/named.rfc1912.zones
zone "ops.linux.io" IN { type master; file "ops.linux.io.zone"; };
-
在子域服務器中編寫/var/named/ops.linux.io.zone
$TTL 600 @ IN SOA ops.linux.io. admin.ops.linux.io. ( 2017052401 1H 5M 3D 2H ) @ IN NS ns1 ns1 IN A 192.168.209.137 abc IN A 6.6.6.6
-
修改文件權限
~]# chown .named /var/named/ops.linux.io.zone ~]# chmod o= /var/named/ops.linux.io.zone
-
檢查53端口是否開啟
-
rndc reload
-
檢查錯誤
~]# named-checkconf ~]# named-checkzone ops.linux.io /var/named/ops.linux.io.zone zone ops.linux.io/IN: loaded serial 2017052401 OK [root@centos7 named]# tail /var/log/messages
-
父域解析:dig -t A ns1.ops.linux.io @192.168.209.134;flags:沒有aa
子域解析:dig -t A ns1.ops.linux.io @192.168.209.137;flags:有aa
轉發
- forward為only時找不到時,不找根;
-
forward為first找不到時,找根;
正常情況下,子域無法解析父域,如果實現轉發可解析父域 -
區域轉發
-
子域/etc/named.rfc1912.zones
zone "linux.io" IN { type forward; forward only; forwarders { 192.168.209.134; 192.168.209.135; }; };
-
此時子域解析父域,可以實現;但flags中沒有aa
dig -t A ns1.linux.io @192.168.209.137
-
-
全局轉發
-
在要設置全局轉發的主機的/etc/named.conf中設置
options中加入 forward only; forwarders { SERVER_IP; };
- 再次測試dig -t A www.baidu.com @192.168.209.135
-
在要設置全局轉發的主機的/etc/named.conf中設置
acl訪問控制列表
-
在/etc/named.conf中先定義才能使用,放在options之前;
acl acl_name { ip; 或 net/prelen; };
-
如果是對于全局控制,則在options中:
allow-recursion { acl_name; };
如果只是針對于某一個zone的控制,在相對應的zone中進行編輯:
zone "iounix.com" IN { type master; file "iounix.com.zone"; allow-query { acl_name; }; };
-
檢查錯誤,重載配置文件
named-checkconf
rndc reload -
測試
不同的訪問控制指令的表現:在192.168.209.134主機中進行操作;-
allow-query {}; 允許查詢的主機;
編輯:/etc/named.conf acl test { 192.168.209.137; }; 編輯:/etc/named.rfc1912.zones zone "iounix.com" IN { type master; file "iounix.com.zone"; allow-query { test; }; }; 在本地主機中(192.168.209.134): ~]# dig -t A www.iounix.com @192.168.209.134 ... ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;www.iounix.com. IN A ... 在192.168.209.137中進行: ~]# dig -t A www.iounix.com @192.168.209.134 ;; QUESTION SECTION: ;www.iounix.com. IN A ;; ANSWER SECTION: www.iounix.com. 3600 IN A 172.16.0.0 ;; AUTHORITY SECTION: iounix.com. 3600 IN NS dns2.iounix.com. iounix.com. 3600 IN NS dns1.iounix.com. ;; ADDITIONAL SECTION: dns1.iounix.com. 3600 IN A 192.168.209.134 dns2.iounix.com. 3600 IN A 192.168.209.137
-
allow-transfer {}; 允許哪些主機做區域傳送;默認是所有主機;
編輯:/etc/named.conf acl slavesrvs { 192.168.209.137; 127.0.0.0/8; }; 編輯:/etc/named.rfc1912.zones zone "iounix.com" IN { type master; file "iounix.com.zone"; allow-transfer { slavesrvs; }; }; 在本地主機中(192.168.209.134) ~]# dig -t axfr iounix.com @192.168.209.134 ; Transfer failed. ~]# dig -t axfr iounix.com @127.0.0.1 顯示列表 在192.168.209.137的主機 ~]# dig -t axfr iounix.com @192.168.209.134 顯示列表 在slavesrvs中沒有設置的主機 ~]# dig -t axfr iounix.com @192.168.209.134 ; Transfer failed.
-
allow-recursion { }; 允許哪此主機向當前DNS服務器發起遞歸查詢請求;
編輯:/etc/named.conf acl localnet { 192.168.209.0/24; 127.0.0.0/8; }; //recursion yes; allow-recursion { localnet; };
- allow-update { }; DDNS,允許動態更新區域數據庫文件中內容; 一般為none
-
view 智能DNS解析
-
在/etc/named.conf中,先定義acl
acl localnet { 192.168.209.137; }; acl mynet { 192.168.209.138; };
-
編輯/etc/named.rfc1912.zones
view local { match-clients { localnet; }; . . . zone "iounix.com" IN { type master; file "iounix.com/localnet"; }; }; view my { match-clients { mynet; }; zone "iounix.com" IN { type master; file "iounix.com/mynet"; }; }; view ex { match-clients { any; }; zone "iounix.com" IN { type master; file "iounix.com/any"; }; };
-
操作命令:
named-checkconf
rndc reload
mkdir /var/named/iounix.com
cd iounix.com
vim localnet$TTL 600 @ IN SOA iounix.com. admin.iounix.com. ( 2017052701 1H 10M 1D 2H ) IN NS dns1 dns1 IN A 192.168.209.134 www IN A 2.2.2.2
vim mynet
$TTL 600 @ IN SOA iounix.com. admin.iounix.com. ( 2017052701 1H 10M 1D 2H ) IN NS dns1 dns1 IN A 192.168.209.134 www IN A 3.3.3.3
vim any
$TTL 600 @ IN SOA iounix.com. admin.iounix.com. ( 2017052701 1H 10M 1D 2H ) IN NS dns1 dns1 IN A 192.168.209.134 www IN A 4.4.4.4
-
測試:
-
在192.168.209.137主機
~]# dig -t A www.iounix.com @192.168.209.134 ;; QUESTION SECTION: ;www.iounix.com. IN A ;; ANSWER SECTION: www.iounix.com. 600 IN A 2.2.2.2 ;; AUTHORITY SECTION: iounix.com. 600 IN NS dns1.iounix.com. ;; ADDITIONAL SECTION: dns1.iounix.com. 600 IN A 192.168.209.134
-
在192.168.209.138主機:
~]# dig -t A www.iounix.com @192.168.209.134 ;; QUESTION SECTION: ;www.iounix.com. IN A ;; ANSWER SECTION: www.iounix.com. 600 IN A 3.3.3.3 ;; AUTHORITY SECTION: iounix.com. 600 IN NS dns1.iounix.com. ;; ADDITIONAL SECTION: dns1.iounix.com. 600 IN A 192.168.209.134
-
在其他主機上:
~]# dig -t A www.iounix.com @192.168.209.134 ;; QUESTION SECTION: ;www.iounix.com. IN A ;; ANSWER SECTION: www.iounix.com. 600 IN A 4.4.4.4 ;; AUTHORITY SECTION: iounix.com. 600 IN NS dns1.iounix.com. ;; ADDITIONAL SECTION: dns1.iounix.com. 600 IN A 192.168.209.134
-
原創文章,作者:s,如若轉載,請注明出處:http://www.www58058.com/77276