运行环境
系统版本:CentOS Linux release 7.3.1611 (Core)
软件版本:Bind-x
硬件要求:无
安装过程
1、配置YUM源
[root@localhost ~]# rpm -i https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm [root@localhost ~]# yum clean all [root@localhost ~]# yum makecache
2、安装Bind
[root@localhost ~]# yum -y install bind
3、配置域名区域
编辑Bind软件的主配置文件,创建一个解析域名区域,指定服务器类型,指定区域数据库文件路径。
[root@localhost ~]# vim /etc/named.conf #==全局配置==# options { listen-on port 53 { any; }; listen-on-v6 port 53 { any; }; #设置服务监听地址和端口,"any"表示监听所有网卡地址。 directory "/var/named"; #设置Bind的主工作目录路径。 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; }; #设置查询权限,允许所有客户端在Bind服务器进行域名查询解析。 recursion yes; dnssec-enable yes; dnssec-validation yes; bindkeys-file "/etc/named.iscdlv.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"; }; #根区域配置,这里配置不需要做任何修改,客户端进行域名查询,第一次会去"."根域去查询,然后依次迭代查询。 #"type hint"表示域名区域的服务器类型为根提示服务器,"."根域服务器专属区域服务器类型。 zone "test.com" IN { type master; file "test.com.zone"; }; #创建一个新的正向解析域名区域,一般都是一个二级域名。 # type 设置域名区域的服务器类型,"master"表示为主域名解析服务器。 # file 设置区域数据库文件存放路径,区域数据库即域名解析记录存储位置,若为相对路径,则表示在Bind主工 # 作目录下。 include "/etc/named.rfc1912.zones"; include "/etc/named.root.key";
4、配置区域数据库
我们需要先从模板中拷贝一份区域数据库文件,在进行配置,拷贝的区域数据库文件需要给"named"用户读取和写入的权限。
[root@localhost ~]# cp /var/named/named.empty /var/named/test.com.zone [root@localhost ~]# chown named.named /var/named/test.com.zone [root@localhost ~]# vim /var/named/test.com.zone $TTL 3H @ IN SOA @ rname.invalid. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS @ A 127.0.0.1 AAAA ::1 NS www www A 192.168.1.130 #添加解析记录,在区域数据库配置文件中,"@"和"空白"都表示主域名。 #第一条添加的NS解析记录,表示将"test.com"主域名解析成"www.test.com"。 #第二条添加的A解析记录,表示将"www.test.com"三级域名解析成对应的主机地址"192.168.1.130"。
5、检查域名区域配置和区域数据库配置是否正确
[root@localhost ~]# named-checkconf /etc/named.conf [root@localhost ~]# named-checkzone test.com /var/named/test.com.zone zone test.com/IN: loaded serial 0 OK
6、启动服务
[root@localhost ~]# systemctl start named [root@localhost ~]# netstat -lnupt |grep named [root@localhost ~]# netstat -lnupt |grep named tcp 0 0 192.168.1.130:53 0.0.0.0:* LISTEN 8871/named tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 8871/named tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 8871/named tcp6 0 0 :::53 :::* LISTEN 8871/named tcp6 0 0 ::1:953 :::* LISTEN 8871/named udp 0 0 192.168.1.130:53 0.0.0.0:* 8871/named udp 0 0 127.0.0.1:53 0.0.0.0:* 8871/named udp6 0 0 :::53 :::* 8871/named
7、测试
我们只需要在客户端主机网卡适配器中设置DNS服务器为Bind服务器即可,在CMD命令提示符使用"ping"命令或者"nslookup"命令测试一下是否能够成功解析域名"test.com"和"www.test.com"即可。
来源:https://www.cnblogs.com/network-ren/p/12376985.html