快捷搜索:  汽车  科技

有了公网ip如何访问:没有公网IP的机器如何能被外网访问

有了公网ip如何访问:没有公网IP的机器如何能被外网访问[common]这里配置的是 图1 中 中间部分的VPS.打开frps.ini配置参考如下下载地址https://github.com/fatedier/frp目录结构如下:服务端运行frps配置文件是frps.ini 客户端运行frpc配置文件是frpc.ini

标题解释:最终服务端(如家中闲置电脑/树莓派)不需要公网IP 但要被外网访问最终还是要公网IP 原理就是先让最终服务端与公网IP建立连接 通过这个连接来访问内部的服务.如下图:

有了公网ip如何访问:没有公网IP的机器如何能被外网访问(1)

图1

之前用过免费的Ngrok但是不稳定 速度也不行.

今天主要用frp

1.下载

下载地址https://github.com/fatedier/frp

目录结构如下:

有了公网ip如何访问:没有公网IP的机器如何能被外网访问(2)

服务端运行frps配置文件是frps.ini 客户端运行frpc配置文件是frpc.ini

2.配置并启动服务端

这里配置的是 图1 中 中间部分的VPS.打开frps.ini配置参考如下

[common]

[common]

server_addr = vps公网ip或域名

server_port = 7000

token = hereispassword

[http]

type = tcp

local_ip = 0.0.0.0

local_port = 81

remote_port = 80

server_addr 启动frps服务的公网IP地址 也可以是域名 域名申请可参考<<免费域名申请(一)>><< 免费域名申请(二) >>

server_port 启动frps服务的暴露端口 也就是第2步中配置的端口

token 第2步中配置的token

type 可选tcp或udp. http也是基于tcp的

local_ip 上图黄线箭头所访问的ip. 本机可填4个0 如果服务在局域网的其它机器 也可以写其它机器的IP

local_port 上图中黄线箭头访问的端口号

remote_port 这个是运行frps的机器要暴露的端口.防火墙上要放行.

配置完成后切换到frp目录 运行

./frpc -c ./frpc.ini

注* 本地的服务端口81 并不需要对外网暴露.可对本机进行安全加固 参考<<如何对服务器进行安全加固>>

4.启动真正的服务.

图1 中最右侧 在家中闲置电脑/树莓派上配置nginx或tomcat的监听端口为81. 并启动之.

5.测试

图1 中最左侧 在其它网络或手机4G 访问 http://你的公网IP或域名

即可访问到你家庭网络中启动的nginx或tomcat服务

-----------------end-----------------

欢迎大神补充指正! 如有疑问请留言!

猜您喜欢: