搭建DNS服务器
2017-11-16 23:24 Ivan的一亩三分地 阅读(8493) 评论(1) 编辑 收藏 举报概述:
现在搭建DNS的软件很多,我们以以下软件做测试
bind
Part 1: 使用 bind 搭建DNS 服务器
软件包:
1 2 3 4 5 6 7 | =========================================================================================================================== Package Arch Version Repository Size =========================================================================================================================== Installing: bind x86_64 32:9.9.4-14.el7 rhel-yum 1.8 M bind-chroot x86_64 32:9.9.4-14.el7 rhel-yum 81 k bind-dyndb-ldap x86_64 3.5-4.el7 rhel-yum 91 k |
服务名:
named
1. 安装软件包
yum install -y bind*
2. 设置守护进程
1 2 3 | systemctl restart named systemctl enable named systemctl status named |
3. 开启防火墙
1 2 3 4 | [root@localhost ~]# firewall-cmd --permanent --add-port=53/udp success [root@localhost ~]# firewall-cmd --reload success |
4. 配置 /etc/named.conf, 开放端口访问以及允许查询
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | options { listen-on port 53 { 127.0.0.1; }; listen-on-v6 port 53 { ::1; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { localhost; }; ------------> options { listen-on port 53 { any; }; listen-on-v6 port 53 { ::1; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { any; }; |
5. 在文件 /etc/named.rfc1912.zones,添加定义的zone
1 2 3 4 5 | zone "qq.com" IN { type master; file "qq.zone"; allow-update { none; }; }; |
6. 配置创建 qq.zone 文件
1 2 3 4 5 | cd /var/named/ cp named.localhost qq.zone 编辑qq.zone 文件 qq.com. NS desktop0.example.com. www.qq.com. A 1.1.1.1 |
7. 重启守护进程
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | systemctl restart named systemctl status named Issue 1: [root@localhost named] # systemctl restart named Job for named.service failed. See 'systemctl status named.service' and 'journalctl -xn' for details. [root@localhost named] # journalctl -xn -- Logs begin at Tue 2017-11-14 22:48:37 CST, end at Thu 2017-11-16 23:10:02 CST. -- Nov 16 23:10:00 localhost.localdomain named-checkconf[10104]: zone qq.com /IN : NS '192.168.56.12.qq.com' has no address reco Nov 16 23:10:00 localhost.localdomain named-checkconf[10104]: zone qq.com /IN : not loaded due to errors. Nov 16 23:10:00 localhost.localdomain named-checkconf[10104]: _default /qq .com /IN : bad zone Nov 16 23:10:00 localhost.localdomain systemd[1]: named.service: control process exited, code=exited status=1 Nov 16 23:10:00 localhost.localdomain systemd[1]: Failed to start Berkeley Internet Name Domain (DNS). -- Subject: Unit named.service has failed -- Defined-By: systemd -- Support: http: //lists .freedesktop.org /mailman/listinfo/systemd-devel Issue 2: [root@localhost named] # systemctl status named named.service - Berkeley Internet Name Domain (DNS) Loaded: loaded ( /usr/lib/systemd/system/named .service; enabled) Active: active (running) since Thu 2017-11-16 23:14:36 CST; 7s ago Process: 10223 ExecStop= /bin/sh -c /usr/sbin/rndc stop > /dev/null 2>&1 || /bin/kill -TERM $MAINPID (code=exited, status= 0 /SUCCESS ) Process: 10232 ExecStart= /usr/sbin/named -u named $OPTIONS (code=exited, status=0 /SUCCESS ) Process: 10231 ExecStartPre= /usr/sbin/named-checkconf -z /etc/named .conf (code=exited, status=0 /SUCCESS ) Main PID: 10234 (named) CGroup: /system .slice /named .service ââ10234 /usr/sbin/named -u named Nov 16 23:14:36 localhost.localdomain named[10234]: zone 0. in -addr.arpa /IN : loaded serial 0 Nov 16 23:14:36 localhost.localdomain named[10234]: zone 1.0.0.127. in -addr.arpa /IN : loaded serial 0 Nov 16 23:14:36 localhost.localdomain named[10234]: zone localhost /IN : loaded serial 0 Nov 16 23:14:36 localhost.localdomain named[10234]: zone 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0....ial 0 Nov 16 23:14:36 localhost.localdomain named[10234]: zone localhost.localdomain /IN : loaded serial 0 Nov 16 23:14:36 localhost.localdomain named[10234]: zone qq.com /IN : loading from master file qq.zone failed: permis...enied Nov 16 23:14:36 localhost.localdomain named[10234]: zone qq.com /IN : not loaded due to errors. Nov 16 23:14:36 localhost.localdomain named[10234]: all zones loaded Nov 16 23:14:36 localhost.localdomain systemd[1]: Started Berkeley Internet Name Domain (DNS). Nov 16 23:14:36 localhost.localdomain named[10234]: running Hint: Some lines were ellipsized, use -l to show in full. |
8. 在客户端配置DNS
1 | nameserver 192.168.56.12 |
9. 测试是否成功
1 2 | [root@dpf01 ~]# host www.qq.com www.qq.com has address 1.1.1.1 |
1. 原理通透 2. 思路清晰 3.操作娴熟
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架