搭建单区域DNS服务器

    xiaoxiao2022-07-13  215

    问题 公司网站已经搭建完成,但是目前只能通过IP地址进行访问。因前期已经申请了二级DNS区域tedu.cn,现要求为此区域搭建一台DNS服务器,以便用户能通过域名的方式访问网站。测试阶段主要提供以下正向记录解析: svr5.susutedu.cn —> 192.168.4.5 pc205susu.cn —> 192.168.4.205 win7pcsusu.cn —> 192.168.4.234 从Linux客户机上验证上述查询结果: 配置好客户机的/etc/resolv.conf文件 分别使用 nslookup、host工具进行测试,确保查询结果正常 方案 使用2台RHEL6虚拟机,其中一台作为DNS服务器(192.168.4.5)、另外一台作为测试用的Linux客户机(192.168.4.205),如图-1所示。 图-1 在服务器svr5中配置tedu.cn区域,并添加对应的A记录;在客户机pc205的配置文件/etc/resolv.conf中指定DNS服务器的IP地址,然后通过nslookup或host工具测试域名解析是否成功。 在RHEL6系统中,DNS服务器对应的软件包为bind,对应的系统服务为named,而为此服务提供“笼环境”安全保护的软件包为bind-chroot。 named服务端文件: 主配置文件位于:/etc/named.conf 。 解析记录文件(地址库)位于:/var/named/* 。 关于named.conf文件的配置构成,大家可以参考默认的/etc/named.conf文件,也可以执行man named.conf命令来获取帮助。 步骤 实现此案例需要按照如下步骤进行。

    步骤一:构建DNS服务器

    1)使用yum安装DNS所需软件包bind、bind-chroot

    [root@svr5 ~]# yum -y install bind bind-chroot .. .. [root@svr5 ~]# rpm -q bind bind-chroot bind-9.8.2-0.17.rc1.el6_4.6.x86_64 bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64

    2)为DNS服务定义区域 安装好bind软件包以后,默认提供了一个现成的/etc/named.conf配置文件,大家可以基于此文件的内容去修改,也可以移除此文件后重新建立。由于其中有很多配置内容尚未学到,为了简单起见,建议大家先做好备份,然后从空文件手动建立named.conf:

    [root@svr5 ~]# mv /etc/named.conf /etc/named.conf.bak //备份默认配置 [root@svr5 ~]# vim /etc/named.conf //建立新配置 options { directory "/var/named"; //地址文件的默认位置 }; zone "tedu.cn" IN { //定义正向区域 type master; //区域类型为主DNS file "tedu.cn.zone"; //地址库文件 }; 创建完成后,可以检查一下语法格式,如果有提示错误,则需要纠正;否则应无任何输出,说明语法上正常。 [root@svr5 ~]# named-checkconf /etc/named.conf [root@svr5 ~]# //无错误,无输出

    3)建立解析数据库(区域文件) 根据named.conf配置中指定的路径和名称,直接vim建立区域文件:

    [root@svr5 ~]# vim /var/named/susu.cn.zone $TTL 86400 @ IN SOA @ root.tedu.cn. ( 2015052201 ;更新序列号 4H ;刷新时间 15M ;重试间隔 4H ;超时时间 1D ;无效记录的生存时间 ) @ IN NS svr5.tedu.cn. ;本区域DNS服务器的FQDN svr5 IN A 192.168.4.5 ;本区域DNS服务器的IP地址 pc205 IN A 192.168.4.205 ;其他解析记录 win7pc IN A 192.168.4.110 建好之后,检查一下文件的配置语法,确保结果为OK: [root@svr5 named]# named-checkzone susu.cn /var/named/susu.cn.zone zone susu.cn/IN: loaded serial 2013090901 OK //检查未发现问题

    4)确保重新加载DNS服务程序 重新启动named服务:

    [root@svr5 named]# service named restart 停止 named: [确定] Generating /etc/rndc.key: [确定] 启动 named: [确定]

    第一次运行named服务时,服务脚本因生成/etc/rndc.key密钥文件需要提供一些随机信息,可能会耗时较长。采用以下任一种方法可避免漫长的等待:做一些随意的键盘输入或读磁盘操作(比如ls -R /)来增加随机信息;或者,直接执行rndc-confgen -r /dev/urandom -a操作来创建/etc/rndc.key文件。 注意:/dev/urandom是Linux系统中用来提供随机字串信息的特殊设备。 启动完成后,确认服务器的多个IP地址都监听了UDP 53端口:

    [root@svr5 named]# netstat -anptu|grep named tcp 0 0 192.168.4.5:53 0.0.0.0:* LISTEN 31868/named tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 31868/named tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 31868/named tcp 0 0 ::1:953 :::* LISTEN 31868/named udp 0 0 192.168.4.5:53 0.0.0.0:* 31868/named udp 0 0 127.0.0.1:53 0.0.0.0:* 31868/named

    步骤二:配置DNS客户机并测试

    1)为Linux客户机指定默认使用的DNS服务器地址 修改/etc/resolv.conf文件,通过nameserver记录设置:

    [root@pc205 ~]# vim /etc/resolv.conf .. .. nameserver 192.168.4.5

    2)使用nslookup查询任务要求的几个域名 查询域名svr5.susu.cn,对应的记录应为192.168.4.5:

    [root@pc205 ~]# nslookup svr5.susu.cn Server: 192.168.4.5 //DNS服务器的名称 Address: 192.168.4.5#53 //DNS服务器的地址、端口 Name: svr5.susu.cn //查询的目标域名 Address: 192.168.4.5 //反馈的结果IP地址 查询域名pc205.susu.cn,对应的记录应为192.168.4.205: [root@pc205 ~]# nslookup pc205.susu.cn Server: 192.168.4.5 Address: 192.168.4.5#53 Name: pc205.tedu.cn Address: 192.168.4.205 查询域名win7pc.susu.cn,对应的记录应为192.168.4.110: [root@pc205 ~]# nslookup win7pc.susu.cn Server: 192.168.4.5 Address: 192.168.4.5#53 Name: win7pcsusu.cn Address: 192.168.4.110
    最新回复(0)