About Rathole
Rathole is a reverse proxy for NAT traversal, written in Rust. Like frp and ngrok, it exposes a service on a device behind a NAT to the internet through a server that has a public IP, for example to reach a home NAS over SSH from outside the network.
The README highlights several design points. It claims higher throughput than frp and more stability under many connections, with benchmarks provided, and low memory use that allows a small binary suitable for embedded devices such as routers. Each service requires a token, and server and client each hold their own configuration. Encryption can be set up with the optional Noise Protocol without self-signed certificates, and TLS is also supported. Services can be added or removed by hot-reloading the configuration file.
Rathole is licensed under Apache-2.0. Usage is similar to frp, with the difference that a service is configured separately on the client and server sides. Binaries are published on the release page, you can build from source, and a Docker image is available.
Key features
- Reverse proxy for NAT traversal
- Mandatory per-service tokens
- Optional Noise Protocol encryption
- TLS support
- Hot reload of configuration
- Small binary for embedded devices
Good fit for
- →Exposing a home NAS service to the internet
- →Replacing frp or ngrok tunnels
- Built with
- Rust
- Tags
- reverse-proxy
- nat-traversal
- tunnel
- rust
- noise-protocol
- networking
- self-hosted
- ngrok-alternative
Rathole: questions and answers
- What is Rathole used for?
- Rathole is a reverse proxy for NAT traversal written in Rust that exposes services behind a firewall through a public server, as an alternative to frp and ngrok. It is a good fit for exposing a home NAS service to the internet and replacing frp or ngrok tunnels.
- Is Rathole open source?
- Yes. Rathole is open source under the Apache-2.0 licence. Its source code is on GitHub at rathole-org/rathole and is written mainly in Rust.
- Is Rathole free?
- Yes. Rathole is open source, so the software itself is free to use.
- What is Rathole an alternative to?
- Rathole is an open-source alternative to ngrok and Cloudflare Tunnel. Other open-source alternatives to ngrok include frp, Zrok and Pangolin.
- Is Rathole actively maintained?
- Yes. The most recent commit to Rathole was on 23 August 2026, and the latest release is v0.5.0, published on 1 October 2023. The project has 14k stars on GitHub.
Open-source alternatives to Rathole
See allfrp
Networking & VPN
A fast reverse proxy to help you expose a local server behind a NAT or firewall to the int
Apache-2.0vs ngrok★ 110k
Zrok
Networking & VPN
Secure internet sharing made simple.
Apache-2.0vs ngrok★ 4.7k
Pangolin
Networking & VPN
Open-source SASE platform providing secure access and connectivity to apps, infrastructure
OSSvs Cloudflare Tunnel★ 23k
Octelium
Networking & VPN
A next-gen FOSS self-hosted unified zero trust secure access platform that can operate as
AGPL-3.0vs Tailscale★ 4.1k
OpenZiti
Networking & VPN
The parent project for OpenZiti. Here you will find the executables for a fully zero-trust
Apache-2.0vs Twingate★ 4.4k
Zoraxy
Networking & VPN
A general purpose HTTP reverse proxy and forwarding tool. Now written in Go!
AGPL-3.0★ 5.5k
SaaS alternatives to Rathole
See all
ngrok
Networking & VPN
ngrok is developer infrastructure that exposes local apps and APIs to the internet and routes and secures traffic to services wherever they run.
SaaS
Cloudflare Tunnel
Networking & VPN
Cloudflare Tunnel securely connects web services and private networks to Cloudflare without opening inbound ports on the origin server.
SaaSCisco Meraki
Networking & VPN
Cloud-managed networking platform for wireless, switching, security and SD-WAN
SaaS
Cloudflare
Networking & VPN
CDN, DNS, DDoS protection and edge computing platform
SaaS
Fastly
Networking & VPN
Edge cloud platform for CDN, security and serverless compute
SaaS
NordVPN
Networking & VPN
Consumer VPN service with threat protection, double VPN and meshnet
SaaS
