DNS 域名解析服务器
一、准备工作
1.关闭防火墙以及 seliunx
[root@server ~]# systemctl stop firewalld
[root@server ~]# setenforce 0
2.挂载磁盘且配置 yum 源
[root@server ~]# mount /dev/sr0 /mnt[root@server ~]# vim /etc/yum.repos.d/base.repo
[BaseOS]
name=BaseOS
baseurl=file:///mnt/BaseOS
gpgcheck=0
[AppStream]
name=AppStream
baseurl=file:///mnt/AppStream
gpgcheck=0
二、实验开始
1.下载 bind 服务程序(伯克利因特网域名解析服务是一种全球使用最广泛的、最高效的、最安全的域名解析服务程序 )
[root@server ~]# dnf install bind -y
2.查看 bind 的配置文件
[root@server ~]# rpm -ql bind
正向解析
3.找到配置文件后进入编辑,进入文件修改图中红框部分
[root@server ~]# vim /etc/named.conf
4.根据上一步配置文件中我们写的正向解析中的资源文件为 named.openlab ,我们直接用 vim 来创建编写,这里注意绝对路径在全局设置配置中有路径为 /var/named
[root@server ~]# vim /var/named/named.openlab
5.修改完配置后需重启程序
[root@server ~]# systemctl restart named
6.测试:需另一台 linux 客户端主机
① 查看 dns 地址
[root@client ~]# nmcil device show # 列出所有网络设备的详细信息
② 使用 nslookup 命令将域名解析为对应的 IP 地址
[root@client ~]# nslookup
> server 192.168.96.142
Default server: 192.168.96.142
Address: 192.168.96.142#53> ns.openlab.com
Server: 192.168.96.142
Address: 192.168.96.142#53Name: ns.openlab.com
Address: 192.168.96.142> www.openlab.com
Server: 192.168.96.142
Address: 192.168.96.142#53Name: www.openlab.com
Address: 192.168.96.100> wwww.openlab.com
Server: 192.168.96.142
Address: 192.168.96.142#53wwww.openlab.com canonical name = www.openlab.com.
Name: www.openlab.com
Address: 192.168.96.100
③ 在客户端修改 DNS 解析配置文件
[root@client ~]# vim /etc/resolv.conf# Generated by NetworkManager
search localdomain
nameserver 192.168.96.142 # dns服务器所在的ip
④ 接下来使用 nslookup 时就不用在输入 server 指定本地 dns 服务器
注意:这里主机如果重启,我们在 /etc/resolv.conf 下修改的 dns 的地址会复原,因为没有改变网关地址
7.另一种解析工具 dig(信息更为详细:推荐)
反向解析
8.进入 named.conf 文件编辑反向解析
[root@server ~]# vim /etc/named.conf
9.根据区域文件创建资源文件
[root@server ~]# vim /var/named/named.192 $TTL 1D
@ IN SOA @ rname.invalid. (0 ; serial1D ; refresh1H ; retry1W ; expire3H ) ; minimumNS ns.openlab.com.
142 IN PTR ns.openlab.com.100 IN PTR www.openlab.com.111 IN PTR ftp.openlab.com.222 IN PTR mail.openlab.com.
10.重启服务
[root@server ~]# systemctl restart named
11.在客户端测试反向解析(通过 IP 地址获取域名地址)
[root@client ~]# dig -x 192.168.96.111