选项-Y,-2和-R在tshark迷惑我很长一段时间.
在我阅读了本手册之后,我知道-Y用于单通滤波器,-2用于2通滤波器(如果在第一次通过滤波器结束之前我们无法得到一些信息)
但我仍然无法理解之间有什么区别-2 -Y 'blabla'和-2 -R 'balabala'和-2 -Y 'blalal' -R 'blala'
我也做了一个让我疯狂的实验:
tshark -n -r test.pcap -2 -R 'frame.number > 0'
1 0.000000 10.140.28.17 -> 10.74.68.58 TCP 80 62276 > 8989 [SYN, ECN, CWR] Seq=0 Win=65535 Len=0 MSS=1460 WS=32 TSval=330325315 TSecr=0 SACK_PERM=1
2 0.000056 10.74.68.58 -> 10.140.28.17 TCP 76 8989 > 62276 [SYN, ACK, ECN] Seq=0 Ack=1 Win=28960 Len=0 MSS=1460 SACK_PERM=1 TSval=2078759468 TSecr=330325315 WS=128
3 0.000678 10.140.28.17 -> 10.74.68.58 TCP 68 62276 > 8989 [ACK] Seq=1 Ack=1 Win=131744 Len=0 TSval=330325316 TSecr=2078759468
4 0.000756 10.140.28.17 -> 10.74.68.58 HTTP 158 GET /index.html HTTP/1.1
5 0.000770 10.74.68.58 -> 10.140.28.17 TCP 68 8989 > 62276 [ACK] Seq=1 Ack=91 Win=29056 Len=0 TSval=2078759468 TSecr=330325316
Run Code Online (Sandbox Code Playgroud)
但是当我执行时tshark -n -r test.pcap -2 -R 'frame.number > 1',没有任何打印.怎么解释这个?
我的tshark版本是:TShark 1.10.6(来自master-1.10的v1.10.6)
你能帮我解决这个问题吗?先感谢您!
我在http://ask.wireshark.org上回答了这个问题,但我会在这里粘贴我的答案,以防有人在这里寻找答案而不是那里.
-R指定读取过滤器,因此只读取和处理来自文件的匹配数据包; 不匹配的数据包基本上被视为文件根本不包含它们.与此对比-Y,指定显示过滤器,因此仅显示匹配的数据包,但仍然读取和处理所有数据包.
你看到的问题frame.number是一个已知的错误,很久以前确定不值得解决.参见Bug 380,"wireshark -R不支持'frame.number'作为读取过滤器".
你也可以沿着一些背后的历史遵循-R与-Y此:
| 归档时间: |
|
| 查看次数: |
640 次 |
| 最近记录: |