前言
本讲给大家带来DNS转发器的功能实现,转发器功能是DNS实现“域外”查询的另一种方式,我们在以前的课程中给大家介绍了DNS的第一种“域外”查询:递归查询。今天我们把“域外”查询的知识点概念补全,通过模拟实验,实现DNS的转发器功能
通过图1我们可以看出,DNS转发器相当于一台普通“中介”机构,客户端发送域名寻求域名解析,转发器自己不进行解析,直接将该“请求”发往另外一台DNS服务器,由对方负责域名解析,它只负责将解析的结果转告给客户端,并保存相应的解析记录到自己的缓存中。
模拟实验
准备三台主机(vmware虚拟机实现)
- CentOS7:192.168.0.11 转发器
- Windows Server 2008:192.168.0.10 主DNS 提供pip.cc域的解析
- Windows7 Ultimate:192.168.0.198 客户端
本次模拟实验分成三个部分:主DNS配置、转发器配置、客户端验证
主DNS配置
图2 配置主DNS的IP地址信息
图3 配置主DNS服务器,拟定于我们仍然采用pip.cc这个域名,在该域名中添加若干条主机记录、别命记录、邮件交换记录,一会我们将测试这些记录。
转发器配置
图4 配置转发器的IP地址信息。
图5 安装bind,注意安装前请自行配置YUM本地源环境。
图6 修改bind主配置文件,设置转给谁(192.168.0.10),并关闭dnssec,如上图所示,两个选项统一设置为no,如果开启,dns将不进行域外解析。配置完毕后不要忘记重启服务,使配置生效(systemctl restart named)。
客户端验证
图7 设置客户端IP地址,在模拟环境中,三台主机都是192.168.0.0/24网段的,注意DNS服务器要指向转发器。
图8 验证效果,我们解析pip.cc 域的记录,可以看到解析成功,“非权威应答”说明是域外解析。实验完成。
总结
转发器是域外解析中常用的功能,一台DNS不可能提供所有的域名解析,大多数情况下,是通过转发功能和递归功能,借助其它DNS服务器的帮助,完成域名解析的。转发器的实现效果本身不难,关键是模拟环境的搭建,大家在仿做的时候要理解其中的含义。
閱讀更多 年糕IT講堂 的文章