frp
gofrp.org
What it is
frp is a free, self-hosted reverse proxy for making intranet services reachable from the public network through nodes with public IP addresses. It supports TCP, UDP, HTTP, and HTTPS proxying, while client-server communication also supports QUIC, KCP, WebSocket, and other protocols. Its XTCP mode uses P2P hole punching so successful connections send traffic directly rather than through frps, but success depends on the network’s NAT type and cannot be assured. Client and server authentication support tokens and OIDC, with token authentication as the default; encryption is among the project’s listed capabilities. Proxy groups can balance load, and TCP or HTTP health checks can remove failed services from frps. Monitoring can run in memory or through Prometheus, which requires the Dashboard to be enabled. frps has a browser Dashboard for status and proxy statistics, while frpc includes an Admin UI for proxy status and configuration. Configuration supports TOML, YAML, and JSON; INI is still supported but no longer recommended. Written in Go, frp provides platform-specific binaries for cross-platform deployment without additional dependencies. The project is under development and says version 2 will not be compatible with version 1.
Spec sheet
- Purpose
- frp is a high-performance reverse proxy for exposing intranet services to the public network through nodes with public IP addresses.Read 7 Oct 2026 · gofrp.org
- Deployment
- frp is written in Go and supports cross-platform deployment using platform-specific binaries without additional dependencies.Read 7 Oct 2026 · gofrp.org
- Security
- Client and server authentication supports token and OIDC methods, with token authentication as the default.Read 7 Oct 2026 · gofrp.org
- License
- The GitHub repository identifies the project license as Apache-2.0.Read 7 Oct 2026 · github.com
- Configuration
- Configuration files support TOML, YAML, and JSON; the older INI format remains supported but is no longer recommended.Read 7 Oct 2026 · gofrp.org
- Dashboard limitation
- The Dashboard has not been optimized for large amounts of proxy data, and the documentation advises against enabling it if access is slow.Read 7 Oct 2026 · gofrp.org
- Development status
- The project says it is under development and that version 2 will not be compatible with version 1.Read 7 Oct 2026 · github.com
- Encryption
- The project lists encryption among its capabilities and documents communication security features.Read 7 Oct 2026 · gofrp.org
- Monitoring
- frps supports in-memory monitoring and Prometheus monitoring; Prometheus requires the Dashboard to be enabled.Read 7 Oct 2026 · gofrp.org
- P2P
- XTCP uses P2P hole punching so successful connections send traffic directly instead of relaying it through frps.Read 7 Oct 2026 · gofrp.org
- P2P limitation
- XTCP availability and stability cannot be guaranteed because hole-punching success depends on the network’s NAT type.Read 7 Oct 2026 · gofrp.org
- Protocols
- It supports TCP, UDP, HTTP, and HTTPS, and client-server communication also supports QUIC, KCP, WebSocket, and other protocols.Read 7 Oct 2026 · gofrp.org
- Traffic management
- Proxy groups support load balancing, and TCP or HTTP health checks can remove failed services from frps.Read 7 Oct 2026 · gofrp.org
- Use cases
- Documented examples include exposing SSH and web services, forwarding DNS and Unix domain sockets, serving files, and creating P2P or virtual network connections.Read 7 Oct 2026 · gofrp.org
- Web interfaces
- frps includes a browser Dashboard for status and proxy statistics, while frpc has an Admin UI for proxy status and configuration.Read 7 Oct 2026 · gofrp.org
Plans and prices
Strong points and limits
Strong points
- Supports TCP, UDP, HTTP, and HTTPS
- Token and OIDC authentication options
- Proxy groups provide load balancing
- Free, self-hosted software under Apache-2.0
Limits
- XTCP success depends on NAT conditions
- Dashboard is not optimized for large datasets
- Version 2 will not be compatible with version 1
Who it suits
frp may suit operators who want to expose intranet services through a self-hosted client-server proxy. Its documented examples include SSH and web services, DNS forwarding, file serving, and P2P or virtual network connections.
Verdict
frp offers protocol options, monitoring, health checks, and self-hosted deployment without a listed price. Consider the XTCP uncertainty, Dashboard limitation, and stated version compatibility break when planning its use.
Where Specifiction places it
- Reverse Proxy Software#12 of 338.2