[GH-ISSUE #4037] [Feature Request] Automatic stcp failover if xtcp fails #3198

Closed
opened 2026-05-05 14:04:02 -06:00 by gitea-mirror · 5 comments
Owner

Originally created by @santomet on GitHub (Mar 1, 2024).
Original GitHub issue: https://github.com/fatedier/frp/issues/4037

Describe the feature request

I would like to see a possibility to automatically use stcp if xtcp fails to establish a link (without the need to specifically configure another proxy and switch to it manually on the client)

This would allow us to need only one configuration and frp would reliably make some connection (with xtcp as priority). That would greatly optimize any deployment process in production.

Describe alternatives you've considered

A good one is RustDesk port forwarding which does exactly the same - first tries to make a P2P connection and if unsuccessful, it switches to relay server automatically. The problem there is that self-hosted RustDesk server has more requirements for opened public ports (it needs multiple + it also needs UDP)

Affected area

  • Docs
  • Installation
  • Performance and Scalability
  • Security
  • User Experience
  • Test and Release
  • Developer Infrastructure
  • Client Plugin
  • Server Plugin
  • Extensions
  • Others
Originally created by @santomet on GitHub (Mar 1, 2024). Original GitHub issue: https://github.com/fatedier/frp/issues/4037 ### Describe the feature request I would like to see a possibility to automatically use stcp if xtcp fails to establish a link (without the need to specifically configure another proxy and switch to it manually on the client) This would allow us to need only one configuration and frp would reliably make some connection (with xtcp as priority). That would greatly optimize any deployment process in production. ### Describe alternatives you've considered A good one is RustDesk port forwarding which does exactly the same - first tries to make a P2P connection and if unsuccessful, it switches to relay server automatically. The problem there is that self-hosted RustDesk server has more requirements for opened public ports (it needs multiple + it also needs UDP) ### Affected area - [ ] Docs - [ ] Installation - [ ] Performance and Scalability - [ ] Security - [X] User Experience - [ ] Test and Release - [X] Developer Infrastructure - [ ] Client Plugin - [ ] Server Plugin - [ ] Extensions - [ ] Others
Author
Owner
<!-- gh-comment-id:1973932432 --> @xqzr commented on GitHub (Mar 1, 2024): https://gofrp.org/zh-cn/docs/features/xtcp/#fallback-%E6%9C%BA%E5%88%B6
Author
Owner

@santomet commented on GitHub (Mar 2, 2024):

Thanks!

<!-- gh-comment-id:1974188797 --> @santomet commented on GitHub (Mar 2, 2024): Thanks!
Author
Owner

@xzxzhixin commented on GitHub (Apr 25, 2024):

I also want to use FRP to penetrate Rustdesk. My FRP is on the server, but Rustdesk is local. How do I need to configure it so that Rustdesk clients can access Rustdesk through the FRP service? Currently, my clients are showing as being connected to the Rustdesk network. I have already tried this in local testing, and it is possible to access the Rustdesk service normally locally. I hope you can answer for me. thanks

我也想使用frp穿透rustdesk,我的frp是在服务器上面,但是rustdesk是在本地,我需要怎么配置才可以让rustdesk客户端通过frp服务访问到rustdesk,现在我的客户端都是显示正在接入rustdesk网络。这个我在本地测试中已经尝试过,本地是真可以正常访问到rustdesk服务的。希望您可以为我解答。谢谢

@santomet

<!-- gh-comment-id:2076581369 --> @xzxzhixin commented on GitHub (Apr 25, 2024): I also want to use FRP to penetrate Rustdesk. My FRP is on the server, but Rustdesk is local. How do I need to configure it so that Rustdesk clients can access Rustdesk through the FRP service? Currently, my clients are showing as being connected to the Rustdesk network. I have already tried this in local testing, and it is possible to access the Rustdesk service normally locally. I hope you can answer for me. thanks 我也想使用frp穿透rustdesk,我的frp是在服务器上面,但是rustdesk是在本地,我需要怎么配置才可以让rustdesk客户端通过frp服务访问到rustdesk,现在我的客户端都是显示正在接入rustdesk网络。这个我在本地测试中已经尝试过,本地是真可以正常访问到rustdesk服务的。希望您可以为我解答。谢谢 @santomet
Author
Owner

@santomet commented on GitHub (Apr 25, 2024):

This issue was not about penetrating RustDesk. RustDesk was only used as an example.

RustDesk self-hosted instance operates with both TCP and UDP (for different purposes), you need to read through the RustDesk documentation to know which ports need to be TCP and which UDP. FRP supports both so there should not be any apparent problem in your case.

However, I am wondering why you do not want to have a publicly accessible RustDesk instance. There is some level of security thanks to keys. Is using FRP in your case about an additional layer of security?

<!-- gh-comment-id:2076592844 --> @santomet commented on GitHub (Apr 25, 2024): This issue was not about penetrating RustDesk. RustDesk was only used as an example. RustDesk self-hosted instance operates with both TCP and UDP (for different purposes), you need to read through the RustDesk documentation to know which ports need to be TCP and which UDP. FRP supports both so there should not be any apparent problem in your case. However, I am wondering why you do not want to have a publicly accessible RustDesk instance. There is some level of security thanks to keys. Is using FRP in your case about an additional layer of security?
Author
Owner

@xzxzhixin commented on GitHub (Apr 26, 2024):

My server is a Pandavan router with only FRP. I checked the version of Rustdesk that does not have the MIPS architecture, so I want to use FRP to penetrate the Rustdesk service deployed on my company computer to the public network. I hope you can answer for me. Thank you.

我的服务器是一台pandavan路由器,里面只有frp,我查看了rustdesk发版的版本中没有mips架构的版本,所以我想通过frp穿透我在公司电脑上部署的rustdesk服务到公网。希望你能为我解答一下。谢谢。

@santomet

<!-- gh-comment-id:2078399308 --> @xzxzhixin commented on GitHub (Apr 26, 2024): My server is a Pandavan router with only FRP. I checked the version of Rustdesk that does not have the MIPS architecture, so I want to use FRP to penetrate the Rustdesk service deployed on my company computer to the public network. I hope you can answer for me. Thank you. 我的服务器是一台pandavan路由器,里面只有frp,我查看了rustdesk发版的版本中没有mips架构的版本,所以我想通过frp穿透我在公司电脑上部署的rustdesk服务到公网。希望你能为我解答一下。谢谢。 @santomet
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#3198
No description provided.