前提了解
DNS解析服务器: 是将域名指向对应IP地址的服务器。 DNS服务器中保存了一张域名和与之相对应的IP地址的表,以解析消息的域名。 由于互联网连通的是全球资源,单一的域名服务器不足以支撑全部的地址转换操作,因此全球有多套域名服务器相互配合使用。
互联网中,一台计算机与其他计算机通信时,通过IP地址唯一的标志自己。此时的IP地址就类似于我们日常生活中的电话号码。但是,这种纯数字的标识是比较难记忆的,而且数量也比较庞大。例如,每个IPv4地址是一个32位长的二进制数字,或者采用点分十进制展示成192.168.1.1这种格式,有接近43亿个的IPv4地址。DNS的作用就是将人类可读的名称转换为机器识别的IP地址,供计算机相互连接。DNS的工作原理和电话簿相似,都是管理名称和数字之间的映射关系。就像我们日常打电话,一般使用人名查找,很少直接输入电话号码一样。当我们上网打开某个网页、视频时,也很少直接使用IP地址,而是在浏览器里输入的URL地址,例如:https://www.huawei.com,这其实使用的就是计算机的名字,一般称为域名。
DNS域名解析过程:
通过域名获取对应IP地址的过程称为域名解析。DNS域名解析分为以下两种方式:
- 静态域名解析
静态域名解析是通过静态域名解析表进行的,即手动建立域名和IP地址之间的对应关系表,该表的作用可以将一些常用的域名放入表中。当DNS客户端需要域名所对应的IP地址时,即到静态域名解析表中去查找指定的域名,从而获得所对应的IP地址,提高域名解析的效率
- 动态域名解析
动态域名解析需要专用的域名解析服务器(DNS服务器)运行域名解析服务器程序,提供从域名到IP地址的映射关系,负责接收客户提出的域名解析请求。
为提高查询速度,在解析域名时,首先采用静态域名解析的方法,如果静态解析不成功,再采用动态域名解析的方法。
正向解析
一、环境准备
1.准备两台相对干净的虚拟机,以免收到干扰。
这里我使用的是:
server端 192.168.190.148/24
node端 192.168.190.131/24
2.两台虚拟机都需要关闭安全软件,安装需要的软件,命令如下:
[root@server ~]# setenforce 0
[root@server ~]# systemctl stop firewalld
[root@server ~]# yum install bind -y
3.配置静态服务
# 服务端配置静态IP
[root@server ~]# nmcli c modify ens32 ipv4.method manual ipv4.addresses
192.168.190.148/24 ipv4.gateway 192.168.190.2 ipv4.dns 114.114.114.114
[root@server ~]# nmcli c reload
[root@server ~]# nmcli c up ens32
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/2)
# 客户端设置静态IP
[root@node ~]# nmcli c modify ens32 ipv4.method manual ipv4.addresses
192.168.190.131/24 ipv4.gateway 192.168.190.2 ipv4.dns 114.114.114.114
[root@node ~]# nmcli c reload
[root@node ~]# nmcli c up ens32
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/Act
二、配置DNS
1.定位服务端,编辑bind主配置文件named.conf (修改至如下图,意思为允许所有主机访问)
[root@server ~]# vim /etc/named.conf //打开配置文件
2.编辑文件named.rfc1912.zones,修改某一个正向的模板(修改至如下图,双引号内容,表示管理那个区域“openlab.com”)
[root@server ~]# vim /etc/named.rfc1912.zones
[root@server ~]# cd /var/named # 切换到数据配置文件存储路径
[root@server named]# ls
[root@server named]# cp -a named.localhost openlab.com.zone # -a 完整拷贝
[root@server named]# vim openlab.com.zone
![](https://i-blog.csdnimg.cn/blog_migrate/7a7c4366e3934d6b4c217bdb7c32691e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/0b0bb835113de1b8ec6957e821f590f1.png)
4.修改过文件后需要重启服务(如果有报错,请参考错误systemctl status named.service查看详情)
[root@server named]# systemctl restart named
三、测试
定位node端,将客户端的dns修改为服务端的ip地址。编辑网卡配置文件。(下图编写前后对比)
测试结果:
测试命令:
[root@node ~]# nslookup www.openlab.com
[root@node ~]# nslookup # 进入交互模式 ctrl+d退出
> bbs.openlab.com
[root@node ~]# dig www.opnelab.com
[root@node ~]# nslookup www1.openlab.com
反向解析
依旧两个虚拟机,在正向解析的基础上继续配置。
一、准备
1.server和node都需要配置静态ip
[root@server ~]# nmcli c modify ens32 ipv4.method manual ipv4.addresses 192.168.190.148/24 ipv4.gateway 192.168.190.2 ipv4.dns 114.114.114.114
[root@node ~]# nmcli c modify ens32 ipv4.method manual ipv4.addresses 192.168.190.131/24 ipv4.gateway 192.168.190.2 ipv4.dns 192.168.190.148 //注意此处需要将dns更改为服务端ip
二、DNS设置(过程跟正向相差无几,但是局部有很大的变动,正确理解两者含义)
1.定位server端,编辑主配置文件named.conf
2.服务端操作,编辑区域配置文件,添加反向解析记录,注意:区域名称中IP地址反向书写,只需
3.服务端操作,编辑数据配置文件,复制一份反向解析模版(/var/named/named.loopback),复
三、客户端测试
定位客户端
【root@node ~】nslookup 192.168.190.148
至此 正反向解析结束