两个家庭网络之间的 DLNA 服务器

两个家庭网络之间的 DLNA 服务器

我有 2 个网络,每个网络都有自己的互联网连接、ISP 调制解调器路由器、dlna 服务器(运行服务)、一些客户端,目标是连接这两个网络。

从每个网络来看,仅有的一根以太网电缆连接到另一个网络,因此到目前为止我所做的就是在两个 ISP 的路由器上配置静态路由,并放置第三个路由器来实现两个网络之间的路由。路由器暂时是 Airlive N.Power。

此后,我可以成功 ping 并访问其他网络上的文件。到目前为止一切顺利。不幸的是,dlna 服务器在其他网络中无法被发现。

为了更好地解释这一点,假设我们在网络 A 中有一台电视作为 dlna 客户端,该电视只能发现其自己网络的 dlna 服务器,而不能发现网络 B 的 dlna 服务器。

Serviio 用途TCP 端口 8895 和 UDP 1900.我想我必须在网络间转发这些端口的流量,但我不知道应该在哪里应用它。在 ISP 路由器上、在第三个路由器上,还是两者兼而有之?

问题:如何让 dlna 服务器在其他网络中被自动发现?

答案1

正如@dirkt在评论中所说,我的要求并不简单。但我设法找到了解决方案。

首先,我用pfsense安装在旧电脑上的路由器替换了两个网络之间的第三个路由器。

pfsense附带IGMP 代理用于管理多播路由。启用它对我来说不起作用。

因此我搜索了其他多播路由解决方案,并找到了pimpd

由于它不包含在官方软件包中,所以我手动安装了它pfsense,并使用默认配置文件启动了服务器,然后 DLNA 服务器就被发现了,我不得不承认这有点延迟。这可以通过调整配置来改善。

笔记:我不会接受我的答案,希望得到更好的答案。

答案2

尝试 smcroute。

配置文件:

mgroup from br-lan group 239.255.255.250
mroute from br-lan group 239.255.255.250 source 192.168.9.220 to br-WAN

其中“br-lan”是您的本地网络设备,“br-WAN”是目的地。“192.168.9.220”是您的本地网络的 DLNA 服务器的 IP。此配置是单向的。

防火墙规则增加多播 TTL +1:

iptables -t mangle -A PREROUTING -i br-lan -d 239.255.255.250 -j TTL --ttl-inc 1

相关内容