Service系统服务(四):搭建单区域DNS服务器、特殊DNS解析、配置DNS子域授权、搭建并测试缓存DNS
一、搭建单区域DNS服务器
目标:
本例要求要求为DNS区域tedu.cn搭建一台DNS服务器,以便用户能通过域名的方式访问网站。测试阶段主要提供以下正向记录:
svr7.tedu.cn ---> 192.168.4.7
pc207.tedu.cn ---> 192.168.4.207
www.tedu.cn ---> 192.168.4.100
配置完成后在客户机上验证查询结果。
方案:
快速构建DNS服务器的基本过程:
1> 安装 bind、bind-chroot 包
2> 建立主配置文件 /etc/named.conf
3> 建立地址库文件 /var/named/.. ..
4> 启动 named 服务
配置及使用DNS客户端的基本过程:
1> 修改配置文件/etc/resolv.conf,添加nameserver=DNS服务器地址
2> 使用host命令查询,提供目标域名作为参数
步骤:
步骤一:配置DNS服务器svr7
1)安装 bind、bind-chroot 包
[root@svr7 ~]# yum -y install bind bind-chroot
.. ..
2)建立主配置文件 /etc/named.conf
[root@svr7 ~]# mv /etc/named.conf /etc/named.conf.origin //备份默认配置
[root@svr7 ~]# vim /etc/named.conf //建立新配置
options {
directory "/var/named"; //地址库默认存放位置
};
zone "tedu.cn" { //定义正向DNS区域
type master; //主区域
file "tedu.cn.zone"; //自定义地址库文件名
};
3)建立地址库文件 /var/named/tedu.cn.zone
[root@svr7 ~]# cd /var/named/ //进地址库目录
[root@svr7 named]# cp -p named.localhost tedu.cn.zone //参考范本建地址库文件
[root@svr7 named]# vim tedu.cn.zone //修订地址库记录
$TTL 1D //文件开头部分可保持不改
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS svr7.tedu.cn. //本区域DNS服务器的FQDN
svr7 A 192.168.4.7 //为NS主机提供A记录
pc207 A 192.168.4.207 //其他正向地址记录.. ..
www A 192.168.4.100
4)启动 named 服务,并设置开机自启
[root@svr7 named]# systemctl restart named
[root@svr7 named]# systemctl enable named
Created symlink from /etc/systemd/system/multi-user.target.wants/named.service to /usr/lib/systemd/system/named.service.
步骤二:配置DNS客户机pc207并测试
1)修改配置文件/etc/resolv.conf,指定默认使用哪一台DNS服务器
[root@pc207 ~]# vim /etc/resolv.conf
nameserver 192.168.4.7
.. ..
2)使用host命令查询,提供目标域名作为参数
[root@pc207 ~]# host svr7.tedu.cn
svr7.tedu.cn has address 192.168.4.7
[root@pc207 ~]# host pc207.tedu.cn
pc207.tedu.cn has address 192.168.4.207
[root@pc207 ~]# host www.tedu.cn
www.tedu.cn has address 192.168.4.100
使用host测试DNS查询结果时,如果不方便修改/etc/resolv.conf文件,也可以采用“host 目标域名 DNS服务器地址”形式临时指定使用哪一台DNS服务器。
[root@pc207 ~]# host pc207.tedu.cn 192.168.4.7
Using domain server:
Name: 192.168.4.7
Address: 192.168.4.7#53
Aliases:
pc207.tedu.cn has address 192.168.4.207
二、特殊DNS解析
目标:
沿用案例1,本例要求掌握DNS轮询、泛域名解析的配置,实现的目标如下:
1> 为站点 www.tedu.cn 提供DNS轮询解析,三台Web服务器节点的IP地址分别为:192.168.4.100、192.168.4.110、192.168.4.120
2> 配置泛域名解析实现以下解析记录:任意名称.tedu.cn ---> 119.75.217.56
方案:
DNS轮询:FQDN ---> IP地址1、IP地址2、.. ..
泛域名解析(站点名不确定):多个FQDN ---> 一个IP地址
步骤:
步骤一:配置DNS轮询
1)修改DNS服务器上tedu.cn区域的地址库文件,在末尾添加轮询地址记录
[root@svr7 ~]# vim /var/named/tedu.cn.zone
.. ..
www A 192.168.4.100
www A 192.168.4.110
www A 192.168.4.120
2)重启系统服务named
[root@svr7 named]# systemctl restart named
3)在客户机pc207上测试轮询记录
针对目标www.tedu.cn执行多次查询,观察第1条结果的变化:
[root@pc207 ~]# host www.tedu.cn
www.tedu.cn has address 192.168.4.100 //第1个结果为192.168.4.100
www.tedu.cn has address 192.168.4.110
www.tedu.cn has address 192.168.4.120
[root@pc207 ~]# host www.tedu.cn
www.tedu.cn has address 192.168.4.120 //第1个结果为192.168.4.120
www.tedu.cn has address 192.168.4.110
www.tedu.cn has address 192.168.4.100
[root@pc207 ~]# host www.tedu.cn
www.tedu.cn has address 192.168.4.110 //第1个结果为192.168.4.110
www.tedu.cn has address 192.168.4.120
www.tedu.cn has address 192.168.4.100
步骤二:配置多对一的泛域名解析
1)修改DNS服务器上指定区域的地址库文件,在末尾添加*通配地址记录
[root@svr7 ~]# vim /var/named/tedu.cn.zone
.. ..
* A 119.75.217.56
2)重启系统服务named
[root@svr7 named]# systemctl restart named
3)在客户机pc207上测试多对一的泛域名解析记录
当查询未知站点(地址库中没有明确记录)时,以 * 对应的IP地址反馈:
[root@pc207 ~]# host station123.tedu.cn
station123.tedu.cn has address 119.75.217.56
[root@pc207 ~]# host movie.tedu.cn
movie.tedu.cn has address 119.75.217.56
[root@pc207 ~]# host tts8.tedu.cn
tts8.tedu.cn has address 119.75.217.56
三、配置DNS子域授权
目标:
沿用案例1,本例要求为上下级两个DNS区域建立父子关联,实现客户机向父DNS也可以查询到子域内的FQDN,基本要求如下:
1> 构建父DNS(tedu.cn)服务器
2> 构建子DNS(bj.tedu.cn)服务器
3> 在父DNS上配置子域授权
4> 测试子域授权查询
方案:
为一个DNS区域添加授权子域时,需要修改此区域的地址库,添加以下记录:
子域域名. IN NS 子DNS的FQDN.
子DNS的FQDN. IN A 子DNS的IP地址
步骤:
步骤一:构建父DNS(tedu.cn)服务器
1)将svr7配置为父DNS服务器,确认配置
主配置文件/etc/named.conf:
[root@svr7 ~]# viim /etc/named.conf
options {
directory "/var/named";
};
zone "tedu.cn" {
type master;
file "tedu.cn.zone";
};
.. ..
正向地址库文件:
[root@svr7 ~]# vim /var/named/tedu.cn.zone
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS svr7.tedu.cn.
svr7 A 192.168.4.7
pc207 A 192.168.4.207
www A 192.168.4.100
.. ..
确保服务已启用:
[root@svr7 ~]# systemctl restart named
2)测试 —— 向父DNS可成功查询到父区域中的站点
[root@pc207 ~]# host www.tedu.cn 192.168.4.7
Using domain server:
Name: 192.168.4.7
Address: 192.168.4.7#53
Aliases:
www.tedu.cn has address 192.168.4.100
.. ..
步骤二:构建子DNS(bj.tedu.cn)服务器
1)将pc207配置为子DNS服务器,确认配置
安装软件包bind、bind-chroot:
[root@pc207 ~]# yum -y install bind bind-chroot
.. ..
建立主配置文件/etc/named.conf:
[root@pc207 ~]# mv /etc/named.conf /etc/named.conf.origin //备份默认配置
[root@pc207 ~]# vim /etc/named.conf //建立新配置
options {
directory "/var/named";
};
zone "bj.tedu.cn" { //定义子DNS的正向区域
type master;
file "bj.tedu.cn.zone";
};
建立地址库配置文件:
[root@pc207 ~]# cd /var/named/ //进地址库目录
[root@pc207 named]# cp -p named.localhost tedu.cn.zone //参考范本建地址库文件
[root@pc207 named]# vim bj.tedu.cn.zone //修订地址库记录
$TTL 1D //文件开头部分可保持不改
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS pc207.bj.tedu.cn. //本区域DNS服务器的FQDN
pc207 A 192.168.4.207 //为NS主机提供A记录
www A 1.2.3.4 //添加测试记录 www.bj.tedu.cn
2)启动系统服务named,并设置开机自启
[root@pc207 named]# systemctl restart named
[root@pc207 named]# systemctl enable named
Created symlink from /etc/systemd/system/multi-user.target.wants/named.service to /usr/lib/systemd/system/named.service.
3)测试 —— 向子DNS可成功查询到子区域中的站点
[root@pc207 ~]# host www.bj.tedu.cn 192.168.4.207
Using domain server:
Name: 192.168.4.207
Address: 192.168.4.207#53
Aliases:
www.bj.tedu.cn has address 1.2.3.4
步骤三:在父DNS上配置子域授权
1)测试 —— 未配置子域授权时,向父DNS无法正确查询到子区域中的站点
若父DNS配置有 * 泛域名,则反馈的结果为对应的IP地址119.75.217.56,而不是子DNS中记录的1.2.3.4:
[root@pc207 ~]# host www.bj.tedu.cn 192.168.4.7
Using domain server:
Name: 192.168.4.7
Address: 192.168.4.7#53
Aliases:
www.bj.tedu.cn has address 119.75.217.56
若父DNS未配置有 * 泛域名,则找不到解析结果(not found):
[root@pc207 ~]# host www.bj.tedu.cn 192.168.4.7
Using domain server:
Name: 192.168.4.7
Address: 192.168.4.7#53
Aliases:
Host www.bj.tedu.cn not found: 3(NXDOMAIN)
2)修改父DNS区域tedu.cn的地址库,添加授权子域信息
[root@svr7 ~]# vim /var/named/tedu.cn.zone
.. ..
bj.tedu.cn. NS pc207.bj.tedu.cn. //子区域及子DNS主机名
pc207.bj.tedu.cn. A 192.168.4.207 //子DNS的IP地址
[root@svr7 named]# systemctl restart named //重启服务
步骤四:测试子域授权查询
测试 —— 成功配置子域授权以后,向父DNS可以正确查询到子区域中的站点:
[root@pc207 ~]# host www.bj.tedu.cn 192.168.4.7
Using domain server:
Name: 192.168.4.7
Address: 192.168.4.7#53
Aliases:
www.bj.tedu.cn has address 1.2.3.4
四、搭建并测试缓存DNS
目标:
本例要求熟悉缓存DNS的工作过程,准备一台可上网的RHEL7虚拟机,并完成下列任务:
1> 安装 bind、bind-chroot 包
2> 搭建并测试基于全局转发器的缓存DNS
注意:若所在机房不具备访问互联网DNS条件,此案例改由学员自行在家完成。
方案:
权威/官方DNS服务器的特点:
1> 至少管理一个DNS区域,,需要IANA等官方机构授权
2> 典型应用:根域DNS、一级域DNS、二级域DNS、三级域DNS、.. ..
缓存DNS服务器的特点:
1> 不需要管理任何DNS区域,但是能够替客户机查询,而且通过缓存、复用查询结果来加快响应速度
2> 典型应用:ISP服务商、企业局域网
缓存DNS服务器的解析记录来源:
1> 方式1:全局转发:将请求转发给指定的公共DNS(其他缓存DNS),请求递归服务
2> 方式2:根域迭代:依次向根、一级、二级……域的DNS服务器迭代
步骤:
步骤一:为虚拟机pc207提供上网条件
1)为虚拟机添加一块新的网卡,选择NAT或Bridge模式
若选择NAT模式(地址转换),则新加网卡的上网参数由虚拟化平台自动设置。
若选择Bridge模式(桥接),则新加网卡的上网参数需要参考真实网络的主机,必要时请网络管理员提供支持。
此处所列地址信息可帮助大家理解上网条件,但不作为练习的配置依据:
[root@pc207 ~]# ifconfig eth1 //检查新增网卡的IP地址
eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.70.129 netmask 255.255.255.0 broadcast 192.168.70.255
.. ..
[root@pc207 ~]# route -n //确认已配好默认网关
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.70.2 0.0.0.0 UG 100 0 0 eth1
192.168.70.0 0.0.0.0 255.255.255.0 U 100 0 0 eth1
.. ..
[root@pc207 ~]# cat /etc/resolv.conf //确认第一DNS为外部可用DNS地址
nameserver 192.168.70.2
.. ..
2)确保从主机pc207可访问到外部DNS
访问默认DNS可用(本机正常连网需要):
[root@pc207 ~]# host www.qq.com
www.qq.com has address 111.30.132.101
www.qq.com has IPv6 address 240e:e1:8100:28::2:16
访问指定DNS可用(全局转发的前提条件):
[root@pc207 ~]# host www.qq.com 202.106.0.20 //国内公共DNS服务器之一
Using domain server:
Name: 202.106.0.20
Address: 202.106.0.20#53
Aliases:
www.qq.com has address 111.30.132.101
www.qq.com is an alias for qq.com.edgesuite.net.
qq.com.edgesuite.net is an alias for a1574.b.akamai.net.
www.qq.com is an alias for qq.com.edgesuite.net.
qq.com.edgesuite.net is an alias for a1574.b.akamai.net.
步骤二:将pc207配置为缓存DNS(全局转发式)
1)安装bind、bind-chroot软件包
[root@pc207 ~]# yum -y install bind bind-chroot
.. ..
2)建立主配置文件/etc/named.conf
当收到来自客户机的DNS查询请求时,转发到外网的其他DNS服务器
[root@pc207 ~]# vim /etc/named.conf
options {
forwarders { 202.106.0.20; };
};
3)启动系统服务named,并设置开机自启
[root@pc207 ~]# systemctl restart named
[root@pc207 ~]# systemctl enable named
4)可向缓存DNS服务器pc207查询到公共域名(百度、网易等站点)
[root@pc207 ~]# host www.baidu.com 192.168.4.207 //查百度的站点IP
Using domain server:
Name: 192.168.4.207
Address: 192.168.4.207#53
Aliases:
www.baidu.com is an alias for www.a.shifen.com.
www.a.shifen.com has address 111.13.100.92
www.a.shifen.com has address 111.13.100.91
[root@pc207 ~]# host www.163.com 192.168.4.207 //查网易的站点IP
Using domain server:
Name: 192.168.4.207
Address: 192.168.4.207#53
Aliases:
www.163.com is an alias for www.163.com.lxdns.com.
www.163.com.lxdns.com is an alias for 163.xdwscache.ourglb0.com.
163.xdwscache.ourglb0.com has address 111.11.31.104
163.xdwscache.ourglb0.com has address 111.11.31.114
Service系统服务(四):搭建单区域DNS服务器、特殊DNS解析、配置DNS子域授权、搭建并测试缓存DNS的更多相关文章
- 搭建单区域DNS服务器
搭建单区域DNS服务器 案例1:搭建单区域DNS服务器 案例2:特殊DNS解析 案例3:配置 ...
- Linux基础二(修改ip地址、修改网关、修改DNS服务器、重新启动网络配置)
网络的初始化 .ip地址的修改(临时生效) 使用ifconfig命令 ifconfig 网卡名 ip地址 netmask 子网掩码 [root@localhost /]# ifconfig eth1 ...
- DNS 服务器无法正常解析时,可以尝试这样!
DNS 服务器无法正常解析时,可以尝试这样! ========================================================================联通:12 ...
- [转]DNS服务器原理详解与Centos6.x下搭建DNS服务器
转自:http://blog.it985.com/8958.html DNS 数据库的记录:正解,反解, Zone 的意义 通过DNS解析过程详解这篇文章,我们知道了要想访问www.zmit.cn,最 ...
- 在Ubuntu 15下搭建V/P/N服务器pptpd安装和配置
在Ubuntu 15下搭建VPN服务器pptpd安装和配置 在ubuntu下配置vpn的方式有很多种,其中比较常见的是pptpd,它配置简单,但是安全性不高,不过对于一般使用来说足够了,我按照程搭建了 ...
- 使用BIND安装智能DNS服务器(二)---配置rndc远程控制
首先两个BIND DNS服务器要正常运行. 主DNS服务器IP:192.168.1.100 客户机DNS服务器IP:192.168.1.101 1 主DNS端配置: cd /etc/ 生成 ...
- Service系统服务(一):安装一个KVM服务器、KVM平台构建及简单管理、virsh基本管理操作、xml配置文件的应用、为虚拟机制作快照备份、快建新虚拟机
一.安装一个KVM服务器 目标: 本例要求准备一台 RHEL7.2 服务器,将其搭建为KVM平台,主要完成下列操作: 1> 关闭本机的SELinux保护.防火墙服务 2> 挂载RHEL ...
- CentOS笔记——配置DNS服务器
前话 咳咳,这次Linux系统的DNS服务器搭建我不得不记下来.,这错误真的太蛋疼了,我整整弄了两天才解决问题(抱歉我很蠢). 也许有人会和我犯同样的错误,给大家分享一下经验. 首先总结一下知识点: ...
- 如何将centos7作为DNS服务器
简单来说,dns服务器是起到缓存的作用.比如说我们第一次dig www.baidu.com的时候,dns服务器因为没有解析过百度地址,所以它需要向上一级dns服务器进行查询,然后查询结果会缓存在这台d ...
随机推荐
- SQL Server 数据库使用备份还原造成的孤立用户和对象名‘xxx’无效的错误的解决办法
SQL Server 数据库使用备份还原造成的孤立用户和对象名‘xxx’无效的错误的解决办法 在使用数据库的过程中,经常会遇到数据库迁移或者数据迁移的问题,或者有突然的数据库损坏,这时需要从数据库的备 ...
- Code Review怎样做好
一.背景 最近随着交易业务快速扩展,研发组内新项目及新成员越来越多,如何做好Code Review,把控研发人员开发代码质量很是关键. 对于大部分业务团队,谈到Code Review就会面露哀状: ...
- vue仿追书神器,vue小说项目源码
vue-reader 一点阅读器!API源自追书神器,免费使用!目前已初步开发完成! Github项目地址:https://github.com/AntonySufer/vue-readle 欢迎is ...
- Python进阶:多线程、多进程和线程池编程/协程和异步io/asyncio并发编程
gil: gil使得同一个时刻只有一个线程在一个CPU上执行字节码,无法将多个线程映射到多个CPU上执行 gil会根据执行的字节码行数以及时间片释放gil,gil在遇到io的操作时候主动释放 thre ...
- Nginx允许跨域访问的配置问题
网站项目动静分离,静态资源服务器A 业务服务器B B中静态资源由A加载 出现如下问题: @font-face { font-family: 'iconfont'; src: url('../font ...
- l1和l2正则化
https://blog.csdn.net/tianguiyuyu/article/details/80438630 以上是莫烦对L1和L2的理解 l2正则:权重的平方和,也就是一个圆 l1正则:权重 ...
- Visual Assist 10.9.2248 破解版(支持VS2017) 转载
自己在Windows10下同时安装了VS2017和VS2013,先装的VS2017和Visual Assist,后装的VS2013,发现VS2013中没显示Visual Assist,Google了一 ...
- Java常用的几个Json库,性能强势对比!
作者:飞污熊 https://xncoding.com/2018/01/09/java/jsons.html 本篇通过JMH来测试一下Java中几种常见的JSON解析库的性能.每次都在网上看到别人说什 ...
- v8引擎的优化
1.编译优化 V8采用JIT即使编译技术. 例如JAVA是先编译成字节码,再由JVM编译成机器码,V8则没有中间的字节码,直接由源码生成语法树,然后编译成机器码. 2.隐藏类 当定义一个构造函数,使用 ...
- SPI、IIC、IIS、UART、JTAG的应用场合级区别
SPI SPI接口的全称是"Serial Peripheral Interface",意为串行外围接口,是Motorola首先在其MC68HCXX系列处理器上定义的. SPI接口 ...