mirror of
https://github.com/fatedier/frp.git
synced 2026-05-15 08:05:49 -06:00
[GH-ISSUE #4800] [Feature Request] frps clustering #3790
Labels
No labels
In Progress
WIP
WaitingForInfo
bug
doc
duplicate
easy
enhancement
future
help wanted
invalid
lifecycle/stale
need-issue-template
need-usage-help
no plan
proposal
pull-request
question
todo
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/frp#3790
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @adyanth on GitHub (May 20, 2025).
Original GitHub issue: https://github.com/fatedier/frp/issues/4800
Describe the feature request
I would like to deploy multiple
frpsservers at different locations, have thefrpcconnect to the nearest ones, but allow the users connect to connect to whicheverfrpsis near to them but still reach thefrpc.To say differently, allow
frpsto talk to each other and route traffic between them to reach the client.User -> frps A -> frps B -> frpc
This would also prevent a single point of failure by having multiple frps instances, and the clients should be able to connect to an active one in case the preferred one goes down.
Describe alternatives you've considered
I think something ad hoc might be done by running an frpc where the frps B is running in the above example, but not sure if it would work
User -> frps A -> (frpc, frpsB) -> frpc
Affected area
@fatedier commented on GitHub (May 20, 2025):
This is a relatively complex feature, and there are no plans for it at the moment.
Different types of protocols and proxies may require special handling.
@adyanth commented on GitHub (May 20, 2025):
I agree. Issue could be up for tracking in the future, or if you don't think it is feasible to be implemented in frp, feel free to close!
@jjhesk commented on GitHub (Jun 27, 2025):
up for discussion,
plan 1, this is actually a CDN that given each frps an unique IP or domain. client can actually switch between them.
plan 2, given this convention as auto reconnection mechanism, all frpcs to route from the nearby peer for stable traffic, looks like the middle layer is the actualy CDN that allow the visited frps to choose from different nodes.