我们在开发过程中,由于自己本机Web应用程序需要被其他机器能够访问到,由于不在一个网段,是访问不到的,此时可以采用frp–内网穿透
即在公网—阿里云上安装frp服务端,在内网—本机windows上面安装frp客户端,通过端口映射的方式,使其他电脑访问公网ip+port即可访问本机的Web应用
frp服务端和客户端应用程序都一样,只是启动时跑的配置文件不同
一:阿里云上安装frp服务端(linux)
1、下载frp安装包:
直接wget:
wget https://github.com/fatedier/frp/releases/download/v0.31.2/frp_0.31.2_linux_amd64.tar.gz
或者直接下载上传:https://github.com/fatedier/frp/releases/tag/v0.31.2
2、在/usr/local/目录中新建文件夹并解压:
cd /usr/local/
mkdir frp
tar -zxvf frp_0.31.2_linux_amd64.tar.gz
cd frp_3.31.2_linux_amd64/
这里主要关注4个文件,分别是frpc、frpc.ini和frps、frps.ini,前者两个文件是客户端所关注文件,后者两个文件是服务端所关注两个文件。
3、删除frpc 和 frpc.ini
4、修改frps.ini(服务端配置文件)
[common]
bind_port = 7000
kcp_bind_port = 7000
vhost_http_port = 8089 ## web应用端口
token = ***
dashboard_port = 7500
dashboard_user = **
dashboard_pwd = **
5、启动frp服务端 (后台启动)
nohup ./frps -c frps.ini > server.log 2>&1 &
6、查看是否启动成功:
ps -ef |grep frp
如果采用前台启动的话:
./frps -c ./frps.ini
二:在本机windows上安装frp客户端
1、下载安装包,并解压。注意客户端版本需和服务端版本一致,且由于本机是windows环境,故需windows版本
2、删除frps.ini
3、修改客户端配置文件:frpc.ini
[common]
server_addr = 39.108.190.* ##阿里云IP
server_port = 7000
token = ** ## 与服务端配置的token一致
[web]
type = tcp
local_ip= 127.0.0.1
local_port = 8089 ## web应用端口
remote_port = 7001 ## 自定义供外网访问端口 阿里云需开通
4、进入 cmd中启动客户端
frpc.exe -c frpc.ini
至此:服务端和客户端已安装完毕,注意阿里云需开通相关端口:7000/7001/7500/8089
此时浏览器访问:39.108.190.**:7001 即可访问到