在Wireshark外部运行Wireshark Lua解析器脚本
我们公司对Lua解析器进行了大量投资,用于我们硬件使用的所有专有协议,我们在Wireshark中嗅到了这些协议。这使得Wireshark成为一个非常有用的工具,用于实时分析以及用户使用Wireshark录制并保存捕获以供以后分析。我们用Wireshark嗅探到的相同数据也在不涉及Wireshark的过程中被记录到二进制文件中。我的任务是创建一个过程来解析(解析)二进制日志文件并将它们输出为JSON,如果可能的话,我想利用我们现有的Lua解析器,而不是重写解析器(用任何合适的语言),这将是一项与Lua脚本并行创建和维护的巨大工作。但我不认为Lua Wireshark解析器可以在Wireshark之外运行,因为它们依赖于Wireshark在运行时注入的所有Wireshark原型,如Proto和Protofield等 以下是我想到的各种可能性。其中有可行的吗在Wireshark外部运行Wireshark Lua解析器脚本,lua,wireshark,Lua,Wireshark,我们公司对Lua解析器进行了大量投资,用于我们硬件使用的所有专有协议,我们在Wireshark中嗅到了这些协议。这使得Wireshark成为一个非常有用的工具,用于实时分析以及用户使用Wireshark录制并保存捕获以供以后分析。我们用Wireshark嗅探到的相同数据也在不涉及Wireshark的过程中被记录到二进制文件中。我的任务是创建一个过程来解析(解析)二进制日志文件并将它们输出为JSON,如果可能的话,我想利用我们现有的Lua解析器,而不是重写解析器(用任何合适的语言),这将是一项与L
-X lua_script:[my lua file]
我在tshark中看到的错误与直接从Lua运行Lua脚本时看到的错误相同:
...dissector.lua:16: bad argument #2 to 'Proto' (Proto_new: there cannot be two protocols with the same description)
我想它们都是可以吃的。如果你要求推荐,我会说你的帖子违反了指导原则,因为它们不鼓励固执己见的东西。我问自己,为什么要将该数据记录为二进制,然后使用wireshark解析器将该数据转换为json。为什么不直接记录json呢?记录格式在我参与项目之前很久就已经是一项技术决定,现在不会改变。最有可能的情况是,通过网络传输的数据是逐字节记录的,没有任何修改。