Windows 系统连接 FRP 服务端教程
FRP 是一款开源的内网穿透工具,由服务端 frps 和客户端 frpc 两部分组成。本文介绍如何在 Windows 10/11 系统中下载、配置并运行 frpc,连接已经部署好的 FRP 服务端。
本文使用新版推荐的 TOML 配置文件。
一、下载 FRP Windows 客户端
1. 官方地址
FRP 官方仓库:
https://github.com/fatedier/frp
版本下载页面:
https://github.com/fatedier/frp/releases
普通 Intel 或 AMD 处理器的 Windows 电脑,下载名称类似下面的文件:
frp_版本号_windows_amd64.zip
ARM 架构的 Windows 设备选择:
frp_版本号_windows_arm64.zip
下载完成后,将压缩包解压到固定目录,例如:
C:\frp
Windows 客户端主要使用以下两个文件:
frpc.exe
frpc.toml
二、修改 frpc 配置文件
使用记事本、Notepad++ 或 VS Code 打开:
C:\frp\frpc.toml
下面以映射 Windows 本地 8080 端口为例:
serverAddr = "你的FRP服务器公网IP或域名"
serverPort = 7000
auth.method = "token"
auth.token = "你的FRP认证Token"
log.to = "./frpc.log"
log.level = "info"
log.maxDays = 3
[[proxies]]
name = "windows-web"
type = "tcp"
localIP = "127.0.0.1"
localPort = 8080
remotePort = 18080
参数说明
| 参数 | 说明 |
|---|---|
serverAddr |
FRP 服务端的公网 IP 或域名 |
serverPort |
frps 服务端监听端口,一般为 7000 |
auth.token |
客户端认证密钥,必须与服务端一致 |
name |
当前代理名称,不能与其他代理重复 |
type |
代理类型,普通端口映射使用 tcp |
localIP |
Windows 本地服务地址 |
localPort |
Windows 本地服务端口 |
remotePort |
FRP 服务器对外开放的端口 |
以上配置表示:
FRP服务器公网IP:18080
↓
Windows本机:8080
外部访问地址:
http://FRP服务器公网IP:18080
服务器安全组和防火墙需要放行:
7000
18080
其中:
7000是客户端连接 FRP 服务端的端口。18080是外部访问本地服务的映射端口。
三、前台启动 FRP 客户端
打开 PowerShell,进入 FRP 目录:
cd C:\frp
启动客户端:
.\frpc.exe -c .\frpc.toml
连接成功后,通常可以看到类似日志:
login to server success
start proxy success
前台运行时不能关闭 PowerShell 窗口,否则 frpc 会停止。
停止前台运行:
Ctrl + C
四、后台启动 FRP 客户端
方法一:使用 PowerShell 隐藏启动
Start-Process -FilePath "C:\frp\frpc.exe" -ArgumentList "-c","C:\frp\frpc.toml" -WorkingDirectory "C:\frp" -WindowStyle Hidden
检查是否已经启动:
Get-Process frpc
查看最近 30 行日志:
Get-Content C:\frp\frpc.log -Tail 30
实时查看日志:
Get-Content C:\frp\frpc.log -Wait
方法二:创建后台启动脚本
在 C:\frp 目录新建:
start-frpc.bat
写入以下内容:
@echo off
powershell -NoProfile -WindowStyle Hidden -Command "Start-Process -FilePath 'C:\frp\frpc.exe' -ArgumentList '-c','C:\frp\frpc.toml' -WorkingDirectory 'C:\frp' -WindowStyle Hidden"
以后双击 start-frpc.bat 即可后台启动 FRP 客户端。
五、关闭后台运行的 FRP 客户端
使用 PowerShell 关闭
Get-Process frpc -ErrorAction SilentlyContinue | Stop-Process -Force
使用 CMD 关闭
taskkill /F /IM frpc.exe
也可以在 C:\frp 目录创建:
stop-frpc.bat
写入:
@echo off
taskkill /F /IM frpc.exe
pause
以后双击 stop-frpc.bat 即可关闭 FRP 客户端。
如果电脑同时运行了多个
frpc.exe,上述命令会将它们全部关闭。
六、常见问题排查
1. 检查能否连接 FRP 服务端
Test-NetConnection 你的服务器IP -Port 7000
正常情况下应显示:
TcpTestSucceeded : True
如果显示 False,需要检查:
- FRP 服务端是否已经启动;
serverAddr是否填写正确;serverPort是否与服务端一致;- 服务器安全组是否放行对应端口;
- Linux 防火墙是否放行对应端口。
2. 检查 Windows 本地服务
例如本地服务端口为 8080:
Test-NetConnection 127.0.0.1 -Port 8080
如果本地端口无法连接,说明本地服务没有启动,或者监听端口填写错误。
3. Token 认证失败
检查:
auth.token = "你的FRP认证Token"
该值必须与 frps.toml 服务端配置中的 Token 完全一致。
4. 映射端口被占用
如果 remotePort 已被其他程序或 FRP 客户端使用,可以更换端口:
remotePort = 18081
修改完成后,重新启动 frpc。
七、命令汇总
前台启动:
cd C:\frp
.\frpc.exe -c .\frpc.toml
后台启动:
Start-Process -FilePath "C:\frp\frpc.exe" -ArgumentList "-c","C:\frp\frpc.toml" -WorkingDirectory "C:\frp" -WindowStyle Hidden
关闭客户端:
taskkill /F /IM frpc.exe
至此,Windows 系统中的 FRP 客户端已经完成下载、配置和运行,可以通过 FRP 服务器的公网地址访问 Windows 本地服务。