RHCE【DNS服务器配置(实现正反向解析)】

目录

DNS服务器配置

准备工作:

配置DNS正向解析:

客户端测试:

配置DNS反向解析:

客户端测试:

host (选项) (参数)

dig 命令:

DNS域名解析中添加的各项解析记录


DNS服务器配置

准备工作:

#关闭防火墙
[root@server ~]# systemctl stop firewalld

#设置SELinux 成为permissive模式 临时关闭selinux防火墙
[root@server ~]# setenforce 0
[root@server ~]# getenforce 
Permissive
[root@client ~]# systemctl stop firewalld
[root@client ~]# setenforce 0
[root@client ~]# getenforce 
Permissive

#安装bind包
[root@server ~]# yum install bind -y

#查询软件包
[root@server ~]# rpm -ql bind
/etc/named.conf    #bind主配置文件
/var/named/slaves   #从dns服务器文件

配置DNS正向解析:
 

#编辑bind主配置文件:

[root@server ~]# vim /etc/named.conf 
#全面配置:
options {
        listen-on port 53 { 192.168.88.133; };  #定义监听端口,指定相应的IP地址

        directory       "/var/named";                   #定义数据文件目录

        allow-query     { any; };                       #允许所有的主机进行查询

        recursion yes;                                  #开启递归查询

        };

#定义区域:
zone "baidu.com" IN {
        type master;     #定义为master域名服务器
        file "baidu";    #正向解析资源记录文件
};

#编辑正向记录文件
[root@server ~]# vim /var/named/baidu

$TTL  1D
@           IN  SOA  @  admin.admin.com.  (
                     2024011700
                      1D 
                      1H
                      3H  
                      1D )
            IN  NS  dns.baidu.com.
dns         IN  A   192.168.88.133

www         IN  A   192.168.88.111
a           IN  A   192.168.88.222
aaa         IN  CNAME   a
 
#重启named服务
[root@server ~]# systemctl restart named

#正向解析方法一:
#使用nslookup工具
[root@server ~]# nslookup
> server 192.168.88.133         #指定我们自己的DNS服务器 
Default server: 192.168.88.133
Address: 192.168.88.133#53
> www.baidu.com                 #发起查询
Server:        192.168.88.133
Address:    192.168.88.133#53

Name:    www.baidu.com
Address: 192.168.88.111



#正向解析方法二:

#编辑当前主机的DNS服务的地址
[root@server ~]# vim /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.88.133

#无需指定直接就解析出来了
[root@server ~]# nslookup www.baidu.com
Server:        192.168.88.133
Address:    192.168.88.133#53

Name:    www.baidu.com
Address: 192.168.88.111

         

客户端测试:

[root@client ~]# host www.baidu.com 192.168.88.133
Using domain server:
Name: 192.168.88.133
Address: 192.168.88.133#53
Aliases: 

www.baidu.com has address 192.168.88.111

[root@client ~]# nslookup www.baidu.com 192.168.88.133
Server:        192.168.88.133
Address:    192.168.88.133#53

Name:    www.baidu.com
Address: 192.168.88.111

[root@client ~]# dig -t A www.baidu.com @192.168.88.133

; <<>> DiG 9.16.37 <<>> -t A www.baidu.com @192.168.88.133
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 50477
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
; COOKIE: 03824b996c4386530100000065a6ba527d5cb9ba5f4aee9b (good)
;; QUESTION SECTION:
;www.baidu.com.			IN	A

;; ANSWER SECTION:
www.baidu.com.		86400	IN	A	192.168.88.111

;; Query time: 0 msec
;; SERVER: 192.168.88.133#53(192.168.88.133)
;; WHEN: Wed Jan 17 01:18:10 CST 2024
;; MSG SIZE  rcvd: 86

配置DNS反向解析:

#编辑bind主配置文件:
[root@server ~]# vim /etc/named.conf 
#全面配置:
options {
        listen-on port 53 { 192.168.88.133; };  #定义监听端口,指定相应的IP地址

        directory       "/var/named";                   #定义数据文件目录

        allow-query     { any; };                       #允许所有的主机进行查询

        recursion yes;                                  #开启递归查询

        };

#定义区域:
#正向解析区域
zone "baidu.com" IN {
        type master;     #定义为master域名服务器
        file "baidu";    #正向解析资源记录文件
};

#反向解析区域
zone "88.168.192.in-addr.arpa" IN{
        type master;   #定义为master域名服务器
        file "133";       #反向解析资源记录文件
};

#编辑反向记录文件
[root@server ~]# vim /var/named/133
[root@server ~]# cat /var/named/133
$TTL 1D
@    IN    SOA    @    admin.admin.com.  ( 
                    2024011701
                    1D
                    1H
                    3H
                    1D )
      IN     NS   dns.baidu.com.
133   IN     PTR  dns.baidu.com.
111   IN     PTR  www.baidu.com.
222   IN     PTR  a.baidu.com.
222   IN     PTR  aaa.baidu.com.    

#反解需要注意:主机名尽量使用完整的FQDN,即要写上“.”

#重启named服务
[root@server ~]# systemctl restart named

#反向解析查询方法一:
[root@server named]# nslookup
> server 192.168.88.133
Default server: 192.168.88.133
Address: 192.168.88.133#53
> 192.168.88.111
111.88.168.192.in-addr.arpa	name = www.baidu.com.

#反向解析查询方法二:
#编辑当前主机的DNS服务的地址
[root@server ~]# vim /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.88.133

