前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux运维bind9-DNS正向解析DNS反向解析

Linux运维bind9-DNS正向解析DNS反向解析

作者头像
王先森sec
发布2023-04-24 16:55:27
20.5K0
发布2023-04-24 16:55:27
举报
文章被收录于专栏:王先森

DNS的正向解析

在DNS域名解析服务中,正向解析是指根据域名(主机名)查找到对应的IP地址。也就是说,当用户输入了一个域名后,bind服务程序会自动进行查找,并将匹配到的IP地址返给用户。这也是最常用的DNS工作模式。

正向解析: 根据主机名(域名)查找对应的IP地址。

自定义区域配置文件

这里自定义了一个boysec.cn的主机域,可以放在/etc/named.rfc1912.zones文件中,也可以放置在自定义的文件中,在/etc/named.conf里include进来

代码语言:javascript
复制
[root@k8s-dns ~]# cat /etc/named.rfc1912.zones 
zone "boysec.cn" IN {
      type    master;              #服务类型
      file    "boysec.cn.zone";     #解析规则保存文件名称
      allow-update { none; };      #运行那些客户机动态更新解析信息
};

自定义区域数据库文件

  • 一般而言是文本文件,且只包含资源记录宏定义注释
  • 需在自定义区域配置文件中指定存放路径,可以绝对路径或相对路径(相对于/var/named目录)
  • 注意文件的属性(属主、属组及权限)
代码语言:javascript
复制
[root@k8s-dns etc]# cat boysec.cn.zone 
$ORIGIN .
$TTL 1D ;生存周期为1天
boysec.cn       IN SOA  ns.boysec.cn.   root.boysec.cn. (
                        2021 ;serial    #更新序列号
                        1D   ;refresh   #更新时间
                        1H   ;retry     #重试延时
                        1W   ;expire    #失效时间
                        3H   ;minimum   #无效解析记录的缓存时间
                        )
                NS      ns.boysec.cn.
$ORIGIN boysec.cn.
ns      A       10.1.1.250
www     A       1.2.3.4

资源记录(Resource Record)

name [ttl(缓存时间)] IN 资源记录类型(RRtype) Value

常用资源记录类型(RR-type)
SOA记录

SOA: 起始授权,只能有一条,可以理解为一段为自己dns做备注说明的文本,一般与ns一致

  • name:只能是区域名称,通常可以简写为@,例如:od.com.
  • value:有n个数值,最主要的是主DNS服务器的FQDN,点不可省略

注意:SOA必须是区域数据库文件第一条记录

例子:

代码语言:javascript
复制
@ 600 IN SOA  dns.boysec.cn. 管理员邮箱(dnsadmin.boysec.cn.)(
     序列号(serial number) ;注释内容,十进制数据,不能超过10位,通常使用日期时间戳,例如20210115
     刷新时间(refresh time) ;即每隔多久到主服务器检查一次
     重试时间(retry time) ;应该小于refresh time
     过期时间(expire time);当辅助DNS服务器无法联系上主DNS服务器时,辅助DNS服务器可以在多长时间内认为其缓存是有效的,并供用户查询。
     netgative answer ttl ;非权威应答的ttl,缓存DNS服务器可以缓存记录多长时间
 )
NS记录

NS:可以有多条,每一个NS记录,必须对应一个A记录

  • name:区域名称,通常可以简写为@
  • value:DNS服务器的FQDN(可以使用相对名称)

例子:

代码语言:javascript
复制
@ 600 IN NS ns1
A记录

A:只能定义在正向区域数据库文件中(ipv4->FQDN)

  • name:FQDN(可以使用相对名称)
  • value:IP

例子:

代码语言:javascript
复制
www  600(单位s) IN A 10.1.1.250
www  600(单位s) IN A 10.1.1.250

可以做轮询

MX记录

MX:邮件交换记录,可以有多个(用的不多)

  • name:区域名称,用于标识smtp服务器
  • value:包含优先级和FQDN
  • 优先级:0-99,数字越小,级别越高,

例子:

