[GH-ISSUE #4642] [Feature Request] Add customDomains to xtcp and/or tcp #3665

Closed
opened 2026-05-05 14:21:06 -06:00 by gitea-mirror · 4 comments
Owner

Originally created by @te-deum on GitHub (Jan 16, 2025).
Original GitHub issue: https://github.com/fatedier/frp/issues/4642

Describe the feature request

I have several data servers that expose data via a local https server in different protected LANs. I access these servers via a website.

If I configure frp on my servers with https, then my site can access the different servers without any problem by calling their URL.
I'd like to be able to use xtcp's P2P operation to connect my web server directly to each data server (thus avoiding overloading my frp server's connection). However, in xtcp mode, I have to declare as many visitors on my web server as I have data servers.

Would it be possible for the data servers to declare a customDomains, in xtcp configuration, which would then be used by the frp server to connect directly the web server with the data server(s)?
This would allow me to have only one visitor configuration (or two if we consider fallback) to access all my data servers.

Thank you for your help.

Describe alternatives you've considered

I thought of using a HeadScale server (an opensource alternative to Tailscale) but its implementation is very complicated in my environment.

Affected area

  • Docs
  • Installation
  • Performance and Scalability
  • Security
  • User Experience
  • Test and Release
  • Developer Infrastructure
  • Client Plugin
  • Server Plugin
  • Extensions
  • Others
Originally created by @te-deum on GitHub (Jan 16, 2025). Original GitHub issue: https://github.com/fatedier/frp/issues/4642 ### Describe the feature request I have several data servers that expose data via a local https server in different protected LANs. I access these servers via a website. If I configure frp on my servers with https, then my site can access the different servers without any problem by calling their URL. I'd like to be able to use xtcp's P2P operation to connect my web server directly to each data server (thus avoiding overloading my frp server's connection). However, in xtcp mode, I have to declare as many visitors on my web server as I have data servers. Would it be possible for the data servers to declare a customDomains, in xtcp configuration, which would then be used by the frp server to connect directly the web server with the data server(s)? This would allow me to have only one visitor configuration (or two if we consider fallback) to access all my data servers. Thank you for your help. ### Describe alternatives you've considered I thought of using a HeadScale server (an opensource alternative to Tailscale) but its implementation is very complicated in my environment. ### Affected area - [ ] Docs - [ ] Installation - [x] Performance and Scalability - [ ] Security - [ ] User Experience - [ ] Test and Release - [ ] Developer Infrastructure - [ ] Client Plugin - [ ] Server Plugin - [ ] Extensions - [ ] Others
Author
Owner

@fatedier commented on GitHub (Jan 16, 2025):

No, xtcp is P2P communication and does not involve frps. If needed, you can expose the visitor's port to frps through an http type proxy with customDomains.

<!-- gh-comment-id:2595291210 --> @fatedier commented on GitHub (Jan 16, 2025): No, xtcp is P2P communication and does not involve frps. If needed, you can expose the visitor's port to frps through an `http` type proxy with `customDomains`.
Author
Owner

@te-deum commented on GitHub (Jan 16, 2025):

Hi,

First, thank you for your quick response !

Is there a way to make my web server able to call any data server without having to declare them all as visitors in the configuration file?
The problem is that I don't know in advance all the data servers available, and the list of data servers may change over time.

The problem is that http(s) proxy solution means that all data (requests and responses) go through the frp server. As a result, if traffic becomes heavy, my frp server's Internet connection may be saturated, slowing down operation.

We may have misunderstood how frp works or what it is designed for. If it's the case, then tell us.

Regards.

<!-- gh-comment-id:2595871978 --> @te-deum commented on GitHub (Jan 16, 2025): Hi, First, thank you for your quick response ! Is there a way to make my web server able to call any data server without having to declare them all as visitors in the configuration file? The problem is that I don't know in advance all the data servers available, and the list of data servers may change over time. The problem is that http(s) proxy solution means that all data (requests and responses) go through the frp server. As a result, if traffic becomes heavy, my frp server's Internet connection may be saturated, slowing down operation. We may have misunderstood how frp works or what it is designed for. If it's the case, then tell us. Regards.
Author
Owner

@fatedier commented on GitHub (Jan 17, 2025):

Your scenario might require a VPN to build a virtual network between multiple machines.

<!-- gh-comment-id:2597357643 --> @fatedier commented on GitHub (Jan 17, 2025): Your scenario might require a VPN to build a virtual network between multiple machines.
Author
Owner

@te-deum commented on GitHub (Jan 17, 2025):

Thank you for your help. We will consider the VPN as another solution or we will generate as many visitors as we need.

<!-- gh-comment-id:2598577640 --> @te-deum commented on GitHub (Jan 17, 2025): Thank you for your help. We will consider the VPN as another solution or we will generate as many visitors as we need.
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#3665
No description provided.