标签: igmp

Linux 下的 IGMP 成员资格 (igmp_max_memberships)

我遇到了与 OSPF(依赖多播)相关的问题,不允许我们使用足够多的邻接,并被告知查看:/proc/sys/net/ipv4/igmp_max_memberships

现在,虽然很容易将这个数字增加到无穷大,但有没有办法知道操作系统当前拥有多少 IGMP 成员资格,这样我就可以确保这确实是问题所在,应该使用什么数字?

linux igmp

7
推荐指数
1
解决办法
5218
查看次数

在交换机上启用 IGMP 侦听的情况下,使用 Wireshark 捕获多播数据

我正在尝试通过 Wireshark(实际上是 TShark)捕获多播流量,但是交换机启用了 IGMP 侦听,并且只会在具有活动 IGMP 订阅的端口上发送多播流量。

我目前正在通过一个单独的应用程序来解决这个问题,因为我希望记录的组保持打开状态,但我正在尝试设置一个系统来动态启动/停止记录数据,而这种额外的复杂性很痛苦。

有没有办法强制 Wireshark 为其录制的多播组发送 IGMP 订阅?

multicast wireshark igmp tshark

7
推荐指数
1
解决办法
2万
查看次数

OS X 网络堆栈忽略 IGMP 成员资格查询

我们有一个远程站点,其中 Mac 不响应IGMP 成员资格查询,但 Windows 机器确实响应。因此,大约 10 分钟后,支持 IGMP 的网络交换机会切断发送至 Mac 的多播流。

这是显示问题的 Wireshark 屏幕截图:

Wireshark IGMP 数据包捕获

第一个数据包是应用程序请求网络开始允许从 239.255.20.1 到 Mac 的 IGMP 数据包。然后您会看到,此后大约每隔 125 秒,配置为 IGMP 查询器 (10.1.254.254) 的网络交换机就会询问我们是否仍然对该流感兴趣。请注意明显缺乏响应。

以下是本地网络上发生的情况,以供比较:

良好的 IGMP 数据包捕获

在这里,大约每 95 秒,IGMP 查询器 (172.20.0.2) 就会询问我们是否仍然需要该流,而相关的 Mac (172.20.0.144) 会说:“是的,继续发送它。”

有问题的 Mac 上的防火墙在 GUI 中已关闭,我已在命令行中对其进行了验证:

$ /usr/libexec/ApplicationFirewall/socketfilterfw --getglobalstate
防火墙已禁用。(状态 = 0)
$ /usr/libexec/ApplicationFirewall/socketfilterfw --getblockall
阻止所有禁用!
$ /usr/libexec/ApplicationFirewall/socketfilterfw --getstealthmode
隐身模式已禁用
$ /usr/libexec/ApplicationFirewall/socketfilterfw --getappblocked /Applications/mumblemutter.app/...
该应用程序不是防火墙的一部分

应用程序并不重要,因为堆栈在加入组后处理 IGMP 查询。

问题 Mac 运行的是 10.11.5,但我无法相信通过升级到绝对最新版本可以解决该问题,因为这意味着基于 BSD 的操作系统正在 2016 年修复其网络堆栈中的严重错误。有可能,但极其严重低概率。

networking multicast streaming igmp

2
推荐指数
1
解决办法
3400
查看次数

标签 统计

igmp ×3

multicast ×2

linux ×1

networking ×1

streaming ×1

tshark ×1

wireshark ×1