gpt4 book ai didi

DNS响应答案&权威版 block

转载 作者:行者123 更新时间:2023-12-04 16:48:29 24 4
gpt4 key购买 nike

我一直在 Wireshark 中查看 DNS 响应数据包,但无法理解答案和权威部分的十六进制编码。

考虑 DNS 查询:mail.abcd.com

答案部分包含名称字段,其十六进制编码因以下而异:

 0xc00c
0xc012

它们都导致在字段中填充整个名称。

权威部分还包含名称字段,但其十六进制编码通常为:
 0xc010

这导致 abcd.com 被填充到该字段中。

谁能说出填充这些字段所遵循的约定是什么,因为它非常令人困惑。

谢谢

最佳答案

DNS 标签使用 <length><data ...> 格式.
一个标签的最大长度为 63 个字节,因此 <length>字段剩余两位。这些用于对标签类型进行编码。
如果前两位是 0b11然后将剩余的六位与以下字节组合在一起,形成一个压缩指针,该指针是 DNS 有效负载中到另一个标签的先前实例的偏移量。
由于 DNS 协议(protocol) header 长度为 12 字节,因此最短的合法偏移量为 12 字节,给出您在上面看到的值 0xc00c .
[从技术上讲,可以构造一个指向 header 的压缩指针,但它并不严格符合协议(protocol)]。
我强烈建议不要尝试从电报包中对规范进行逆向工程——你将不可避免地错过一些东西。只需阅读 RFC 1035取而代之的是-所有核心内容都在其中。

关于DNS响应答案&权威版 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9865084/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com