DNS搭建配置
DNS服务搭建
1.系统配置
[root@master01 ~]# cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) [root@master01 ~]# uname -r 3.10.0-514.el7.x86_64
2.安装工具
yum -y install bind bind-utils
3.主要配置文件
/etc/named.conf #主配置文件
/etc/named.rfc1912.zones #区域配置文件
3.1编辑/etc/named.conf
options { listen-on port 53 { any; }; #监听所有网段53端口 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"; allow-query { any; }; #允许所有IP
3.2编辑/etc/named.rfc1912.zones
在末尾添加以下配置: zone "test.com" IN { //zone的名称 type master; //类型 file "test.com.zone"; //test.com这个zone存放的文件地址 allow-update { none; }; }; zone "16.168.192.in-addr.arpa" in { //反解 type master; file "192.168.16.rev"; };
3.3编辑zone文件地址配置
vim /var/named/test.com.zone
$TTL 1D @ IN SOA test.com. root ( #dns区域地址 #配置通知邮箱 0 ; serial #更新序列号序列号 1D ; refresh #刷新时间 1H ; retry #重试延时 1W ; expire #失效时间 3H ) ; minimum #无效解析记录缓存时间 NS dns.test.com. #域名服务器解析记录 dns IN A 192.168.16.100 #dns.test.com. 域名解析地址为192.168.16.100 master01 IN A 192.168.16.100 master02 IN A 192.168.16.101 slave21 IN A 192.168.16.121 slave22 IN A 192.168.16.122 slave23 IN A 192.168.16.123 slave24 IN A 192.168.16.124 slave25 IN A 192.168.16.125
vim /var/named/192.168.16.rev
$TTL 1D @ IN SOA dns.test.com. abc.test.com. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS dns.test.com. 100 PTR master01.test.com. #PTR 反解 192.168.16.100对应到master01.test.com. 101 PTR master02.test.com. 121 PTR slave21.test.com. 122 PTR slave22.test.com. 123 PTR slave23.test.com. 124 PTR slave24.test.com. 125 PTR slave25.test.com.
4.开启服务
systemctl start named systemctl enable named
5.验证
[root@master01 ~]# nslookup master01.test.com Server: 192.168.16.100 Address: 192.168.16.100#53 Name: master01.test.com Address: 192.168.16.100 [root@master01 ~]# nslookup slave21.test.com Server: 192.168.16.100 Address: 192.168.16.100#53 Name: slave21.test.com Address: 192.168.16.121 [root@master01 ~]# nslookup 192.168.16.123 Server: 192.168.16.100 Address: 192.168.16.100#53 123.16.168.192.in-addr.arpa name = slave23.test.com.
6.服务端配置
windows系统 点击网络连接,配置dns服务器地址 清除dns缓存,ipconfig /flushdns
linux系统 修改网卡配置文件/etc/sysconfig/network-scripts/ifcfg-em1, 将PEERDNS参数(是否将dhcp获取到的dns配置覆盖手工配配置的dns服务器)改为no,并且添加DNS1=192.168.16.100 linux默认没有dns缓存 在通过ping 某个dns域名,无法解析的时候,可以看看cat /etc/resolv.conf 看这里面的dns是否有所设定的dns服务器。
7.配置参数
$TTL,这里为6小时。$TTL指令表示一个资源记录在其他DNS服务器中的缓存时间
SOA(start of authority)资源记录:它定义了一个域的全局特性,必须是出现在zone文件中的第一个资源记录,而且一个zone文件中必须只有一个SOA资源记录。其中SOA后面的dns是域名服务器(必须从NS指定的主机中选择), root是管理员邮箱(root@cobb.com),其全写分别是dns.data.com.和root.data.com,因为$ORIGIN指明了域名,所以这个地方可以略去。
serial,这部分用来标记ZONE文件更新,如果发生更新则Serial要单增,否则MASTER不会通知SLAVE进行更新。
refresh,这个标记SLAVE服务器多长时间主动(忽略MASTER的更新通知)向MASTER复核Serial是否有变,如有变则更新之。
retry,如Refresh过程不能完成,重试的时间间隔。
expire部分,如SLAVE无法与MASTER取得联系,SLAVE继续提供DNS服务的时间,这里为2W(两周时间)。Expire时间到期后SLAVE仍然无法联 系MASTER则停止工作,拒绝继续提供服务。Expire的实际意义在于它决定了MASTER服务器的最长下线时间(如MASTER迁移,DOWN机等)。
minimum部分,这个部分定义了DNS对否定回答(NXDOMAIN即访问的记录在权威DNS上不存在)的缓存时间。
NS(name server)资源记录:它定义了为本域(domain)服务的域名服务器。
A(Address)资源记录:它定义域名的IPv4地址。