首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >wriesharek同时监听多个端口

wriesharek同时监听多个端口

作者头像
meteoric
发布2018-11-20 10:59:36
2.8K0
发布2018-11-20 10:59:36
举报
文章被收录于专栏:游戏杂谈游戏杂谈游戏杂谈

之前的文章《wireshark解析自定义的protobuf协议》 ,当时只监听了一个端口,而如果游戏同时有二个 socket 连接,比如一个是网关另外一个是其它的,怎么办呢?

for i,port in ipairs(tcp_port) do
        tcp_port_table:add(port, m_MeteoricProto)
 end

参考链接:https://wiki.wireshark.org/Lua/Examples#Using_Lua_to_register_protocols_to_more_ports

wiresharek 的过滤条件可以这样写:

(ip.dst == 192.168.xx.xx or ip.src == 192.168.xx.xx) && tcp.len > 0

这样显示的基本上就是自定义解析的 socket 消息了,关于过滤条件,更多详情可参考官网:

https://wiki.wireshark.org/DisplayFilters

第一个问题,监听多个端口,查官方文档没找到答案。

image
image

https://wiki.wireshark.org/LuaAPI/Dissector#dissectortable:add.28pattern.2C_dissector.29

追踪到源码也不是太理解

image
image

https://github.com/wireshark/wireshark/blob/master/epan/wslua/wslua_dissector.c

之后测试发现,下面二种方式也是可以的,一种表示范围,另一种表示多个端口,与用for循环的效果一样。

tcp_port_table:add("8002-8004", m_MeteoricProto) tcp_port_table:add("8002,8003,8004", m_MeteoricProto)

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-11-07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档