外网如何访问内网/局域网网站【内网穿透】

2023-05-16

在本地内网/局域网环境下搭建的网站,正常情况下只能在同个局域网下访问,想要实现外网用户也能够正常访问,可以通过内网穿透来实现。

做内网穿透,无需公网IP,也无需进入到路由器配置,在本地安装个内网穿透工具,然后创建隧道,将其映射到公网,生成公网地址就可以。


cpolar内网穿透,只需要在本地安装客户端,进行简单的配置,就可以实现外网访问内网。它支持http/https/tcp协议,不限制流量,无需公网ip,也不用设置路由器,操作简单。

1. 本地安装配置cpolar(支持Windows/linux/macOS/NAS)

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 向系统添加服务
sudo systemctl enable cpolar
1.2.3 启动服务
sudo systemctl start cpolar
1.2.4 查看服务状态
sudo systemctl status cpolar

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

在这里插入图片描述

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

可通过cpolar web ui图形化界面来创建隧道,或者命令行创建隧道。

2.1 cpolar web UI 界面创建隧道

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

1

登录成功后,进入主界面

9

比如我们需要将本地8080端口下的web站点发布到公网可访问,只需要点击左侧仪表盘的隧道管理————创建隧道,输入隧道信息,然后点击创建即可。

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

在这里插入图片描述

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

cpolar会默认安装两个样例隧道

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

在这里插入图片描述

2.2 命令行创建隧道

cpolar http 8080

在这里插入图片描述可以看到有生成相应的公网地址,复制下来即可访问。

3. 获取公网地址

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

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

在这里插入图片描述
公网地址访问成功。
在这里插入图片描述

另外,cpolar所生成的公网地址也可以登录cpolar官网——状态页面,可以查看到所有在线隧道的公网地址。

在这里插入图片描述

4. 配置固定二级子域名

由于使用免费的cpolar所生成的公网地址为随机临时地址,24小时内会变化。如果需要长期使用,建议将其配置为固定的公网地址,同时提高带宽。

4.1 保留一个二级子域名

将cpolar套餐升级到基础版套餐或以上,然后登录进入cpolar官网后台——预留页面,找到保留的二级子域名:

本例保留一个名称为ToDoList的二级子域名。

  • 地区:选择China VIP
  • 名称:填写您想要保留的二级子域名
  • 描述:即备注,可自定义填写

20221117174126

子域名保留成功后,我们将子域名复制下来,接下来需要将其配置到隧道中去。

20221117174134

4.2 配置二级子域名

在浏览器上访问http://localhost:9200/,登录cpolar web ui管理界面。点击左侧仪表盘的隧道管理——隧道列表,找到需要配置二级子域名的隧道(本例中为website隧道),点击右侧的编辑

20221117174141

