如何为调制解调器子网上的设备提供路由器子网上的第二个 IP?

如何为调制解调器子网上的设备提供路由器子网上的第二个 IP?

我对网络方面还不熟悉,所以如果我漏掉了一些显而易见的东西,请原谅

我有一个子网/DCHP 为 192.168.1.x 的调制解调器,上面有一个本地 IP 为 192.168.1.66 的设备。此设备充当服务器并广播 MiniDLNA 等服务。问题是这些服务无法直接添加,必须在局域网上找到它们。我的所有设备都连接到我的 Wi-Fi 路由器,该路由器具有不同的子网 10.0.0.x,因此寻找 MiniDLNA 服务器的设备似乎只会在 10.0.0.x 范围内查找。

我目前计划的解决方案是以某种方式将 10.0.0.x 范围内未分配的 IP 直接转发到服务器。我进行了一些谷歌搜索,并尝试在路由器上双向分配静态路由,但都无法正常工作。我该如何实现此结果?

我的路由器是 Netgear R7000,调制解调器是 AT&T Pace 5268AC。如果可能的话,我宁愿不安装自定义固件。

我也愿意接受任何其他解决方案,只要它们能够达到使服务器可发现的预期效果。还有其他服务的行为方式相同,因此 MiniDLNA 配置并不是一个完美的解决方案,但还是值得赞赏的。目前无法将服务器直接连接到路由器。

来自网络工程交流的重复问题因为那里不允许使用家庭网络)

答案1

尽管可以像那样路由单个 IP 地址(有点),但在这里并没有真正的帮助。

(只有当发现过程通过单独探测子网中的每个 IP 地址进行时它才会有所帮助 - 但这不是服务发现通常的工作方式。)

您的媒体服务器使用 SSDP 广播数据包进行发现,无论是从设备搜索还是从设备广告本身。对于广播数据包,重要的不是地址,而是“广播域”的概念——它大致对应于子网的边界,但始终在第一个路由器处停止。

即使您将路由器配置为将某些子网地址路由到其他地方,但这也不会扩大广播数据包的覆盖范围,因为它们仍然必须穿过路由器,而路由器通常不会转发此类数据包。

(好吧,这并不完全正确——从技术上讲,这些是多播数据包,理论上可以路由 - 但大多数家用路由器无法做到这一点,并且数据包的 TTL 通常为 1,因此无论如何都会受到相同的限制。对于许多基于多播的发现协议(如 SSDP 或 mDNS 或 LLMNR),可以将它们视为使用本地广播。)

因此你的选择是:

  • a) 将 Netgear 重新配置为仅充当网桥(接入点模式),将 AT&T 调制解调器作为唯一的路由器,将 192.168.1.0/24 作为唯一的子网。

  • b) 将媒体服务器直接连接到两个网络(如果它有两个以太网接口)...或者只是将其移动到需要所在的网络。

  • c) 如果媒体服务器无法物理连接到 Netgear,请使用一对支持 802.1Q VLAN 的交换机将 10.0.0.0/24 子网实际扩展到服务器所在的位置,使用与 Netgear 用于 WAN 上行链路相同的物理电缆。交换机(网桥)扩展广播域。

  • d) 找到一些可以在子网间中继 SSDP 广告(或多播数据包)的软件。如果这是 mDNS,我会尝试 Linux 的 avahi-daemon mDNS 服务中的中继功能;对于 SSDP,我可能会寻找一些通用的 UDP 广播/多播中继工具。

相关内容