【问题标题】:Receive answer back behind a firewall在防火墙后面接收答案
【发布时间】:2017-04-11 15:08:26
【问题描述】:

我目前正在开发物联网产品。 我的问题是如何在没有端口转发的情况下启动与外部的连接并听取答案?

在同一网络 (@home) 中时,我在已知端口上使用简单的 udp 套接字。

有协议/解决方案吗?

我目前所做的是使用 Firebase Cloud Messaging 到达外部,但智能手机当然无法回复物联网(目前是 Json 请求)。

IoT --> Cloud --> App

但不是

Iot <-- Cloud <-- App

我可以通过在 FCM 中使用 XMPP 请求来解决这个问题吗?

您必须想象最终客户产品的日常场景。

【问题讨论】:

  • 如果没有端口转发,您将需要一个云服务器来调解连接。 有人需要在听,而应用程序无法做到。
  • 我正在考虑在 firebase 通知系统之上使用代理/客户端的 MQTT 服务器。

标签: android firebase firebase-cloud-messaging firewall iot


【解决方案1】:

某些 Firebase 功能仅适用于传出 HTTPS 连接,无需您在设备上打开传入端口。

其中一个例子是 Firebase 数据库,它带有一个 Android SDK,它完全依赖于(Web)套接字连接设备 Firebase 服务器。 Firebase 数据库的 REST API 在相同的基础架构中工作,除了它使用常规 HTTP 请求而不是 Web 套接字。但是 Web Sockets 和 HTTP 请求都通过常规的 HTTPS 端口 (443)。因此,除非您的防火墙阻止 HTTP(S) 流量,否则这种方法应该有效。

在这种情况下,您将使用 Firebase 数据库作为 Android 应用和 IoT 设备之间的中介。

【讨论】:

  • 我不确定您的回答,我的意思是即使 HTTP 实际上也为传入流量设置了防火墙。端口 80 或 443 必须在 IoT 或手机应用程序中的某个地方打开。
猜你喜欢
  • 1970-01-01
  • 2017-05-07
  • 2019-11-10
  • 2010-09-07
  • 2015-04-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多