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

如何解决 snapdrop 在挂代理时无法使用的问题?

  •  
  •   V9NN · 2022-03-04 08:10:31 +08:00 · 3087 次点击
    这是一个创建于 1024 天前的主题,其中的信息可能已经有所发展或是发生改变。
    各个设备之间传递文件时使用了 snapdrop ( https://snapdrop.net/ )。

    手机上打开了 clash ,便无法正常使用 snapdrop ,表现为:
    能互相发现对方设备,但无法正常传输文件。

    退出 clash 则恢复正常。

    这个该如何解决?
    9 条回复    2024-11-02 13:59:17 +08:00
    Scirocco
        1
    Scirocco  
       2022-03-04 09:05:46 +08:00
    把 snapdrop 的代理规则改为 DIRECT ?
    V9NN
        2
    V9NN  
    OP
       2022-03-04 09:07:54 +08:00
    @Scirocco 改了,无效,不清楚 snapdrop 在传输时使用了什么网络协议或特性。
    sujin190
        3
    sujin190  
       2022-03-04 09:48:56 +08:00   ❤️ 1
    @V9NN #2 肯定是 webrtc 啊,应该是发现过程是和 snapdrop 建立 websocket 连接通过来源相同网络地址来确定的,之后需要用 webrtc 来建立连接发送文件,webrtc 建立连接过程地址交换打洞的服务器估计不是 snapdrop 的,所以获取到的地址并不能通过你的代理完成 udp 通信,所以发不了文件
    sujin190
        4
    sujin190  
       2022-03-04 10:00:51 +08:00   ❤️ 1
    @V9NN #2 stun 地址用的是这个 stun.l.google.com ,或者你可以把它从代理里放出来看看,snapdrop 也从代理里放出来,这样设备发现和 webrtc ice 交换都直接走本地网络了,如果之后的 udp 默认不走代理的话,也许是可以正常用了,而且通过 https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/ 测试可知,似乎 stun.l.google.com 是直接可用的,不需要代理
    V9NN
        5
    V9NN  
    OP
       2022-03-04 10:15:50 +08:00
    @sujin190 感谢大佬的解答,在 clash 的配置文件中加入下面 2 条规则之后就可以正常使用了:
    - DOMAIN-SUFFIX,snapdrop.net,DIRECT
    - DOMAIN,stun.l.google.com,DIRECT
    V9NN
        6
    V9NN  
    OP
       2022-03-04 10:29:46 +08:00
    @sujin190 顺带提一下,经过上面的配置后,也解决了之前存在的一个问题:

    打开 ClashX ( macOS 客户端)时,在桌面浏览器打开「微信网页版( https://wx.qq.com/ )」,用手机微信扫码登录,会提示「异地登录」。关闭 ClashX 则不会有这个提示。

    更新上面的配置之后,就没有这个异地登录提示了。

    应该是微信网页版也使用了上面的 stun 地址。
    ligouhai
        7
    ligouhai  
       2022-05-23 15:20:12 +08:00
    @V9NN iOS 端的 Shadowrocket 上试着添加了这两条规则但还是不行。
    Finly
        8
    Finly  
       2023-06-17 14:32:06 +08:00
    quanx 亲测可以,但是 Mac 上 surge 开了 增强模式后,就不行,关闭了就可以。bypass-tun 配置了也没用
    beihuiguixian
        9
    beihuiguixian  
       50 天前 via iPhone
    @Finly 请问圈 x 如何设置才能使 snapdrop 传输文件?谢谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2826 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 00:06 · PVG 08:06 · LAX 16:06 · JFK 19:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.