使用 4G 加密狗连接到远程物联网设备

物联网 联网 远程访问
2021-06-27 14:08:55

我正在构建一个需要部署在远程位置的物联网设备。没有固定线路可访问性让我求助于 3G/4G wifi 加密狗进行连接。这里有其他选择吗?

该设备需要按需提供实时传感器数据和视频片段。我需要一种从互联网连接到设备的方法。以下是想到的选项:

  1. 在加密狗上打开一个端口,设置 DDNS 并接收外部请求。我听说这无法使用 3G/4G 加密狗进行设置。
  2. 建立从设备到具有公共地址的服务器的连接,并通过建立的连接作为隧道接收反向请求。然后服务器可以充当设备的代理。
  3. 我听说过某种基于 VPN 的解决方案,但我不知道细节

您是否知道上述任何选项是否可行或是否有更好的方法?除了可行性和安全性之外,我对传输开销最小的方法特别感兴趣,因为设备需要传输大量的实时数据。

1个回答

您描述的所有 3 个选项都是有效的选项,但它们都取决于您已经拥有或准备部署的基础架构以及您想要花费多少。

  1. DDNS - 这在很大程度上取决于您使用的蜂窝网络以及您与他们签订的合同类型。大多数蜂窝数据提供商使用称为运营商级 NAT (CNAT) 的东西,这意味着设备从 RFC1918 范围中获得已发布的 IPv4 地址,这些地址不能直接路由到互联网或从互联网路由。所有流量都通过一个 NAT 网关,该网关将流量映射到一个公共 IP 地址。这意味着没有直接的方法可以从互联网连接到设备。一些蜂窝提供商确实提供合同(有时称为机器 2 机器),其中包括一个完全路由的 IPv4 地址,这意味着您可以访问该设备,但现在合同往往比普通合同贵很多,而且世界正在耗尽公共 IPv4 地址的数量可能会增加。

  2. 设备发起的出站连接 - 这解决了我在选项 1 中描述的大多数/所有问题。它要求您拥有一个托管在公共可访问 IP 地址上的中央服务器(这些天通常在云托管提供商上)。一旦创建了 TCP 连接,您想要的任何数据都可以通过该连接来回发送和转发。使用此技术的协议示例包括 MQTT,它是一种发布/订阅消息传递协议。

  3. VPN - 这只是选项 2 的特例版本。在这种情况下,公共服务器只是封装了其他协议,并通过设备与公共 VPN 端点建立的连接发送它们。他们还倾向于添加一层加密,以帮助隐藏您从它所穿过的其他网络发送的数据。

选项 2 和 3 都会增加一点开销,但现代实现不应该对性能产生太大影响。