# DNS简介 ``` DNS是域名系统(Domain Name System)的缩写,是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能使人更方便的访问互联网,而不用去记住网站的IP地址。 ``` # DNS体系结构 # Bind简介 ``` Bind是一款开放源代码的DNS服务器软件,Bind由美国加州大学Berkeley分校开发和维护的,全名为Berkeley Internet Name Domain它是目前世界上使用最为广泛的DNS服务器软件,支持各种unix平台和Windows平台。 ``` # 正向区域配置 ``` 第一步:apt install bind9 #安装服务 第二步:cd /etc/bind #进入路径 第三步:cp db.0 db.yu #复制正向区域模板 第四步:vim db.yu #打开配置文件 第五步:看图操作 ``` ``` 第六步:vim named.conf.default-zones #打开配置文件 第七步:看图操作 ``` ``` 第八步:systemctl restart bind9 #重启服务 第九步:systemctl status bind9 #查看服务状态 第十步:vim /etc/resolv.conf #配置相对应的DNS服务器 ``` # 测试 ``` 第一步:apt install dnsutils #安装测试软件 第二步:nslookup www.yu.com #测试 ``` # 思考问题 ``` 1.如何访问域名yu.com 2.如何前面支持任意主机名 www.yu.com aaa.yu.com sss.yu.com ``` # 反向区域配置 --- ``` 第一步:cd /etc/bind/ #进入此目录下 第二步:cp db127 db.2 #复制模板 第三步:vim db.2 #打开配置文件 第四步:看图操作 ``` --- ---- ``` 第五步:vim named.conf.default-zones #打开配置文件 ``` ``` 第六步:systemctl restart bind9 #重启服务 第七步:systemctl status bind9 #查看服务状态 ``` --- # 测试: ``` 第一步:apt install dnsutils #安装nslookup 第二步:nslookup 192.168.100.1 ``` # 测试结果: ``` Server: 192.168.100.1 Address: 192.168.100.1#53 1.100.168.192.in-addr.arpa name = skills39.com. ``` # DNS主从 ##### Server1配置 ``` 第一步:apt install bind9 #安装服务 第二步:cd /etc/bind #进入指定路径 第三步:搭建正向区域 第四步:vim named.conf.default-zones #打开配置文件 第五步:看图操作: ``` ![image.png](https://panfeng-biji.oss-cn-beijing.aliyuncs.com/oss/202111231952668.jpeg) ``` 第六步:systemctl restart bind9 #重启服务 第七步:systemctl status bind9 #查看服务状态信息 ``` ##### Server2配置 ``` 第一步:apt install bind9 #安装服务 第二步:cd /etc/bind #进入指定路径 第三步:vim named.conf.default-zones #打开配置文件 ``` ![image.png](https://panfeng-biji.oss-cn-beijing.aliyuncs.com/oss/202111231952939.jpeg) ``` chmod g+w /etc/bind #赋予写入权限 旁批:如果没有给此文件路径写入的权限则会如下图报错一样。 ``` ![image.png](https://panfeng-biji.oss-cn-beijing.aliyuncs.com/oss/202111231952262.jpeg) # 解决报错方法 ##### 方法1 ``` 修改仅读为可读取写入 第一步:vim /etc/apparmor.d/usr.sbin.named #修改为rw,默认为r ``` ![image.png](https://panfeng-biji.oss-cn-beijing.aliyuncs.com/oss/202111231952410.jpeg) ``` apparmor_parser -r /etc/apparmor.d/usr.sbin.named #让apparmor重新读取配置文件 systemctl restart bind9 #重启服务 ``` ##### 方法2 ``` 第一步:将apparmor关闭 echo 'GRUB_CMDLINE_LINUX_DEFAULT="GRUB_CMDLINE_DEFAULT apparmor=0"' > /etc/default/grub.d/apparmor.cfg update-grub reboot 第二步:systemctl stop apparmor #停止服务 第三步:systemctl disable apparmor #关闭服务 ``` ##### 方法3: ``` ln -s /etc/apparmor.d/usr.sbin.named /etc/apparmor.d/disable reboot #仅禁用apparmor对bind9的控制 ``` # DNS转发 ##### 实验环境 ``` client IP:192.168.10.1 server1 IP:192.168.10.2 转发 server2 IP:192.168.10.3 DNS正向区域 ``` ##### 实验任务说明 ``` Client通过访问 server2获得www.yu.com ``` ##### Client配置 ``` 第一步:apt install dnsutils #安装命令 第二步:vim /etc/resolv.conf #打开配置文件 第三步:nameserver 192.168.10.2 #配置为转发服务器的DNS 第四步:nslookup www.yu.com #测试 ``` ##### 测试效果 ![image.png](https://panfeng-biji.oss-cn-beijing.aliyuncs.com/oss/202111231952026.jpeg) ##### Server1配置 ``` 第一步:apt install bind9 #安装服务 第二步:cd /etc/bind #进入指定路径 第三步:vim named.conf.options #打开配置文件 第四步:看图操作 ``` ![image.png](https://panfeng-biji.oss-cn-beijing.aliyuncs.com/oss/202111231952501.jpeg) ``` 第五步:systemctl restart bind9 #重启服务 第六步:systemctl status bind9 #查看服务状态信息 ``` ##### Server2配置 ``` 第一步:apt install bind9 #安装服务 第二步:cd /etc/bind #进入指定路径 第三步:配置正向区域 ``` # DNS隐藏版本号 --- ``` 第一步:vim /etc/bind/named.conf.options 打开配置文件 version none; #无版本号 第二步:systemctl restart bind9 #重启服务 第三步:systemctl status bind9 #查看服务状态 ``` # 查看DNS版本号 ``` 第一步:apt install dnsutils #安装这个命令 里面包含dig 第二步:dig @127.0.0.1 version.bind txt chaos #查看本机DNS版本号 ``` # 效果展示 ##### 配置隐藏版本号 ![image.png](https://panfeng-biji.oss-cn-beijing.aliyuncs.com/oss/202111231952188.jpeg) ##### 未配置隐藏版本号 ![image.png](https://panfeng-biji.oss-cn-beijing.aliyuncs.com/oss/202111231952563.jpeg)
最后修改:2021 年 11 月 23 日
如果觉得我的文章对你有用,欢迎打赏