Chinaunix首页 | 论坛 | 博客
  • 博客访问: 354141
  • 博文数量: 213
  • 博客积分: 566
  • 博客等级: 中士
  • 技术积分: 1210
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-21 13:09
文章分类

全部博文(213)

文章存档

2015年(1)

2013年(7)

2012年(128)

2011年(77)

分类:

2011-05-03 13:43:41

原文地址:linux DNS 服务器学习笔记 作者:zzy7186

【原理】:

⒈简单介绍dns查询的工作原理

image

名称查询从客户端开始,先查询客户端的DNS缓存,如果没有找到,在去主机文

件中找,即/etc/hosts文件。如果没有则去客户端指定的dns服务器查找,而该

dns服务器先在自己所管辖的区域查找,若没有则去该服务器上的dns缓存找,若

还没有则根据根目录提示文件找到网络中的根域服务器。进行进一步查询。直到

查询到结果反馈给客户端指定的dns服务器,然后反馈给客户端。

两中查询方式:

image

如查询主机,但客户端与指定服务器都没有找到时,请求发送

到根域服务器,由于他也不知道主机的位置,但它知道管理com域服务器的位置

然后将该信息反馈给指定服务器,指定服务器再把请求发到com服务器上,同样

com服务器将example.com服务器的位置告诉指定服务器,最后由example.com服

务器找到主机的位置,反馈给指定服务器,再反馈给客户端。

image

迭代法与递归法的区别在于它把请球直接发给服务器,让客户端与服务器直接进

行交互,而不是服务器与服务器进行交互。客户端发送请求到指定服务器,指定

服务器把根域服务器的位置直接告诉给客户端,让客户端与根域服务器直接交互

同样根域服务器把com服务器的位置告诉客户端,以此类推,知道找到之际的位置。

【关于反向解析的理解】

1 什么叫反向解析和为什么要进行反向解析?

在垃圾邮件泛滥的今天,垃圾邮件给我们的生活、工作、学习带来了极大的危害。由于SMTP服务器之间缺乏有效的发送认证机制,即使采用了垃圾邮件识别阻拦技术效果仍旧一般,再者垃圾邮件识别阻拦技术主要是在收到信件后根据一定条件进行识别的,需要耗费大量服务器资源,如果能在信件到达服务器之前就采取一定手段,这样就能大大提高服务器效率了。因此,目前许多邮件服务器sina.com,hotmail.com,yahoo.com.cn等等都采用了垃圾邮件识别阻拦技术+IP反向解析验证技术以更好的阻拦垃圾邮件。

在网上看到很多都是关于防止垃圾方面的,什么叫反向解析呢。就是根据ip地址反向解析域名。比如你用 这个邮箱给我的邮箱 发了一封信。 163邮件服务器接到这封信会查看这封信的信头文件,这封信的信头文件会显示这封信是由哪个IP地址发出来的。然后根据这个IP地址进行反向解析,如果反 向解析到这个IP所对应的域名是c3w.cn。那么就接受这封邮件。如果反向解析发现这个IP没有对应到c3w.cn ,那么就拒绝这封邮件。

现在国际上的反垃圾邮件组织普遍要求邮件服务器需要有反向解析,以此来确认这台邮件服务器是能够在internet上稳定存在的服务器,而不是打一枪换一地的垃圾源。希望大家能够尽早为自己的邮件服务器做好反向解析,以免发生被国外拒收邮件的情况 。

2 反向解析的过程说明

反向域名解析的大体过程:

IP地址为a.b.c.d

查询时先向in-addr.arpa.域查询a.in-addr.arpa.域
返回一个ns地址,中国一般是apnic的dns
再向apnic的dns查询b.a.in-addr.arpa.域
返回一个ns地址,一般是isp的dns
再向isp的dns查询c.b.a.in-addr.arpa.域
返回一个ns地址,一般还是isp的dns或者授权后的dns
最后向这个dns查询d.c.b.a.in-addr.arpa.既c.b.a.in-addr.arpa.域中的记录d
返回一个对应的地址
在中国一般到isp这里以后in-addr.arpa.域的ns记录就没有了 
解释一下,由于反向解析的记录格式是:
d.c.b.a.in-addr.arpa (IP地址是a.b.c.d)

它的体系及解析过程是和正向解析同样的,所以还是由根开始查询下一级的NS记录,直至查到 c.b.a.in-addr.arpa 的NS记录,再在此记录的DNS服务器上查询 d.c.b.a.in-addr.arpa 的 PTR记录,所以拥有反向解析授权的DNS服务器一定是有限的且授权的最小单位为一个C类地址段

具体配置可参考:http://redking.blog.51cto.com/27212/132377

http://redking.blog.51cto.com/27212/146708

在一个企业中,可能有上百台计算机,如果要为每一个计算机分配一个域名,如果一条一条的添加到域文件中,则相当耗时。
$GENERATE 是函数  
1-200 是要循环的变量 
host$是主机名  
192.168.1.$是对应的IP地址
 
在正向解析文件中加入:
$GENERATE       111-230 host$   IN A    192.168.1.$
在反向解析文件中加入:
$GENERATE       110-230 $       IN              PTR     host$.example.com.
实验结果:

泛域就是主机位置随便输入什么,都可以正确访问,如输入xxxxx.baidu.com 仍能够访问baidu 。泛域名很简单,就是用*匹配所有,但是注意了,这个解析要放在最后,应为ZONE文件是从上到下读取的,当上面的都不匹配的时候才会读取泛域名解析。
在正向解析文件最后中加入一条:
*       IN      A       192.168.1.45
测试结果:

在配置辅助域名服务器时可以在主服务器上用allow-transfer{ip;};来指定那个slave可以复制区域文件。

阅读(492) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~