DNS 服务器
DNS( Domain Name System)是“域名系统”的英文缩写,是一种组织成域层次结构的计算机和网络服务命名系统,使用的是UDP协议的53号端口,它用于TCP/IP网络,它所提供的服务是用来将主机名和域名转换为IP地址的工作。DNS就是这样的一位“翻译官”,它的基本工作原理可用。
www.baidu.com ------------------->
---------------------> DNS ------------------->
--------------------> ipv4 : 192.168.43.1
1.安装配置dns所需环境
yum install bind -y
systemctl start named
systemctl enable named
systemctl stop firewalld.servise
systemctl disable firewalld.service
#主配置文件:/etc/name.conf
#子配置文件:/etc/name.rfc1912.zones
#数据文件 : /var/named
2. 高速缓存dns
高速缓存dns :存储已经查找到的有效名和地址的DNS服务器,同时检测无效名和地址。
1.web高速缓存服务器可以充分地缩短客户请求的响应时间
2.web高速缓存服务器可以充分地降低相应机构在因特网访问链路上的流量
3.在因特网的机构、地区、国家等层次上密布web高速缓存服务器主机可提供一个用于迅速散布内容的基础设施,即使是在低速访问链路之后的低速服务器主机上运行其Web站点的内容供应商也大受稗益
打开文件vim /etc/named.conf 就行配置修改如下图所示
更改 listen-on port 53 { any; };
allow-query { any; };
forwarders { 172.25.254.79; };
dnssec-enable no;
测试
由于服务端为虚拟机,要上网必须设置网关,如图所示设置网管为172.25.254.79,
接下来主机进行dig www.baidu.com ,然后对主机进行伪装使其成为路由器。接着运用虚拟机进行 dig www.baidu.com
发现第一次进行dig时网络效应时间较慢,为2085msec 之后在进行dig www.baidu.com
发现此时网络响应时间为0 msec 之后进行dig 发现网络响应时间都为0-1 msec ,可以看到高速缓存
生效了,使得网络连接变得很快,在公司中,高速缓存非常有效,所有的服务器只有第一台访问网站时
会有点慢 ,而见下来的其他主机访问速度会非常快,不需要就行对于域名的解析,因为第一台主机已经将
该域名解析过了, 之后其他主机相当于直接用ip进行访问,因为ip和域名都是在本地完成的,
网管的配置
在配置文件 /etc/sysconfig/network-scripts/ifcfg-jjjjj 添加网管为 GATEWAY=172.25.254.79
之后就行route -n进行查看网管是否配置完毕
第一次dig时间明显很长
第二次dig连接时间明显减短
注意:问题解决
就行高速缓存时,会遇到以下问题
; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 58542
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
此问题分为2中模式一种是由于提供网络的主机路由功能没开导致服务端无法连接网络
检查方法更改服务端虚拟机的 /etc/resolv.conf中username为114.114.114.114
此时再次dig www.baidu.com如果出现如下图所示,则为主机路由没开,这是因为虚拟机此时没网
把dns解析改为114.114.114.114.他都不能连接114.114.114.114,就行询问,当然不可以进行解析
此问题即为主机路由功能没开此时需要把主机路由伪装功能开启
如果出现如下图所示情况则为第二种情况
此种问题为网络连接可以进行,dns解析改为114.114.114.114时他可以从114.114.114.114那边得到
域名解析,而dns解析改为虚拟机自己ip时他不能明白该域名,此时则开始编辑/etc/named.conf文件
更改 文件 dnssec-enable yes;为no 此时再去dig www.baidu.com会发现
; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 65224
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 13, ADDITIONAL: 27
至此该问题解决完毕
3.权威DNS的正向解析
当用户输入域名时,通过dns解析服务反馈给用户ip
DNS的配置文件主要有
#主配置文件:/etc/name.conf
#子配置文件:/etc/name.rfc1912.zones
#数据文件 : /var/named
进行对于服务端的主配置文件修改如下,
对于子配置文件/etc/name.rfc1912.zones:
之后编辑 数据文件 : /var/named
[root@fuwuduan ~]# cd /var/named/
[root@fuwuduan named]# ls
data dynamic named.ca named.empty named.localhost named.loopback slaves
[root@fuwuduan named]# cp -p named.localhost wyx.com.zone
[root@fuwuduan named]# vim /var/named/wyx.com.zone
配置好文件重启服务。进行测试
打开客户端,更改客户端配置文件,更改客户端的dns域名解析服务人为服务端ip:172.25.254.118
[root@zhiji ~]# vim /etc/resolv.conf
然后进行测试
[root@zhiji ~]# dig www.wyx.com
4.权威DNS解析的域名一对多ip
编辑数据文件
[root@fuwuduan named]# vim wyx.com.zone
配置完成重启服务[root@fuwuduan named]# systemctl restart named
当客户端访问 liunx.wyx.com 时会出现ip地址的切换如下图所示:第一次访问
[root@zhiji ~]# dig liunx.wyx.com
第二次访问
[root@zhiji ~]# dig liunx.wyx.com
通过2次访问可以看到dns解析的ip发生了变化,通过这种方式1域名对多个ip可以缓解服务器的压力
5.权威DNS反向解析
当客户端输入ip时,通过dns反馈给用户域名
反向解析和正向解析基本类似,只是更改
#子配置文件:/etc/name.rfc1912.zones
#数据文件 : /var/named
有点不同,具体更改如下
[root@fuwuduan named]# vim /etc/named.rfc1912.zones
[root@fuwuduan named]# ls
data named.ca named.localhost slaves
dynamic named.empty named.loopback wyx.com.zone
[root@fuwuduan named]# cp -p named.loopback wyx.com.ptr
[root@fuwuduan named]# vim wyx.com.ptr
更改完成重新启动服务[root@fuwuduan named]# systemctl restart named
客户端输入
[root@zhiji ~]# dig -x 172.25.254.233
6.权威DNS的双向解析
DNS的双向解析配置内部人员访问内部网络,其他人访问外部网络。增强了网络安全性
配置服务端主配置文件,编写2个显示地址使得内外网访问的文件分开
[root@fuwuduan named]# vim /etc/named.conf
外网文件配置
由于外网配置文件/etc/named.rfc1912.zones.nat不存在,需要建立一个
[root@fuwuduan ~]# cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.zones.nat
数据文件 /var/named/wyx.com.nat也不存在,需要建立一个
[root@fuwuduan named]# cp -p wyx.com.zone wyx.com.nat
建立好进行编辑,设定外网用户访问www.wyx.com时访问的ip为172.25.254.199,
内网文件配置
配置子配置文件
[root@fuwuduan named]# vim /etc/named.rfc1912.zones
配置数据文件
[root@fuwuduan named]# vim wyx.com.zone
设定内网访问域名www.wyx.com时解析的ip为172.25.254.233
修改完配置文件后进行重启
[root@fuwuduan named]# systemctl restart named
测试
运用2台机器测试
配置2台主机的dns解析服务都为服务端IP172.25.254.118
[root@foundation18 kiosk]# vim /etc/resolv.conf
第一台ip为18的主机访问时
第二台主机ip为172.25.254.218访问时
7.辅助dns设置
辅助dns可以减轻主机的压力,避免主机超负荷工作使得主机服务奔溃。
主DNS配置
编辑子配置文件
[root@fuwuduan named]# vim /etc/named.rfc1912.zones
重启服务使更改生效
[root@fuwuduan named]# systemctl restart named
辅助DNS端配置
进行安装bind软件,以及进行网络环境的清空确保网络环境的正确
[root@zhiji ~]# yum install bind -y
[root@zhiji ~]# systemctl start named
[root@zhiji ~]# systemctl stop firewalld.service
[root@zhiji ~]# systemctl disable firewalld.service
之后进行对于主配置文件的更改
[root@zhiji slaves]# vim /etc/named.conf
以及字配置文件的更改
[root@zhiji slaves]# vim /etc/named.rfc1912.zones
配置完文件重启服务并查看服务是否生效
测试
修改主机18的DNS服务端口
[root@foundation18 kiosk]# vim /etc/resolv.conf
进行对于域名为www.wyx.com进行访问
[root@foundation18 kiosk]# dig www.wyx.com
发现提供dns解析为218,但是查看的还是可以对118的域名就行解析
8.远程DNS的更新
DNS远程解析即是用远程代理服务器所用的DNS,而不是用代理服务器再登上你本地设置DNS解析服务器。
服务端DNS配置
修改文件/etc/named.conf"
view localnat{
match-clients { 172.25.254.18; };
#本地用户18可以访问
zone "." IN {
type hint;
file "named.ca";
};
把match-clients中修改为172.25.254.218,由于之前做的操作都是更改内网文件
/etc/named.rfc1912.zones所以得把这个限制权限更改为副助机器218可以,否则
执行更新命令时会出现update failed: REFUSED,应为本文件只允许18可以访问,用
218去修改自然会被拒绝,也可以之间用18去更新,我在这里就用218去更新了
如果之前用的是/etc/named.rfc1912.zones.nat文件则没有这个问题
修改子配置文件/etc/named.rfc1912.zones使副机172.25.254.218拥有更新权力
修改目录/etc/named的权限使named组的成员对其具有写的能力,从而可以进行更新
在远程主机
进行更新命令
[root@zhiji slaves]# nsupdate
> server 172.25.254.118 更新172.25.254.118 主机
> update add kkkk.wyx.com 86400 A 5.55.5.5 添加一个域名为kkkk.wyx.com的IP为5.55.5.5 的dns
> send
>
更新命令输入完毕
服务端主机会出现wyx.com.zone.jnl文件
而且文件wyx.com.zone会发生更改之前远程主机更新的dns解析已经加入该文件中
远程主机给服务主机删除bbs
[root@zhiji slaves]# nsupdate
> server 172.25.254.118
> update delete kkkk.wyx.com 86400 A 5.55.5.5
> send
>
重启主机named服务
[root@fuwuduan named]# systemctl restart named
主机文件wyx.com.zone变化如下,kkkk.wyx.com 86400 A 5.55.5.5已经被删除
9.关于远程更新KEY
进行对于文件的恢复删除更新时留下的文件,使得实验环境的干净
之后在进行实验
本地服务主机
移动到/mnr/ 就行锁和钥匙的生成
查看钥匙和锁
输入
[root@fuwuduan named]# cp -p /etc/rndc.key /etc/wyx.key
并进行编辑/etc/wyx.key
修改
secret "9ZpHhOxtBHp5YXHTIMIFIg=="
为
[root@fuwuduan mnt]# cat Kwyx.+157+29019.key
wyx. IN KEY 512 3 157 IMzSmLd1MBx+VkgsWRFxMw==
中的 密码
secret "IMzSmLd1MBx+VkgsWRFxMw==";
修改主配置文件
[root@fuwuduan mnt]# vim /etc/named.conf
加上include "/etc/wyx.key";
修改子配置文件,把更新权限更改为需要钥匙
[root@fuwuduan mnt]# vim /etc/named.rfc1912.zones
修改完配置后重启服务
[root@fuwuduan mnt]# systemctl restart named
把生成的钥匙发给远程主机
测试
在远程主机
查看钥匙是否成功接受到
开始就行远程更新
不加钥匙更新时,会显示更新失败,可见锁以生效
加上钥匙
重启服务端的named服务,查看服务端主机的dns库是否更新
[root@fuwuduan mnt]# systemctl restart named
在远程主机上删除生成的kkkk
[root@zhiji mnt]# nsupdate -k Kwyx.+157+29019.key
> server 172.25.254.118
> update delete kkkk.wyx.com 86400 A 5.55.5.5
> send
> quit
重启服务,在本地服务主机查看
可见删除已经生效