Centos7搭建DNS服務器

#1.安裝bind軟件    yum install bind -y
[root@localhost named]# vi /etc/named.conf  //  // named.conf  //  // Provided by Red Hat bind package to configure the ISC BIND named(8) DNS  // server as a caching only nameserver (as a localhost DNS resolver only).  //  // See /usr/share/doc/bind*/sample/ for example named configuration files.  //  // See the BIND Administrator's Reference Manual (ARM) for details about the  // configuration located in /usr/share/doc/bind-{version}/Bv9ARM.html    options {  	listen-on port 53 { 192.168.1.7; };  	listen-on-v6 port 53 { ::1; };  	directory 	"/var/named";  	dump-file 	"/var/named/data/cache_dump.db";  	statistics-file "/var/named/data/named_stats.txt";  	memstatistics-file "/var/named/data/named_mem_stats.txt";  	recursing-file  "/var/named/data/named.recursing";  	secroots-file   "/var/named/data/named.secroots";  	allow-query     { any; };    	/*  	 - If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.  	 - If you are building a RECURSIVE (caching) DNS server, you need to enable  	   recursion.  	 - If your recursive DNS server has a public IP address, you MUST enable access  	   control to limit queries to your legitimate users. Failing to do so will  	   cause your server to become part of large scale DNS amplification  	   attacks. Implementing BCP38 within your network would greatly  	   reduce such attack surface  	*/  	recursion yes;    	dnssec-enable yes;  	dnssec-validation yes;    	/* Path to ISC DLV key */  	bindkeys-file "/etc/named.root.key";    	managed-keys-directory "/var/named/dynamic";    	pid-file "/run/named/named.pid";  	session-keyfile "/run/named/session.key";  };    logging {          channel default_debug {                  file "data/named.run";                  severity dynamic;          };  };    zone "." IN {  	type hint;  	file "named.ca";  };    include "/etc/named.rfc1912.zones";  include "/etc/named.root.key";    [root@localhost named]# 

vi /etc/named.rfc1912.zones

在最後加上:

//正向區域配置  zone "xiaochangwei.com" IN {      type master;      file "xiaochangwei.com.zone";      allow-update { none; };  };    //反向區域配置  zone "1.168.192.in-addr.arpa" IN {      type master;      file "xiaochangwei.com.local";      allow-update { none; };  };

 進入/var/named

cp -p named.empty xiaochangwei.com.zone

vi xiaochangwei.com.zone

$TTL 1D  @    IN SOA    @ rname.invalid. (                      0    ; serial                      1D    ; refresh                      1H    ; retry                      1W    ; expire                      3H )    ; minimum      NS    @      A    192.168.1.7    www IN A 192.168.1.6  ftp IN A 192.168.1.6  mail IN CNAME www

vi xiaochangwei.com.local

$TTL 1D  @    IN SOA    @ rname.invalid. (                      0    ; serial                      1D    ; refresh                      1H    ; retry                      1W    ; expire                      3H )    ; minimum      NS    @      A    192.168.1.7  6 IN PTR www.xiaochangwei.com.  #最前面的6代表ip的最後一位,因為在named.rfc1912.zones反向配置中,倒敘配置了ip前三位,所以這裡就相當於說192.168.1.6解析到www.xiaochangwei.com這個域名  9 IN PTR www.zycloud.info.    #同理,192.168.1.9就會解析到 www.zycloud.info這個域名。 注意域名後面有個點,不能省略
systemctl restart named  systemctl enable named

換一台電腦DNS設置為DNS服務器地址(192.168.1.7)

[root@1-5 ~]# nslookup ftp.xiaochangwei.com  Server:        192.168.1.7  Address:    192.168.1.7#53    Name:    ftp.xiaochangwei.com  Address: 192.168.1.6    [root@1-5 ~]#  [root@1-5 ~]# nslookup www.xiaochangwei.com  Server:        192.168.1.7  Address:    192.168.1.7#53    Name:    www.xiaochangwei.com  Address: 192.168.1.6    [root@1-5 ~]# 

若提示nslookup沒安裝,執行下面命令進行安裝

yum install bind-utils -y
[root@1-5 ~]# nslookup 192.168.1.6  6.1.168.192.in-addr.arpa    name = www.xiaochangwei.com.    [root@1-5 ~]# 

 需要注意的是:配置客戶機的DNS的時候不要在 /etc/resolv.conf中配置,不然重啟後會被覆蓋,

 應該在/etc/sysconfig/network-scripts/ifcfg-*中配置,啟動的時候會自動生成到resolv.conf中的

[root@1-5 ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33 |grep DNS  DNS1=192.168.1.7  [root@1-5 ~]#