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

frp 内网穿透速度慢,有什么好办法么?

  •  
  •   beiwei2008 · 2019-12-19 13:25:09 +08:00 · 24385 次点击
    这是一个创建于 1561 天前的主题,其中的信息可能已经有所发展或是发生改变。

    美帝 vps,用 SFTP 上传可以到 1MB/s

    frp 内网穿透,直接在 vps 上直接下载( wget 127.0.0.1 相应端口),速度 400~200KB/s 波动,基本就在 300 以内,

    frp 内置的 KCP 协议也试过了,效果不是很明显,略微比 TCP 协议快一点吧。

    套 ssh 代理,也没啥改善。

    请教下还有什么好办法么?

    内网到 VPS 上传速度还是可以稳定在 1MB/s 以上的,为什么换成 frp 会差那么多?

    第 1 条附言  ·  2019-12-20 09:56:00 +08:00
    应该是网络问题,

    不应该问为啥 frp 慢,应该问为啥 SCP 命令这么快

    SCP 是基于 SSH,直接用 SSH 做代理速度应该也不慢,但实际情况比直连好不了多少
    57 条回复    2023-04-13 12:01:27 +08:00
    quan01994
        1
    quan01994  
       2019-12-19 13:28:19 +08:00
    linux - linux 应该不会出什么问题,
    linux ( server ) - windows ( client ) 就会下降。
    zhangysh1995
        2
    zhangysh1995  
       2019-12-19 13:31:27 +08:00
    ngrok 试一下
    encro
        3
    encro  
       2019-12-19 13:34:20 +08:00
    开启压缩?
    为啥不到 github 提交 issue ?
    matepi
        4
    matepi  
       2019-12-19 14:06:57 +08:00
    找有同城游外网 ip 的朋友,送他个路由,梅林挂上 frps,比你买 vps 说不定还便宜。
    liouluis
        5
    liouluis  
       2019-12-19 14:09:37 +08:00 via Android
    试试 n2n,挺不错的
    sleepm
        6
    sleepm  
       2019-12-19 14:16:26 +08:00
    zerotier 试一试
    we1523
        7
    we1523  
       2019-12-19 14:26:41 +08:00
    这方法好
    beiwei2008
        8
    beiwei2008  
    OP
       2019-12-19 15:44:47 +08:00
    @quan01994 确实,客户端换成 Linux 了,速度可以到在 600~300KB/s

    但是,客户端直接 scp 到 vps,速度可以稳定在 2MB/s 以上 ,速度还是差很多

    直接在服务端用 axel 多线程下载,倒是可以让速度保持到 1MB/s 以上,虽然比 scp 慢点但也能接受了,不过,访问的服务,不方便都用多线程。另外,单线程也不是很稳定,忽快忽慢
    beiwei2008
        9
    beiwei2008  
    OP
       2019-12-19 15:53:27 +08:00
    @sleepm

    zerotier 试过了,这边网络环境不太行,不能打洞直连,只能通过中转,太慢了

    zerotier 套 frp 连接 VPS 也试过,速度没有明显提升,也不是很稳定。scp 命令直接 copy 到 vps 速度都可以到 2MB/s
    beiwei2008
        10
    beiwei2008  
    OP
       2019-12-19 15:56:25 +08:00
    @encro 当然开压缩了,不过就用的压缩包文件测试的,关系应该不大

    感觉这个不算 bug 吧,这个项目都开发好久了,如果是问题的话肯定有人早提了,感觉可能是我这边有什么地方不对
    beiwei2008
        11
    beiwei2008  
    OP
       2019-12-19 15:58:10 +08:00
    @matepi 路由器倒是好几个,就是没地方放 o(╥﹏╥)o
    gyh
        12
    gyh  
       2019-12-19 16:00:06 +08:00
    我也这样,直接 scp 上传服务器有 3MB/s,frp 最高只能到 1MB/s 还不稳定,楼主要是找到其它方案麻烦分享下。
    iRiven
        13
    iRiven  
       2019-12-19 16:02:10 +08:00
    服务器换阿里云
    KasuganoSoras
        14
    KasuganoSoras  
       2019-12-19 16:12:40 +08:00
    1. 你所使用的 Frp 版本是什么?
    2. 贴一下你的 Frp 配置文件(客户端的)
    3. Frp 由于不像 SSH 那样是强加密,可能或多或少会被干扰(可能)
    mm2x
        15
    mm2x  
       2019-12-19 16:13:28 +08:00
    其实一直感觉 FRP 速度就很垃圾而且链接也不稳定 你可以试试 ngrok 配置好证书 有点水平就自己编译个。我觉得效率和稳定性都要比 Frp 强很多
    beiwei2008
        16
    beiwei2008  
    OP
       2019-12-19 16:37:11 +08:00
    @KasuganoSoras

    1.最新版的 0.30.0 ;
    2.考虑到这个问题,尝试过走 酸 酸 代理还有 zerotier,效果不明显;
    3.客户端配置文件

    [common]
    server_addr = xxx.xxx.xxx.xxx
    server_port = 17007
    tls_enable = false
    token = xxxxx

    protocol = tcp
    pool_count = 5

    [xx]
    type = http
    local_ip = 127.0.0.1
    local_port = 80
    use_compression = true
    subdomain = xx

    [test_static_file]
    type = tcp
    remote_port = 8000
    plugin = static_file
    plugin_local_path = /
    plugin_strip_prefix = static


    # tls 加密开启关闭,都试过,没发现明显影响

    # windows 客户端感觉 KCP 速度快一点,Linux 客户端感觉 TCP 速度更稳定,直观感受,并没有仔细测试
    # 总体单线程 Linux 客户端速度比 Windows 客户端快 50%,但都远小于 Linux 下 scp 命令

    # 测试下载用是自带的文件服务插件和 tomcat,Linux 客户端多线程下速度好于 tomcat
    # Linux 客户端,多线程可以达到 scp 命令的 80%速度

    # 下载测试都是在 vps 上直接操作
    beiwei2008
        17
    beiwei2008  
    OP
       2019-12-19 16:39:54 +08:00
    @iRiven 好主意,等下次有活动再说吧,国内 vps 带宽太贵了
    Buges
        18
    Buges  
       2019-12-19 16:41:40 +08:00 via Android
    @beiwei2008 我的配置和你差不多,直接 tcp 全部转发到后端 caddy 上,开了 tls,网络环境比较好(走代理)的情况下能跑满上行( 30mbps )
    但我没法用 kcp,一换就连不上。
    beiwei2008
        19
    beiwei2008  
    OP
       2019-12-19 16:42:56 +08:00
    @gyh 看来是通病啊,咋都没见人讨论这个,

    我打算换其他软件了,frp 能找到的办法都试过了,

    现在多线程下载可以达到 scp 速度的 80%,但不是所有的服务都适合多线程
    yuzenan888
        20
    yuzenan888  
       2019-12-19 16:42:56 +08:00
    最好是套双 S,微兔瑞这种前置代理。
    MaxTan
        21
    MaxTan  
       2019-12-19 16:43:32 +08:00
    换国内的 vps,之前活动撸了个 1c1g5m 的腾讯云专门做 frp,3 年 600 块,速度挺快的
    hand515
        22
    hand515  
       2019-12-19 16:44:00 +08:00 via Android
    阿里云的香港轻服务器
    beiwei2008
        23
    beiwei2008  
    OP
       2019-12-19 16:45:57 +08:00
    @yuzenan888 套了,不晓得为啥,作用不大

    晚上试试,全套 Linux 环境,看能不能改善下
    gyh
        24
    gyh  
       2019-12-19 16:49:05 +08:00
    @hand515 #22 我刚好还有一台阿里云的香港轻服务器,那台更慢了,frp 只有 500k 不到的速度同样不稳定,内网是移动宽带。
    beiwei2008
        25
    beiwei2008  
    OP
       2019-12-19 16:52:13 +08:00
    @Buges 确实网络环境很重要,试了下日本的 vps,单线程轻轻松松到 1MB/s,

    但是现在这台美国的 VPS,怎么弄都不行,单线程最快也就 800~700KB/s,

    走代理,套 cloudflare CDN 都不行

    Linux 客户端 KCP 效果不明显,windows 客户端 KCP 有提升
    KasuganoSoras
        26
    KasuganoSoras  
       2019-12-19 16:54:38 +08:00
    @beiwei2008 #16 应该不是软件问题,我觉得可能和网络有关。我有一台国内 100M 对等宽带的 Frp 服务器,我家上传 50Mbps 可以跑满,但是另一个香港的 Frp 服务器就只能跑到 10Mbps 左右,服务端和客户端的配置完全相同。测试方法也是在服务器上拉文件传输,客户端用的是 Nginx 起的静态文件服务器。
    KasuganoSoras
        27
    KasuganoSoras  
       2019-12-19 16:56:40 +08:00
    补充,是和协议有关,Frp 没有对传输内容进行加密和混淆,所以或多或少会受到一些干扰(内容受到审查或者其他原因)导致传输速度降低和丢包。
    MeteorCat
        28
    MeteorCat  
       2019-12-19 18:39:20 +08:00 via Android
    不搞大事,买乡下专线移动宽带,现在专线宽带一年 20M 带宽 /800~1000(如果当 web 要留意 80/443 端口是否被封),自己整一台 docker 配合内网映射,现在云服务器续费哪怕最垃圾的一年都这个,还不如动手 diy 做建自己服务器
    windyland
        29
    windyland  
       2019-12-19 18:50:03 +08:00 via Android
    可以 frpc 挂代理然后进行半程加速,不过我还是建议去买个阿里云的轻量学生机,很稳
    windyland
        30
    windyland  
       2019-12-19 18:55:49 +08:00 via Android
    或者去买一个国内 nat vps
    tsymq0000
        31
    tsymq0000  
       2019-12-20 00:25:09 +08:00 via iPhone
    国内 nat vps 价格还能接受,而且单纯用来内网穿透的话不用考虑防火墙的影响
    beiwei2008
        32
    beiwei2008  
    OP
       2019-12-20 01:01:36 +08:00
    晚上又试了下,
    酸 酸 +v2ray 套 cloudflare CDN 多线程下载基本可以达到直连 scp 的速度

    单线程还是不行,各种连接方式下,单线程一般都只有同条件下多线程的 1/2~1/4

    网络情况好的时候直连多线程基本可以到直连 scp 一半多的速度,倒是可以接受,但是单线程太慢,差不多 1/3~1/4 波动

    另外,只带的 KCP 效果不是很明显,反倒会减速多线程下载,这点也想不明白
    beiwei2008
        33
    beiwei2008  
    OP
       2019-12-20 01:04:11 +08:00
    @KasuganoSoras 审查这个,套一层酸 酸+CDN 应该可以解决吧?

    现在套上之后,多线程可以达到直连 SCP 的速度,单线程还是不行,单线程不管怎么弄都没有 SCP 速度的一半
    beiwei2008
        34
    beiwei2008  
    OP
       2019-12-20 01:06:18 +08:00
    @windyland 半程加速有效,多线程下载,基本可以和直连 SCP 速度相当,但是,单线程还是不行

    学生机,带宽有限吧?貌似都是 1Mbps 的
    ysc3839
        35
    ysc3839  
       2019-12-20 01:32:30 +08:00 via Android
    印象中 frp 有个打洞模式的,两边客户端可以直接连接,试试这样速度如何?
    flynaj
        36
    flynaj  
       2019-12-20 02:05:26 +08:00 via Android
    zerotier 自己建个 moon,就可以打洞成功,还有 IPv6 直连也是非常快的。现在的宽带都有 v6,换个路由器就有了。最好是 openwrt
    shuangyeying
        37
    shuangyeying  
       2019-12-20 08:41:45 +08:00
    内网需要挂上梯子,然后 frp 基本可以满速了。
    cz5424
        38
    cz5424  
       2019-12-20 08:45:09 +08:00 via iPhone
    Ping 一下你中转服务器的延迟,速度应该跟延迟成正比
    missdeer
        39
    missdeer  
       2019-12-20 08:50:15 +08:00
    换 nebula 试试,用了段时间感觉速度还不错
    samondlee
        40
    samondlee  
       2019-12-20 08:53:20 +08:00
    @MeteorCat 移动 这种小微企业宽带 800-1000 的给公网 ip 吗
    beiwei2008
        41
    beiwei2008  
    OP
       2019-12-20 09:47:47 +08:00
    @shuangyeying 挂梯子多线程下载勉强可以持平直连 SCP 命令拷贝速度,单线程速度要差的多
    MeteorCat
        42
    MeteorCat  
       2019-12-20 09:48:30 +08:00 via Android
    @samondlee 我买的专线的,他那边给,就是要身份证这些;所以只能搞个虚拟机转发远程或者挂个 web 啥的,架酸酸乳这些别想,老大哥看着你
    dollarboy
        43
    dollarboy  
       2019-12-20 10:22:41 +08:00
    我在京东上买了一个蒲公英 X1 旁路由,很方便,也简单。推荐。
    gyh
        44
    gyh  
       2019-12-26 11:09:03 +08:00 via iPhone
    我下午换成了 v2ray 作内网代理,单线程接近满速了,楼主可以试试看
    cskeleton
        45
    cskeleton  
       2019-12-31 03:45:44 +08:00
    我也遇到这个问题。。。SCP 直连 3M/s+,frp 只有 500K。frpc 套一个能跑满带宽的梯子还是只有 500K 左右。两端都是 Linux。
    deep007
        46
    deep007  
       2020-03-04 00:58:42 +08:00
    @gyh 可否给一下 V2RAY 做内网穿透的教程?谢谢
    marvinpan
        47
    marvinpan  
       2020-10-28 10:11:44 +08:00
    @beiwei2008 楼主解决问题了吗,是怎么解决的哈?
    beiwei2008
        48
    beiwei2008  
    OP
       2020-10-30 13:27:30 +08:00
    @marvinpan 没法弄,折腾这些不如搞台线路的好的机器省事
    lovestudykid
        49
    lovestudykid  
       2021-03-23 04:49:34 +08:00
    刚好也用到,我两边都是有公网 IP 的,发现 frp 很慢,换成 nps 速度快一点,用 n2n 基本没有速度损失。我的需求其实用 frp/nps 这种更合适,但既然 n2n 速度快,只好用了。
    neptuno
        50
    neptuno  
       2021-09-16 12:43:01 +08:00   ❤️ 5
    @marvinpan
    @cskeleton 挖个坟,最近也在弄这个,加了个参数,tcp_mux=false,速度从 1m/s 上升到 3-4m/s
    jaleo
        51
    jaleo  
       2021-10-04 18:48:35 +08:00
    @neptuno tcp_mux=false 这个参数 服务端客户端都要加吗? 我试了 win 客户端 配置里加了这条 没法运行
    neptuno
        52
    neptuno  
       2021-10-08 09:40:16 +08:00   ❤️ 2
    @jaleo 都要加,没法运行的话,你是不是加错地方了。要加在 common 里面,[common] tcp_mux = false
    jaleo
        53
    jaleo  
       2021-10-09 21:29:06 +08:00
    @neptuno 谢谢指点
    godloveplay
        54
    godloveplay  
       2022-08-11 21:28:41 +08:00
    @neptuno #52 0.44 版本是不是 已经不能用 tcp_mux=false 了?

    我加这个配置报错. 删除后正常
    neptuno
        55
    neptuno  
       2022-08-12 09:30:45 +08:00   ❤️ 1
    @godloveplay 我用的是 docker 部署,镜像 oldiy/frpc:0.24.1 ,你可以参考一下
    zololiu
        56
    zololiu  
       350 天前
    @neptuno 感谢,好像真的有用
    neptuno
        57
    neptuno  
       350 天前 via iPhone
    @zololiu #56 很高兴能帮到你
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3253 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 12:04 · PVG 20:04 · LAX 05:04 · JFK 08:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.