Linux运维bind9-DNS正向解析DNS反向解析
2023-06-13 09:18:50 时间
DNS的正向解析
在DNS域名解析服务中,正向解析是指根据域名(主机名)查找到对应的IP地址。也就是说,当用户输入了一个域名后,bind服务程序会自动进行查找,并将匹配到的IP地址返给用户。这也是最常用的DNS工作模式。
正向解析: 根据主机名(域名)查找对应的IP地址。
自定义区域配置文件
这里自定义了一个boysec.cn的主机域,可以放在/etc/named.rfc1912.zones文件中,也可以放置在自定义的文件中,在/etc/named.conf里include进来
[root@k8s-dns ~]# cat /etc/named.rfc1912.zones
zone "boysec.cn" IN {
type master; #服务类型
file "boysec.cn.zone"; #解析规则保存文件名称
allow-update { none; }; #运行那些客户机动态更新解析信息
};
自定义区域数据库文件
- 一般而言是文本文件,且只包含资源记录、宏定义和注释
- 需在自定义区域配置文件中指定存放路径,可以绝对路径或相对路径(相对于/var/named目录)
- 注意文件的属性(属主、属组及权限)
[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必须是区域数据库文件第一条记录
例子:
@ 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(可以使用相对名称)
例子:
@ 600 IN NS ns1
A记录
A:只能定义在正向区域数据库文件中(ipv4->FQDN)
- name:FQDN(可以使用相对名称)
- value:IP
例子:
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,数字越小,级别越高,
例子:
@ 600 IN MX 10 mail
@ 600 IN MX 20 smtp
CNAME记录
CNAME:canonical name,别名(FQDN->FQDN)
- name :FQDN
- value :FQDN
例子:
eshop IN CNAME www
宏定义
- $ORIGIN .
- $TTL 60
注释
区域数据库文件中使用;
(分号)来进行注释
检查配置并生效
检查自定义区域配置
[root@k8s-dns etc]# named-checkzone boysec.cn /var/named/chroot/etc/boysec.cn.zone
zone boysec.cn/IN: loaded serial 2021
OK
检查主配置文件
[root@k8s-dns etc]# named-checkconf -z /etc/named.conf
zone boysec.cn/IN: loaded serial 2021
[root@k8s-dns etc]# named-checkconf
重启named服务
[root@k8s-dns etc]# systemctl restart named
验证解析
[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地址查找对应的主机名(域名)。
添加反解域自定区域
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; };
};
添加反解域的区域数据库文件
[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记录对应
检查反解域的配置
[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
重启服务,检查解析结果
[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.
相关文章
- 深度探索Linux运维之旅(linux运维)
- 探索Linux服务器类型之旅(查看linux服务器型号)
- 分配Linux地址段分配:解决物理内存管理的有效方案(linux地址段)
- 简单步骤:在Linux上安装MRTG(linux安装mrtg)
- Linux平台驱动开发:一次动力解析(linux平台驱动)
- Linux快速导出数据库表(linux导出数据库表)
- 解析Linux系统的虚拟内存(linux系统虚拟内存)
- Linux运维:从入门到高级(linux运维入门到高级)
- Windows下安装Linux虚拟机:快速、简单、高效(windows安装linux虚拟机)
- 解析Linux的中断处理机制(linux的中断处理)
- 提升自身:掌握Linux运维技术(linux运维技术)
- Linux运维:驾驭命令行魔力(linux运维命令)
- Linux文件系统卸载实践:深入解析(linux文件系统卸载)
- Linux软件:一份指南(linux软件目录)
- Linux的新分支: 进入新时代(linux的分支)
- 实用Linux运维脚本:打造无与伦比的效率(linux运维脚本实例)
- 深圳:引领Linux运维新路(深圳linux运维培训)
- 深入解析Linux总线设备及其关键驱动原理(linux总线设备与驱动)
- Linux 循环执行指南,让你的代码更高效(linux循环执行)
- Linux定时调度操作系统定时程序优化(linux定时程序)
- Linux系统下程序关闭的正确方式(linux关闭程序命令)
- 原子构建:推动Linux轻量化普及(atomic linux)
- 深入了解 Linux:五大子系统解析(linux五大子系统)
- Linux根目录:探索不一样的世界(linux父目录)