取消
显示结果 
搜索替代 
您的意思是: 
cancel
公告

December 2020

December 2020

December 2020

交换机上的IGMP 侦听

13216
查看次数
40
有帮助
7
评论
本帖最后由 blakegao 于 2015-4-21 21:40 编辑
IGMP 侦听
IGMP 侦听是允许您直接捕获 IGMP 帧的另一种功能。有关 Catalyst交换机上的 IGMP 侦听支持,请参阅组播 Catalyst 交换机支持表
IGMP 侦听概述
顾名思义,IGMP 侦听是一种允许交换机“监听”主机与路由器之间 IGMP 会话的功能。当交换机监听到主机发送给特定组播组的 IGMP 报告时,该交换机会将主机端口号添加到该组的 GDA 列表。并且,当交换机监听到 IGMP 离开消息时,其会将主机端口从 CAM 表条目中删除。
学习路由器端口
交换机监听以下消息,以便检测带 IGMP 侦听功能的路由器端口:
· 发送到01-00-5e-00-00-01 的 IGMP 成员查询
· 发送到01-00-5e-00-00-02 的 PIMv1 hello
· 发送到01-00-5e-00-00-0d 的 PIMv2 hello
· 发送到01-00-5e-00-04 的 DVMRP probes
· 发送到01-00-5e-00-05 或 06 的 MOSPF 消息
通过在交换机上启用 IGMP 侦听,上述所有 MAC 条目都被添加到侦听交换机的 show cam system 命令输出中。一检测到路由器端口,就将其添加到该 VLAN 中所有 GDA 的端口列表。
使用 IGMP 监听时加入组
以下是两种加入情形:
场景 A:主机 A 是该网段中加入组的第一台主机。
1. 主机 A 发送未经请求的 IGMP 成员报告。
2. 交换机将拦截想要加入组的主机所发送的 IGMP 会员报告。
3. 交换机为该组创建组播条目,并把它连接到收到报告的端口和所有路由器端口。
4. 交换机向所有路由器端口转发 IGMP 报告。因此,路由器也会收到 IGMP 报告,并将相应地更新其组播路由表。
情形B :主机 B 当前是加入同一个组的第二台主机。
1. 主机 B 发送未经请求的 IGMP 成员报告。
2. 交换机将拦截想要加入组的主机所发送的 IGMP 会员报告。
3. 交换机不必向所有路由器端口转发 IGMP 报告。实际上,交换机将使用代理报告向路由器端口转发 IGMP 报告,并仅向每个组转发一个报告(10 秒内)。
注意:为了维护组成员,组播路由器将每 60 秒发送一次 IGMP 查询。此查询被交换机拦截,并由其转发到交换机上的所有端口。属于组成员的所有主机都应对该查询作出回复。但事实上,交换机将拦截回复报告,而其他主机不能看到任何其他报告,因此所有主机都应发送一个报告(而不是一个组发送一个报告)。然后,在收到的所有回应中,交换机将使用代理报告来仅向每个组发送一个报告。
假设主机 A 希望离开组,但主机 B 希望接收组。
· 交换机捕获来自主机 A 的 IGMP 离开消息。
· 交换机为该端口上(且仅限该端口上)的组发出组特定 IGMP 查询。
· 如果交换机无法接收报告,则将此端口从条目中删除。如果交换机收到来自该端口的回应,则将不执行任何操作,并将删除离开消息。
· 该交换机上的该组仍对主机 B 感兴趣。这不会是条目中最后的非路由器端口。因此,交换机不转发离开消息。
现在,假设主机 B 想要离开组且主机 B 是这个网段中此组所感兴趣的最后用户。
· 交换机捕获来自主机 A 的 IGMP 离开消息。
· 交换机为该端口上的该组发出组特定 IGMP 查询。
· 如果交换机无法接收报告,则将此端口从条目中删除。
· 这是该 GDA 的最后非路由器端口。交换机向所有路由器端口转发 IGMP 离开消息,并将该条目从其表中删除。
IGMP/CGMP 交互作用
在有些网络中,由于硬件限制,您可能无法在所有交换机上运行 IGMP 侦听。在此情况下,您可能需要在同一网络的一些交换机上运行 CGMP。
注意这是特殊情况。运行 IGMP 侦听的交换机将检测 CGMP 消息,并将检测该网络中的一些交换机是否正运行 CGMP。因此,其将移到特殊 IGMP-CGMP 模式,并将禁用代理报告。这对 CGMP 的正常操作绝对必要,因为路由器使用 IGMP 报告的源 MAC 地址来创建 CGMP 加入。运行 CGMP 的路由器需要查看所有 IGMP 报告,因此必须禁用代理报告。发送到路由器的任何报告只能是 IGMP 侦听必需的报告。
组播源专用网络
如果网段只包含一台组播服务器(组播源)且不包含客户端,则您最终可能遇到以下情况,即您在该网段中没有任何 IGMP 数据包,但有很多组播流量。在此情况下,交换机仅将来自该组的流量转发给网段中的每个路由器。幸运的是,运行 IGMP 侦听的交换机能检测这些组播流,并将为仅带路由器端口的组添加组播条目。这些条目在内部被标记为mcast_source_only,并且每 5 分钟或者在路由器端口断开时过期。请注意,即使在过期之后,如果数据流还在继续,则在几秒钟之内会重新学习地址。在重新学习地址期间,VLAN 中可能发生瞬时泛洪。为了避免此现象及保留条目,请使用 set igmp flooding enable|disable 命令。禁用泛洪后,交换机不会使源专用条目过期。
限制
与 CGMP 相同,IGMP 侦听不会删除映射到范围为 01-00-5e-00-00-xx 的 MAC 的 GDA。
Cisco 交换机上的 IGMP 侦听配置
要启用/禁用 IGMP 侦听,请发出以下命令:
· set igmp
要配置组播路由器(静态),请发出以下命令:
· set multicast router
· clear multicast router 端口|all>
要监控和检查 IGMP 统计数据,请发出以下命令:
· show igmp statistics
· show multicast router

评论
xupeng
Cisco Employee
谢谢楼主分享
linchen2
Community Member
赞赞赞
taosun2
Cisco Employee
赞!!
yingnxu
Cisco Employee
赞赞赞
Fisheryu
Cisco Employee
:):):)
chundli
Cisco Employee
lol:lol
leimin fan
Beginner
请教一下,关于IP IGMP Snooping问题
提问链接http://bbs.csc-china.com.cn/forum.php?mod=viewthread&tid=968084&highlight=igmp
在3750,2960,4900交换机的物理接口下都有条no ip igmp snooping tcn flood 命令可以关闭在交换机接口收到spanning-tree topology change TCN消息是禁止组播查询泛洪, 最近配置6509时发现为何在6509交换机接口下没有这条命令,查看了配置手册里面没有这个命令呢?
在6509上该如果防止组播泛洪呢?
创建
认可您的同行
Content for Community-Ad