DNS域名服务器-阿里云开发者社区

开发者社区> 技术小甜> 正文

DNS域名服务器

简介:
+关注继续查看

随着ABC公司业务的扩张,计算机越来越多的情况下,让员工记忆所有公司内部服务器的IP地址可能性不大,因此公司决定采用DNS解决方案,这样实现主机之间的通讯可以变的更简单。案例中我们使用的域为abc.com域,这个是正向解析的域,网络采用的是私有网络:172.16.0.0/16。本案例仅对公司主要的服务器生产解析记录,如果读者需要更多的记录,可以按照这些模版添加其他主机的记录信息,在公司内部服务器列表见表4-10

4-10

服务器IP

服务器名称

功能描述

172.16.0.254

dns1.abc.com

主域名服务器

172.16.0.253

dns2.abc.com

从域名服务器

172.16.0.100

fileserver.abc.com

文件服务器

172.16.0.101

printserver.abc.com

打印机服务器

172.16.0.200

www.abc.com

网站服务器

172.16.0.201

www.abc.com

网站服务器

172.16.0.25

mail.abc.com

邮件服务器

172.16.0.22

ntp.abc.com

时间服务器

1.         安装软件

[root@centos6 ~]# yum -y install bind

[root@centos6 ~]# yum -y install bind-chroot

[root@centos6 ~]# yum -y install bind-utils

2.         修改主配置文件

[root@centos6 etc]# cd /usr/share/doc/bind-9.8.2/sample/etc/

[root@centos6 etc]# cp named.conf /var/named/chroot/etc/

[root@centos6 etc]# chown root.named /var/named/chroot/etc/named.conf

[root@centos6 etc]# vim /var/named/chroot/etc/named.conf


  1. options 
  2. {        directory                   "/var/named";                   // "Working" directory 
  3.          dump-file                  "data/cache_dump.db"; 
  4.         statistics-file "data/named_stats.txt"; 
  5.         memstatistics-file "data/named_mem_stats.txt"; 
  6.          listen-on port 53      { any; }; 
  7.          allow-query               { any; }; 
  8.          allow-query-cache   { any; }; 
  9.          recursion yes; 
  10. }; 
  11. acl secondserver { 
  12.             172.16.0.253; 
  13.   }; 
  14.   zone "." IN { 
  15.             type hint; 
  16.             file "named.ca"; 
  17.   }; 
  18.   zone "abc.com" IN { 
  19.             type master; 
  20.             allow-transfer { secondserver; }; 
  21.             file "abc.com.zone"; 
  22.   }; 
  23.   zone "16.172.in-addr.arpa" IN { 
  24.             type master; 
  25.             allow-transfer { secondserver; }; 
  26.             file "172.16.zone"; 
  27.          }; 

3.         创建区数据文件

[root@centos6 etc]# cd /usr/share/doc/bind-9.8.2/sample/var/named/

[root@centos6 named]# cp named.ca /var/named/chroot/var/named/

[root@centos6 etc]# chown root.named /var/named/chroot/var/named/named.ca

[root@centos6 named]# cp named.localhost /var/named/chroot/var/named/abc.com.zone

[root@centos6 named]# chown root.named /var/named/chroot/var/named/abc.com.zone

[root@centos6 named]# vim /var/named/chroot/var/named/abc.com.zone


  1. $TTL 1D 
  2. @     IN SOA      dns1.abc.com. jacob.abc.com. ( 
  3.                                                10     ; serial 
  4.                                                1D    ; refresh 
  5.                                                1H    ; retry 
  6.                                               1W   ; expire 
  7.                                                3H )  ; minimum 
  8.          NS    dns1.abc.com. 
  9.          NS    dns2.abc.com. 
  10.          MX 10       mail.abc.com. 
  11. dns1                       IN A 172.16.0.254 
  12. dns2                       IN A 172.16.0.253 
  13. ntp.abc.com.    IN A 172.16.0.22 
  14. mail.abc.com.  IN A 172.16.0.25 
  15. fileserver      IN A 172.16.0.100 
  16. printserver        IN A 172.16.0.101 
  17. www                   IN A 172.16.0.200 
  18.                        IN A 172.16.0.201 

