You:
zerotier 如何内网穿透?暴露 http 端口 到公网之上
ChatGPT:
要使用 ZeroTier 实现内网穿透并将 HTTP 端口暴露到公网,你需要完成以下步骤:
1. 注册 ZeroTier 账户:访问 ZeroTier 官网(<
https://www.zerotier.com/)并注册一个新账户。完成注册后,登录到> ZeroTier 管理界面。
2. 创建网络:在管理界面中,点击 "Create a Network"。这将生成一个新的 ZeroTier 网络,同时会显示一个网络 ID 。
3. 安装 ZeroTier 客户端:根据你的操作系统(如 Windows 、macOS 、Linux )下载并安装适当的 ZeroTier 客户端。在计算机上安装 ZeroTier 客户端后,启动客户端并加入刚刚创建的网络。为此,输入你在步骤 2 中获得的网络 ID ,然后点击 "Join"。
4. 授权设备:回到 ZeroTier 管理界面,你将在 "Members" 列表中看到你的设备。将设备的 "Auth?" 复选框选中,表示允许该设备加入 ZeroTier 网络。
5. 配置端口转发:现在,你需要配置一台具有公共 IP 地址的互联网设备(例如 VPS 、云服务器或具有公网 IP 的路由器)以转发 HTTP 端口(通常为 80 或 443 )。你需要将公网设备上的 HTTP 端口转发到通过 ZeroTier 分配给你本地计算机的 IP 地址。端口转发的配置过程因设备和操作系统而异。如果你使用的是云服务器或 VPS ,可能需要在其防火墙设置中添加相应的规则。
6. 访问 HTTP 服务:完成端口转发设置后,你可以通过公网设备的 IP 地址访问本地计算机上的 HTTP 服务。在浏览器中输入 `http://<公网设备 IP>:<HTTP 端口>`,你应该能看到本地计算机上运行的 HTTP 服务的响应。
请注意,端口转发可能会导致安全隐患。确保你已采取适当的安全措施,如使用 HTTPS 、保护端口和限制 IP 访问等。
You:
我没有带公网 ip 的设备
ChatGPT:
如果没有带公网 IP 的设备,你可以使用第三方的穿透服务,如 ngrok 、frp ( Fast Reverse Proxy )等。这里以 ngrok 为例,介绍如何在没有公网 IP 设备的情况下实现内网穿透。
1. 注册 ngrok 账户:访问 ngrok 官网(<
https://ngrok.com/)并注册一个新账户。完成注册后,登录到> ngrok Dashboard 。
2. 下载 ngrok 客户端:在 ngrok Dashboard 中找到适合你操作系统的 ngrok 客户端(例如 Windows 、macOS 、Linux 等),然后下载并解压。
3. 配置 ngrok:在解压后的 ngrok 文件夹中,找到 `ngrok.yml` 文件(如果不存在,请创建一个)。打开该文件并输入以下内容:
```
authtoken: <your_auth_token>
tunnels:
http:
proto: http
addr: <your_local_http_port>
```
将 `<your_auth_token>` 替换为在 ngrok Dashboard 中找到的授权令牌。将 `<your_local_http_port>` 替换为本地计算机上运行的 HTTP 服务的端口号(例如 80 、8080 等)。
4. 启动 ngrok:打开命令提示符( Windows )或终端( macOS 、Linux ),然后导航到解压后的 ngrok 文件夹。运行以下命令启动 ngrok:
```
./ngrok start --config ngrok.yml http
```
5. 获取公网访问地址:启动 ngrok 后,它会生成一个公网访问地址,如 `
http://random-subdomain.ngrok.io`。你可以在命令提示符或终端窗口中看到该地址,或在 ngrok Dashboard 中找到。将这个地址用于访问本地计算机上运行的 HTTP 服务。
通过这种方法,你可以在没有公网 IP 设备的情况下实现内网穿透。但是,ngrok 是一项付费服务,免费用户可能会受到限制,例如连接数限制、随机子域名等。如果需要更高级的功能,可以考虑升级到付费计划。