关于主备dns工作的一些探讨
2016-05-19 17:24
393 查看
主、备dns工作现象:
实验:
测试客户端电脑为win10,主dns设置为isp公用dns,备dns设置为内网dns(win2008搭建):
1、查询一个内网的域名(在公网上不存在),会发现是可以查询得到的,这个时候主dns是正常工作的。
2、查询公网的不同域名,测试是否会向备dns查询数据。
捕获数据包显示:
如果主dns在很快的时间答复(没有任何反馈,哪怕主dns是正常的),那么就只会向主dns发送查询;
如果主dns在一定的时间内(目测1秒左右),那么就会同时向备用dns发送查询;
有一定几率主备dns都会回复,就是在主dns回复比较慢的时候。
网络上有说法是,在主dns工作不正常时,才会向备dns查询,这个说法从实验发现是错的。
几种情况下,都会向备dns查询:
1、主dns返回超时或查询不存在;
2、主dns本身在一定时间内未反馈;(有可能会再次向主dns查询)
3、如果上一次是备dns给出反馈,那么下一次查询首先会向备dns查询,而不是理解中的一直是向主dns查询。
见图:
DNS轮询机制:
DNS服务器默认选项中会勾选DNS Robin,也就是DNS轮询机制。
正因为此机制存在,dns查询返回的结果,总是不断轮换
的。比如,当前域有3个dns,那么客户端第一次查询domain.com,返回的是第一台dns地址,第二次可能就是第2台,第三次第3台,依此类推。
这个轮询的次序,总是从数字较小的ip开始。
为什么在有主域控和额外域控的多域控情况下客户机登陆到域的时候会随机登陆到任何一台域控上?
这个正是DNS轮询辅助起到的DC负载均衡效果
实验:
测试客户端电脑为win10,主dns设置为isp公用dns,备dns设置为内网dns(win2008搭建):
1、查询一个内网的域名(在公网上不存在),会发现是可以查询得到的,这个时候主dns是正常工作的。
2、查询公网的不同域名,测试是否会向备dns查询数据。
捕获数据包显示:
如果主dns在很快的时间答复(没有任何反馈,哪怕主dns是正常的),那么就只会向主dns发送查询;
如果主dns在一定的时间内(目测1秒左右),那么就会同时向备用dns发送查询;
有一定几率主备dns都会回复,就是在主dns回复比较慢的时候。
网络上有说法是,在主dns工作不正常时,才会向备dns查询,这个说法从实验发现是错的。
几种情况下,都会向备dns查询:
1、主dns返回超时或查询不存在;
2、主dns本身在一定时间内未反馈;(有可能会再次向主dns查询)
3、如果上一次是备dns给出反馈,那么下一次查询首先会向备dns查询,而不是理解中的一直是向主dns查询。
见图:
DNS轮询机制:
DNS服务器默认选项中会勾选DNS Robin,也就是DNS轮询机制。
正因为此机制存在,dns查询返回的结果,总是不断轮换
的。比如,当前域有3个dns,那么客户端第一次查询domain.com,返回的是第一台dns地址,第二次可能就是第2台,第三次第3台,依此类推。
这个轮询的次序,总是从数字较小的ip开始。
为什么在有主域控和额外域控的多域控情况下客户机登陆到域的时候会随机登陆到任何一台域控上?
这个正是DNS轮询辅助起到的DC负载均衡效果
相关文章推荐
- 转:Android开发中的MVP架构(最后链接资源不错)
- MVC Autofac构造函数注入
- eclipse构建maven的web项目
- Android Button text自动变成大写
- JAVA_Volatile关键字
- android中利用webview调用网页上的js代码 Java代码调用js并传递参数
- 修改WIFI热点的默认名称
- mysql 自带指令 mysqlshow
- ElasticSearch(十二)-结构化搜索
- php实现搜索功能
- 第12周项目2 Time类中的运算符重载
- uva 572 Oil Deposits(油田)—— DFS
- centos上安装 oracle jdk7
- 密码忘记不重启mysql更改root密码
- CentOS/RHEL 7中的firewall控制
- NanUI for Winform 使用示例【第一集】——山寨个代码编辑器
- 找水王
- ZJU 1610 Count the Colors 线段树
- js基础和数据操作
- Android RecyclerView添加头部和底部的方法