[root@centos6 named]# vim /var/named/chroot/var/named/ 172.16.zone


  1. $TTL 1D 
  2. @     IN SOA      dns1.abc.com. jacob.abc.com. ( 
  3.                                                10     ; serial 
  4.                                                1D    ; refresh 
  5.                                                1H    ; retry 
  6.                                                1W   ; expire 
  7.                                                3H )  ; minimum 
  8.              NS    dns1.abc.com. 
  9.              NS    dns2.abc.com. 
  10. 254.0        IN PTR      dns1.abc.com. 
  11. 253.0        IN PTR      dns2.abc.com. 
  12. 22.0         IN PTR      ntp.abc.com. 
  13. 25.0         IN PTR      mail.abc.com. 
  14. 100.0        IN PTR      fileserver.abc.com. 
  15. 101.0        IN PTR      printserver.abc.com. 
  16. 200.0        IN PTR      www.abc.com. 
  17. 201.0        IN PTR      www.abc.com. 

4.         服务管理

[root@centos6 ~]# iptables -I INPUT -p udp --dport 53 -j ACCEPT

[root@centos6 ~]# iptables -I INPUT -p tcp --dport 53 -j ACCEPT

[root@centos6 ~]# service named start

[root@centos6 ~]# chkconfig named on

1.         客户端验证

客户端正确配置DNS服务器后,查询工具比较多,常用的有nslookupdighost,下面分别演示这些命令的基本用法。

[root@centos6 ~]# nslookup www.abc.com

[root@centos6 ~]# nslookup 172.16.0.100

[root@centos6 ~]# dig www.abc.com

[root@centos6 ~]# dig abc.com MX

[root@centos6 ~]# host www.abc.com

4.1.1     部署从域名服务器

部署从域名服务器的作用是防止单点故障或实现负载均衡。如果只有一台服务器当该服务器宕机时,将导致所有客户端的地址解析出现问题。另外,为了满足大规模的查询请求,我们可以创建多台DNS服务器实现负载均衡。然而如果所有的DNS都作为主服务器的话,会有大量的配置需要我们重复进行,再有就是当解析记录发生改变后,各个服务器之间的区数据文件的版本比较混乱(不方便统一),所以我们需要部署从域名服务器,从域名服务器会从主域名服务器上下载数据文件,只要主服务器修改了数据文件中的记录,从服务器可以自动同步数据。

1.         安装软件

[root@centos6 ~]# yum -y install bind

[root@centos6 ~]# yum -y install bind-chroot

[root@centos6 ~]# yum -y install bind-utils

2.         修改配置文件

[root@centos6 etc]# cd /usr/share/doc/bind-9.8.2/sample/etc/

[root@centos6 etc]# cp named.conf /var/named/chroot/etc/

[root@centos6 etc]# chown root.named /var/named/chroot/etc/named.conf

[root@centos6 etc]# vim /var/named/chroot/etc/named.conf


  1. options 
  2.          directory                   "/var/named";                   // "Working" directory 
  3.          dump-file                  "data/cache_dump.db"; 
  4.         statistics-file "data/named_stats.txt"; 
  5.         memstatistics-file "data/named_mem_stats.txt"; 
  6.          listen-on port 53      { any; }; 
  7.          allow-query               { any; }; 
  8.          allow-query-cache   { any; }; 
  9.          recursion yes; 
  10. }; 
  11.   zone "." IN { 
  12.             type hint; 
  13.             file "named.ca"; 
  14.   }; 
  15.   zone "abc.com" IN { 
  16.             type master; 
  17.             masters { 172.16.0.254; }; 
  18.             file "abc.com.zone"; 
  19.   }; 
  20.   zone "16.172.in-addr.arpa" IN { 
  21.             type master; 
  22.             masters { 172.16.0.254; }; 
  23.             file "172.16.zone"; 
  24.          }; 

3.         同步数据文件

从服务器进行同步操作前,需要创建一个BIND软件可以进行读取操作的目录,以便将主服务器的数据文件保存至该目录。

