相关概念: 正向解析:将域名解析成IP地址 反向解析:将IP地址解析成域名 环境:linux服务器一台,IP地址:192.168.80.10

第一步:准备工作 [root@localhost ~]# yum install bind //安装DNS服务 [root@localhost ~]# systemctl stop firewalld //关闭防火墙 [root@localhost ~]# setenforce 0 //关闭selinux 第二步:编辑配置文件 ---------------1.编辑主配置文件------------- [root@localhost ~]# vi /etc/named.conf
修改内容: options { listen-on port 53 { 192.168.80.10; }; //改成自己服务器的IP 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; }; //任何人都可以访问 如图: 保存退出 [root@localhost named]# named-checkconf //检查语法错误(如果有错误会有错误提示,如果没有错误,则无任何提示) ---------------2.编辑区域配置文件---------------- [root@localhost ~]# vi /etc/named.rfc1912.zones
……………… 最下面添加: //正向区域配置 zone "hello.com" IN { type master; file "hello.com.zone"; allow-update { none; }; }; //反向区域配置 zone "80.168.192.in-addr.arpa" IN { type master; file "hello.com.local"; allow-update { none; }; }; 保存退出 [root@localhost named]# named-checkconf //检查语法错误 -------------3.编辑正向区域数据配置文件-------------- [root@localhost ~]# cd /var/named [root@localhost named]# cp -p named.localhost hello.com.zone //注意:复制配置文件时,要保持源文件权限 [root@localhost named]# vi hello.com.zone 修改配置内容: $TTL 1D @ IN SOA @ rname.invalid. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS @ A 192.168.80.10 //本服务器地址 www IN A 192.168.80.10 //www.hello.com对应的地址 ftp IN A 192.168.80.10 //ftp.hello.com对应的地址 mail IN CNAME www //mail.hello.com是www.hello.com的另一个名称

  •       IN A      192.168.80.2        //如果后缀是hello.com但是前面的内容记录中没有的时候向查询主机返回192.168.80.2这个地址
    

保存退出 [root@localhost named]# named-checkconf //检查语法错误 -------------------4.编辑反向区域数据配置文件-------------------- [root@localhost named]# cp -p hello.com.zone hello.com.local [root@localhost named]# vi hello.com.local $TTL 1D @ IN SOA hello.com. rname.invalid. ( //此处@变量要修改成域名,注意最后面的“.”不能漏掉 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS @ A 192.168.80.10 10 IN PTR www.hello.com. //注意最后面的“.”不要漏掉 保存退出 [root@localhost named]# named-checkconf //检查语法错误 第三步:启动服务 [root@localhost named]# systemctl start named [root@localhost named]# netstat -anpu | grep name //查看服务运行状态,UDP 53端口在监听,如图: 第四步:测试,验证 [root@localhost named]# vi /etc/resolv.conf //配置服务器DNS 添加以下一行,其它全删掉: nameserver 192.168.80.10 保存退出 [root@localhost ~]# yum install bind-utils -y //安装解析查询命令nslookup //用nslookup命令验证解析域名与地址,如图: //解析成功