打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
自己搭建内网穿透服务器,实现无限个80端口转发

笔者使用过很多的内网穿透软件,但是被折磨的不行,被逼无奈,最终自己想出稳定的内网穿透方案,有时候感觉自己非常厉害的样子😑。

术语介绍

以下是百度百科的解释:
内网穿透即NAT穿透,网络连接时术语,计算机是局域网内时,外网与内网的计算机节点需要连接通信,就是说映射端口,能让外网的电脑找到处于内网的电脑。

背景

在我们日常的测试工作中经常会使用内网穿透,例如:微信支付回调、第三方合作需要连接我们的本机的服务或者内网服务,我最早接触的是花生壳,也是用的最久的,过程中还用过:Ngrok、pagekite等,但是这些第三方软件都有一个通用的问题:收费+不稳定。尤其是不稳定,这个对我们来说是致命的,可能会影响到我们的产品测试进度。

使用场景

以下是我们测试经常使用到的场景:

  1. 测试环境微信支付回调,比较奇葩的是必须使用80端口;

  2. 微信公众号上要访问内网服务器,很多时候也要使用80端口;

  3. 和第三方合作,第三方需要连接到开发服务器,可能要求80端口;

  4. 内网搭建的服务器给外部用户使用,80或者非80端口都可以;

第三方存在的问题

一开始我们都是使用第三方软件来实现端口映射的,例如花生壳、ngrok;但是他们很容易出现不稳定的情况,要么是国外的站点,要么是第三方服务器不稳定,而且还收费,最致命的是一旦出现不稳定,恢复时间都比较长,严重影响使用,出现的问题大致如下:

  1. 第三方域名无法访问;

  2. 第三方服务器不稳定;

  3. 提供给我们的是三级域名,例如:evideo.wicp.net;如果别人使用的域名是fuckyou.wicp.net,并且用这个地址在微信上发布了一个违规页面,此时微信屏蔽的域名是二级域名即*.wicp.nt,我们就跟着遭殃,一开始还以为我们自己的站点有违规行为;

  4. 为了解决第三个问题,我们申请了顶级域名,支付了一笔费用,在一个星期里面连续出现时断时续,是在无法忍受,平时的使用过程也是时断时续,花生壳老是让我们修改密码,实际上都没有完全的解决,电话客服电话也是很忙的,看来忙还是有原因的。

自己实现内网穿透

如果不解决这个问题,测试效率就会大打折扣,实际上这个问题已经困扰了我们至少1年之久,就在某一次花生壳问题连接不稳定的问题再次爆发,激发了我的无限潜能,灵光一现想出了自己实现内网穿透的方案,而且可以实现无限个80端口,实际上我们已经有很好的条件,只是不知道有这个方案而已,为此我将这个方案分享出来,希望大家在有这个前提条件的时候可以自己做内网穿透,不用再依赖不稳定的第三方的内网穿透。

前提

你有一个内网固定IP,且该固定IP开通了80端口(如果没有开通80端口会复杂一些)

步骤

固定IP开通了80端口

  1. 申请一个域名,我用的是DNSPOD,将这个域名绑定到这个固定IP,方法如下:



    这样我们就添加了一个test.XXX.com的域名,且绑定了一个固定IP。

  2. 将固定IP和局域网内的一台服务器绑定,就是将这个固定IP配置到一台内网服务器的网卡上或者在路由器上配置固定IP,通过配置DMZ主机转发实现。

  3. 内网服务器上安装nginx,并添加nginx反向代理实现转发,nginx配置如下:

    upstream test{     server 192.168.96.100:3002; # 内网被映射的服务器和端口}server {     listen 80;     server_name    test.XXXX.com; # 刚绑定的域名     location / {             proxy_set_header Host $host:$server_port;             proxy_set_header X-Real-IP $remote_addr;             proxy_set_header REMOTE-HOST $remote_addr;             proxy_set_header X-Forwarded-For $remote_addr;             proxy_pass http://test;     }     access_log off;}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Wireshark抓包分析/TCP/Http/Https及代理IP的识别
网站添加https后websocket不能使用
内网穿透神器Frps一键安装脚本及设置教程
搭建nginx反向代理用做内网域名转发
使用frp工具实现内网穿透以及配置多个ssh和web服务
部署基于.netcore5.0的ABP框架后台Api服务端,以及使用Nginx部署Vue+Element前端应用
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服