Ubuntu 设置DNS服务器转发查询 为什么要开启allow-query-cache选项?
在单位的DNS服务器上 开启DNS转发功能网上的方法都是:
编辑:/etc/bind$ less named.conf.options
forwarders {
61.177.7.1;
};
发现不行,本论坛上也曾有人发帖说不行。
然后同事找到资料说要加多一句: allow-query-cache {any;};
那就加多了一句发现确实可以了
但是从网上资料来看
这句的意思是允许允许任何客户端查询缓存。 这个实现转发查询有什么关系?为什么启用了 allow-query-cache就可以了
还请各位解答一下原理。 顾名思义cache 的意思是DNS服务器在完成一次解析后会把解析结果缓存起来,下次有相同的查询时直接返回结果,这样大大加快了查询速度。 llzqq 发表于 2013-04-12 16:29 static/image/common/back.gif
顾名思义cache 的意思是DNS服务器在完成一次解析后会把解析结果缓存起来,下次有相同的查询时直接返回结果, ...
我的意思是这句和开启转发有什么联系
Ubuntu怎么样才算真正开启了DNS转发查询功能? 你需要的是递归DNS,有两种方式,一种是转发模式(就是你设的那种方式,它把解析工作转给了外部DNS)这种方式不好。另一种是自递归方式,这种方式更好。
allow-query-cache {any;};
allow-query { any; };
recursion yes;
无论哪种方式,allow-query-cache都是要开启的,原因上面已经说过了。 llzqq 发表于 2013-04-12 17:24 static/image/common/back.gif
你需要的是递归DNS,有两种方式,一种是转发模式(就是你设的那种方式,它把解析工作转给了外部DNS)这种方式 ...
嗯那就迷惑了有些资料建议不开启递归查询
比如这个贴:http://blog.csdn.net/cnbird2008/article/details/3913624
“因为任何人都可以利用你的服务器来做DNS这样知道的多了,会造成严重的负载”
“allow-query-cache在未设置allow-recursion的情况下可以取代allow-recursion的功能,有继承关系。如果想禁止用户的递归查询请求,还需要将 allow-query-cache 选项关闭,否则用户仍然可能在 cache 中查到数据”
如果现在做纯粹的 抓发模式的话 难道
forwarders {
61.177.7.1;
};
allow-query-cache{any;};
recursion no;
这样就可以? LZ有些DNS的感念还没搞清楚呢,建议看一下我写的扫盲系列之二:DNS的分类
http://bbs.chinaunix.net/thread-1573358-1-1.html 回复 6# llzqq
谢谢!
页:
[1]