目录
第二步:服务端操作,编辑 openlab.com 区域的配置文件,可以选择一个模版修改局部(推荐),也可以全部清空重启写入数据
第二步:服务端操作,编辑区域配置文件,添加反向解析记录,注意:区域名称中IP地址反向书写,只需书写网段号
第三步:服务端操作,编辑数据配置文件,复制一份反向解析模(/var/named/named.loopback),复 制时需要加-a 参数,在修改局部即可
服务端IP | 客户端IP | 网址 |
192.168.232.189 | 192.168.232.169 |
www.openlab.com
|
一、正向解析
1、准备工作
# 服务端及客户端都关闭安全软件[root@server ~] # setenforce 0[root@server ~] # systemctl stop firewalld# 服务端安装 bind 软件[root@server ~] # yum install bind -y# 服务端配置静态IP[root@server ~] # nmcli c modify ens33 ipv4.method manual ipv4.addresses '192.168.232.189/24' ipv4.gateway '192.168.232.2' ipv4.dns '114.114.114.114‘[root@server ~] # nmcli c reload[root@server ~] # nmcli c up ens33连接已成功激活( D-Bus 活动路径: /org/freedesktop/NetworkManager/ActiveConnection/2 )# 客户端设置静态IP[root@node ~] # nmcli c modify ens33 ipv4.method manual ipv4.addresses '192.168.232.169/24' ipv4.gateway '192.168.232.2' ipv4.dns '114.114.114.114'[root@node ~] # nmcli c reload[root@node ~] # nmcli c up ens32连接已成功激活( D-Bus 活动路径: /org/freedesktop/NetworkManager/Act



2、DNS配置
第一步:服务端操作,编辑bind主配置文件
[root@server ~] # vim /etc/named.conf# 需改 2 行listen-on port 53 { 192.168.232.189; }; # any 为允许所有主机#这里表示谁来做域名解析服务器, 不想写本机IP地址就写any。allow-query { 192.168.232.169; }; #可以写any#允许列表,白名单,允许哪台机子申请域名解析服务
第二步:服务端操作,编辑 openlab.com 区域的配置文件,可以选择一个模版修改局部(推荐),也可以全部清空重启写入数据
[root@server ~] # vim /etc/named.rfc1912.zoneszone "openlab.com" IN { # 双引号中输入,表示管理那个区域type master; #当前服务类型是主服务器file "openlab.com.zone" ; # 双引号中输入,表示数据配置文件的名称,注意:不写路径文件名自己起,最好和管理区域有关,结尾一定要以‘zone’结尾allow-update { none; };};#区域:是一个管理概念,可以是一个公司,也可以是一个地理范围#假如要访问 www.openlab.com 这个网站,‘www’是服务名,万维网服务; ‘openlab.com’是一个范围,这个区域范围管理着许多子功能业务的主机,‘www’服务只是其中的一些主机拥有的 子服务, 其他子服务还可以是 ‘FTP’上传下载服务,还可以是bbs论坛服务等等。www.______.comFTP._______.combbs._______.com

