微信公众号开发、本地搭建web服务器,或者在本地服务器搭建了IIS或apache等web网站时,需要解决80端口映射的问题。

但很多人在路由器映射80端口的时候,会出现映射失败的情况。造成这种情况的原因有很多种,比较常见的是被运营商屏蔽了,使用需要找运营商备案才可以。也有可能不是真实的公网IP,一样会出现映射失败的情况。

针对这种情况,不论是有公网IP还是没有公网IP,都可以使用内网穿透工具绕过运营商的端口封锁,通过公网服务器进行流量转发,实现外网访问内网80端口。

我一直在用的是cpolar内网穿透,支持http/https/tcp协议,可以永久免费使用不限制流量,不需要公网IP,也不用设置路由器,操作比较简单,安装配置客户端后,创建隧道映射内网端口即可,会生成相应的公网地址,实现公网访问内网。


1. 本地安装内网穿透工具

cpolar内网穿透官网:https://www.cpolar.com/

需要先注册一个cpolar账号,后面会用到

1.1 Windows

windows系统可以在cpolar官网下载最新的安装包,然后解压默认安装即可。

1.2 Linux

linux系统支持一键自动安装脚本

1.2.1 安装
  • 国内使用
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 国外使用
curl -sL https://git.io/cpolar | sudo bash
1.2.2 认证token

登录cpolar官网后台————验证,查看自己的认证token,之后将token贴在命令行里

cpolar authtoken xxxxxxx
1.2.3 向系统添加服务
sudo systemctl enable cpolar
1.2.4 启动服务
sudo systemctl start cpolar
1.2.5 查看服务状态
sudo systemctl status cpolar

如正常显示active,则说明已经启动成功。

1.3 macOS

在官网下载下载适用于macOS平台的zip压缩包,解压后得到cpolar,然后通过命令行带参数运行即可。

1.3.1 通过Homebrew包管理器安装
brew tap probezy/core && brew install cpolar
1.3.2 token认证

登录cpolar官网后台————验证,查看自己的认证token,之后将token贴在命令行里

cpolar authtoken xxxxxxx
1.3.2 安装服务
sudo cpolar service install
1.3.2 启动服务
sudo cpolar service start

2. 创建隧道映射内网80端口

cpolar安装成功后,在浏览器上访问127.0.0.1:9200,使用cpolar账号登录web UI管理界面。

登录成功后,进入主界面,点击左侧仪表盘的隧道管理————创建隧道,输入隧道信息,然后点击创建即可。

  • 隧道名称:可自定义,注意不要重复
  • 协议:选择http协议
  • 本地地址:填写80端口
  • 域名类型:选择随机域名(可免费使用)
  • 地区:选择China VIP

隧道创建成功后,可以在隧道管理————隧道列表查看隧道状态,如为active激活。说明已经启动成功。

cpolar会默认安装两个样例隧道(可以进行修改或删减):

  • 一个是Website隧道指向http 8080端口
  • 一个是ssh隧道(Linux&macOS系统)/远程桌面隧道(win系统),指向tcp 22端口/tcp 3389端口


创建隧道映射内网端口,也可以通过执行命令来实现

cpolar http 80

3. 获取公网地址

点击左侧仪表盘的状态————在线隧道列表,找到我们刚刚创建的隧道,可以看到有生成相应的公网URL地址,有两行,其中一个是http隧道,一个是https隧道。

将公网地址复制到浏览器访问即可,实现公网远程访问内网。

显示如下图灰色的画面,这说明,cpolar已经配置正确,隧道创建成功。只是本地8080端口上,并未发现可用的web站点(因为还没有配置本地Web Server。所以才会显示灰色不可用的画面。如果你本地有正常配置页面,那么就会正常显示出来。)

需要注意的是,使用免费的cpolar内网穿透所生成的公网地址为随机临时地址,24小时内会发生变化,并且带宽较小,只有1M,对于本地开发测试来说是足够的,但是如果需要长期远程访问则不是很方便。

不过我们可以为其配置固定的二级子域名(该地址不会随机变化)同时带宽也会提高,使用更多功能。详细可以参考下面这篇文章教程:

  • 为本地web服务配置使用固定的二级子域名【内网穿透】

