frp: Self-Hosted Reverse Proxy Tool | Generated by AI

Home 2026.07

Question: What is fatedier/frp?

Answer:

frp (Fast Reverse Proxy) is a reverse proxy / tunneling tool written in Go. It helps expose services behind NAT or firewalls to the public internet.

Repository: https://github.com/fatedier/frp

The core idea:

Client machine (inside LAN)
        |
        | outbound connection
        |
        v
frpc  <----------------->  frps
                          |
                          |
                    Public server
                    with public IP

Example:

You have a local service:

localhost:3000

Maybe:

Your home network has no public IP. Start:

your laptop
    |
    | frpc tunnel
    |
    v
VPS (public IP)
    |
    v
https://your-domain.com

Now the world can access your local service.


Typical use cases

1. Expose local development server

Local:

npm run dev

localhost:5173

frpc config:

[[proxies]]
name = "frontend"
type = "http"
localIP = "127.0.0.1"
localPort = 5173
customDomains = ["demo.example.com"]

Then:

https://demo.example.com

opens your local app.


2. SSH into a machine behind NAT

Client:

home PC
  sshd :22

frpc:

[[proxies]]
name = "ssh"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22
remotePort = 6000

Then:

ssh user@your-vps-ip -p 6000

3. AI / LLM serving

Relevant to your setup:

RTX 4070 machine
      |
      | frpc
      |
      v
cloud VPS
      |
      v
OpenAI-compatible API

Example:

localhost:8000/v1

(vLLM server)

Expose:

https://api.example.com/v1

Useful for:


Compared with alternatives

Tool Purpose
frp General TCP/HTTP reverse proxy
ngrok Easy temporary tunnels
Cloudflare Tunnel HTTP services behind Cloudflare
Tailscale Funnel Tailnet-based sharing
SSH reverse tunnel Minimal manual solution

frp is popular because it is:


Minimal deployment

VPS:

wget https://github.com/fatedier/frp/releases/latest/download/frp_linux_amd64.tar.gz

tar xzf frp_linux_amd64.tar.gz
cd frp_*

frps.toml

bindPort = 7000

Run:

./frps -c frps.toml

Client:

frpc.toml

serverAddr = "your-vps-ip"
serverPort = 7000

[[proxies]]
name = "ssh"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22
remotePort = 6000

Run:

./frpc -c frpc.toml

For your AI workflow, the interesting use case is: run vLLM/Jupyter/agent servers on GPU machines (AMD Cloud, RunPod, home GPU) and use frp to expose them through a cheap VPS without needing a public IP.


Generated by AI. Curating and sharing still takes effort. If you find it useful, feel free to donate. WeChat: @lzwjavaWeChat QR · X: @lzwjava · Say hi 👋

Back Donate