组播VLAN配置与管理
组播VLAN(Multicast VLAN)一般部署于设备的网络侧来实现组播流汇聚,然后将组播报文在用户VLAN内复制分发。华为S系列交换机支持基于用户VLAN和基于接口两种方式配置组播VLAN复制功能,可根据不同的应用场景来选择对应方式配置组播VLAN复制功能。
一、配置基于用户VLAN的组播VLAN一对多
通过配置组播VLAN一对多,可以实现组播数据在不同用户VLAN间复制分发,减少上游带宽浪费。目前S系列交换机在IPv4网络和IPv6网络都支持配置组播VLAN一对多。两种网络在配置时并无差异,都需要结合二层组播侦听功能(Ipv4网络为IGMP Snooping,IPv6网络为MLD Snooping)来实现。以IPv4网络的配置流程为例。具体配置顺序:
(1)配置用户VLAN IGMP Snooping功能
配置基于用户VLAN的组播VLAN一对多功能时需要在用户VLAN下使能二层组播侦听——IGMP Snooping功能。
(2)配置组播VLAN
组播VLAN是实现组播复制功能的基础,用来汇聚网络侧的组播流,然后将组播流在其对应的用户VLAN内复制分发。同时,在配置基于用户VLAN的组播VLAN功能时,组播VLAN也需要使能二层组播侦听功能。
(3)配置接口加入VLAN
组播VLAN和用户VLAN配置完成后,网络侧接口需要加入组播VLAN,用户侧接口需要加入用户VLAN。
S2700EI/5700S-LI/5700LI系列交换机在配置组播VLAN时,用户侧接口必须以相同方式同时加入组播VLAN和用户VLAN。如果单个用户侧接口加入了两个或两个以上的用户VLAN,只有第一个上送Report报文的用户VLAN才会实现组播VLAN复制功能。
示例:配置组播VLAN2和用户VLAN3~VLAN10的对应关系
通过上面的配置可见,配置组播vlan的前提是:创建VLAN(组播VLAN与用户VLAN)——全局使能igmp-snooping——组播vlan中使能igmp-snooping——组播vlan中使能组播VLAN——组播VLAN与用户VLAN绑定——用户VLAN使能igmp-snooping
二、配置基于接口的组播VLAN功能
通过配置基于接口的组播VLAN功能,可以实现同一用户VLAN中不同用户之间的组播业务隔离,增强了对组播业务流量的控制。目前交换机仅支持在IPv4网络配置基于接口的组播VLAN功能。在配置时需要结合IGMP Snooping功能来实现,但是与配置基于用户VLAN的组播VLAN功能不同的是,用户VLAN不需要使能IGMP Snooping功能,只需要使用vlan vlan-id命令创建用户VLAN。具体按如下顺序进行配置:
(1)配置组播VLAN
配置基于接口的组播VLAN功能时,只需要在组播VLAN下使能二层组播侦听功能,不需要使能组播VLAN功能。
(2)配置用户VLAN绑定组播VLAN
用户VLAN绑定组播VLAN主要在用户侧接口下进行配置,并且在同一接口下用户VLAN不能绑定到多个组播VLAN。
(3)配置接口加入VLAN
组播VLAN和用户VLAN配置完成后,网络侧接口需要加入组播VLAN,用户侧接口需要加入用户VLAN。
示例:在接口GE1/0/1下配置用户VLAN100绑定组播VLAN20。
这里对g0/0/1端口的作用不明白,这个端口是属于用户侧物理接口,也就是说,这个端口要加入用户VLAN吗?
三、基于用户VLAN的组播VLAN配置示例
如上拓扑,RouterA和SwitchA之间用于传输组播数据的业务VLAN为VLAN10,而下游用户主机HostA、HostB和HostC分别属于VLAN100、VLAN200和VLAN300,并且都需要接收组播Source的组播数据。现要求通过配置基于用户VLAN的组播VLAN功能,满足对于不同用户主机有多份相同的组播需求。
1、基本配置思路分析
可采用基于用户VLAN的组播VLAN功能来实现,思路如下:
(1)在SwitchA上使能全局的IGMP Snooping功能。
(2)创建用户VLAN,并在用户VLAN下使能IGMP Snooping。
(3)创建组播VLAN,并在组播VLAN下使能IGMP Snooping。
(4)在组播VLAN下面绑定用户VLAN。
(5)将对应的接口分别以hybrid方式加入对应的用户VLAN中。
2、具体配置步骤
(1)在系统视图下使能全局的IGMP Snooping功能。
<SwitchA>system-view
[SwitchA]igmp-snooping enable
(2)创建用户VLAN,并在各用户VLAN下使能IGMP Snooping功能。
[SwitchA]vlan 100
[SwitchA-Vlan100]igmp-snooping enable
[SwitchA-Vlan100]quit
[SwitchA]vlan 200
[SwitchA-Vlan200]igmp-snooping enable
[SwitchA-Vlan200]quit
[SwitchA]vlan 300
[SwitchA-Vlan300]igmp-snooping enable
[SwitchA-Vlan300]quit
(3)创建组播VLAN,并在组播VLAN下使能IGMPSnooping功能。
[SwitchA]vlan 10
[SwitchA-Vlan10]igmp-snooping enable
[SwitchA-Vlan10]multicast-vlan enable
(4)在组播VLAN10下面绑定用户VLAN100、VLAN200和VLAN300。
[SwitchA-Vlan10]multicast-vlan user-vlan 100 200 300
[SwitchA-Vlan10]quit
(5)把GE1/0/0、GE2/0/0、GE3/0/0和GE4/0/0接口以Hybrid方式加入对应的VLAN中。
[SwitchA]interface gigabitethernet 1/0/0
[SwitchA-GigabitEthernet1/0/0]port hybrid pvid vlan 10
[SwitchA-GigabitEthernet1/0/0]port hybrid untagged vlan 10
[SwitchA-GigabitEthernet1/0/0]quit
[SwitchA]interface gigabitethernet 2/0/0
[SwitchA-GigabitEthernet2/0/0]port hybrid pvid vlan 100
[SwitchA-GigabitEthernet2/0/0]port hybrid untagged vlan 100
[SwitchA-GigabitEthernet2/0/0]quit
[SwitchA]interface gigabitethernet 3/0/0
[SwitchA-GigabitEthernet3/0/0]port hybrid pvid vlan 200
[SwitchA-GigabitEthernet3/0/0]port hybrid untagged vlan 200
[SwitchA-GigabitEthernet3/0/0]quit
[SwitchA]interface gigabitethernet 4/0/0
[SwitchA-GigabitEthernet4/0/0]port hybrid pvid vlan 300
[SwitchA-GigabitEthernet4/0/0]port hybrid untagged vlan 300
[SwitchA-GigabitEthernet4/0/0]quit
配置好后,通过display multicast-vlan vlan命令查看组播VLAN和用户VLAN的信息。
模拟器测试:
——疑问:配置完后,发现,主机端与源端是不通的,因为看交换机上的VLAN划分,用户VLAN100、200、300,组播VLAN10,与路由器连接的是VLAN10的接口,其他VLAN中的主机是不能访问VLAN10的。这里的关键是组播VLAN,他应该将其他用户VLAN中发来加入\离开报文从路由接口转发出去,使上游设备的相应组播项的下游接口列表中增加接口,这样组播数据从下游接口转发到交换机上的组播VLAN中的接口,组播VLAN在根据组播VLAN与用户VLAN的对应关系,根据igmp-snooping的结果判断是否向该VLAN转发,转发到VLAN中的哪个接口。也就是说,在组播VLAN的配置中,主机与源之间是可以单播不连通的。??
四、基于接口的组播VLAN配置示例
如上拓扑,SwitchA上的GE1/0/0接口连接路由器,GE2/0/0和GE3/0/0接口下的业务分别批发给ISP1和ISP2,ISP1和ISP2分别通过组播VLAN2和组播VLAN3传输组播数据。GE2/0/0和GE3/0/0接口下用户VLAN重复,都为VLAN10。为了防止不同ISP的组播报文会发送到不属于此ISP的用户,影响到ISP的利益,现要求通过基于接口的组播VLAN功能,指定属于本ISP的组播数据只转发到连接本ISP用户的接口。
1、基本配置思路分析
本例可采用基于接口的组播VLAN功能来实现,基本的思路如下:
(1)在系统视图下使能全局IGMP snooping功能。
(2)创建用户VLAN10
(3)创建组播VLAN2和组播VLAN3,并在组播VLAN下使能IGMP Snooping。
(4)在GE2/0/0接口和GE3/0/0接口下对组播VLAN和用户VLAN分别进行绑定。
(5)将对应的接口分别以Hybrid方式加入VLAN。
2、具体配置步骤
(1)创建用户VLAN10。
<SwitchA>system-view
[SwitchA]vlan 10
(2)配置组播VLAN2和组播VLAN3,并在组播VLAN下使能IGMP Snooping功能。
[SwitchA]igmp-snooping enable
[SwitchA]vlan 2
[SwitchA-Vlan2]igmp-snooping enable
[SwitchA-Vlan2]quit
[SwitchA]vlan 3
[SwitchA-Vlan3]igmp-snooping enable
[SwitchA-Vlan3]quit
(3)在GE2/0/0和GE3/0/0接口下分别对组播VLAN和用户VLAN进行绑定。
[SwitchA]interface giabitethernet 2/0/0
[SwitchA-GigabitEthernet2/0/0]l2-multicast-bind vlan 10 mvlan 2
[SwitchA-GigabitEthernet2/0/0]quit
[SwitchA]interface giabitethernet 3/0/0
[SwitchA-GigabitEthernet3/0/0]l2-multicast-bind vlan 10 mvlan 3
[SwitchA-GigabitEthernet3/0/0]quit
(4)以Trunk方式把GE1/0/0接口加入组播VLAN2和组播VLAN3。
[SwitchA]interface giabitethernet1/0/0
[SwitchA-GigabitEthernet1/0/0]port link-type trunk
[SwitchA-GigabitEthernet1/0/0]port trunk allow-pass vlan 2 3
[SwitchA-GigabitEthernet1/0/0]quit
(5)把GE2/0/0、GE3/0/0接口分别以Hybrid方式加入用户VLAN10。
[SwitchA]interface giabitethernet 2/0/0
[SwitchA-GigabitEthernet2/0/0]port hybridpvid vlan 10
[SwitchA-GigabitEthernet2/0/0]port hybridUntagged vlan 10
[SwitchA-GigabitEthernet2/0/0]quit
[SwitchA]interface giabitethernet 3/0/0
[SwitchA-GigabitEthernet3/0/0]port hybridpvid vlan 10
[SwitchA-GigabitEthernet3/0/0]port hybridUntagged vlan 10
[SwitchA-GigabitEthernet3/0/0]quit
配置好后,通过displayl2-multicast-bind命令查看接口下用户VLAN与组播VLAN的绑定信息。
模拟器测试:
——如上的配置不知道正确与否,这里还是有一个单播连通的问题,就是VLAN10中的主机如何通过VLAN2、3转发到上游,这里单播是不通的,要想连通,交换机上必须开启路由功能,配置VLAN2、3、10的ip地址。
——总结上面两种组播VLAN的配置,基于用户VLAN的组播VLAN配置,组播VLAN是一个VLAN,用户VLAN是多个不同的VLAN,起到了节约上游带宽的作用,所有上游组播报文只转发一份到组播VLAN中,组播VLAN在分发到各用户VLAN中;基于接口的VLAN则是组播VLAN是多个不同的VLAN,用户组播是一个VLAN,上游发送多份相同的组播报文到不同的组播VLAN,而同一用户VLAN中的不同端口根据绑定的组播VLAN的不同,选择转发不同的组播报文,节约交换机中的资源,隔离同一VLAN中的不同用户的接收。