组播IGMP Snooping配置教程
1、打开IGMP Snooping功能
使能全局IGMP Snooping功能,是进行其他IGMP Snooping配置的前提。VLAN下使能IGMP Snooping功能,是VLAN下其他IGMP Snooping配置生效的前提。
缺省情况下,交换机的全局IGMP Snooping功能未使能。 1.1、优化接口板上组播报文的复制能力。
[Huawei]assign multicast-resource-mode optimize
如果当前的组播报文需求超过8192份,使能IGMP Snooping功能之前,需要首先运行此命令优化接口板上组播报文的复制能力。
1.2、使能全局IGMP Snooping功能。 [Huawei]igmp-snooping enable 1.3、配置VLAN中组播数据是按IP地址还是MAC地址转发。缺省按IP地址转发。 [Huawei-vlan2]l2-multicast forwarding-mode ? ip IP mode mac MAC mode
配置VLAN中组播数据转发模式需要在没有使能该VLAN的IGMP Snooping功能时进行。配置完成后需要使能VLAN内IGMP Snooping功能才会生效。
通过此命令将VLAN内组播数据转发模式配置为按MAC模式转发后,该VLAN不能再被配置为组播VLAN。
如果当前设备按MAC模式转发组播数据,在网络中规划组播IP地址时,请避免选择为协议预留的组播IP地址映射成相同组播MAC地址的组播IP地址。否则,可能造成使用保留组地址发送协议报文的协议无法正常运行。
比如:OSPF协议使用224.0.0.5发送协议报文,映射后的组播MAC地址为01-00-5E-00-00-05。如果当前组播数据按MAC模式转发,并且使用的组播IP地址是225.0.0.5,就会造成OSPF协议不能正常运行。
如果当前VLAN对应的VLANIF接口绑定了VPN实例,但未使能IGMP或PIM,只能配置该VLAN按MAC模式转发组播数据。
如果仍希望该VLAN按IP模式转发,可通过组播VLAN方式,将该VLAN设置为用户VLAN,其他VLAN配置为组播VLAN,使得组播数据通过组播VLAN引流到用户VLAN。
1.4、配置组播数据不向路由器端口转发
[Huawei-vlan2]l2-multicast router-port-discard
配置组播数据不向路由器端口转发需要在没有使能该VLAN的IGMP Snooping功能时进行。配置完成后需要使能IGMP Snooping功能才会生效。
1.5、使能VLAN的IGMP Snooping功能
[Huawei-vlan2]igmp-snooping enable 或
[Huawei]igmp-snooping enable vlan 2 或
[Huawei]igmp-snooping enable vlan 2 to 5
GMP Snooping功能不能和N:1(N大于1) VLAN Mapping功能配合使用。
2、设置IGMP Snooping版本
IGMP协议用于组成员关系管理,运行于三层组播设备和成员主机之间的网段,有v1、v2、v3三个版本。在二层设备上配置IGMP Snooping版本,设备可以处理相应版本的IGMP报文。
一般二层设备上配置和三层组播设备一致的版本。如果三层组播设备没有启用IGMP,则在二层设备上配置和成员主机相同或高于成员主机的版本。
同一VLAN内必须运行同一个版本的IGMP协议。如果VLAN内存在支持不同版本的主机,需要配置IGMP Snooping版本,使设备可以处理所有主机的报文。 [Huawei-vlan2]igmp-snooping version ? INTEGER<1-3> Value of version
缺省情况下,设备可以处理IGMPv1和IGMPv2的报文,但无法处理IGMPv3的报文。当VLAN内的转发模式为基于MAC地址转发时,无法配置IGMPv3版本。
3、设置IGMP Snooping静态路由器端口
路由器端口一般是二层设备上朝向上游三层组播设备(组播路由器或三层交换机)的接口。VLAN内使能IGMP Snooping功能后,加入该VLAN的接口会从组播协议报文中学习表项。当一个接口接收到IGMP Query报文或PIM Hello报文时,二层设备会标识该接口为动态路由器端口。
路由器端口主要有两个功能:接收上游的组播数据;指导IGMP Report/Leave报文转发。当VLAN内收到IGMP Report/Leave报文后,仅会向该VLAN内的路由器端口转发。
动态路由器端口会定时老化,当动态路由器端口在其老化时间超时前没有收到IGMP Query或者PIM Hello报文,设备将把该接口从路由器端口列表中删除。
如果希望某接口长期稳定的转发IGMP Report/Leave报文到上游IGMP查询器,可配置该接口为静态路由器端口。
在环网中配置了IGMP Snooping功能时,如果需要将某设备的下行口配置为静态路由器端口,则需要将环网中所有设备的下行口都配置为静态路由器端口,否则在二层网络拓扑发生变化时会导致组播流量不能正常转发。
建议不要将设备的下行口配置为静态路由器端口。 3.1、禁止动态学习路由器端口。
[Huawei-vlan2]undo igmp-snooping router-learning 或
[Huawei-GigabitEthernet0/0/1] undo igmp-snooping
router-learning vlan { { vlan-id1 [ to vlan-id2 ] } &<1-10> | all }
3.2、配置接口为静态路由器端口。
[Huawei-GigabitEthernet0/0/1]igmp-snooping static-router-port vlan ? INTEGER<1-4094> VLAN ID
4、设置IGMP Snooping静态成员端口
成员端口一般是设备上朝向接收者主机的接口,表示该接口下有组播组成员,可以通过组播协议动态学习或静态配置。
VLAN内使能IGMP Snooping功能后,加入该VLAN的接口会从组播协议报文中学习表项。当一个接口收到IGMP Report报文时,设备会标识该接口为动态成员端口。
动态成员端口会定时老化。
如果接口所连接的主机需要固定接收发往某组播组或组播源组的数据,可以配置该接口静态加入该组播组或组播源组,成为静态成员端口。
静态成员端口不会老化。
4.1、禁止动态学习组播成员端口。
[Huawei-GigabitEthernet0/0/1] undo igmp-snooping learning vlan { { vlan-id1 [ to vlan-id2 ] } &<1-10> | all }
4.2、配置接口静态加入组播组,接口成为静态成员端口
[Huawei-GigabitEthernet0/0/1]l2-multicast static-group ? group-address Specify group address source-address Specify source address
[Huawei-GigabitEthernet0/0/1]l2-multicast static-group group-address ? X.X.X.X Group address
[Huawei-GigabitEthernet0/0/1]l2-multicast static-group group-address 239.1.1.1 ?
vlan Specify parameters for VLAN
[Huawei-GigabitEthernet0/0/1]l2-multicast static-group group-address 239.1.1.1 vlan ?
INTEGER<1-4094> VLAN ID
[Huawei-GigabitEthernet0/0/1]l2-multicast static-group group-address 239.1.1.1 vlan 5 ?
INTEGER<1-4094> VLAN ID
to Range link symbol
[Huawei-GigabitEthernet0/0/1]l2-multicast static-group group-address 239.1.1.1 vlan 5 to 7 ?
INTEGER<1-4094> VLAN ID