我有一台运行 Serviio 作为 DLNA 服务器的 Windows 7 PC。我有一台运行 Skifta 作为 DLNA 渲染器(客户端)的三星 I9100G。我的网络拓扑:
目前,如果手机在路由器 #2 上,我可以正常连接并观看视频。服务器与 #2 位于有线网络上。路由器 #1 是 192.168.1.1,路由器 #2 是 192.168.2.1(192.168.1.2),路由器 #3 是 192.168.3.1(192.168.1.3)。换句话说,每个路由器都有自己的子网,使用 NAT - 它们的“调制解调器”端口与调制解调器/路由器 1 上的“LAN”端口相连。
我想要做的是,如果渲染器连接到路由器 #1/#3,则能够连接到 DLNA 服务器 - #1 位于 #2 的 WAN 端,而 #3 则相距更远。不过,我满足于只有 #1 工作。
通常情况下,我只需转发适当的端口,一切就都正常了。但是,(显然)DLNA 使用 UPnP,我不熟悉。我尝试在路由器 #2 上启用 UPnP,但似乎没有改变任何东西。它是 Belkin F5D7230-4 6000 -有报告称 F5D7230-4 7000 上的 UPnP 存在问题。UPnP 已在路由器 #1(Billion BiPAC 7700N)上启用。
我还尝试了手机内置的 DLNA 渲染器/服务器/控制器 Samsung AllShare。它可以看到路由器 #2 上的服务器并浏览文件,但在播放或下载文件时会出现问题。它也无法看到其他两个网络上的服务器。
我目前正在使用 Skifta/s 的“本地”模式。“远程”模式需要一个帐户,如果没有必要的话,我真的不想创建它。
我是否可以做到我想做的事情?如果没有,有什么解决方法吗?如果有,我该怎么做?是我的服务器有问题吗?渲染器(客户端)有问题吗?路由器有问题吗?我的方法?除了路由器,我几乎可以改变任何东西。
答案1
如何配置一个 VPN 来完成所有这些工作?
当然,这只是一个相当糟糕的解决方法,但我知道 OpenVPN 等在穿越 NAT 和其他所有事情上相当出色。
Android 上有一个相当容易操作的 OpenVPN 客户端。然后,您需要在与 Serviio 相同的主机上配置 OpenVPN 服务器。
理论上,通过配置良好的 VPN(对于 OpenVPN,请寻找 TAP 而不是 TUN),您可以模拟您的手机与 Serviio 位于同一以太网段上。这样,广播也应该可以到达手机。
附言:很遗憾,我看不到您帖子中的图片(在工作中过滤了?)。因此,由于我看不到您的网络拓扑,因此这个答案可能不准确。