ngrok 和 natapp 都是用来实现内网穿透的工具,它们可以将本地的服务暴露到公网上,方便外网访问。虽然两者都可以实现这个功能,但在使用上还是有些区别。下面我将为你详细介绍 ngrok 和 natapp 的比较以及如何使用它们。

ngrok 和 natapp 的比较

功能 ngrok natapp
简介 ngrok 是一个开源项目,可以将本地的Web服务或TCP服务映射到一个随机生成的子域名上,方便外网访问。 natapp 是一款国内的内网穿透工具,提供基于云服务的内网穿透服务。
优点 1. 易于安装和使用;2. 支持多个端口映射;3. 支持自定义域名;4. 支持HTTPS;5. 支持多个平台和操作系统。 1. 速度快;2. 稳定性好;3. 提供多个子域名和自定义域名。
缺点 1. 限制免费用户的连接数和连接时间;2. 不支持TCP协议映射。 1. 不支持多个端口映射;2. 不支持自定义域名。

从上表可以看出,ngrok 和 natapp 都有各自的优点和缺点。如果你对速度和稳定性要求较高,可以选择 natapp;如果你对自定义域名和多个端口映射有需求,可以选择 ngrok。

使用 ngrok 实现内网穿透

下面是使用 ngrok 实现内网穿透的步骤和代码:

步骤1:下载和安装 ngrok

首先,你需要前往 ngrok 的官方网站(

步骤2:获取 ngrok Authtoken

在终端中切换到解压缩后的 ngrok 目录,并执行以下命令获取你的 Authtoken:

./ngrok authtoken <YOUR_AUTHTOKEN>

你可以在 ngrok 官网创建一个账号并获取 Authtoken。

步骤3:启动 ngrok

执行以下命令启动 ngrok:

./ngrok http 80

这将将本地的 80 端口映射到一个随机生成的子域名上,你可以通过该子域名访问你的本地 Web 服务。

使用 natapp 实现内网穿透

下面是使用 natapp 实现内网穿透的步骤和代码:

步骤1:注册 natapp 账号

首先,你需要前往 natapp 的官方网站(

步骤2:下载和安装 natapp 客户端

在 natapp 的官方网站下载对应的客户端,并安装到你的系统中。

步骤3:启动 natapp

在终端中执行以下命令启动 natapp:

./natapp -authtoken=<YOUR_AUTHTOKEN> -log=stdout

这将启动 natapp 客户端,并将你本地的服务映射到一个随机生成的子域名上。

以上就是使用 ngrok 和 natapp 实现内网穿透的步骤和代码。通过这两个工具,你可以方便地将本地的服务暴露到公网上,方便外网访问。

类图

classDiagram
    class Ngrok {
        -token: String
        +auth(token: String): void
        +start(port: Number): void
    }
    
    class Natapp {
        -token: String
        +auth(token: String): void
        +start(port: Number): void
    }
    
    class Developer {
        +ngrok: Ngrok
        +natapp: Natapp
        +teach(): void
    }
    
    Developer --> Ngrok
    Developer --> Natapp

甘特图