`
xumingyong
  • 浏览: 182343 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

WireShark Lua Example

阅读更多

From: http://wiki.wireshark.org/Lua/Examples


 

 

Using Lua to register protocols to more ports

 

 

-- register http to handle ports 4888-4891
do
        local tcp_port_table = DissectorTable.get("tcp.port")
        local http_dissector = tcp_port_table:get_dissector(80)
        for port in {4888,4889,4890,4891} do
                tcp_port_table:add(port,http_dissector)
        end
end

 

 

dumping to multiple files

 

 

-- Create a file named by_ip/''ip_addess''.cap with all ip traffic of each ip host. (works for tshark only)
-- Dump files are created for both source and destination hosts
do
        local dir = "by_ip"
        local dumpers = {}
        local function init_listener()
                local tap = Listener.new("ip")
                -- we will be called once for every IP Header.
                -- If there's more than one IP header in a given packet we'll dump the packet once per every header
                function tap.packet(pinfo,tvb,ip)
                        local ip_src, ip_dst = tostring(ip.ip_src), tostring(ip.ip_dst)
                        local src_dmp, dst_dmp
                        src_dmp = dumpers[ip_src]
                        if not src_dmp then
                                src_dmp = Dumper.new_for_current( dir .. "/" .. ip_src .. ".pcap" )
                                dumpers[ip_src] = src_dmp
                        end
                        src_dmp:dump_current()
                        src_dmp:flush()
                        dst_dmp = dumpers[ip_dst]
                        if not dst_dmp then
                                dst_dmp = Dumper.new_for_current( dir .. "/" .. ip_dst .. ".pcap"  )
                                dumpers[ip_dst] = dst_dmp
                        end
                        dst_dmp:dump_current()
                        dst_dmp:flush()
                end
                function tap.draw()
                        for ip_addr,dumper in pairs(dumpers) do
                                 dumper:flush()
                        end
                end
                function tap.reset()
                        for ip_addr,dumper in pairs(dumpers) do
                                 dumper:close()
                        end
                        dumpers = {}
                end
        end
        init_listener()
end

 

 

editing columns

 

 

do
    packets = 0;
    local function init_listener()
        local tap = Listener.new("frame","ip.addr == 10.0.0.0/8")
        function tap.reset()
            packets = 0;
        end
        function tap.packet(pinfo,tvb,ip)
            packets = packets + 1
        end
        function tap.draw()
            print("Packets to/from 10.0.0./8",packets)
        end
    end
    init_listener()
end
分享到:
评论

相关推荐

    wireshark lua 插件 解析提取网络报文传输内容(文本,多媒体,等信息)

    2. 安装好wiresshark后的目录(**/**/Wireshark)下创建一个 lua 文件夹。把root3.0放在当前文件夹下 并解压 3. 在wiresshark目录下 init.lua 文件目录添加上一行 dofile(DATA_DIR.."lua/robotV3_0/robot.lua"&#...

    wireshark Lua脚本插件源码

    1. **Wireshark Lua API**:Wireshark提供了丰富的Lua API,允许开发者访问数据包的详细信息,如包头、数据负载、时间戳等,以及创建新的协议处理逻辑。 2. **协议解析流程**:理解网络协议的基本结构和解析过程是...

    Wireshark 解析插件(lua源码)

    Wireshark 解析插件(lua源码) Wireshark 解析插件(lua源码) Wireshark 解析插件(lua源码) Wireshark 解析插件(lua源码) Wireshark 解析插件(lua源码) Wireshark 解析插件(lua源码) Wireshark 解析插件...

    Wireshark Lua API主要接口

    Wireshark Lua API主要接口

    wireshark解析h.264的nal类型的lua(基于rtp协议)

    1 确认你的Wireshark支持lua 如果Wireshark安装目录下面有init lua文件就说明支持Lua 2 将rtp h264 lua拷贝到Wireshark的安装目录下 3 需要启动对Lua的支持 默认不启动对Lua的支持 编辑 init lua文件 在“disable ...

    wireshark_lua:用于wireshark的LUA脚本

    lua文件Wireshark 的 LUA 扩展,用于打印服务器处理 NFS 请求所花费的时间。 用法: # for life capture$ tshark -q -X lua_script:nfs.lua -f " port 2049 "# or if nfs trafic is not on a standard port ( pNFS ...

    wireshark使用Lua编写dissector

    ### 使用Lua编写Wireshark Dissector #### 引言 Wireshark是一款广泛使用的网络协议分析工具,能够捕获和解析各种类型的网络流量。对于高级用户而言,Wireshark提供了强大的扩展功能,允许用户通过自定义插件来解码...

    用Wireshark解析自定义协议

    本主题将深入探讨如何使用Wireshark解析自定义协议,以portal协议为例,并结合LUA脚本来进行深入解释。 首先,让我们了解什么是自定义协议。在通信领域,自定义协议是为特定应用或系统设计的通信规则,不同于标准的...

    eth-ws-someip:汽车以太网SOMEIP-SD Wireshark LUA解剖器(Autosar 4.2)

    汽车以太网SOME / IP和SOME / IP-SD Wireshark LUA解剖器(Autosar CP和AP,Foundation 1.5.0) 安装 为了使用此LUA插件,需要将它们添加到Wireshark的“个人插件”文件夹中。 如果您不想直接将解剖器文件复制到...

    wireshark中获取H264码流lua脚本

    1.查看安装路径下是否存在init.lua,确保disable_lua = false 2.在init.lua的最后加上dofile(DATA_DIR.."rtp_h264_extractor.lua") 3.把rtp_h264_extractor.lua这个文件放在init.lua同一个路径下

    wireshark 提取264视频流插件,h264_export.lua

    支持同时解析多个视频流,并以...第一步:在init.lua脚本中设置disable_lua = false 第二步:在init.lua文末有一句dofile(DATA_DIR.."h264_export.lua") 第三步:将下载的h264_export.lua文件与init.lua放在同级目录

    制作lua脚本抓取wireshark自定义协议报文

    在标题"制作lua脚本抓取wireshark自定义协议报文"中,主要涉及两个关键知识点:Wireshark的Lua脚本编写和自定义协议的解析。 1. Wireshark Lua脚本编写: Wireshark提供了Lua API,允许开发者通过Lua脚本解析和...

    wireshark GPON OMCI报文解析lua

    本篇将深入探讨Wireshark如何通过Lua脚本解析GPON OMCI报文。 1. GPON OMCI协议基础: GPON OMCI是一种基于G.988标准的管理协议,它允许OLT(光线路终端)与ONU之间进行配置、状态查询、故障检测和性能监控。OMCI...

    网络带宽测量工具与wireshark中文文档

    在这个主题下,我们将重点讨论两款常用的带宽测量工具——iperf、pathchar和pchar,以及网络分析神器Wireshark的中文使用文档。 iperf是一款强大的网络性能测试工具,它支持TCP和UDP协议,可以测量网络的吞吐量、丢...

    wireshark抓取OMCI报文使用的omci.lua

    wireshark抓取OMCI报文使用的omci.lua 1.把文件copy至wireshark安装目录(还有一个BinDecHex.lua文件也要复制到该目录),如C:\Program Files (x86)\Wireshark 2.更改init.lua文件,打开文件后,文件最后添加dofile...

    wireshark中获取h264裸码流

    压缩包中的`rtp_h264_extractor.lua`是一个Lua脚本,它可以解析Wireshark捕获的RTP包,提取出H264 NAL单元并重组为原始码流。使用方法是在Wireshark的“Analyze”菜单中选择“Execute Lua Script”,然后加载这个...

    wiershark抓omci包相关插件,BinDecHex.lua,omci.lua ,方便个人自取

    在本压缩包中,包含的"BinDecHex.lua"和"omci.lua"是Wireshark的自定义插件,专用于解析OMCI(Operations, Management and Maintenance Information)协议的数据包。 OMCI是光线路终端(OLT)与光网络单元(ONU)...

    wireshark插件omci.lua

    添加插件后wireshark可以解析OMCI的报文,过滤条件直接使用OMCI即可过滤。

    Wireshark+lua插件方式抓包及解析OMCI协议报文详细信息

    将Wireshark与Lua结合,可以自定义解析特定的网络协议,例如在本案例中提到的OMCI(ONU Management and Control Interface)协议。 OMCI协议是针对光网络终端(ONT,Optical Network Terminal)的一种管理协议,...

    wirehark-lua:源生成的跨平台wireshark解剖器

    Wireshark-Lua 是一个基于源代码生成的跨平台网络协议分析工具,它利用了强大的Wireshark框架和灵活的Lua脚本语言。这个项目旨在为开发者和网络专业人士提供一个可扩展的平台,用于深入解析各种网络协议,包括但不...

Global site tag (gtag.js) - Google Analytics