区域配置文件的目录就解决了
第三步:服务端操作,编辑数据配置文件,使用拷贝命令将模版文件(/var/named/named.localhost)复制 一份在修改局部,注意:拷贝时需要加-a参数,即拷贝内容及文件属性保证文件内容一致、权限等信息不变。
#配置具体的存储域名与IP映射关系的数据文件[root@server ~] # cd /var/named # 切换到数据配置文件存储路径[root@server named] # lsdata dynamic named.ca named.empty named.localhost named.loopback slaves[root@server named] # cp -a named.localhost openlab.com.zone # -a 完整拷贝,相对路径!!!拷贝过来的解析模板新文名件一定要和file选项路径一样!!![root@server named] # vim openlab.com.zone # 完整格式修改如下
//不推荐直接对模板文件进行修改,要是管理的区域多,模板全都用了就没有参考了,所以可以把模板文件拷贝一份,拷贝的新文件名就是刚刚在“vim /etc/named.rfc1912.zones”操作中的“file "openlab.com.zone";”。
//命令 ’cp -a‘完整拷贝不仅仅拷贝内容,还有权限,属性。
//@:区域名称的代号。
//若干个授权记录组成;凡是写域名要加上“.”,这个点代表根域。
//openlab.com这个公司在这片区域负责域名解析的主机是ns.openlab.com,ns就是这片区域的管理者。
//rname.invalid.是管理员邮箱,邮箱本来是xxx@openlab.com.,但是’@‘不能用,所以只能用点‘.’。
//SOA起始授权记录
//NS 有主从关系
//自己既是域名解析服务,也是业务主机
//A记录,是域名与IP映射关系的记录
第四步:服务端重启服务
[root@server named] # systemctl restart named #没有消息就是好消息
3、测试
定义客户端,将客户端的dns修改为服务端的IP地址
# 编辑客户端网卡配置文件[root@node ~] # vim /etc/sysconfig/network-scripts/ifcfg-ens33dns = 192 .168.232.189; # dns 改为服务端的 IP 地址[root@node ~] # nmcli c reload[root@node ~] # nmcli c up ens33连接已成功激活( D-Bus 活动路径: /org/freedesktop/NetworkManager/ActiveConnection/4 )# 定位客户端测试[root@node ~] # nslookup www.openlab.comServer: 192 .168.232.189Address: 192 .168.232.189 #53Name: www.openlab.comAddress: 192 .168.232.189[root@node1~] # nslookup # 进入交互模式> bbs.openlab.comServer: 192 .168.232.189Address: 192 .168.232.189 #53Name: bbs.openlab.comAddress: 192 .168.232.189> # ctrl+d 退出[root@node ~] # dig www.opnelab.com; <<>> DiG 9 .16.23-RH <<>> www.opnelab.com;; global options: + cmd;; Got answer:;; - >>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 32112;; flags: qr rd ra; QUERY: 1 , ANSWER: 0 , AUTHORITY: 1 , ADDITIONAL: 1;; OPT PSEUDOSECTION:; EDNS: version: 0 , flags:; udp: 1232; COOKIE: 518104d477dc5c0801000000647eb0d120c077e2842cd3b4 (good);; QUESTION SECTION:;www.opnelab.com. IN A;; AUTHORITY SECTION:com. 863 IN SOA a.gtld-servers.net. nstld.verisign-grs.com. 16860243431800 900 604800 86400;; Query time: 0 msec;; SERVER: 192 .168.48.130 #53(192.168.48.130);; WHEN: Tue Jun 06 12 :06:41 CST 2023;; MSG SIZE rcvd: 151[root@node1 ~] # nslookup www1.openlab.comServer: 192 .168.232.189Address: 192 .168.232.189 #53www1.openlab.com canonical name = www.openlab.com.Name: www.openlab.comAddress: 192 .168.232.189
4、注意:第三步数据配置文件可以进行精简
- SOA起始授权记录:openlab.com. IN SOA ns.openlab.com. admin.openlab.com. (),表示 openlab.com.这个域名指定dns服务器为ns.openlab.com.这台主机,以及其它附加信息
- ns记录:openlab.com. IN NS ns.openlab.com. ,声明openlab.com.这个域名的dns服务 器为ns.openlab.com.主机
- 以上区别:NS记录仅仅只是声明该域内哪台主机是dns服务器,用来提供名称解析服务,NS记录不会区分 哪台dns服务器是master哪台dns服务器是slave。而SOA记录则用于指定哪个NS记录对应的主机是 master dns服务器,也就是从多个dns服务器中挑选一台任命其为该域内的master dns服务器,其他的 都是slave,都需要从master上获取域相关数据
- A记录:表示那台主机解析为什么IP地址
- CNAME记录:别名,www1.openlab.com.主机解析为www.openlab.com.主机在查找对应IP
- 精简原则:
可以使用@替代域名,如
@
替代
openlab.com.
可以使用空格或tab重复继承上一行第一列的值
可以省略域名,会自动补全,如:www为
www.openlab.com
.
配置文件可以省略如下:

二、反向解析
服务端IP | 客户端IP | 网址 |
192.168.232.189 | 192.168.232.169 |
www.openlab.com
|
1、准备工作
# 服务端及客户端都关闭安全软件[root@server ~] # setenforce 0[root@server ~] # systemctl stop firewalld# 服务端安装 bind 软件[root@server ~] # yum install bind -y# 服务端配置静态 IP[root@server ~] #nmcli c modify ens33 ipv4.method manual ipv4.addresses '192.168.232.189/24' ipv4.gateway '192.168.232.2' ipv4.dns '114.114.114.114‘[root@server ~] # nmcli c reload[root@server ~] # nmcli c up ens160连接已成功激活( D-Bus 活动径: /org/freedesktop/NetworkManager/ActiveConnection/2 )# 客户端设置静态 IP[root@node1 ~] # nmcli c modify ens160 ipv4.method manual ipv4.addresses192.168.48.131/24 ipv4.gateway 192.168.48.2 ipv4.dns 192.168.48.130 # 注意,此处 dns改为服务端的 IP 地址,后续就不用再单独修改[root@node1 ~] # nmcli c reload[root@node1 ~] # nmcli c up ens160连接已成功激活( D-Bus 活动路径: /org/freedesktop/NetworkManager/Act



2、DNS配置
第一步:服务端操作,编辑主配置文件
[root@server ~] # vim /etc/named.conf# 需改 2 行listen-on port 53 { any; }; # any 为允许所有主机allow-query { 192 .168.48.169; }; # 此处也可以写为 IP 地址
第二步:服务端操作,编辑区域配置文件,添加反向解析记录,注意:区域名称中IP地址反向书写,只需书写网段号
[root@server named] # vim /etc/named.rfc1912.zoneszone "232.168.192.in-addr.arpa" IN {type master;file "192.168.232.arpa" ;allow-update { none; };};

第三步:服务端操作,编辑数据配置文件,复制一份反向解析模(/var/named/named.loopback),复 制时需要加-a 参数,在修改局部即可
[root@server ~] # cd /var/named[root@server named] # lsdata dynamic named.ca named.empty named.localhost named.loopback slaves[root@server named] # cp -a named.loopback 192.168.232.arpa[root@server named] # vim 192.168.232.arpa

第四步:重启服务
[root@server named] # systemctl restart named
3、客户端测试
[root@node1 ~] # nslookup 192.168.232.189189.232. 168.192.in-addr.arpa name = www.openlab.com.189.232. 168.192.in-addr.arpa name = ftp.openlab.com.189.232. 168.192.in-addr.arpa name = ns.openlab.com.
