在一个IP紧缺的时代,连电信也不分配固定IP给到你用,一条专网专用线路贵的不行,那么作为软件开发人员常常要使用到外网,比如和微信调试程序,给到不在同一网段的朋友一起调试程序等,大家耳熟能详的内网穿透就是花生壳,但是花生壳的灵活性比较差,笔者就想有没有什么更好的办法自己搭建一个内网穿透服务器呢?那么今天就给大家推荐一款自建内网穿透。
一、FRP简介:
frp是一个开源的内网穿透软件,大概工作过程如下:
服务端运行在具有公网IP的服务器上,并监听某个端口,等待客户端连接
客户端运行在需要穿透的内网机器上,连接到服务器之后,服务器开始监听客户端需要穿透的指定端口
外网用户连接服务器监听的指定端口,然后服务器将用户数据转发到内网客户端,实现内网穿透
二、准备工具
(1)源码地址: https://github.com/fatedier/frp
(2)下载对应服务器和客户端的程序:https://github.com/fatedier/frp/releases
(3)外网服务器:我这里使用腾讯云轻量应用服务器(Windows Server 2016 DataCenter 64bitCN)
(4)内网客户端:我的是Windows10
三、服务端配置
1.将下载的文件解压
2.打开frps.ini
主要设置bind_port,token,其他的是一些高级功能,将以下内容复制到frps.ini中
代码语言:javascript复制[common]
#与客户端 绑定端口
bind_port = 7088
#dashboard 用户名
dashboard_user = admin
#dashboard 密码
dashboard_pwd = 123456
#dashboard 端口,启动成功后可通过浏览器访问如http://ip:7500
dashboard_port = 7500
#设置客户端token,对应客户端有页需要配置
token = 8d262f2b-6dba-4a8d-857e-8a53d1d439e2
3.打开端口
在轻量服务器的控制面板打开相应的端口
4.在frps同一级目录建立一个bat
代码语言:javascript复制#内容为frps.exe和frps.ini的绝对路径
c:frpsfrps.exe -c c:frpsfrps.ini
5.双击打开刚刚建立的bat文件
这样子即为成功运行
6.设置开机自启
在计划任务的界面下设置开机自启
四、客户端配置
1.在要被穿透的机器上打开frpc.ini
进行如下配置 填入server_addr、token、local_port、remote_port等参数
代码语言:javascript复制[common]
# 配置服务端对外的ip地址
server_addr =
#配置服务端监听的端口
server_port = 7088
#如果服务端配置token,将服务端配置的token复制到此处
token = 8d262f2b-6dba-4a8d-857e-8a53d1d439e2
pool_count = 5
#我这里是配置端口范围转发
[range:services]
#类型为tcp
type = tcp
#本地ip地址通常为127.0.0.1 或 localhost
local_ip = 127.0.0.1
#本地要映射的端口范围
local_port = 3389
#映射到服务端的端口范围
remote_port = 8765
2.在frpc同一级目录建立一个bat
代码语言:javascript复制#内容为frpc.exe和frpc.ini的绝对路径
".frpc.exe"
3.双击打开刚刚建立的bat文件
这样子即为成功运行
4.设置开机自启