[root@server named]# nslookup 192.168.88.111
111.88.168.192.in-addr.arpa	name = www.baidu.com.

客户端测试:

[root@client ~]# host 192.168.88.111 192.168.88.133
Using domain server:
Name: 192.168.88.133
Address: 192.168.88.133#53
Aliases: 

111.88.168.192.in-addr.arpa domain name pointer www.baidu.com.
[root@client ~]# nslookup 192.168.88.111 192.168.88.133
111.88.168.192.in-addr.arpa	name = www.baidu.com.

[root@client ~]# dig -x  192.168.88.111 @192.168.88.133

; <<>> DiG 9.16.37 <<>> -x 192.168.88.111 @192.168.88.133
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31769
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
; COOKIE: 00009a47857367740100000065a6b9fbd20bed94b42f4eb3 (good)
;; QUESTION SECTION:
;111.88.168.192.in-addr.arpa.	IN	PTR

;; ANSWER SECTION:
111.88.168.192.in-addr.arpa. 86400 IN	PTR	www.baidu.com.

;; Query time: 1 msec
;; SERVER: 192.168.88.133#53(192.168.88.133)
;; WHEN: Wed Jan 17 01:16:43 CST 2024
;; MSG SIZE  rcvd: 111

host (选项) (参数)

选项:

-a : 显示详细的DNS信息
-c<类型> : 指定查询类型,默认值为“IN”
-C : 查询指定主机的完整的SOA记录
-r : 在查询域名时,不使用递归的查询方式
-t<类型> : 指定查询的域名信息类型
-v : 显示指令执行的详细信息
-w : 如果域名系统服务器没有给出应答信息,则总是等待,直到域名服务器给出应答
-W<时间> : 指定域名查询最长时间,如果在指定时间内域名服务器没有给出应答信息,则退出指令
-4 : 使用IPv4
-6 : 使用IPv6
 

dig 命令:

1,作用查询DNS包括NS记录,A记录,MX记录等相关信息的工具。

2,选项:

@<服务器地址>:指定进行域名解析的域名服务器;
-b:当主机具有多个IP地址,指定使用本机的哪个IP地址向域名服务器发送域名查询请求;
-f<文件名称>:指定dig以批处理的方式运行,指定的文件中保存着需要批处理查询的DNS任务信息;
-P:指定域名服务器所使用端口号;
-t<类型>:指定要查询的DNS数据类型;
-x:执行逆向域名查询;
-4:使用IPv4;
-6:使用IPv6;
-h:显示指令帮助信息。

主机:指定要查询域名主机;
查询类型:指定DNS查询的类型;
查询类:指定查询DNS的class;
查询选项:指定查询选项。

dig  -t  A  www.baidu.com   
dig -t A www.baidu.com +trace 

DNS域名解析中添加的各项解析记录

A记录: 将域名指向一个IPv4地址(例如:100.100.100.100),需要增加A记录

CNAME记录: 如果将域名指向一个域名,实现与被指向域名相同的访问效果,需要增加CNAME记录。这个域名一般是主机服务商提供的一个域名

MX记录: 建立电子邮箱服务,将指向邮件服务器地址,需要设置MX记录。建立邮箱时,一般会根据邮箱服务商提供的MX记录填写此记录

NS记录: 域名解析服务器记录,如果要将子域名指定某个域名服务器来解析,需要设置NS记录

TXT记录: 可任意填写,可为空。一般做一些验证记录时会使用此项,如:做SPF(反垃圾邮件)记录

AAAA记录: 将主机名(或域名)指向一个IPv6地址(例如:ff03:0:0:0:0:0:0:c1),需要添加AAAA记录

SRV记录: 添加服务记录服务器服务记录时会添加此项,SRV记录了哪台计算机提供了哪个服务。格式为:服务的名字.协议的类型(例如:_example-server._tcp)。

SOA记录: SOA叫做起始授权机构记录,NS用于标识多台域名解析服务器,SOA记录用于在众多NS记录中那一台是主服务器

PTR记录: PTR记录是A记录的逆向记录,又称做IP反查记录或指针记录,负责将IP反向解析为域名

SOA主要是与区域有关,所以domain要写域名。而SOA后面会接七个参数,这七个参数的意义如下:

  • Master DNS服务器主机名:这个区域主要是哪台DNS作为Master的意思。

  • 管理员的Email,发生问题可以联系这个管理员。由于@在数据库文件中有特殊含义,所以将用“.”代替@

  • 序号(Serial),这个序号代表的是这个数数据库文件的新旧,序号越大代表越新。所以当你更改了数据库内容时,需要将这个数值放大。

  • 更新频率(Refresh)定义slave多久向Master要求数据更新。

  • 失败重新尝试时间(Retry),如果Slave无法对Master实现连接,那么在多长时间内,Slave会尝试重新连接到Master。

  • 失效时间(Expire),如果一直尝试失败,持续连接到达这个设置值时限,那么Slave将不再继续尝试连接,并且尝试删除这份下载的zone file信息。

  • 缓存时间(Minumum TTL),如果这个数据库zone file中,每条记录都没有写到TTL缓存时间的话,那么就以这个SOA的设置值为主。ttl的意思是当这笔记录被其他DNS服务器查询到后,这个记录会在对方DNS服务器的缓存中,保持多久时间。如果写了$TTL,则以该值为准。

       时间单位:M(分钟),H(小时),D(天),W(周),默认是秒

你可能感兴趣的:(RHCE,服务器,linux,运维)