What is FRP?
Most home and office machines sit behind NAT. Nothing on the public internet can dial 192.168.x.x. If a GitHub webhook, a teammate, or your NAS UI needs a public address, you need a tunnel that dials out.
FRP (fast reverse proxy) is that tunnel. You run frpc on the private network; it connects to frps on a public host. Outside traffic hits frps and is forwarded to your local service. The client is official fatedier/frp, not a proprietary agent.
Self-host vs NiceFRP
| Your own frps | NiceFRP | |
|---|---|---|
| You provide | A public VPS, TLS, firewall, upgrades | An email address |
| Client config | Hand-written TOML | Download TOML from the console, run official frpc |
| Fit | You already run servers | You want a working tunnel without operating nodes |
NiceFRP's control plane (accounts, plans, scheduling) runs on Cloudflare Workers. User traffic does not. It stays frpc ↔ frps on the edge nodes.
What Free actually includes
After you verify email you get Free, not a 7-day trial:
- 1 tunnel
- 1 Mbps
- 5 GiB every 30 days (stops when exhausted, resets next period)
- Protocols: TCP and HTTP
- HTTP tunnels get a platform certificate; visitors use
https://on the platform hostname - No UDP, end-to-end HTTPS tunnel type, or custom domain
That is enough to demo a local site, a webhook, or SSH. It is not a CDN or an off-site backup pipe. Paid plans start at Starter $5/mo. Comparison with ngrok and Cloudflare Tunnel: FRP vs ngrok vs Cloudflare Tunnel.
Five minutes to a live tunnel
- Register and verify email.
- Create an HTTP or TCP tunnel in the console.
- Follow the Quick Start: install frpc, download the config, run it.
When you see start proxy success, use the hostname or host:port from the console. Start the local service first; frpc only forwards.
By scenario
- Webhooks: Debug local webhooks
- Home NAS UI: Access a NAS without a public IP
- Custom hostname (paid): Custom domains
Use must follow the Acceptable Use Policy. No proxy resale, scanning, or illegal content.