V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
NGINX
NGINX Trac
3rd Party Modules
Security Advisories
CHANGES
OpenResty
ngx_lua
Tengine
在线学习资源
NGINX 开发从入门到精通
NGINX Modules
ngx_echo
VKRUSSIA
V2EX  ›  NGINX

求真正支持内网穿透 websocket 的软件

  •  
  •   VKRUSSIA · 2021-01-17 01:01:53 +08:00 via Android · 4524 次点击
    这是一个创建于 1167 天前的主题,其中的信息可能已经有所发展或是发生改变。

    之前用 frp 所谓支持 websocket 结果死活不行各种报错:

    do http proxy request error: no such domain

    或者是 do http proxy request error: backend tried to switch protocol "" when "websocket" was requested

    求真正支持能够内网穿透 websocket 的软件

    15 条回复    2021-01-22 12:53:19 +08:00
    WordTian
        1
    WordTian  
       2021-01-17 01:27:17 +08:00 via Android
    你转发 tcp 就完了
    cz5424
        2
    cz5424  
       2021-01-17 09:08:23 +08:00 via iPhone
    1 楼说的对
    lqw3030
        3
    lqw3030  
       2021-01-17 09:30:48 +08:00 via iPhone
    要不要试试我的“小破轮”

    https://github.com/qiweiview/jndc
    YouLMAO
        4
    YouLMAO  
       2021-01-17 11:09:12 +08:00 via Android
    websocket 为啥报错 http,no way
    fxt0706
        5
    fxt0706  
       2021-01-17 12:48:15 +08:00
    wakzz
        6
    wakzz  
       2021-01-17 17:43:07 +08:00
    一楼正解
    no1xsyzy
        7
    no1xsyzy  
       2021-01-17 19:11:43 +08:00
    我来点诡异的:cloudflared
    yanzhiling2001
        8
    yanzhiling2001  
       2021-01-17 19:31:04 +08:00
    2 楼书说得对
    masker
        9
    masker  
       2021-01-17 22:24:31 +08:00 via Android
    说半天原来是自己的问题
    VKRUSSIA
        10
    VKRUSSIA  
    OP
       2021-01-18 00:31:39 +08:00
    https://github.com/fatedier/frp/issues/2189
    提问后,作者给的答案挺无语的说是缺少某 header(用 chrome 控制台测试的,查看了网络请求并不缺他说的 header)。有空试试 3 楼兄弟的工具
    VKRUSSIA
        11
    VKRUSSIA  
    OP
       2021-01-18 00:34:36 +08:00
    no1xsyzy
        12
    no1xsyzy  
       2021-01-18 12:34:44 +08:00
    @VKRUSSIA 根据源代码里搜索报错字符串来说,应当是返回时缺少 upgrade: websocket 头
    用 chrome 控制台测试是不行的,报了这个错会关闭链接,你拿不到返回头的。
    拿 wireshark 抓下
    no1xsyzy
        13
    no1xsyzy  
       2021-01-18 12:39:39 +08:00
    @VKRUSSIA 拿 wireshark 抓下服务器端的包……
    能报这个错说明有 connection: upgrade 在,才会运行到能报错的逻辑
    但,可能是 frp 在转变标准形的时候发生了问题,或者服务端没有发送 u:w
    顺便问下你的服务端用的(语言?框架?应用?)是什么?
    VKRUSSIA
        14
    VKRUSSIA  
    OP
       2021-01-19 19:15:51 +08:00
    @no1xsyzy 服务端是用的 javax.websocket.server.ServerEndpoint 类部署于 termux 里的 tomcat9 服务器,客户端是 javax.websocket.ClientEndpoint 。我用在局域网下用 ClientEndpoint 或 chrome 控制台访问 termux 里这个项目是正常的,把这个项目直接部署到外网 VPS 用 ClientEndpoint 或 chrome 访问也是正常的,说明项目代码没有问题.但是把 termux 里的 tomcat9 用 frp 内网映射到外网后就是无法连接。浪费几天时间把我整抑郁了都。
    VKRUSSIA
        15
    VKRUSSIA  
    OP
       2021-01-22 12:53:19 +08:00 via Android
    多次提 issue 最新版终于修复了。。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1497 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 17:19 · PVG 01:19 · LAX 10:19 · JFK 13:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.