![通过第三方应用程序进行互联网远程访问](https://linux22.com/image/1424496/%E9%80%9A%E8%BF%87%E7%AC%AC%E4%B8%89%E6%96%B9%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E8%BF%9B%E8%A1%8C%E4%BA%92%E8%81%94%E7%BD%91%E8%BF%9C%E7%A8%8B%E8%AE%BF%E9%97%AE.png)
我家里有一台无线 IP 摄像头 (D-link DCS-932L),我通过将我的 Wifi SSID 和密码存储在其中,将其无线连接到我的 WiFi 路由器。我可以通过手机上的指定应用程序在本地(本地 LAN)和互联网上访问摄像头。我的问题是关于通过互联网(本地网络之外)的连接。
我知道,为了启动与该摄像头的连接,我需要在路由器中将特定端口转发到摄像头的 IP,但事实并非如此,因为我的摄像头无需路由器上的任何端口转发设置即可工作。我只能假设与应用服务器的连接是从摄像头启动的,并且连接保持打开状态。如果是这样,它是如何保持打开状态的?连接没有超时计时器吗?在超时计时器到期之前,它是否会继续发送测试数据包?如果是,频率是多少?为了验证连接是否已启动,但同时又不让服务器被测试数据包淹没(假设该产品已售给数百万用户),最佳做法是什么?
抱歉,问题太长了。
答案1
它可以通过D-Link“mydlink”云服务。相机会打开与 D-Link 服务器的连接,您的应用程序在观看视频输出时也会联系该服务器。您可以联系 D-Link 客户服务部门,了解他们是否有任何正常运行时间承诺。如果相机与云服务失去连接,它应该会自动重新连接。
要了解其工作原理的详细信息,您需要使用 tcpdump/wireshark 之类的程序来查看网络上的数据包(或者其他已经拥有该程序的人可以添加到这个答案中)。
这意味着您需要(至少暂时)按如下方式设置您的网络:相机通过 wifi 连接到您的计算机(根据 Win/Mac 打开 ICS 或 Internet 共享),您的计算机通过不同的无线网卡或以太网连接到您的路由器。现在您可以在计算机上运行 wireshark 并查看数据包的来来去去。
如果连接每天打开和关闭数次或一次保持打开状态数天,则对带宽节省没有实际影响。连接保持打开状态的时间完全取决于相机中的固件配置方式、内部网络的稳定性、ISP 的可靠性等。