【问题标题】:tshark outputting all fields?tshark 输出所有字段?
【发布时间】:2013-02-20 19:47:48
【问题描述】:

是否可以使用-T fields 选项或类似选项获得tshark 输出每个字段(在数据包内)?

例如对于数据包/重构中的每个字段,我想要这样的:

eth.src:f2:3c:91:96:fd:09,ip.src:1.2.3.4,tcp.dst_port:80,http.request.uri:/index.html

(逗号可以替换为\xff,以便在值包含逗号时更好地解析。)

我意识到有-e 选项,但似乎我必须在命令行中输入每个可能的字段。最重要的是,每个数据包中只会使用一小部分字段,这会导致大量数据需要解析。

我目前计划使用tshark -V 选项并对其进行解析,但理想情况下,我想要更多机器样式的术语,例如http.request.uri,而不是“人类可读”,例如:

Hypertext Transfer Protocol
    GET /main.php HTTP/1.1\r\n
        [Expert Info (Chat/Sequence): GET /main.php HTTP/1.1\r\n]
            [Message: GET /main.php HTTP/1.1\r\n]
            [Severity level: Chat]
            [Group: Sequence]
        Request Method: GET
        Request URI: /main.php

【问题讨论】:

    标签: wireshark pcap tshark


    【解决方案1】:

    偶然发现:

    tshark -T pdml
    

    这正是我需要的:

    <packet>
      <proto name="geninfo" pos="0" showname="General information" size="173">
        <field name="num" pos="0" show="323" showname="Number" value="143" size="173"/>
        <field name="len" pos="0" show="173" showname="Frame Length" value="ad" size="173"/>
        <field name="caplen" pos="0" show="173" showname="Captured Length" value="ad" size="173"/>
        <field name="timestamp" pos="0" show="Aug  7, 2011 16:16:13.579504000 EST" showname="Captured Time" value="1312697773.579504000" size="173"/>
      </proto>
      <proto name="frame" showname="Frame 323: 173 bytes on wire (1384 bits), 173 bytes captured (1384 bits)" size="173" pos="0">
        <field name="frame.time" showname="Arrival Time: Aug  7, 2011 16:16:13.579504000 EST" size="0" pos="0" show="Aug  7, 2011 16:16:13.579504000"/>
        ... etc.
    

    它包括 Wireshark 过滤器名称,以及数据包中包含的所有字段。

    更新:这很慢,而且破解tshark.c 所以-V 打印出abbrev 而不是header_field_info *hfinfo; 中的name 也可以解决问题。当我有机会时,我可能应该提供一个选项。

    【讨论】:

    • 如何破解 tshark.c?你可以帮我做个公会或榜样吗?谢谢
    猜你喜欢
    • 2019-04-27
    • 1970-01-01
    • 2019-02-26
    • 1970-01-01
    • 1970-01-01
    • 2014-11-20
    • 1970-01-01
    • 1970-01-01
    • 2011-08-15
    相关资源
    最近更新 更多