搭建最基础的DNS服务

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介:

搭建一个简单的DNS

为了更方便和清晰的了解DNS的作用,通过搭建一个简单的DNS服务来学习。

在搭建之前,先简单了解一下DNS的工作原理

  1. 客户端把访问的域名传递给DNS服务器a,如果有记录,则将IP传递给客户端
  2. DNS服务器a没有记录,则以 递归方式 访问其他服务器。首先访问根域
  3. 根域将匹配的一级域名DNS服务器b地址传递给DNS服务器a
  4. DNS服务器a再去访问DNS服务器b,DNS服务器b再将匹配的二级域名DNS服务器c传递给DNS服务器a
  5. DNS服务器a再去访问DNS服务器c,重复以上3,4步骤
  6. DNS服务器a得到客户端要访问域名的ip地址,传递给客户端,并留下记录,方便以后访问。

简单模拟一个DNS工作

1.准备两台终端,客户端,服务器。

这里我以Centos6.9为客户端,Centos7.3位服务器。

2.在服务端安装bind(提供DNS服务的软件)


 
 
  1. [root@centos7 named]# yum -y install bind 
  2. Loaded plugins: fastestmirror, langpacks 
  3. Loading mirror speeds from cached hostfile 
  4.  * base: mirrors.163.com 
  5.  * extras: mirrors.163.com 
  6. * updates: mirrors.btte.net 
  7.  
  8. Resolving Dependencies 
  9. --> Running transaction check 
  10. ---> Package bind.x86_64 32:9.9.4-50.el7_3.1 will be installed 
  11. --> Finished Dependency Resolution 
  12.  
  13. Dependencies Resolved 
  14.  
  15. ================================================================================================== 
  16.  Package          Arch               Version                            Repository           Size 
  17. ================================================================================================== 
  18. Installing: 
  19. bind             x86_64             32:9.9.4-50.el7_3.1                updates             1.8 M 
  20. Transaction Summary 
  21.  
  22. ================================================================================================== 
  23. Install  1 Package 
  24.  
  25. Total download size: 1.8 M 
  26. Installed size: 4.3 M 
  27. Downloading packages: 
  28. bind-9.9.4-50.el7_3.1.x86_64.rpm                                           | 1.8 MB  00:00:01      
  29. Running transaction check 
  30. Running transaction test 
  31. Transaction test succeeded 
  32. Running transaction 
  33.   Installing : 32:bind-9.9.4-50.el7_3.1.x86_64                                                1/1  
  34.   Verifying  : 32:bind-9.9.4-50.el7_3.1.x86_64                                                1/1  
  35.  
  36. Installed: 
  37.  bind.x86_64 32:9.9.4-50.el7_3.1                                                                  
  38.  
  39. Complete!`  

3.关闭linux安全策略和防火墙

1).服务器–Centos7


 
 
  1. sed -i ‘s/SELINUX=enforcing/SELINUX=permissive/g’ /etc/selinux/config 
  2. iptables -F 
  3. systemctl disable firewalld 
  4. systemctl stop firewalld 

2).客户端–Centos6


 
 
  1. sed -i ‘s/SELINUX=enforcing/SELINUX=permissive/g’ /etc/selinux/config  
  2. chkconfig iptables off  
  3. service iptables stop 

检查selinux安全策略是否修改为”允许”

cat /etc/selinux/config

4.启动DNS服务器


 
 
  1. systemctl start named  
  2. systemctl enable named 

启动后确认端口开启(端口号默认为 53)


 
 
  1. ss -nutl 

把服务器53端口绑定在所有服务器ip上


 
 
  1. cd -p /etc/named.conf{,.bak} 

(需要修改陪指文件,建议先备份 )


 
 
  1. vim /etc/named.conf 

修改listen-on port 53 {localhost; }中的localhost

改为any或0.0.0.0或将整行注释


 
 
  1. vim /etc/sysconfig/network-scripts/ifcfg-ens33 

在最后一行加上DNS1=127.0.0.1

重启服务(配置文件生效)


 
 
  1. systemctl restart network 

在客户端(Centos6)配置DNS,指向服务器DNS(Centos7)


 
 
  1. vim /etc/sysconfig/network-scripts/ifcfg-eth0 

最后加上DNS1=172.16.0.24(DNS)


 
 
  1. systemctl restart network 

在服务器(Centos7)配置DNS,允许本地以外的地址访问


 
 
  1. vim /etc/named.conf 

修改allow-query { localhost;any; };

改为any或0.0.0.0或将整行注释

在客户端(Centos6)尝试连接外网


 
 
  1. [root@centos6 ~]# dig www.baidu.com 
  2.  
  3. ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.2 <<>> www.baidu.com 
  4. ;; global options: +cmd 
  5. ;; Got answer: 
  6. ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59143 
  7. ;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 5, ADDITIONAL: 5 
  8.  
  9. ;; QUESTION SECTION
  10. ;www.baidu.com. IN A 
  11.  
  12. ;; ANSWER SECTION
  13. www.baidu.com. 347 IN CNAME www.a.shifen.com. 
  14. www.a.shifen.com. 43 IN A 61.135.169.121 
  15. www.a.shifen.com. 43 IN A 61.135.169.125 
  16.  
  17. ;; AUTHORITY SECTION
  18. a.shifen.com. 254 IN NS ns1.a.shifen.com. 
  19. a.shifen.com. 254 IN NS ns3.a.shifen.com. 
  20. a.shifen.com. 254 IN NS ns5.a.shifen.com. 
  21. a.shifen.com. 254 IN NS ns2.a.shifen.com. 
  22. a.shifen.com. 254 IN NS ns4.a.shifen.com. 
  23.  
  24. ;; ADDITIONAL SECTION
  25. ns1.a.shifen.com. 254 IN A 61.135.165.224 
  26. ns2.a.shifen.com. 254 IN A 180.149.133.241 
  27. ns3.a.shifen.com. 254 IN A 61.135.162.215 
  28. ns4.a.shifen.com. 254 IN A 115.239.210.176 
  29. ns5.a.shifen.com. 254 IN A 119.75.222.17 
  30.  
  31. ;; Query time: 1 msec 
  32. ;; SERVER: 172.16.0.1#53(172.16.0.1) 
  33. ;; WHEN: Mon Jul 24 14:16:16 2017 
  34. ;; MSG SIZE rcvd: 260 



本文作者:佚名

来源:51CTO

相关文章
|
1月前
|
存储 缓存 算法
分布式锁服务深度解析:以Apache Flink的Checkpointing机制为例
【10月更文挑战第7天】在分布式系统中,多个进程或节点可能需要同时访问和操作共享资源。为了确保数据的一致性和系统的稳定性,我们需要一种机制来协调这些进程或节点的访问,避免并发冲突和竞态条件。分布式锁服务正是为此而生的一种解决方案。它通过在网络环境中实现锁机制,确保同一时间只有一个进程或节点能够访问和操作共享资源。
63 3
|
3月前
|
自然语言处理 数据可视化 API
淘宝商品评论 API 接口:深度解析用户评论,优化产品与服务
淘宝是领先的中国电商平台,其API为开发者提供商品信息、交易记录及用户评价等数据访问服务。对于获授权的开发者和商家,可通过申请API权限、获取并解析评论数据来进行情感分析和统计,进而优化产品设计、提升服务质量、增强用户互动及调整营销策略。未授权用户可能受限于数据访问。
|
16天前
|
域名解析 缓存 网络协议
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
|
17天前
|
安全 测试技术 数据安全/隐私保护
原生鸿蒙应用市场开发者服务的技术解析:从集成到应用发布的完整体验
原生鸿蒙应用市场开发者服务的技术解析:从集成到应用发布的完整体验
|
2月前
|
自然语言处理 数据可视化 BI
文档解析(大模型版)服务体验评测
体验文档解析(大模型版)服务时,清晰的入门指南、操作手册和FAQ至关重要。若存在不足,需增加直观的操作流程说明(如动画演示)、深化高级功能文档,并提供实时在线支持,帮助用户快速解决问题。
|
2月前
|
弹性计算 自然语言处理 数据可视化
|
1月前
|
网络安全 Docker 容器
【Bug修复】秒杀服务器异常,轻松恢复网站访问--从防火墙到Docker服务的全面解析
【Bug修复】秒杀服务器异常,轻松恢复网站访问--从防火墙到Docker服务的全面解析
25 0
|
1月前
|
存储 缓存 网络协议
搭建dns服务常见报错--查看/etc/named.conf没有错误日志信息却显示出错(/etc/named.conf:49: missing ‘;‘ before ‘include‘)及dns介绍
搭建dns服务常见报错--查看/etc/named.conf没有错误日志信息却显示出错(/etc/named.conf:49: missing ‘;‘ before ‘include‘)及dns介绍
110 0
|
2月前
|
存储 消息中间件 算法
深入解析OpenStack Cinder:块存储服务详解
本文介绍了OpenStack及其块存储服务Cinder。OpenStack是一个开源云计算管理平台,提供基础设施即服务(IaaS),核心服务包括计算、网络、存储等。Cinder主要用于为虚拟机提供持久性块存储,具备多种功能,如卷操作、备份、快照及与实例的交互等。此外,还详细介绍了Cinder的工作流程、命令行操作及不同存储插件的使用。
402 8
|
3月前
|
机器学习/深度学习 网络协议 安全
安全DNS服务
【8月更文挑战第18天】
142 16

相关产品

  • 云解析DNS
  • 推荐镜像

    更多