在为bgsu.edu执行nslookup时运行networking捕获时,我注意到我的DNS服务器没有查询bgsu.edu的SOAlogging。 以下是我在捕捉中看到的操作顺序:
我的DNS服务器向bgsu.edu的一个根提示服务器发出Alogging查询。
根提示服务器返回gTLD服务器的NSlogging列表。
我的DNS服务器向bgsu.edu的一个gTLD服务器发出Alogging查询。
通用顶级域名服务器返回bgsu.edu的NSlogging列表。
我的DNS服务器向bgsu.edu的第4步中返回的其中一个名称服务器发出Alogging查询。
有问题的域的名称服务器返回bgsu.edu的Alogging信息。
所以我的问题是:我的DNS服务器不需要先查询有关域的SOAlogging? 如果不是,那么SOAlogging究竟是如何使用的呢? 哪些名称服务器查询SOAlogging? gTLD服务器是否查询SOAlogging,因此,我没有在我的捕获中看到这一点? 我的理解是,SOA拥有NSlogging的列表,所以SOA不应该成为查询的第一个logging?
NS服务器不是SOAlogging的一部分。 SOAlogging和我引用RFC 1035 (3.3.13):
这些字段中的大多数仅适用于名称服务器维护操作。
SOAlogging中的字段是:
MNAME作为该区域的原始或主要数据源的名称服务器。
RNAME A指定负责该区域的人员的邮箱。
SERIAL区域原始副本的无符号32位版本号。 区域传输保留这个值。 这个值包装,应该使用序列空间algorithm进行比较。
REFRESH刷新区域之前的32位时间间隔。
重试应该重试刷新失败之前应该经过的32位时间间隔。
EXPIRE一个32位时间值,指定区域不再具有权威性之前可能经过的时间间隔的上限。
MINIMUM最小的32位无符号TTL字段,应该从该区域的任何RR导出。
所以,就这样,发生了什么事情是这样的:
SOAlogging在传输过程中使用(主从站/存根)。 主人有指向它的SOAlogging。
主人也会有一个NSlogging,表明它有一个该区域的authortative副本。
从属服务器也将有一个权威的副本(通常有NSlogging,因为那些由recursion查询中的更高级别的服务器返回,但不一定)。
SOAlogging仅用于:
AXFR )或增量更改( IXFR ) MINIMUM字段,这并不意味着“ MINIMUM TTL了@。 一个正常的recursionparsing器永远不会明确地要求SOAlogging,但更多的时候是来自授权服务器响应的AUTHORITY部分。 即使如此,这大多只用于上述#3。
一个正常的DNS客户端根本不需要SOA。