+++++++DNS基本工作原理、DNS正反向解析及主从同步

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

总结

安装: 

wKioL1m-NYiyMrDaAAAGgPtjiks356.png

正向主

wKiom1m-N9HBc36cAAAuV2r8RUc277.png

反向主

wKioL1m-N6KziSB9AAAqqe5EVak875.png

测试工具

wKiom1m-N9GDCU5xAAAspZQ7Qko585.png

主从同步配置

wKioL1m-N6KhByydAABctF7yh9E773.png



dns基础工作原理

bind Berkerley Information Name Domain

DNS Domain Name Server

TCP/UDP 53

UDP 53 无连接协议,域名解析

TCP 53 面向连接协议,区域传送


历史IANA

统一名字,自己hosts中维护(%windows%/system32/etc/hosts, /etc/hosts)

统一维护,定时任务计划

统一查询,glibc共享库作为客户端基于UDP协议解析域名

    hash

    数值分布式

    域名分布式:授权方式,将部分功能分别放在独立的主机,数据同步(一致性、可用性、容错性)


查询

迭代查询:查询,返回参考结果

递归查询:一次查询,返回最终结果


解析区域

正向解析:FQDN-->IP

反向解析区域:IP-->FQDN


答案

肯定: 解析成功

否定:解析没有结果

权威:域所负责的DNS服务器所返回的结果

非权威:


主从DNS区别

关联:保证DNS服务器“可靠性

主:管理员维护 

从:由SOA内部特性决定如何同步/传送/复制


SOA内部特性

serial  序列号:区域解析库的版本号

refresh 刷新

retry 重试: 小于刷新时长

expire 过期时长:重试多久就不再重试,从DNS放弃角色

否定答案的TTL 


宏定义

$TTL:肯定答案的缓存时长

$ORIGIN:区域(正、反)名


BIND是DNS协议的软件实现


区域解析库:由众多Resource Record组成

资源记录的类型:PTR, A, NS, SOA, AAAA, MX


轮循:同主机名,对应多个不同的IP


子域授权上级域的DNS服务器的区域解析库中添加glue record[胶水]记录即可


DNS工作模式

运营商缓存DNS

wKioL1m83x3BplbTAAGrwVzWsHc570.png

本地缓存DNS

wKiom1m830uSYrhaAAG7POZegpg408.png


DNS缓存服务器

1、配置YUM源

wKioL1m88SLgeW-IAAA5VTAGels265.png

2、安装程序包:

wKioL1m88aTi_9ukAABOxYX-ekw049.png3、安装后的相关文件

wKioL1m89jrxaZv5AAAk1Hn1-R4052.png

wKiom1m89miyDQ_TAAATvqi6hv0719.png

wKiom1m89miADdOkAABx5apIvUI841.png

wKioL1m89jvTPcVrAAAoNfTUh7c990.png

wKiom1m89mij3IWMAAAQZh6p170830.png

3、配置

1)备份配置文件

1
# cp -v /etc/named.conf{,.bak}

2)配置结果

wKiom1m89v6jbssgAAA0xtFIoyw784.png

**//allow-query { localhost; }; 表示 allow-query { any; };

wKiom1m892SDFFLzAAALVC29mGo692.png

wKioL1m89-TAVnIrAAASJy4jZ5Q341.png

3)测试配置文件是否正确

1
# named-checkconf

4)启动服务

1
2
3
# service named start
# ss -tunlp | fgrep : 53
<TCP/UDP: 53  和 TCP: 953 端口>

wKiom1m8-GXiYWF1AAAojX30Jk0870.png

5)测试

1
2
3
4
5
1 、查看提供的测试工具
# rpm -q -l bind-utils
 
2 、尝试用本地的缓存DNS服务器,迭代解析请求
# dig -t A www.baidu.com @ 192.168 . 1.100


DNS正反解析

正向解析

1)配置为缓存DNS服务器

2)添加zone配置: /etc/named.rfc1912.zones

1
# vim + /etc/named.rfc1912.zones

wKiom1m8-YfhhI6aAAAKgRbza_A474.png

3)测试语法

1
# named-checkconf

4)编辑区域解析库

1
2
3
4
5
1 、进入解析库的目录
# cd / var /named
2 、查看文件
# ls
3 、编辑解析库的文件

wKioL1m8-sjirFbEAAAnBANMqEw321.png

5)测试语法

1
# named-checkzone  "magedu.com"  / var /named/magedu.com.zone

6)修改权限

1
2
3
named进程的属主是named,对magedu.com.zone文件的权限和属组需要悠
# chmod  640  magedu.com.zone
# chown :named magedu.com.zone

7)重载配置文件

1
2
# rndc reload
# service named reload

9)显示输出信息

1
# rndc status

10)测试解析

1
<br>


测试解析的命令: host, dig, nslookup

host命令

wKioL1m8_OHQCWAcAABs0D40cJE805.png

使用示例

1
2
3
4
# dig -t SOA magedu.com @ 192.168 . 1.100
# dig -t NS magedu.com @ 192.168 . 1.100
# dig -t MX magedu.com @ 192.168 . 1.100
# dig -t A www.magedu.com @ 192.168 . 1.100


dig命令

wKioL1m8_OHiT-aEAAAKGswuEZk149.png

使用示例

1
2
3
4
# host -t SOA magedu.com  192.168 . 1.100
# host -t NS magedu.com  192.168 . 1.100
# host -t MX magedu.com  192.168 . 1.100
# host -t A www.magedu.com  192.168 . 1.100