外网访问内网80端口【内网穿透】相关推荐

  1. 外网访问8080以及80端口失败问题解决

    解决方案:修改端口号,不要使用ip:8080访问,因为8080和80端口已经被运营商关闭了,可能是为了防止未备案网站的访问. 例如: yarn serve 修改为 yarn serve -p 8081 ...

  2. 内网映射软件之80端口映射和全端口映射实现发布网站访问内网

    内网映射软件,主要是解决内网ip端口不通,如80端口被封情况.在内网端口映射,可以内网端口穿透,发布网站应用和访问内网应用. 如NAT123端口映射软件,可以用于辅助发布网站应用和访问内网.使用示例: ...

  3. 没有公网ip怎么外网访问nas?快解析内网端口映射到公网

    对于NAS用户而言,外网访问是永远绕不开的话题.拥有NAS后的第一个问题,就是搞定NAS的外网访问.不过众所周知,并不是所有的小伙伴都能得到公网IP,由于IPV4资源的枯竭,一般不会被分配到公网IP. ...

  4. 外网访问mysql数据库 花生壳内网映射mysql

    花生壳下载链接 花生壳客户端官方下载 - 贝锐花生壳官网 1.花生壳创建映射点击保存 2.要进行一下设置否则会提示Host 'windows10.microdone.cn' is not allowe ...

  5. powerdns与nginx结合实现以域名和IP方式访问web服务器80端口时分别跳转到不同页面...

    1.powerdns设置 2.内部网站介绍 web服务器采用nginx,内网dns采用powerdns. 想实现的功能如下 通过ip访问时跳转到A页面,通过域名访问时,让其跳转到B页面.两种方式的端口 ...

  6. 各品牌路由器更改设置端口映射实现外网访问内网点(如:OA)的方法

     各品牌路由器更改设置端口映射实现外网访问内网点晴OA的方法 先在OA服务器的IIS中增加OA访问端口:/mis/bbs/showbbs.asp?id=8178 下面假设已经在IIS中增加了一个访问点 ...

  7. 使用公网IP的非80端口访问内网中SharePoint2013的Web站点

    大家都知道sharepoint2013默认安装使用的80端口,http可以正常访问,但是如果你想做NAT到公网让其他城市的人通过公网IP访问你的网站,你该怎么做?不巧的是你用的是中国电信的宽带,默认的 ...

  8. 乐鑫Esp32学习之旅13 esp32 内置 dns 服务器,无需外网访问域名返回指定网页。(附带Demo)

    本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 1. 爬坑学习新旅程,虚拟机搭建esp32开发环境,打印 " ...

  9. 内网ip如何变成公网ip?快解析转换域名映射外网访问

    内网IP只能在本地内部网络连接访问,当本地搭建服务器部署好相关网站或应用后,在局域网内可以通过内网IP访问,但在外网是无法直接访问异地内网IP端口应用的,只有公网IP才能实现外网访问.但公网IP已经成 ...

  10. 必须有公网IP吗?内网穿透如何实现外网访问

    很多中小型公司或个人都有将自己内网的服务.应用,如远程桌面.网站.数据库.公司的管理系统.FTP.管家婆.监控系统等等,发布到外网,实现异地访问的需求.但往往面临一个普遍的问题,就是没有公网IP,即没 ...

最新文章

  1. php读取西门子plc_简单说一些PLC中模拟量的相关概念
  2. 判断接收的数据中是否有中文
  3. 矩阵连乘积 ZOJ 1276 Optimal Array Multiplication Sequence
  4. SSL、SSH、OpenSSH、OpenSSL 区别
  5. 用神经网络分类连续与离散
  6. 想实现高德/百度示例中 源代码编辑器+效果预览
  7. windows10环境下载labelImg及使用方法
  8. 重要社区链接(资源技术网站)
  9. 矩阵的“之”字形打印
  10. 利用键盘钩子捕捉linux键盘动作,利用键盘钩子捕获Windows键盘动作
  11. mysql 2008 安装图解_SQL Server 2008 安装图文教程
  12. SCSI硬盘系统无法启动取数据办法
  13. sirikit_iOS 12 Siri捷径SiriKit
  14. 宝妈群体又一次遭受职场歧视?公司要求怀孕即离职?或许抖音小店是突破口
  15. 模拟器修改hosts解析
  16. idea启动springboot项目控制台报错Command line is too long. Shorten command line for xxx or also for Spring B解决
  17. The package javax.swing is not accessible错误的三种解决办法,亲测有效
  18. R语言工具变量与两阶段最小二乘法
  19. linux下运行eureka,Linux服务器重启后eureka报错
  20. 日照华软游戏开发价格_棋牌游戏开发价格预算需要多少钱?

热门文章

  1. wadl2java 系统找不到_『阿男的Java社区指南』*02*Jersey的WADL功能
  2. Python老男孩第一天
  3. 微信小程序连接蓝牙工具类支持IOS和安卓
  4. 计算机一级考试ppt演示文稿及上网题考点
  5. 图形编程和机器人编程有什么区别
  6. DSSM双塔模型及pytorch实现
  7. 图片转灰度图时,图片偏绿色
  8. 网卡清空缓存命令_WIN10如何清除网络缓存图文教程
  9. 基于机器学习的互联网医疗诊断APP设计与实现(TensorFlow框架实现的App端和Bmob后台)
  10. 关于专利申请中的职务发明创造