读取tcpdump header length命令

时间:2013-09-13 03:09:19

标签: tcp header binary tcpdump reserved

这是我的第一篇文章,我绝对< 3这个网站!这么棒的内容!

所以,我有以下TCPDump命令我想了解它的要求(用简单的英语)。

tcpdump'tcp [12]& 80!= 0'

它是否要求获取字节偏移量12(TCP标头长度和保留位)上的所有TCP数据包,其值至少为80,这是真的吗?我相信我错了。

如果以上情况属实,有人可以为它写出可能的二进制文件吗?

80给0101 0000.我的导师也记下了:1111 0000和0111 0000.但我不知道为什么......

如果它至少为80,那么二进制组合可能是无数......

1 个答案:

答案 0 :(得分:1)

  

是否要求获取字节偏移12(TCP标头长度和保留位)上的所有TCP数据包,其值至少为80,这是真的

没有。十进制的80是十六进制的50,所以它相当于tcp[12] & 0x50 !=0,它测试TCP头的第12个字节中的0100 0000位或0001 0000位是否设置。 0101 0000也是如此,但1111 0000和0111 0000以及0100 0000和0001 0000以及0100 1111也是如此....

如果要测试该字节的最高位,则使用tcp[12] & 0x80 !=0 实际上匹配所有值> = 0x80。