挖掘查询ID是如何计算的还是随机的?
特别
$ dig google.co.uk
; <<>> DiG 9.11.0-P3 <<>> google.co.uk
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 63375
id:63375它的意义是什么?如果是随机的,那是什么意思?
我写这篇文章的全部原因是因为我在Google上找不到太多有关它的细节。因此,对问题的质量表示歉意。
与debian/gnu linux挖掘默认输出相比,您的DIG似乎具有很小的输出,这可能是造成混乱的原因,但是无论如何都要问。
https://technet.microsoft.com/en-us/library/dd197470(v = ws.10).aspx
Query Identifier (Transaction ID)
Set to a unique number to enable the DNS client resolver to match the response to the query.
此输出使它更加清晰。如您所见," ID"在DNS服务器的"答案"中。而且,如果您通过Technet文章进行扫描,这在返回和使用的所有值方面令人惊讶地完成,您会发现以上很可能是" ID"的含义,尽管如果没有,希望有人会纠正这一点。
zytrax更加清楚,查询ID是由提出请求的事物生成的,并且是16位。因此,DIG生成它,并且DNS服务器将其发送回DIG,以确认实际上,请求和答案是匹配的。http://www.zytrax.com/books/dns/ch15/
Message ID 16 bit message ID supplied by the requestion (the questioner) and reflected back unchanged by the responder (answerer). Identifies the transaction.
因此,在这种情况下,ID就是随机生成的。我对此进行了测试,实际上,是的,您可以看到,这是我假设0和2^16(65536)之间的随机数。在仅5个挖掘请求中,我得到了500至62000之间的值,这是您期望从随机数生成中看到的。
dig google.co.uk
; <<>> DiG 9.10.3-P4-Debian <<>> google.co.uk
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56947
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;google.co.uk. IN A
;; ANSWER SECTION:
google.co.uk. 300 IN A 172.217.6.35
;; Query time: 34 msec
;; SERVER: 68.87.76.178#53(68.87.76.178)
;; WHEN: Sun Mar 05 10:59:13 PST 2017
;; MSG SIZE rcvd: 57
这是Debian中的默认DIG配置。
只是为了验证此解释可能正确,我再次运行了DIG请求。如您所见,ID再次更改,这很可能实际上是一个随机响应ID,它准确地执行了Technet DNS语法文章所说的内容,有助于将查询绑定到响应中,因此它知道它得到正确的响应。显然不一定要大的数字,只有足够大以确保一个请求匹配一个答案。
dig google.co.uk
; <<>> DiG 9.10.3-P4-Debian <<>> google.co.uk
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 29674
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;google.co.uk. IN A
;; ANSWER SECTION:
google.co.uk. 260 IN A 172.217.6.35
;; Query time: 12 msec
;; SERVER: 68.87.76.178#53(68.87.76.178)
;; WHEN: Sun Mar 05 11:05:04 PST 2017
;; MSG SIZE rcvd: 57