代码语言:javascript
复制
@ 600 IN MX 10 mail
@ 600 IN MX 20 smtp
CNAME记录

CNAME:canonical name,别名(FQDN->FQDN)

  • name :FQDN
  • value :FQDN

例子:

代码语言:javascript
复制
eshop IN CNAME www
宏定义
  • $ORIGIN .
  • $TTL 60
注释

区域数据库文件中使用;(分号)来进行注释

检查配置并生效

检查自定义区域配置
代码语言:javascript
复制
[root@k8s-dns etc]# named-checkzone boysec.cn /var/named/chroot/etc/boysec.cn.zone 
zone boysec.cn/IN: loaded serial 2021
OK
检查主配置文件
代码语言:javascript
复制
[root@k8s-dns etc]# named-checkconf -z /etc/named.conf 
zone boysec.cn/IN: loaded serial 2021
[root@k8s-dns etc]# named-checkconf

重启named服务

代码语言:javascript
复制
[root@k8s-dns etc]# systemctl restart named

验证解析

代码语言:javascript
复制
[root@k8s-dns etc]# nslookup www.boysec.cn                                         
Server:         10.1.1.250
Address:        10.1.1.250#53

Name:   www.boysec.cn
Address: 1.2.3.4

反向解析

在DNS域名解析服务中,反向解析的作用是将用户提交的IP地址解析为对应的域名信息,它一般用于对某个IP地址上绑定的所有域名进行整体屏蔽,屏蔽由某些域名发送的垃圾邮件。它也可以针对某个IP地址进行反向解析,大致判断出有多少个网站运行在上面。

反向解析:根据IP地址查找对应的主机名(域名)。

添加反解域自定区域

代码语言:javascript
复制
vim /etc/named.rfc1912.zones
zone "1.1.10.in-addr.arpa" IN {
      type master;
      file "1.1.10.in-addr.arpa.zone";
      allow-update { none; };
};

添加反解域的区域数据库文件

代码语言:javascript
复制
[root@k8s-dns etc]# cat 1.1.10.in-addr.arpa.zone 
$TTL 600        ; 10 minutes
@                       IN SOA  dns.boysec.cn. dnsadmin.boysec.cn. (
                                20210115 ; serial
                                10800      ; refresh (3 hours)
                                900       ; retry (15 minutes)
                                604800     ; expire (1 week)
                                86400      ; minimum (1 day)
                                )
                            NS   ns1.boysec.cn.
$ORIGIN 1.1.10.in-addr.arpa.
$TTL 60 ; 1 minute
250                     PTR              k8s-dns.boysec.cn.

注意:一个IP只能对应唯一的FQDN反解PTR记录,且应该与正解A记录对应

检查反解域的配置

代码语言:javascript
复制
[root@k8s-dns etc]# named-checkzone 1.1.10.in-addr-arpa /var/named/chroot/etc/1.1.10.in-addr.arpa.zone 
zone 1.1.10.in-addr-arpa/IN: loaded serial 20210115
OK

重启服务,检查解析结果

代码语言:javascript
复制
[root@k8s-dns etc]# systemctl restart named
## 方法一
[root@k8s-dns etc]# dig -t PTR 250.1.1.10.in-addr.arpa @10.1.1.250 +short
k8s-dns.boysec.cn.

## 方法二
[root@k8s-dns etc]# dig -x 10.1.1.250 @10.1.1.250 +short
k8s-dns.boysec.cn.
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-08-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • DNS的正向解析
    • 自定义区域配置文件
      • 自定义区域数据库文件
        • 资源记录(Resource Record)
          • 常用资源记录类型(RR-type)
          • SOA记录
          • NS记录
          • A记录
          • MX记录
          • CNAME记录
          • 宏定义
        • 检查配置并生效
          • 检查自定义区域配置
          • 检查主配置文件
        • 重启named服务
          • 验证解析
          • 反向解析
            • 添加反解域自定区域
              • 添加反解域的区域数据库文件
                • 检查反解域的配置
                  • 重启服务,检查解析结果
                  相关产品与服务
                  数据库
                  云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档