DNS服务
解析域名
域名---->IP
- 正向解析:域名---->IP
- 反向解析:IP---->域名
域名:haha.com
站点名:mail.haha.com
【1】、DNS的分布式结构
【2】、安装DNS软件包
bind
bind-chroot
在服务器端安装
主程序:bind
- 服务名:named
- 主要执行程序:/usr/sbin/named
- DNS协议默认端口:53
- 运行时的虚拟根环境:/var/named/chroot
bind-chroot:牢笼政策(安全方面的策略)
- 当bind中病毒开始疯狂删除自己的数据,此时bind-chroot就会将bind锁起来
- bind-chroot不需要任何的配置,安装好后自动生效
主配置文件:/etc/name.conf 设置负责解析的域名
地址库文件:/var/named 完全合格的域名与IP地址对应关系
[root@moudle01 10:14:03 ~]# yum install -y bind bind-chroot^C
[root@moudle01 10:14:23 ~]# rpm -q bind
bind-9.11.36-9.el8.x86_64
[root@moudle01 10:14:29 ~]# rpm -q bind-chroot
bind-chroot-9.11.36-9.el8.x86_64
【3】、修改主配置文件
# 修改之前先进行备份,-p参数保证复制时权限不变
[root@moudle01 10:31:37 ~]# cp -p /etc/named.conf /opt/
[root@moudle01 10:34:01 ~]# ll /opt/named.conf
-rw-r-----. 1 root named 1705 Mar 31 2023 /opt/named.conf
将主配置文件中的大部分内容进行删除,只留下如下内容
不设置监听主机,默认是本机
options {directory "/var/named";
};
# 可以有多个zone,但是file不要相同
zone "tedu.cn" IN { # 负责解析tedu.cn域名type master; # 本DNS服务器为quanweiDNS服务器file "tedu.cn.zone"; # 地址库文件名 tedu.cn.zone
};
【4】、修改地址库文件
# 我们不需要写出二级域名,可以缩写,缺少的二级域名,主配置文件会自动进行补充NS moudle01
moudle01 A 127.0.0.1
www A 1.1.1.1
ftp A 2.2.2.2
vip A 3.3.3.3
# 重启服务
【5】、验证
# 我们需要告诉客户端,DNS服务器IP是什么
echo nameserver 192.168.121.180 > /etc/resolv.conf
[root@clone-01 11:07:21 ~]# nslookup www.tedu.cn
Server: 192.168.121.180
Address: 192.168.121.180#53Name: www.tedu.cn
Address: 1.1.1.1
【6】、企业中常见工单要求
实现DNS服务器,在192.168.121.180机器上搭建
负责域名为sina.com,实现站点名为www的解析
实现www.sina.com解析结果为192.168.121.17
# 服务器,在主配置文件中添加
zone "sina.com" IN {type master;file "sina.com.zone";
};
# 在地址库文件中新建文件sina.com.zoneNS moudle01
moudle01 A 127.0.0.1
www A 192.168.121.17
# 解析测试
[root@moudle01 11:31:13 /var/named]# nslookup www.sina.com
Server: 192.168.121.180
Address: 192.168.121.180#53Name: www.sina.com
Address: 192.168.121.17
【6】、特殊的解析记录
-
泛域名解析
-
针对主机名(三级域名),所谓的泛域名解析,就是说我可以输入任何三级域名,都可以进行解析
# /var/name/tedu.cn.zone * A 7.7.7.7 tedu.cn. A 6.6.6.6 ##测试 [root@clone-01 15:19:12 ~]# nslookup wwwww.tedu.cn Server: 192.168.121.180 Address: 192.168.121.180#53Name: wwwww.tedu.cn Address: 7.7.7.7
-
在编写/var/named/tedu.cn.zone时,可以直接写上二级域名,直接解析二级域名,不需要加三级域名
-
-
造数函数:制造连续的数字 $GENERATE
-
针对有如下规律的域名和IP
-
pc1 192.168.121.1
pc2 192.168.121.2
pc3 192.168.121.3
....
-
# /var/name/tedu.cn.zone $GENERATE 1-50 pc$ A 192.168.121.$[root@clone-01 15:27:09 ~]# nslookup pc48.tedu.cn Server: 192.168.121.180 Address: 192.168.121.180#53Name: pc48.tedu.cn Address: 192.168.121.48
-
【7】、解析记录别名
# /var/name/tedu.cn.zone
tts CNAME ftp[root@clone-01 15:29:12 ~]# nslookup tts.tedu.cn
Server: 192.168.121.180
Address: 192.168.121.180#53tts.tedu.cn canonical name = ftp.tedu.cn.
Name: ftp.tedu.cn
Address: 2.2.2.2
【8】、递归解析和迭代解析
递归查询:客户端发送请求给首选DNS服务器,首选DNS服务器与其他的DNS服务器交流,最终将解析结果带回来
迭代查询:客户端发送请求给首选DNS服务器,首选DNS服务器会将下一个DNS服务器的信息发送给客户端,客户端拿着地址去下一个DNS服务器访问
首选DNS服务器一般是由运营商搭建的
一般首选DNS服务器都是递归查询
具体就是:我们是以递归查询的方式去向首选DNS服务器查询,而首选DNS服务器递归查询向根域名服务器去查询,最终首选DNS服务器,带着结果回到自己的主机