别再用垃圾ngrok进行内网穿透了

Jan 16, 2023 · 6min

最近在接触微信小程序支付的功能,然后要接收微信服务器发来的支付回调,所以微信后台要设置消息推送的配置,结果让我看到了这个很难受的提示
什么!!!一个月只能修改三次,我靠(因为我使用的内网穿透工具每次重新启动地址都会变更,每次变更都要修改,所以根本不切实际)这里先科普一下什么是内网穿透

内网穿透

现在由于 ipv4 的地址已经殆尽....,所以什么 xxx 设计出了内网 ip 来解决 ipv4 地址不够的问题,也就是平时我们看到的10.0.xxx172.16.xxx192.168.xxx这类地址,但是内网我们是不能直接通过外网访问,只有在同一局域网内的设备能相互访问,于是就诞生了Nat技术(Network Address Translation网络地址转换),我们通过这个技术实现内外网互通,就是这么的哇塞~~~

内网穿透工具

现在市面上的内网穿透工具要么是国外开源的ngrok(网速慢的要死),要么就是国内的cpolar(网速不错,但是每次重新启动的地址都是随机生成的,要想配置自定义域名必须给 money💰,况且还很贵),程序员的我除了服务器费用之外怎么可能会自己掏钱呢???于是找了很多解决方案,还果真有解决方案———frp

frp 代理访问

前提条件:一台公网 ip的服务器

  1. github 访问这个仓库fatedier/frp
  2. 在 relase 中找到自己系统架构的源码文件,本地和服务器都要进行下载(也可以本地下载好上传至服务器)
  1. 解压下载的源码可以看到文件夹内有两个配置文件frpc.inifrps.ini,带c后缀的是客户端配置文件,带s后缀的是服务器配置
  1. 在服务器上打开frps.ini,修改配置如下
bash
[common] #frps服务器端口,防火墙要打开 bind_port=7000 #验证客户端连接 token=1234567820222022ccc
  1. 服务器启动./frps -c ./frps.ini
  2. 本地打开frpc.ini,配置如下
bash
[common] #服务器公网 ip server_addr=xxxx.xxxx.xxxx.xxxx #服务器 frps 端口 server_port=7000 #服务器要验证客户端的 token token=1234567820222022ccc [ssh] type=tcp local_ip=127.0.0.1 #本地服务端口 local_port=9000 #通过服务器访问本地服务的端口,防火墙要开 remote_port=7001 #自定义域名 #custom_domains=xxxxxx
  1. 本地启动./frpc -c ./frpc.ini
  2. 测试,如果有配置域名就访问http://域名:7001,如果没有就访问http://服务器ip:7001,这样就可以访问本地的服务啦
2023-PRESENT © YUANBAO