检查Wireshark文件是否包含错误的校验和数据包

检查Wireshark文件是否包含错误的校验和数据包,wireshark,Wireshark,我正在通过命令行寻找命令,告诉我Wireshark文件是否包含错误的校验和数据包,而不是使用GUI,而是使用命令行(可能通过Tshark?) 我在这个论坛中看到了这个命令,但现在找不到它。您可以使用tshark过滤具有特定字段:value的数据包。对于TCP数据包,有TCP.checksum\u bad字段。其他协议可以有另一个字段。对于TCP解析器,还有一个选项可以启用/禁用校验和验证TCP.check\u checksum。 因此,要使用tshark查找校验和错误的数据包: tshark -

我正在通过命令行寻找命令,告诉我Wireshark文件是否包含错误的校验和数据包,而不是使用GUI,而是使用命令行(可能通过Tshark?)


我在这个论坛中看到了这个命令,但现在找不到它。

您可以使用
tshark
过滤具有特定字段:value的数据包。对于TCP数据包,有
TCP.checksum\u bad
字段。其他协议可以有另一个字段。对于TCP解析器,还有一个选项可以启用/禁用校验和验证
TCP.check\u checksum
。 因此,要使用tshark查找校验和错误的数据包:

tshark -o 'tcp.check_checksum:True' -Y 'tcp.checksum_bad==True' -r input.pcap

您也可以尝试
expert.message==“Bad checksum”
filter.

Hi,我知道这是一个非常古老的答案。但是,我现在正在尝试,我得到了一个错误:
无论是“tcp.checksum\u bad”还是“True”都不是字段或协议名。据我所知,这是显示过滤器的问题(
-Y
),但我不知道如何修复它。你能推荐一些解决方案吗?嗨,@GaurangTandon,它就像2.0.16版本之后的问题一样只
tcp.checksum\u bad.expert
可用。尝试使用
-Y'tcp.checksum\u bad.expert'
。谢谢!它确实工作得很好!请问你是怎么找到这个领域的。我在Wireshark中检查了
tshark-G协议| grep checksum
,但找不到相关字段(不确定这是否是正确的方法),它具有自动完成功能。并检查了这个版本。