V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
QBugHunter
V2EX  ›  Android

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

  •  
  •   QBugHunter · 2021-01-27 11:43:43 +08:00 · 10170 次点击
    这是一个创建于 1404 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

    14 条回复    2021-01-29 04:21:16 +08:00
    Gloomyer
        1
    Gloomyer  
       2021-01-27 11:54:10 +08:00
    没有 root 没权限啊 搞个小米测试机 解锁后刷 magisk 百度下巨简单 而且 udp 本来就不保证手机能收到啊。
    reasonMix
        2
    reasonMix  
       2021-01-27 11:55:58 +08:00
    UDP 本身就是不可靠。没有收到是很正常的啊。你要可靠就用 raknet enet 这种网络库
    hatebugs
        3
    hatebugs  
       2021-01-27 12:34:45 +08:00
    udp 不可靠换 tcp 就不会丢包了吗,😏 楼主是想看这个包有没有到吧?不管是 udp 还是 tcp,该丢都会丢,只是上层的行为不一样。
    QBugHunter
        4
    QBugHunter  
    OP
       2021-01-27 13:13:25 +08:00
    @reasonMix
    1.现在因为设备的原因,只能用 UDP
    2.在良好网络状态下 UDP 丢包有 3%-5%,明显不正常
    QBugHunter
        5
    QBugHunter  
    OP
       2021-01-27 13:16:25 +08:00
    @hatebugs
    硬件限制,设备不是我们公司的,设备采用 UDP 的方式进行信息交互,协商让厂商改成 TCP 的,但短时间内做不到(钱太少),所以目前只能用 UDP
    QBugHunter
        6
    QBugHunter  
    OP
       2021-01-27 13:24:08 +08:00
    @hatebugs
    主要现在处于扯皮阶段,设备厂商坚持自己设备没问题,他的包发到手机了,是我们的手机没处理
    cz5424
        7
    cz5424  
       2021-01-27 13:30:13 +08:00 via iPhone
    @QBugHunter 换个厂商解决或者电脑监听局域网所有网络包,如果 udp 是广播包就可以抓到,如果中间有软路由可以在软路由抓包
    Puteulanus
        8
    Puteulanus  
       2021-01-27 13:41:24 +08:00
    WiFi 的话,电脑网卡开混杂模式应该能抓到吧
    bleepbloop
        9
    bleepbloop  
       2021-01-27 14:40:06 +08:00
    设备上 port mirroring
    CallMeReznov
        10
    CallMeReznov  
       2021-01-27 14:41:57 +08:00
    我记得安卓有抓包软件啊,原来测试游戏 APP 的时候就用那个抓包。
    jim9606
        11
    jim9606  
       2021-01-27 19:19:59 +08:00
    一种方法是 PC 上游网络连你的设备,然后开热点给手机,PC 上开 wireshark 捕获 Virtual Adapter 的包。
    z7039585
        12
    z7039585  
       2021-01-27 22:03:17 +08:00
    安卓抓包推荐 HttpCanary ( Android 端目前最好用的抓包软件)
    daimiaopeng
        13
    daimiaopeng  
       2021-01-28 09:51:41 +08:00
    用 Fiddler 代理手机网络,然后通过 wireshark 抓包就行了,我之前通过这种方式抓过手机 qq 的 udp 包
    bao3
        14
    bao3  
       2021-01-29 04:21:16 +08:00 via iPhone
    8 楼正解
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   908 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 20:51 · PVG 04:51 · LAX 12:51 · JFK 15:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.