修改隧道信息,将二级子域名配置到隧道中:

  • 域名类型:改为选择二级子域名
  • Sub Domain:填写我们刚刚所保留的二级子域名(本例为ToDoList

修改完成后,点击更新

20221117174151

隧道更新成功后,点击左侧仪表盘的状态——在线隧道列表,可以看到website隧道的公网地址,已经更新为二级子域名了,将公网地址复制下来。

20221117174157

5. 公网测试访问二级子域名

打开浏览器,我们来测试一下访问配置成功的二级子域名,访问成功。

20221117174205

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

外网如何访问内网/局域网网站【内网穿透】 的相关文章

随机推荐

  • solidity This declaration shadows an existing declaration

    中文解释 解决 xff1a 变量重复定义 xff0c 变量名和函数名不能相同 和之前写的各种代码不一样 xff0c 没看明白这个警告 后来仔细看了一下代码 xff0c 发现有函数名和其他函数里的变量名一致 xff0c 导致的警告 修改后警告
  • openzeppelin erc20各种接口

    ERC 20 这套接口 合约和应用程序都与 ERC20 代币标准相关 有一些核心合约实现了 EIP 中指定的功能和定义 xff1a IERC20 包含所有ERC20应该实现的接口IERC20Metadata 对ERC20接口的扩展 xff0
  • Next.js Polygon, Solidity,The Graph,IPFS,Hardhat web3博客系统

    参考 源文档The Complete Guide to Full Stack Web3 Development DEV Community 源码 xff0c 源文章里的github项目无法直接运行 xff0c 经过修改后可mac中可用Git
  • node.js 开发笔记

    依赖 package json里 dependencies xff08 运行时依赖 xff09 devDependencies xff08 常用 xff0c 开发时依赖 xff0c 运行不依赖 xff09 peerDependencies
  • React Native 混合ios android开发 及常用框架

    英文文档 xff1a Setting up the development environment React Native 中文文档 xff1a 集成到现有原生应用 React Native 中文网 ios 在集成过程中 xff0c 需要
  • React native RN 开发实例

    多入口加载方式 React Native 混合开发多入口加载方式 知乎 initialProperties 官方文档 xff1a React Navigation moduleName 案例 xff1a GitHub hcn1519 Rea
  • vscode 正则表达式查找替换

    参考 可以用在 VS Code 中的正则表达式小技巧 掘金 正则匹配中文数字 小豆芽菜的博客 CSDN博客 案例 想在 七百零四章 前加入 第 条件 搜索条件 注意底下章后面有空格 xff0c 这个是根据我的原文来定制的 xff0c 原文里
  • swift xcode 宏定义ifdef debug

    DEBUG 代码中 if DEBUG print 34 file as NSString lastPathComponent function 34 endif
  • Swift UIView SnapKit updateConstraints 如何做动画(animate animation)和 cornerRadius

    动画 UIView animate withDuration 0 3 let newWidth 61 self progressBgView width 2 progressValue self progressView snp updat
  • Linux网络命令

    目录 一 网络配置命令 1 1 ifconfig命令 查看网络接口信息 二 hostname 查看主机名称 2 1 查看主机名 2 2 修改主机名称 2 3 永久修改主机名 xff0c 修改后重启生效 三 route 查看路由表条目 四 n
  • Xcode 14.3 Archive AFNetworking.framework failed: No such file or directory

    参考 Xcode 14 3 Archive 失败 掘金 项目搜索 source 61 34 readlink 34 source 34 34 替换为 xff1a source 61 34 readlink f 34 source 34 34
  • xcode Swift Log CocoaLumberjack

    参考 iOS CocoaLumberJack日志库集成 简书 logging How to capture Device Logs in iOS during Runtime into a file in Documents Directo
  • UITabbar 颜色 color

    if available iOS 15 let tabBarAppearance 61 UITabBarAppearance tabBarAppearance backgroundColor 61 white tabBarAppearanc
  • Pyinstaller 打包 Tkinter 程序时引入图标解决方法

    Pyinstaller 打包 Tkinter 程序时引入图标解决方法 描述 在windows下开发python的gui程序时 多数使用pyinstaller py2exe等打包工具 在因为tkinter框架时 代码中使用iconbitmap
  • mysql基本操作

    修改字段属性 xff1a 修改字段属性 ALTER TABLE tb name MODIFY 字段名称 字段类型 完整性约束条件 将email字段 VARCHAR 50 修改成VARCHAR 200 注意 xff0c 修改时如果不带完整性约
  • <context:component-scan/>标签爆红

    lt xml version 61 34 1 0 34 encoding 61 34 UTF 8 34 gt lt beans xmlns 61 34 http www springframework org schema beans 34
  • iOS exit函数深入浅出

    1 exit函数 C C 43 43 函数exit用来终止当前程序 xff0c 函数定义如下 xff1a void exit int status 官方说明如下 xff1a Terminates the process normally p
  • 前端妹子如何在 sqlserver 2008 中如何用自定义函数 解析json数据

    导航 前言 xff1a 开始干活 xff1a 0 预告1 首先先建立一个 通用的json解析自定义函数 xff08 这个代码是网络上找到的成熟代码 xff09 2 重点讲解一下 函数 parseJSON 的用法3 学会了函数 parseJS
  • ECS架构的思考

    最近在整理Demo代码 xff0c 遇到一个设计问题 xff0c 这个问题是transform组件到底放到哪里比较合适 xff1f 我们都知道逻辑 xff0c 物理 xff0c 渲染模块都会用到transform组件 比如渲染模块会将tra
  • 外网如何访问内网/局域网网站【内网穿透】

    在本地内网 局域网环境下搭建的网站 xff0c 正常情况下只能在同个局域网下访问 xff0c 想要实现外网用户也能够正常访问 xff0c 可以通过内网穿透来实现 做内网穿透 xff0c 无需公网IP xff0c 也无需进入到路由器配置 xf