013_内网穿透工具
localtunnel 和 Cloudflare Tunnels 都是内网穿透工具,可以方便快捷的将本地 Localhost 暴露给全世界,无需修改 DNS 和防火墙设置
localtunnel
localtunnel 是一款基于 node.js 的内网穿透工具,非常流行,可以方便快捷的将本地 Localhost 暴露给全世界,无需修改 DNS 和防火墙设置
github 地址: https://github.com/localtunnel/localtunnel
使用方式
安装:
npm install -g localtunnel
绑定端口:
lt --port 8000
, 绑定要访问内网服务的端口, 即本地访问该服务的端口公网 ip:之后会生成一个 https 的公网 ip 地址, 通过该地址可以访问内网
访问密码: 本地访问该 ip, 点击查看密码, 即可看到。从外网访问 ip,并输出密码即可
注意
- 服务关闭后, 外网不可访问, 再次开启后会分配新的 ip
Cloudflare Tunnels
Tunnels:如果你想在外网访问家里的设备,又很难申请到公网 IP,就可以使用 Cloudflare Tunnels 实现的免费内网穿透服务,这种方案配置简单,无数量限制、无流量限制
地址转换
通过地址转换的方式访问内网,通常涉及使用网络地址转换(NAT)和端口映射。以下是一些常见的方法:
1. NAT(网络地址转换)
NAT 是一种技术,允许多个设备共享一个公共 IP 地址。通过 NAT,内网设备可以通过公网 IP 地址与外部网络通信。NAT 会将内网设备的 IP 地址和端口号转换为公网 IP 地址和端口号。
2. 端口映射
端口映射是一种特定的 NAT 类型,它将内网中的特定端口映射到公网 IP 地址的特定端口。这样,外部设备可以通过公网 IP 地址和映射的端口访问内网设备。
3. VPN(虚拟专用网络)
VPN 允许远程用户通过安全的方式访问内网。VPN 会创建一个加密的隧道,通过公网将远程用户的连接转发到内网。这种方式不仅提供了访问内网的能力,还增加了安全性。
4. 代理服务器
代理服务器可以作为中介,接收外部请求并将其转发到内网设备。这种方式常用于访问内网中的特定服务,如 Web 服务器、数据库等。
5. 云服务
使用云服务提供商提供的 NAT 和端口映射功能,可以方便地将内网设备暴露到公网。例如,AWS 提供的 NAT Gateway 和端口映射功能。
示例
假设你有一个内网中的 Web 服务器,IP 地址为 192.168.1.10,端口号为 8080。你希望通过公网访问这个 Web 服务器,可以通过以下步骤:
- 配置 NAT 和端口映射:在路由器上配置 NAT 和端口映射,将内网 IP 地址 192.168.1.10 和端口 8080 映射到公网 IP 地址(例如公网 IP 地址为 203.0.113.1)和端口号(例如 8080)。
- 访问 Web 服务器:通过公网 IP 地址和端口号访问 Web 服务器,地址为
http://203.0.113.1:8080
。