当从服务器的主配置文件修改完成后,通过启动服务,BIND会自动根据主配置文件中的masters语句寻找服务器,并将主服务器的数据文件下载至从服务器本地。完成第一次的数据同步后,从服务器会根据同步过来的数据文件中的SOA记录选项,决定下次同步数据的时间,案例中主域名服务器的SOA记录括号中有五条选项。

第一个选项10是序列号,从服务器会根据这个序列号来决定是否进行同步操作,如果服务器端数据文件的序列号大于从服务器的序列号,从服务器才会与主服务器同步数据,该序列号建议使用时间格式,如20121212001表示20121212日的第一次修改(序列号只要是数字即可,BIND不强制要求具体数字格式)。

第二个选项1D,代表从服务器多久与主服务器进行序列号的对比(仅在主服务器序列号大于从服务器的序列号时,才进行数据同步),D代表Day,这里为1天。

第三个选项1H,代表如果从服务器请求连接主服务器时,由于网络延迟,主服务器故障等原因,暂时无法连接到主服务器,那么从服务器会每个一个小时再试一次。

第四个选项1W,代表如果从服务器尝试一周后还是没能连接到主服务器,则不再进行连接。

第五个选项3H,代表的是缓存的时间为3小时。

 注意:在CentOS 6.3系统中从服务器同步数据文件时需要修改SELinux设置,否则将无权限进行同步操作。

[root@centos6 ~]# setsebool -P named_write_master_zones=1

[root@centos6 ~]# mkdir -p /var/named/chroot/var/named/slaves/

[root@centos6 ~]# chown root.named /var/named/chroot/var/named/slaves/

[root@centos6 ~]# chmod 775 /var/named/chroot/var/named/slaves/

[root@centos6 ~]# service named start

[root@centos6 ~]# chkconfig named on





















本文转自丁丁历险51CTO博客,原文链接:http://blog.51cto.com/manual/1179606 ,如需转载请自行联系原作者


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
单位内部DNS架设及域名解析服务
越来越多的企业将企业内部局域网通过光缆、交换机等高速互连设备连接起来,形成较大规模的中型网络,网络上的主机和用户也随之日渐增多。作为 Internet的缩影,企业内部网上的各类服务器(如WWW服务器、FTP 服务器、E-mail服务器及各种备份服务器)也会随着业务量的增加而迅速增多,有些企业甚至给其内部的用户提供WWW虚拟主机服务。
963 0
国外注册的域名dns服务器换回国内dns服务器的详细教程!
国外注册的域名dns服务器换回国内dns服务器的详细教程! 其他国外域名也类似:   今天据网友反映打不开网站,了解之后才知道是域名ping不通了,   在论坛里了解到Godaddy的域名容易出现国内ping不通的情况。
4887 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
3975 0
美国如果把根域名服务器封了,中国会从网络上消失吗?
自从美国宣布“清洁网络”行动后,很多懂点网络的人,第一反应是,美国人会下手根域名服务器吗? 这种忧虑可不是一年两年了。 2014年6月24日的《人民日报》上引用专家发言:“目前美国掌握着全球互联网13台域名根服务器中的10台。理论上,只要在根服务器上屏蔽该国家域名,就能让这个国家的国家顶级域名网站在网络上瞬间“消失”。在这个意义上,美国具有全球独一无二的制网权,有能力威慑他国的网络边疆和网络主权。譬如,伊拉克战争期间,在美国政府授意下,伊拉克顶级域名“.iq”的申请和解析工作被终止,所有网址以“.iq”为后缀的网站从互联网蒸发。”1 《信息安全与通信保密》杂志2014年第10期的一篇文章写道:
89 0
域名dns的解析原理
DNS域名解析是互联网上非常重要的一项服务,上网冲浪(还有人在用这个词吗?)伴随着大量DNS服务来支撑,而对于网站运营来说,DNS域名解析的稳定可靠,意味着更多用户的喜欢,更好的SEO效果和更大的访问流量。
2080 0
+关注
6323
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载