当我向具有 dnssec 的名称服务器发出请求时,响应有时不完整
我在网上查了一下,发现了一些有关该问题的信息
2.3.4 大小限制
https://www.rfc-editor.org/rfc/rfc1035
上面写着UDP 消息 512 个八位字节或更少
要接收更大的响应,我需要 EDNS0
,这样我最多可以接收 4096 字节。
我真的不知道如何使用/启用 EDNS0
EDNS0 信息:
https://www.rfc-editor.org/rfc/rfc2671
编辑
我必须发送 OPT RR 并请求获取更多数据。我有一个来自微软的例子,但他们使用的是 RRSIG 类型。我想使用 ANY 类型。
http://img266.imageshack.us/img266/6707/optf.png
问题:
有人可以解释 EDNS0 是如何工作的以及为什么我的 opt rr 不起作用。(我使用与微软示例相同的内容)
提前谢谢:)
最佳答案
出于某种奇怪的原因,我的请求现在正在运行。
我发送的请求:
01 01 01 00 00 01 00 00 00 00 00 01". domain2dns($domainname) ."00 00 ff 00 01 00 00 29 10 00 00 00 00 00 00 00
EDNS部分的说明
Name: 00<br/>
Type: 00 29<br/>
UDP Payload size: 10 00<br/>
Higher bits in extended RCODE:00<br/>
EDNS0 version: 00<br/>
Z: 00 00<br/>
Data Lenght: 00 00
NAME -- 域名 -- 空(根域)
类型 - - u_int16_t ---- OPT
CLASS - u_int16_t ---- 发送方的 UDP 负载大小
TTL - - - u_int32_t ---- 扩展 RCODE 和标志
RDLEN - u_int16_t ---- 描述 RDATA
RDATA - 八位字节流 - {属性,值}对
问题已解决
谢谢大家:)
关于dns - 名称服务器响应未返回所有数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13917363/