V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
zjb861107
V2EX  ›  问与答

手机和 PC 之间网络隔离,怎么调试前端页面?

  •  
  •   zjb861107 · 2018-04-25 10:24:29 +08:00 · 1872 次点击
    这是一个创建于 2439 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题,我记得以前看到过通过 USB 可以调试的,但是忘记该搜什么关键字了~

    ps:不考虑直接部署到外网后再调试

    第 1 条附言  ·  2018-04-25 18:54:46 +08:00
    楼下提到了:RemoteDebug iOS WebKit Adapter,确实很有用,但是跟我这个需求不符。

    我整理了一下思路,其实根本问题是怎么用 android 和 ios 设备,不通过 Wi-Fi 或 4G 访问到 PC 上的 webserver。
    这个问题可能约等于,PC 怎么通过 USB 分享网络给移动设备
    22 条回复    2018-04-26 17:36:45 +08:00
    lingo
        1
    lingo  
       2018-04-25 11:44:26 +08:00
    frp。。
    crysislinux
        2
    crysislinux  
       2018-04-25 11:58:29 +08:00 via Android
    我一般是跑在同一个路由器下面,dnsmasq 解析一波。
    zjb861107
        3
    zjb861107  
    OP
       2018-04-25 16:11:30 +08:00
    @lingo 你是指各种内网穿透方案吗,可能威胁到安全的,公司不能让用
    lingo
        4
    lingo  
       2018-04-25 18:02:07 +08:00
    那就 usb 线吧,搜 chrome inspect
    lingo
        5
    lingo  
       2018-04-25 18:03:18 +08:00   ❤️ 1
    chrome inspect 调试 ios safari
    然后根据你自己手机的 os 的情况看吧。
    zjb861107
        6
    zjb861107  
    OP
       2018-04-25 18:56:47 +08:00
    麻烦看我刚刚的 append。

    网上能找到的,一般都是把手机的网络通过 USB 共享给 PC,但是反过来有什么工具能把 PC 的网络通过 USB 共享给手机?
    WordTian
        7
    WordTian  
       2018-04-25 19:14:45 +08:00 via Android   ❤️ 1
    安卓手机的话用 adb reverse 命令,把电脑的端口转发到手机
    ios 不知道
    zjb861107
        8
    zjb861107  
    OP
       2018-04-25 19:43:37 +08:00
    @WordTian 感谢~

    按这个思路我找到了前人的经验,http://blog.xiaoyu.im/post_678.html。
    但是我手头的手机不知道为什么,执行 adb reverse tcp:8000 tcp:8000 全都会报错:error: protocol fault (couldn't read status length): Undefined error: 0

    明天找别的试试再说
    zjb861107
        9
    zjb861107  
    OP
       2018-04-25 19:51:36 +08:00
    我的 adb 版本是 Android Debug Bridge version 1.0.39 ,
    刚才某台手机上执行`adb reverse tcp:8000 tcp:8000`以后,手机上可以打开 http://127.0.0.1:8000 的页面了。
    但是执行`adb reverse --list`会报错
    Owenjia
        10
    Owenjia  
       2018-04-25 21:07:24 +08:00
    USB tethering 试试?流量不多的话电脑端最好改下路由表
    night98
        11
    night98  
       2018-04-25 23:55:49 +08:00 via Android
    wifi 共享了解一下,插个类似 u 盘的设备,手机连上输入地址访问搞定。
    zjb861107
        12
    zjb861107  
    OP
       2018-04-26 00:26:48 +08:00 via iPhone
    @night98 审题不严
    zjb861107
        13
    zjb861107  
    OP
       2018-04-26 00:31:59 +08:00 via iPhone
    @Owenjia 方向弄反了
    sky48818
        14
    sky48818  
       2018-04-26 01:15:42 +08:00 via Android
    需要 root
    WizardMeow
        15
    WizardMeow  
       2018-04-26 08:18:52 +08:00 via Android
    说起来。。买个路由器不就完了么。。。有网络审计不给路由器插网线不就好了么
    zjb861107
        16
    zjb861107  
    OP
       2018-04-26 09:40:44 +08:00
    @WizardMeow 所以你开发过程中都不联网的吗~
    Loyalsoldier
        17
    Loyalsoldier  
       2018-04-26 09:47:33 +08:00
    中间人代理了解一下 https://github.com/mitmproxy/mitmproxy
    Owenjia
        18
    Owenjia  
       2018-04-26 11:55:34 +08:00
    @zjb861107 #13
    没有反啊,网络是通的,电脑上会多出一块网卡来,用手机访问那块网卡上的 ip 就可以了.前提是你的服务跑在自己电脑上,不然还要做个映射.
    zjb861107
        19
    zjb861107  
    OP
       2018-04-26 14:09:52 +08:00
    @Owenjia 这么说吧,手机访问电脑的网络(按你说的方案肯定是走的 wifi )——你在把内网暴露出来,这是高压线
    Owenjia
        20
    Owenjia  
       2018-04-26 14:46:32 +08:00
    @zjb861107 #19
    走 wifi ?我上面说的是通过 USB 啊……
    手机上的网络都关掉,然后 USB tethering 连到电脑上,两个就在一个局域网里了,手机相当于路由器。
    安全要求高的话可能需要单独拿个手机,内外网切换清除数据。
    zjb861107
        21
    zjb861107  
    OP
       2018-04-26 15:20:04 +08:00
    @Owenjia 好吧,是我理解有问题
    我按照上面的方案试了,PC 上也确实多了个网卡,但是手机上还是不能访问 pc 上的静态服务器( python -m http.server,监听的是 http://0.0.0.0:8000 )
    Owenjia
        22
    Owenjia  
       2018-04-26 17:36:45 +08:00
    @zjb861107
    我之前试过这样连接然后用手机下载电脑上的文件,能跑满 usb (2.0) 的带宽。
    访问不了的话检查下电脑上的防火墙规则?或者看看两边都分配到 IP 了没?(要访问多出来的那块网卡上配的 IP )
    手机如果可以 ping/mtr 的话也试试看?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   929 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 22:19 · PVG 06:19 · LAX 14:19 · JFK 17:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.