nslookup命令

wKiom1m8_tbhDs64AAAQp3tFXG4363.png

使用示例

1
# nslookup www.magedu.com  192.168 . 1.100

wKioL1m8_oHRBfzdAAAlQSKH_Ng842.png


反向解析

1)保证正向测试正常

2)添加zone配置: /etc/named.rfc1912.zones

1
# vim + /etc/named.rfc1912.zones

wKioL1m8_02ArYKrAAAMSEMYWMg429.png

3)测试语法 

1
# named-checkconf

4)反向区域解析库的配置

1
2
1 、基于正向,修改出反向
# cp magedu.com.zone  192.168 . 1.1 .zone

wKioL1m9AHLSMrQpAAA2qQVw9XY100.png

5)权限

1
2
# chmod  640  192.168 . 1.100 .zone
# chown .named  192.168 . 1.100 .zone

6)语法

1
# named-checkzone  "1.168.192.in-addr.arpa"  192.168 . 1.1 .zone

7)重载

1
2
# service named reload
# rndc reload

8)状态

1
# rndc status

9)测试

1
2
# dig -x  192.168 . 1.100  @ 192.168 . 1.100
# host -t PTR  192.168 . 1.100  192.168 . 1.100


DNS主从同步

配置从DNS服务器

1、时间同步

1
# cp -v /etc/ntp.conf{,.bak}

wKiom1m9AmigVESyAAAITiAMgZg823.png

1
# service ntpd start
1
2
在从DNS服务器上同步时间<等10min>
# ntpdate  192.168 . 1.100

wKioL1m9BknyoMiEAAA3NZqqa6g533.png

2、从bind的版本>=主bind版本

3、从dns位于一个独立的主机

4、ns记录和nsip指向的是同一个主机,从dns服务器

5、从dns服务器区域解析库的位置

6、从dns被允许从主dns作区域传送(allow-transfer { DNS_SLAVE_IP; };


正向同步

1)配置缓存名称服务器

1
# cp -v /etc/named.conf{,.bak}

wKioL1m9BWWTnINvAAAT2cNcTIA461.png

1
2
# service named start
# ss -tunlp | grep  53

2)配置/etc/named.rfc1912.zones文件

wKioL1m9CKWDS32EAAAGjnyZDJI998.png

3)测试

1
# named-checkconf

4)重载

1
2
# service named reload
# rndc reload


5)查看文件

wKioL1m9CMuzX37DAAAczBrbrN8159.png

反向同步

2)配置/etc/named.rfc1912.zones文件

wKiom1m9CZKg0Yt0AAAG9OUwhw8591.png

3)测试

4)重载

5)查看文件


尝试修改主DNS服务器,测试是否能主从同步

wKioL1m9CeSh8xpOAAAXprsHHEU464.png


正向

wKiom1m9Cl_yHp_LAAAe1ae2RBo467.png

1
# rndc reload


wKiom1m9Cr6DqvrgAAAoogTNnzM701.png

wKioL1m9CpHhAZ6eAAAsxF9aJx0621.png


反向

wKioL1m9Cy7QHURPAAAsZQmh7t8857.png

1
# rndc reload

wKiom1m9C1zjf9VBAAApLbRmHbA661.png

wKioL1m9Cy_TD_SDAAAmsQHwZ30800.png










本文转自 lccnx 51CTO博客,原文链接:http://blog.51cto.com/sonlich/1965910,如需转载请自行联系原作者
目录
相关文章
|
19天前
|
域名解析 缓存 网络协议
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
|
19天前
|
算法 Java 数据库连接
Java连接池技术,从基础概念出发,解析了连接池的工作原理及其重要性
本文详细介绍了Java连接池技术,从基础概念出发,解析了连接池的工作原理及其重要性。连接池通过复用数据库连接,显著提升了应用的性能和稳定性。文章还展示了使用HikariCP连接池的示例代码,帮助读者更好地理解和应用这一技术。
32 1
|
24天前
|
数据采集 存储 编解码
一份简明的 Base64 原理解析
Base64 编码器的原理,其实很简单,花一点点时间学会它,你就又消除了一个知识盲点。
66 3
|
6天前
|
存储 供应链 物联网
深入解析区块链技术的核心原理与应用前景
深入解析区块链技术的核心原理与应用前景
|
6天前
|
存储 供应链 安全
深度解析区块链技术的核心原理与应用前景
深度解析区块链技术的核心原理与应用前景
14 0
|
21天前
|
供应链 安全 分布式数据库
探索区块链技术:从原理到应用的全面解析
【10月更文挑战第22天】 本文旨在深入浅出地探讨区块链技术,一种近年来引起广泛关注的分布式账本技术。我们将从区块链的基本概念入手,逐步深入到其工作原理、关键技术特点以及在金融、供应链管理等多个领域的实际应用案例。通过这篇文章,读者不仅能够理解区块链技术的核心价值和潜力,还能获得关于如何评估和选择适合自己需求的区块链解决方案的实用建议。
37 0
|
6天前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
20 2
|
1月前
|
缓存 Java 程序员
Map - LinkedHashSet&Map源码解析
Map - LinkedHashSet&Map源码解析
67 0
|
1月前
|
算法 Java 容器
Map - HashSet & HashMap 源码解析
Map - HashSet & HashMap 源码解析
54 0
|
1月前
|
存储 Java C++
Collection-PriorityQueue源码解析
Collection-PriorityQueue源码解析
60 0

相关产品

  • 云解析DNS
  • 推荐镜像

    更多