题 通过WAN禁用多播传送多播(到另一个LAN)


我的服务器和客户端软件在Linux上运行。
服务器广播多播,客户端侦听多播。

我的客户必须迁移到其他网站,
不幸的是,两个站点之间不允许多播:-(

如何在两个站点之间传递多播?
  - 通过TCP还是UDP?
  - 你推荐什么工具?
  - 延迟怎么样?

我收到了一个很好的答案 思科 配置(GRE),
但其中一个网络团队不想监视/维护它,
=>当传输中断时,支持团队将花费太多时间来理解和修复。
=>那么,什么应该是GRE的最佳替代方案?

是否有基于的解决方案 Linux内核功能 
还是网卡功能? (低延迟很重要)
用法示例表示赞赏:-)


组播频道:225.1.0.1:6666


相关问题


7
2018-02-08 18:01




我不是专家,但我相信思科路由器允许您在两个站点之间进行多播隧道。认为你可能在超级用户论坛上有更好的答案。这是我想到的东西的链接 思科
你应该看看 这个思科文档 这为Cisco路由器提供了非常清晰的解释和配置设置。即使您的硬件不是思科,它也可能为您提供足够的信息来配置您的硬件。 - Ex Umbris
谢谢@JimGarrison我将检查我的网站团队。但我担心其他网络团队对此配置不满意。如果有人更换路由器或更新配置路由器,我的传输可能会被破坏......我们可能会花几个小时才能了解会发生什么。我的传输不会被打破超过一小段时间...... - olibre


答案:


我不确定在您的问题中理解您的图形,但据我所知,您需要通过TCP转发组播数据包?面向工具的解决方案可能涉及 socat

例如,多播信道是224.1.0.1:6666。

在服务器主机上(IP = SS.SS.SS.SS):

$socat -v UDP4-RECVFROM:6666,ip-add-membership=224.1.0.1:CC.CC.CC.CC,fork TCP:destination.hostname:4444

在客户端主机(IP = CC.CC.CC.CC)上:

$socat -v TCP-LISTEN:4444,fork UDP4-DATAGRAM:224.1.0.1:6666,range=SS.SS.SS.SS/24

我让你检查如何调整参数 socat 手册。一旦你知道了MULTICAST GROUP和你的网络接口的ip地址,这是非常简单的。 :-)


4
2018-02-09 07:58



出于好奇,这个解决方案似乎打开一个UDP端口来监听以及TCP连接转发到另一个主机。这意味着该解决方案很可能是一个2部分解决方案,这也是防火墙修改,以允许TCP流量进入网络攻击socat主机。我认为这个设置很难让IT团队同意。


一些路由器将允许跨IP网络链路隧道化多播流量。必须相应地配置隧道的两端。思科特别支持在GRE链路上隧道化组播流量。这是一篇关于如何实现这一目标的文章 思科


9
2018-02-08 18:30



其中一个网络团队不希望他们的具体配置 思科路由器 :-(因此我们必须找到一个像GRE一样高效的替代方案。例如使用网卡功能或Linux内核功能......你有其他想法吗? - olibre


这是可能的,但是使用像TCP这样的流协议并不是一个好主意,因为多个拥塞实现(一次来自TCP,另一次来自尝试以智能方式使用UDP的程序)[1]

您拥有的可能性是隧道解决方案,例如: OpenVPN + TAP(使用UDP传输)或GRE,甚至是L2TP之类的东西。 [我想知道IPIP / IP6IP6隧道是否也能正常工作。]


4
2018-02-09 15:43



嘿,这个好主意:-D非常感谢您对UDP的建议:-)请告诉我们有关OpenVPN + TAP和L2TP的更多信息。我想我的网络将使用IP4一段时间...所以我想IPIP / IP6IP6在我的情况下是不可用的!再见。干杯 - olibre
请描述一下你的答案。我很欣赏用法/示例......例如,您可以重复使用来自问题(IP1,IP3 ......)的数据。 IPIP / IP6IP6是否保留用于完整的IP6网络? - olibre
嗨@jørgensen。请提供更多详情。我想为那些解释路由器配置(GRE)的最佳替代方案的人提供赏金。谢谢 ;-) - olibre


Linux内核导向解决方案:

mrouted 是一个deamon,它获取任何多播数据包并告诉内核转发它们的位置。您需要使用特定的补丁和正确的选项重新编译Linux内核。然后配置 mrouted 守护进程。获取更多详细信息 Linux的启动mrouted-MiniHOWTO.html 。

一个很好的参考是 组播howto,好读。

希望能帮助到你。


3
2018-02-09 13:51



真的很有趣:-)你知道这个功能是否已经在Red Hat 5或6上启用了吗?因为我的管理员可能不同意在生产中更改Red Hat内核...... - olibre


史蒂夫米勒发布的很好 教程 为你的问题。希望对你有帮助!


1
2018-02-15 07:32



谢谢凯文。但是,正如我在我的问题中解释的那样,其中一个网络团队不想配置Cisco路由器:-(因此我们必须找到一个像GRE一样高效的替代方案。例如使用 网卡功能 要么 linux内核功能......你还有另一个想法吗? - olibre