目录
一,正向解析
1>安装软件bind
2>对三个配置文件进行修改
/etc/named.conf
/etc/named.rfc1912.zones
/var/named
关闭防火墙并重启服务
测试
在第二台虚拟机上将DNS服务器IP改成服务器IP
重新加载网卡
在第二台客户端进行测试
二,反向解析
配置文件的设置
/etc/named.rfc1912.zones
/var/named/192.168.38.arpa
重启服务
测试
三,过程中出现的报错
提供DNS服务的软件叫bind,服务名是named
[root@server ~]# yum install bind -y
- /etc/named.conf : 主配置文件,共59行,去除注释和空行之和有效行数仅30行左右,用于设置bind服务程序的运行
- /etc/named.rfc1912.zones : 区域配置文件(zone),用于==保存域名和IP地址对应关系文件的所在位置==,类似于图书目录,当需要修改域名与IP映射关系时需要在此文件中查找相关文件位置
- /var/named 目录:数据配置文件目录,该目录存储保存域名和IP地址映射关系的数据文件
修改11和19行即可
11 listen-on port 53 { any; };
19 allow-query { any; };
zone "openlab.com" IN {
type master;
file "openlab.com.zone";
allow-update { none; };
};
创建存储保存域名和IP地址映射关系的数据文件
[root@server named]# cp named.localhost openlab.com.zone
[root@server named]# vim openlab.com.zone
$TTL 1D
@ IN SOA ns.openlab.com. admin.qq.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS ns.openlab.com.
ns IN A 192.168.38.128
master IN A 192.168.38.128
www IN A 192.168.38.128
bbs IN A 192.168.38.128
[root@server named]# systemctl stop firewalld
[root@server named]# systemctl restart named
三种方法nmtui(图形化界面修改),nmcli(命令修改),配置文件修改(/etc/NetworkManager/system-connections/ens160.nmconnection )
[connection]
id=ens160
uuid=8eff1602-2daa-3ec2-ad30-6c5cf9f65b97
type=ethernet
autoconnect-priority=-999
interface-name=ens160
timestamp=1681106532
[ethernet]
[ipv4]
address1=192.168.38.136/24,192.168.38.2
dns=192.168.38.128;
method=manual
[ipv6]
addr-gen-mode=eui64
method=auto
[proxy]
[root@node1 ~]# nmcli connection reload
[root@node1 ~]# nmcli connection up ens160
[root@node1 ~]# host -a www.openlab.com
Trying "www.openlab.com"
Host www.openlab.com not found: 2(SERVFAIL)
Received 33 bytes from 192.168.38.128#53 in 2 ms
反向解析在正向解析的基础上进行操作
现在只需要对两个文件进行配置
- /etc/named.rfc1912.zones : 区域配置文件(zone),用于==保存域名和IP地址对应关系文件的所在位置==
- /var/named 这个目录下的文件
zone "38.168.192.in-addr.arpa" IN {
type master;
file "192.168.38.arpa";
allow-update { none; };
};
$TTL 1D
@ IN SOA ns.openlab.com. admin.qq.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS ns.openlab.com.
128 IN PTR ns.openlab.com.
128 IN PTR mail.openlab.com.
128 IN PTR bbs.openlab.com.
128 IN PTR www.openlab.com.
~
[root@server named]# systemctl restart named
[root@node1 ~]# nslookup 192.168.38.128
128.38.168.192.in-addr.arpa name = www.openlab.com.
128.38.168.192.in-addr.arpa name = mail.openlab.com.
128.38.168.192.in-addr.arpa name = ns.openlab.com.
128.38.168.192.in-addr.arpa name = bbs.openlab.com.
此时变成功了
但是在实验的过程中两个配置文件都没有问题,但是客户端就是无法使用服务端进行解析,报以下错误
** server can't find www.openlab.com: SERVFAIL
查了些资料才发现,如下
先进入/var/named这个目录
[root@node1 ~]#cd /etc/named
从上图可以看到我的这个文件配置的所属者和所属组都是root,这个就是问题所在了,这个文件的所属者必须是root,但是所属组必须named,执行如下命令
sudo chown root.named 192.168.1.zone
修改为如下
这个时候执行命令nslookup 192.168.1.254成功找到了域名。