当前位置: 首页 > news >正文

外网访问内网80端口【内网穿透】

微信公众号开发、本地搭建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管理界面。

1

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

  • 隧道名称:可自定义,注意不要重复
  • 协议:选择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。所以才会显示灰色不可用的画面。如果你本地有正常配置页面,那么就会正常显示出来。)

在这里插入图片描述

相关文章:

  • Android性能优化技术,在大厂中为何这么看重?进大厂必学好
  • 基于自建数据集【海底生物检测】使用YOLOv5-v6.1/2版本构建目标检测模型超详细教程
  • 水平分表之基因法
  • Gorm笔记
  • 抽空做了个“胃肠镜”,唠唠嗑
  • 现在工作是不是很难找?
  • Colmap算法pipeline
  • QCC51XX---TwsTopology_Init(goals分析)
  • 新概念英语第2册-第01课笔记
  • linux环境下基于opengl的3*3可控魔方绘制
  • C#——控件
  • Elk-Metricbeat配置对ELK的监控 (Metricbeat-part4)(待续)
  • Opengl ES之纹理贴图
  • 淘宝天猫商品全网搜索接口
  • 01背包-一维dp数组学习笔记
  • 9月CHINA-PUB-OPENDAY技术沙龙——IPHONE
  • 【知识碎片】第三方登录弹窗效果
  • 5分钟即可掌握的前端高效利器:JavaScript 策略模式
  • angular2 简述
  • avalon2.2的VM生成过程
  • Docker入门(二) - Dockerfile
  • ES6, React, Redux, Webpack写的一个爬 GitHub 的网页
  • golang 发送GET和POST示例
  • Redis中的lru算法实现
  • 排序算法学习笔记
  • 全栈开发——Linux
  • 如何合理的规划jvm性能调优
  • 深入浅出Node.js
  • 问:在指定的JSON数据中(最外层是数组)根据指定条件拿到匹配到的结果
  • 一起参Ember.js讨论、问答社区。
  • 正则与JS中的正则
  • Salesforce和SAP Netweaver里数据库表的元数据设计
  • ![CDATA[ ]] 是什么东东
  • #if和#ifdef区别
  • ${ }的特别功能
  • (09)Hive——CTE 公共表达式
  • (14)目标检测_SSD训练代码基于pytorch搭建代码
  • (C++17) optional的使用
  • (多级缓存)多级缓存
  • (二)基于wpr_simulation 的Ros机器人运动控制,gazebo仿真
  • (仿QQ聊天消息列表加载)wp7 listbox 列表项逐一加载的一种实现方式,以及加入渐显动画...
  • (附源码)spring boot校园拼车微信小程序 毕业设计 091617
  • (篇九)MySQL常用内置函数
  • (区间dp) (经典例题) 石子合并
  • (三)centos7案例实战—vmware虚拟机硬盘挂载与卸载
  • (生成器)yield与(迭代器)generator
  • (十三)Maven插件解析运行机制
  • (一)VirtualBox安装增强功能
  • (原創) 未来三学期想要修的课 (日記)
  • .NET CF命令行调试器MDbg入门(四) Attaching to Processes
  • .NET 简介:跨平台、开源、高性能的开发平台
  • .vimrc php,修改home目录下的.vimrc文件,vim配置php高亮显示
  • .vollhavhelp-V-XXXXXXXX勒索病毒的最新威胁:如何恢复您的数据?
  • [ vulhub漏洞复现篇 ] ThinkPHP 5.0.23-Rce
  • [1]-基于图搜索的路径规划基础