关于不 root 的手机抓 UDP 包问题

手机连接某台自带 wifi 的设备,然后需要在手机里抓 UDP 包,因为现在存在丢包的问题,设备发送了但手机里的 APP 显示没有收到该消息

这种情况下如何抓手机里的 UDP 包?网络上很多都是要 root 后用 tcpdump 命令的,或者是用手机连接电脑热点,然后通过电脑来抓。

14 条回复    2021-01-29 04:21:16 +08:00
Gloomyer
    1

Gloomyer   71 天前

没有 root 没权限啊 搞个小米测试机 解锁后刷 magisk 百度下巨简单 而且 udp 本来就不保证手机能收到啊。
reasonMix
    2

reasonMix   71 天前

UDP 本身就是不可靠。没有收到是很正常的啊。你要可靠就用 raknet enet 这种网络库
hatebugs
    3

hatebugs   71 天前

udp 不可靠换 tcp 就不会丢包了吗,? 楼主是想看这个包有没有到吧?不管是 udp 还是 tcp,该丢都会丢,只是上层的行为不一样。
QBugHunter
    4

QBugHunter   71 天前

@reasonMix
1.现在因为设备的原因,只能用 UDP
2.在良好网络状态下 UDP 丢包有 3%-5%,明显不正常
QBugHunter
    5

QBugHunter   71 天前

@hatebugs
硬件限制,设备不是我们公司的,设备采用 UDP 的方式进行信息交互,协商让厂商改成 TCP 的,但短时间内做不到(钱太少),所以目前只能用 UDP
QBugHunter
    6

QBugHunter   71 天前

@hatebugs
主要现在处于扯皮阶段,设备厂商坚持自己设备没问题,他的包发到手机了,是我们的手机没处理
cz5424
    7

cz5424   71 天前 via iPhone

@QBugHunter 换个厂商解决或者电脑监听局域网所有网络包,如果 udp 是广播包就可以抓到,如果中间有软路由可以在软路由抓包
Puteulanus
    8

Puteulanus   71 天前

WiFi 的话,电脑网卡开混杂模式应该能抓到吧
bleepbloop
    9

bleepbloop   71 天前

设备上 port mirroring
CallMeReznov
    10

CallMeReznov   71 天前

我记得安卓有抓包软件啊,原来测试游戏 APP 的时候就用那个抓包。

jim9606
    11

jim9606   70 天前

一种方法是 PC 上游网络连你的设备,然后开热点给手机,PC 上开 wireshark 捕获 Virtual Adapter 的包。
z7039585
    12

z7039585   70 天前

安卓抓包推荐 HttpCanary ( Android 端目前*好用的抓包软件)
daimiaopeng
    13

daimiaopeng   70 天前

用 Fiddler 代理手机网络,然后通过 wireshark 抓包就行了,我之前通过这种方式抓过手机 qq 的 udp 包
bao3
    14

bao3   69 天前 via iPhone

8 楼正解