代码之家  ›  专栏  ›  技术社区  ›  L. Carlier

TCP数据包:这些额外字节的含义是什么?

  •  -1
  • L. Carlier  · 技术社区  · 7 年前

    这是我的问题包:

    00000   c6 f8 03 54 44 2d d0 7e  35 b0 60 7b 08 00 45 00    ...TD-.~5.`{..E.
    00010   00 4f 3a ea 40 00 80 06  ee 8f c0 a8 00 77 08 08    .O:.@........w..
    00020   08 08 f5 02 00 35 c9 8b  a5 db 63 ee fd 0b 50 18    .....5....c...P.
                  %                                    ^
    00030   00 40 77 53 00 00 00 25  34 b6 01 00 00 01 00 00    .@wS...%4.......
                              ** **
    00040   00 00 00 00 03 77 61 6e  04 71 6c 74 79 07 66 69    .....wan.qlty.fi
    00050   6e 61 72 65 61 02 63 68  00 00 10 00 01             narea.ch.....
    

    我遇到的问题是,TCP头和DNS查询之间有2个额外的字节。额外的字节标记为 ** ,我还通过一个 ^ %

    有人知道这些字节来自哪里吗?它们的含义是什么?

    提前感谢您的帮助。

    1 回复  |  直到 7 年前
        1
  •  2
  •   L. Carlier    7 年前

    我自己发现的。我正在记录这一点,以便任何可能有相同问题的人都知道。

    根据RFC1035定义DNS的规定,由TCP封装的DNS数据包必须以表示DNS有效负载大小的2个字节作为前缀。