内网穿透
即NAT穿透,网络连接时术语,计算机是局域网内时,外网与内网的计算机节点需要连接通信,有时就会出现不支持内网穿透。本教程主要讲解如何利用VPS服务区进行FRP的内网穿透。
项目地址:
https://github.com/fatedier/frp
哔哩哔哩视频教程:
https://b23.tv/FgIaWVg
教程
一、前期准备:
① VPS服务器,要有公网IP,系统为centos 7.6,我是在腾讯云购买的,新人有优惠,大概58一年
② frp服务器端程序文件:
③ frp客户端,使用群晖docker安装
![]() |
---|
腾讯云轻量服务器 |
二、服务器端教程
- 使用finalshell软件,连上vps服务器的SSH
finalshell软件官网下载地址:
https://www.hostbuf.com/
如何登录,腾讯云有使用帮助文档,软件也有很多教程,如果实在不懂,我再考虑单独出一期教程。 - 将上面下载好的②
frp服务器端程序文件
上传到服务器主目录,使用如下命令进行解压
tar -zxvf frp_0.44.0_linux_amd64.tar.gz
- 将解压出来的文件夹,手动修改名称为:
frp
![]() |
---|
软件使用截图 |
- 直接双击打开,手动修改文件夹内的frps.ini文件,在下方添加密码,记得
Ctrl+S
保存
token = 123456
![]() |
---|
在frps.ini下方添加密码 |
- 运行配置文件
cd frp
./frps -c frps.ini
- 在服务器防火墙设置添加端口,开放
6000-8000端口
![]() |
---|
开放6000-8000端口 |
- 以上步骤就可以正常使用,但是重启以后就失效了,设置开机启动运行(非必要步骤,建议执行)
先退出之前的代码:
Ctrl+C
vi /lib/systemd/system/frps.service
编辑frps.service脚本命令(记得先按
i
进入编辑模式):
[Unit]
Description=fraps service
After=network.target syslog.target
Wants=network.target
[Service]
Type=simple
ExecStart=/root/frp/frps -c /root/frp/frps.ini
[Install]
WantedBy=multi-user.target
(按
Esc键
退出编辑模式,输入:wq
回车保存)
- 启动服务
systemctl start frps
systemctl enable frps
三、客户端Docker设置
Docker HUB页面:https://hub.docker.com/r/chenhw2/frp
- frpc.ini配置参考,请根据自身情况设置
# frpc.ini
[common]
#此处填写你购买的服务器公网IP地址
server_addr = 124.XXX.XXX.125
server_port = 7000
token = 123456
[qunhui]
type = tcp
#此处填写群晖的内网IP地址
local_ip = 192.168.XXX.XXX
local_port = 5000
remote_port = 6001
- 添加文件,装载路径为:
/frp/frpc.ini
![]() |
---|
装载路径:/frp/frpc.ini |
- 网络设置为:Docker host相同的网络
![]() |
---|
网络设置为:Docker host |
- 环境设置:
ARGS
必须改为frpc
,不能是frps
![]() |
---|
ARGS 必须改为frpc ,不能是frps |
写在最后
根据frpc.ini的配置文件可以看出,你将内网的5000端口转发到公网的6001端口,也就是你通过公网IP+60001端口即可访问群晖管理页面,以此内推,你随意设置TCP的端口转发,比如emby的8096端口等等。