多播在两段网络中不起作用

网络工程 路由 多播 皮姆
2021-07-09 20:21:03

我有两个网段通过 Cisco 交换机连接到单个 Cisco 路由器。我通过运行以下命令在路由器上启用了多播路由:

  1. ip multicast-routing 在配置模式
  2. ip pim dense-mode 在每个界面上

并在主机上为多播流量设置以下路由:

  1. route add -net 224.0.0.0 netmask 240.0.0.0 dev eth2

根据我的搜索,多播流量应该在没有设置route其网络(128.238.61.0128.238.62.0此处)的情况下跨网络,但事实并非如此。我尝试了以下解决方案,但都没有奏效:

  1. 使用sparse-modedense-sparse-mode用于接口
  2. 启用和禁用Reverse path filtering/proc/sys/net/ipv4/conf/[all,defalut,eth2]/rp_filter通过书面02在里面。

netspy用来创建多播流量和组 ( 224.111.111.111) 并且我已经验证相应的地址在路由器接口的多播组中。单个网段内的主机也可以正确看到多播流量。因为我认为流量应该在没有设置的情况下穿越网络route,什么配置错误可能会导致这个问题。先感谢您。

有一个具有接口 IP 的路由器:128.238.61.1/24128.238.62.1/24路由器的每个端口都连接了一个交换机。每个交换机连接三台主机。我通过 telnet 连接到路由器,然后键入config term. 然后我输入ip multicast-routing. 我转到带有 commandint fa 0/0 (0/1)和 type 的接口ip pim dense-mode然后在带有 ip 的主机上,128.238.61.109/24我开始netspy键入netspyd 224.111.111.111 1500 6(参数是组 ip、端口和 ttl)。现在我在所有其他主机上输入netspy 224.111.111.111 1500. 现在,如果我telnetnetspyd与它 ( 109)同一侧的主机之一,则没有任何反应。如果我在所有主机上设置路由route add -net 224.0.0.0 netmask 240.0.0.0 dev eth2,然后telnet在与netspyd服务器(网络61.0同一侧主机上获取有关登录的消息,但其他主机则没有。

最好的,

1个回答

PIM 是路由器到路由器的协议。我认为您缺少的是 IGMP。希望从多播组接收流量的客户端将使用 IGMP 通知路由器他们希望接收流量:

在此处输入图片说明

根据您的配置命令,我假设您使用的是 Cisco 路由器。Cisco 有一份文档描述了所有这些以及如何配置组播路由。