尽管我进行了一些研究,但发现两种不需要端口转发的远程访问技术
1)Cloud Broker :(从@ChrisStratton的答案到问题:通过Internet无需端口转发即可与Arduino联系)(图)。
2)具有直接URL的Cloud Broker :(来自Domotz)这类似于Cloud Broker方法,不同之处在于该URL方法为远程用户提供了直接访问链接,而不是信任代理将其消息发送到IoT设备(图)。 Web /移动应用程序,流量如何通过家庭网关的NAT绕过?
我不确定,但是这种方法不应该使用端口转发。
#1 楼
以您的两个图作为替代:情况1:
所有节点负责打开与远程服务器的连接。一旦打开连接(使用正确的协议),云服务器便能够将命令中继到远程端点设备(在集线器上可能进行某些协议转换/抽象)。如果服务器被卸下,则连接失败。
情况2:
端点设备需要在远程服务器上注册其位置(允许在家庭网关上使用动态公共IP),并且需要配置网关用于端口转发。现在,远程用户可以从云中发现端点的公共IP /端口,并执行直接访问。这种情况1更安全,因为它不允许建立到集线器的入站IP连接,并且任何攻击都需要模拟云,但仍然只能使用集线器提供的协议。案例1仍然为攻击者提供了一种途径来替换集线器固件,此时攻击者可以对您的网络进行开放访问。
评论
相关:iot.stackexchange.com/questions/1119/…方法2与Domotz有什么关系? Domotz使用安装在专用网络中的物理代理。该图不适用于Domotz,那么谁知道这意味着什么?它是从哪里来的?