[GH-ISSUE #4879] [Feature Request] 使用动态端口或者是多端口并发从而规避运营商限速 #3847

Closed
opened 2026-05-05 14:27:36 -06:00 by gitea-mirror · 6 comments
Owner

Originally created by @xiaowen-king on GitHub (Jul 11, 2025).
Original GitHub issue: https://github.com/fatedier/frp/issues/4879

Describe the feature request

前因

前几天发现穿透出来的速度很慢,只有下载速度只有六百多kb每秒,也就是5M左右的带宽,不管是换成tcp协议还是quit协议或者是kcp协议都是这样,后面研究了半天发现好像是运营商的问题,因为每次穿透出来的时候刚开始正常的,后面就慢了,然后换个frpc和frps的连接端口又恢复了,但是过个半天左右,又慢下去了,又只能换端口,个人猜测是运营商有什么策略进行端口限速了。

方案1:动态连接端口

我能想到的第一个方案是动态端口,开放一个端口组,让frp不定时随机切换连接端口,因为我感觉运营商对端口的限速因该不是永久的,会过一段时间检测,不符合限速要求或者是没有数据传输了则取消该端口的限速。

后面我找了一些资料,发现我自己应该实现不了这个功能

方案2:端口并行进行带宽叠加

这个方案是我一个朋友提出来的,使用多端口并行传输,这样即使一个端口限速5M的带宽,那我使用十个端口进行并行传输带宽是不是就可以叠加了呢,理论上是这样的。

但是后面尝试了一下我发现我好像没那个实力

我自己最后的解决方法

后面发现我是用的隧道好像没有被限速,那么我能不能让frp的数据走隧道进行传输呢,查阅了frp的文档,发现可以配置代理,这就简单了,我在frpc里面配置了一个代理,让frpc的数据通过代理走隧道传输到frps上,目前使用两天了没发现问题。

Describe alternatives you've considered

No response

Affected area

  • Docs
  • Installation
  • Performance and Scalability
  • Security
  • User Experience
  • Test and Release
  • Developer Infrastructure
  • Client Plugin
  • Server Plugin
  • Extensions
  • Others
Originally created by @xiaowen-king on GitHub (Jul 11, 2025). Original GitHub issue: https://github.com/fatedier/frp/issues/4879 ### Describe the feature request # 前因 前几天发现穿透出来的速度很慢,只有下载速度只有六百多kb每秒,也就是5M左右的带宽,不管是换成tcp协议还是quit协议或者是kcp协议都是这样,后面研究了半天发现好像是运营商的问题,因为每次穿透出来的时候刚开始正常的,后面就慢了,然后换个frpc和frps的连接端口又恢复了,但是过个半天左右,又慢下去了,又只能换端口,个人猜测是运营商有什么策略进行端口限速了。 # 方案1:动态连接端口 我能想到的第一个方案是动态端口,开放一个端口组,让frp不定时随机切换连接端口,因为我感觉运营商对端口的限速因该不是永久的,会过一段时间检测,不符合限速要求或者是没有数据传输了则取消该端口的限速。 后面我找了一些资料,发现我自己应该实现不了这个功能 # 方案2:端口并行进行带宽叠加 这个方案是我一个朋友提出来的,使用多端口并行传输,这样即使一个端口限速5M的带宽,那我使用十个端口进行并行传输带宽是不是就可以叠加了呢,理论上是这样的。 但是后面尝试了一下我发现我好像没那个实力 # 我自己最后的解决方法 后面发现我是用的隧道好像没有被限速,那么我能不能让frp的数据走隧道进行传输呢,查阅了frp的文档,发现可以配置代理,这就简单了,我在frpc里面配置了一个代理,让frpc的数据通过代理走隧道传输到frps上,目前使用两天了没发现问题。 ### Describe alternatives you've considered _No response_ ### Affected area - [ ] Docs - [ ] Installation - [ ] Performance and Scalability - [ ] Security - [ ] User Experience - [ ] Test and Release - [ ] Developer Infrastructure - [ ] Client Plugin - [ ] Server Plugin - [ ] Extensions - [x] Others
gitea-mirror 2026-05-05 14:27:36 -06:00
Author
Owner

@groot-guo commented on GitHub (Jul 13, 2025):

Image frp 支持 p2p 打洞的方式,应该满足你说的这个,我自己搭建测试,能跑满家里上传带宽
<!-- gh-comment-id:3066471746 --> @groot-guo commented on GitHub (Jul 13, 2025): <img width="2047" height="570" alt="Image" src="https://github.com/user-attachments/assets/9b74125e-ccb5-427b-814e-fdc54feaf13d" /> frp 支持 p2p 打洞的方式,应该满足你说的这个,我自己搭建测试,能跑满家里上传带宽
Author
Owner

@xiaowen-king commented on GitHub (Jul 13, 2025):

图像 frp支持p2p打洞的方式,应该可以满足你说的这个,我自己的搭建测试,能跑满家里上传带宽

好的,谢谢,后面可以尝试一下,现在我这边是解决了,目前还我这个解决方法还是恒稳定,只是提出一个想法大家一起看一下是否有可行性。XTCP好像不能不带端口访问,例如我frpc上配置的穿透服务是8000端口,我在frps这边的服务器上可以用nginx代理8000端口到80或者443,这样可以直接访问域名,但是使用XTCP之后好像只能带端口访问,因为打洞后流量好像不经过frps这边,所以也就无法把8000代理到80或者443了

<!-- gh-comment-id:3067086749 --> @xiaowen-king commented on GitHub (Jul 13, 2025): > <img alt="图像" width="2000" height="570" src="https://private-user-images.githubusercontent.com/49121957/465689835-9b74125e-ccb5-427b-814e-fdc54feaf13d.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NTI0MTc2MDksIm5iZiI6MTc1MjQxNzMwOSwicGF0aCI6Ii80OTEyMTk1Ny80NjU2ODk4MzUtOWI3NDEyNWUtY2NiNS00MjdiLTgxNGUtZmRjNTRmZWFmMTNkLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA3MTMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNzEzVDE0MzUwOVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWMyNDkwMjQ2MTBkOTk2YjE2NWEyYWUxZDUwNmI5ODk3ZDYxYThhY2E0N2NlYjU3NDY5ZTI2NjJhOWUyN2I2MjcmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.5DrGhQy-rEQdcISRxM8I9Sis7msM9FvyuWzUzBQJCq8"> frp支持p2p打洞的方式,应该可以满足你说的这个,我自己的搭建测试,能跑满家里上传带宽 好的,谢谢,后面可以尝试一下,现在我这边是解决了,目前还我这个解决方法还是恒稳定,只是提出一个想法大家一起看一下是否有可行性。XTCP好像不能不带端口访问,例如我frpc上配置的穿透服务是8000端口,我在frps这边的服务器上可以用nginx代理8000端口到80或者443,这样可以直接访问域名,但是使用XTCP之后好像只能带端口访问,因为打洞后流量好像不经过frps这边,所以也就无法把8000代理到80或者443了
Author
Owner

@groot-guo commented on GitHub (Jul 14, 2025):

没有啊,我用 xtcp ,需要穿透的配置了 frpc ,frps 服务器上也要配置 frpc,可以通过 端口配置 nginx 反向代理访问。我直接域名 挂对应 端口就行,不一定非要配置到 80 或者 443。

<!-- gh-comment-id:3069904364 --> @groot-guo commented on GitHub (Jul 14, 2025): 没有啊,我用 xtcp ,需要穿透的配置了 frpc ,frps 服务器上也要配置 frpc,可以通过 端口配置 nginx 反向代理访问。我直接域名 挂对应 端口就行,不一定非要配置到 80 或者 443。
Author
Owner

@groot-guo commented on GitHub (Jul 14, 2025):

另外如果你观察 xtcp 的使用,有点类似你想要的动态端口。我也是只是探讨。

<!-- gh-comment-id:3069917471 --> @groot-guo commented on GitHub (Jul 14, 2025): 另外如果你观察 xtcp 的使用,有点类似你想要的动态端口。我也是只是探讨。
Author
Owner

@xqzr commented on GitHub (Jul 14, 2025):

frp 表态过:不会实现绕过/规避的技术

<!-- gh-comment-id:3070612415 --> @xqzr commented on GitHub (Jul 14, 2025): frp 表态过:不会实现绕过/规避的技术
Author
Owner

@github-actions[bot] commented on GitHub (Jul 29, 2025):

Issues go stale after 14d of inactivity. Stale issues rot after an additional 3d of inactivity and eventually close.

<!-- gh-comment-id:3130221264 --> @github-actions[bot] commented on GitHub (Jul 29, 2025): Issues go stale after 14d of inactivity. Stale issues rot after an additional 3d of inactivity and eventually close.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/frp#3847
No description provided.