07-IPv6组播VLAN配置
本章节下载: 07-IPv6组播VLAN配置 (261.98 KB)
如图1-1所示,在传统的IPv6组播点播方式下,当属于不同VLAN的主机Host A、Host B和Host C同时点播同一IPv6组播组时,三层设备(Switch A)需要将IPv6组播数据为每个用户VLAN(即主机所属的VLAN)都复制一份后发送给二层设备(Switch B)。这样既造成了带宽的浪费,也给三层设备增加了额外的负担。
图1-1 未运行IPv6组播VLAN时的IPv6组播数据传输
可以使用IPv6组播VLAN功能解决这个问题。在二层设备上配置了IPv6组播VLAN后,三层设备只需将IPv6组播数据通过IPv6组播VLAN向二层设备发送一份即可,而不必为每个用户VLAN都复制一份,从而节省了网络带宽,也减轻了三层设备的负担。
IPv6组播VLAN有以下两种实现和配置方式:
如图1-2所示,接收者主机Host A、Host B和Host C分属不同的用户VLAN。在Switch B上配置VLAN 10为IPv6组播VLAN,将所有的用户VLAN都配置为该IPv6组播VLAN的子VLAN,并在IPv6组播VLAN及其子VLAN内都使能MLD Snooping。
图1-2 基于子VLAN的IPv6组播VLAN示意图
配置完成后,MLD Snooping将在IPv6组播VLAN中对路由器端口进行维护,而在各子VLAN中对成员端口进行维护。这样,Switch A只需将IPv6组播数据通过IPv6组播VLAN向Switch B发送一份即可,Switch B会将其复制分发给该IPv6组播VLAN内那些有接收者的子VLAN。
如图1-3所示,接收者主机Host A、Host B和Host C分属不同的用户VLAN,Switch B上的所有用户端口(即连接主机的端口)均为Hybrid类型。在Switch A上配置VLAN 10为IPv6组播VLAN,将所有用户端口都添加到该IPv6组播VLAN内,并在IPv6组播VLAN和所有用户VLAN内都使能MLD Snooping。
图1-3 基于端口的IPv6组播VLAN示意图
配置完成后,当Switch B上的用户端口收到来自主机的MLD报文时,会为其打上IPv6组播VLAN的Tag并上送给MLD查询器,于是MLD Snooping就可以在IPv6组播VLAN中对路由器端口和成员端口进行统一的维护。这样,Switch A只需将IPv6组播数据通过IPv6组播VLAN向Switch B发送一份即可,Switch B会将其复制分发给该IPv6组播VLAN内的所有成员端口。
表1-1 IPv6组播VLAN配置任务简介
配置任务 |
说明 |
详细配置 |
|
配置基于子VLAN的IPv6组播VLAN |
二者必选其一 |
||
配置基于端口的IPv6组播VLAN |
配置用户端口属性 |
||
配置IPv6组播VLAN端口 |
|||
配置IPv6组播VLAN转发表项的最大数量 |
可选 |
若在设备上同时配置了基于子VLAN和基于端口的IPv6组播VLAN,则基于端口的IPv6组播VLAN将优先生效。
在配置基于子VLAN的IPv6组播VLAN之前,需完成以下任务:
· 创建相应的VLAN
· 在欲配置为IPv6组播VLAN及其子VLAN的所有VLAN内使能MLD Snooping
首先需要把某个VLAN配置为IPv6组播VLAN,再将用户VLAN添加到该IPv6组播VLAN内,使其成为IPv6组播VLAN的子VLAN。
· 要配置为IPv6组播VLAN的指定VLAN必须存在。
· 要添加到IPv6组播VLAN内的子VLAN必须存在,且不能是IPv6组播VLAN或其它IPv6组播VLAN的子VLAN。
· IPv6组播VLAN的总数不得超过系统限制。
· IPv6组播vlan使用时,不允许有某一接口设置为trunk类型后既存在于主vlan又存在于子vlan中。
表1-2 配置基于子VLAN的IPv6组播VLAN
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置指定VLAN为IPv6组播VLAN,并进入IPv6组播VLAN视图 |
ipv6 multicast-vlan vlan-id |
缺省情况下,VLAN不是IPv6组播VLAN |
向IPv6组播VLAN内添加子VLAN |
subvlan vlan-list |
缺省情况下,IPv6组播VLAN内没有子VLAN |
在配置基于端口的IPv6组播VLAN时,需要先配置各用户端口的属性,然后再将配置好的用户端口添加到IPv6组播VLAN内。
只允许将二层以太网接口、二层聚合接口类型的用户端口配置为IPv6组播VLAN的端口。
在配置基于端口的IPv6组播VLAN之前,需完成以下任务:
· 创建相应的VLAN
· 在欲配置为IPv6组播VLAN的VLAN内使能MLD Snooping
· 在所有的用户VLAN内都使能MLD Snooping
首先,配置用户端口为Hybrid类型,允许用户VLAN的报文通过,缺省VLAN为其所属的用户VLAN。然后,配置用户端口允许IPv6组播VLAN的报文不带Tag通过,这样,当二层设备通过IPv6组播VLAN收到来自上游、打有IPv6组播VLAN Tag的IPv6组播数据报文时,会将其Tag去掉后再向下游转发。
有关port link-type、port hybrid pvid vlan和port hybrid vlan命令的详细介绍,请参见“二层技术-以太网交换命令参考”中的“VLAN”。
表1-3 配置用户端口属性
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入接口视图 |
interface interface-type interface-number |
- |
配置用户端口的链路类型为Hybrid类型 |
port link-type hybrid |
缺省情况下,端口的链路类型为Access类型 |
配置用户端口的缺省VLAN为其所属的用户VLAN |
port hybrid pvid vlan vlan-id |
缺省情况下,Hybrid端口的缺省VLAN为VLAN 1 |
允许IPv6组播VLAN通过用户端口,且不携带Tag |
port hybrid vlan vlan-id-list untagged |
缺省情况下,Hybrid端口只允许VLAN 1通过 |
首先需要把某个VLAN配置为IPv6组播VLAN,再将用户端口添加到该IPv6组播VLAN内——既可以在IPv6组播VLAN内添加端口,也可以在端口上指定其所属的IPv6组播VLAN——这两种配置方式是等效的。
· 要配置为IPv6组播VLAN的指定VLAN必须存在。
· 一个端口只能属于一个IPv6组播VLAN。
表1-4 在IPv6组播VLAN内配置IPv6组播VLAN端口
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置指定VLAN为IPv6组播VLAN,并进入IPv6组播VLAN视图 |
ipv6 multicast-vlan vlan-id |
缺省情况下,VLAN不是IPv6组播VLAN |
向IPv6组播VLAN内添加端口 |
port interface-list |
缺省情况下,IPv6组播VLAN内没有端口 |
表1-5 在端口上配置IPv6组播VLAN端口
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置指定VLAN为IPv6组播VLAN,并进入IPv6组播VLAN视图 |
ipv6 multicast-vlan vlan-id |
缺省情况下,VLAN不是IPv6组播VLAN |
退回系统视图 |
quit |
- |
进入接口视图 |
interface interface-type interface-number |
- |
指定端口所属的IPv6组播VLAN |
ipv6 port multicast-vlan vlan-id |
缺省情况下,端口不属于任何IPv6组播VLAN |
用户可以调整IPv6组播VLAN转发表项的最大数量,当所有IPv6组播VLAN内维护的表项总数达到最大数量后,将不再创建新的表项,直至有表项被老化或被手工删除。
在对IPv6组播VLAN转发表项的最大数量进行配置时,如果所有IPv6组播VLAN内的表项总数已超过了配置值,系统不会自动删除任何已存在的表项,也不再继续创建新的表项。在这种情况下,建议用户手工删除多余表项。
表1-6 配置IPv6组播VLAN转发表项的最大数量
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置IPv6组播VLAN转发表项的最大数量 |
ipv6 multicast-vlan entry-limit limit |
缺省情况下,IPv6组播VLAN转发表项的最大数量为120 |
在完成上述配置后,在任意视图下执行display命令可以显示配置后IPv6组播VLAN的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除IPv6组播VLAN的统计信息。
表1-7 IPv6组播VLAN显示和维护
命令 |
|
显示IPv6组播VLAN的信息 |
display ipv6 multicast-vlan [ vlan-id ] |
显示IPv6组播VLAN的组播组表项信息 |
display ipv6 multicast-vlan group [ ipv6-source-address | ipv6-group-address | slot slot-number | verbose | vlan vlan-id ] * |
显示IPv6组播VLAN转发表的信息 |
display ipv6 multicast-vlan forwarding-table [ ipv6-source-address [ prefix-length ] | ipv6-group-address [ prefix-length ] | slot slot-number | subvlan vlan-id | vlan vlan-id ] * |
清除IPv6组播VLAN的组播组表项 |
reset ipv6 multicast-vlan group [ ipv6-group-address [ prefix-length ] | ipv6-source-address [ prefix-length ] | vlan vlan-id ] * |
· 如图1-4所示,三层交换机Switch A通过接口VLAN-interface20连接IPv6组播源(Source),通过接口VLAN-interface10连接二层交换机Switch B;Switch A上运行MLDv1,Switch B上运行版本1的MLD Snooping,并由Switch A充当MLD查询器。
· IPv6组播源向IPv6组播组FF1E::101发送IPv6组播数据,Host A~Host C都是该IPv6组播组的接收者(Receiver),且分别属于VLAN 2~VLAN 4。
· 通过在Switch B上配置基于子VLAN的IPv6组播VLAN,Switch A通过IPv6组播VLAN向Switch B下分属不同用户VLAN的主机分发IPv6组播数据。
图1-4 基于子VLAN的IPv6组播VLAN配置组网图
(1) 配置Switch A
# 使能IPv6组播路由。
<SwitchA> system-view
[SwitchA] ipv6 multicast routing
[SwitchA-mrib6] quit
# 创建VLAN 20,并将端口GigabitEthernet1/0/2加入该VLAN。
[SwitchA] vlan 20
[SwitchA-vlan20] port gigabitethernet 1/0/2
[SwitchA-vlan20] quit
# 在接口VLAN-interface20上配置IPv6地址,并使能IPv6 PIM-DM。
[SwitchA] interface vlan-interface 20
[SwitchA-Vlan-interface20] ipv6 address 1::2 64
[SwitchA-Vlan-interface20] ipv6 pim dm
[SwitchA-Vlan-interface20] quit
# 创建VLAN 10,配置端口GigabitEthernet1/0/1为Hybrid端口,并允许VLAN 10的报文带Tag通过。
[SwitchA] vlan 10
[SwitchA-vlan10] quit
[SwitchA] interface gigabitethernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] port link-type hybrid
[SwitchA-GigabitEthernet1/0/1] port hybrid vlan 10 tagged
[SwitchA-GigabitEthernet1/0/1] quit
# 在接口VLAN-interface10上配置IPv6地址,并使能MLD。
[SwitchA] interface vlan-interface 10
[SwitchA-Vlan-interface10] ipv6 address 2001::1 64
[SwitchA-Vlan-interface10] mld enable
[SwitchA-Vlan-interface10] quit
(2) 配置Switch B
# 全局使能MLD Snooping。
<SwitchB> system-view
[SwitchB] mld-snooping
[SwitchB-mld-snooping] quit
# 创建VLAN 2,将端口GigabitEthernet1/0/2加入该VLAN,并在该VLAN内使能MLD Snooping。
[SwitchB] vlan 2
[SwitchB-vlan2] port gigabitethernet 1/0/2
[SwitchB-vlan2] mld-snooping enable
[SwitchB-vlan2] quit
# 创建VLAN 3,将端口GigabitEthernet1/0/3加入该VLAN,并在该VLAN内使能MLD Snooping。
[SwitchB] vlan 3
[SwitchB-vlan3] port gigabitethernet 1/0/3
[SwitchB-vlan3] mld-snooping enable
[SwitchB-vlan3] quit
# 创建VLAN 4,将端口GigabitEthernet1/0/4加入该VLAN,并在该VLAN内使能MLD Snooping。
[SwitchB] vlan 4
[SwitchB-vlan4] port gigabitethernet 1/0/4
[SwitchB-vlan4] mld-snooping enable
[SwitchB-vlan4] quit
# 创建VLAN 10,并在该VLAN内使能MLD Snooping。
[SwitchB] vlan 10
[SwitchB-vlan10] mld-snooping enable
[SwitchB-vlan10] quit
# 配置端口GigabitEthernet1/0/1为Hybrid端口,并允许VLAN 10的报文带Tag通过。
[SwitchB] interface gigabitethernet 1/0/1
[SwitchB-GigabitEthernet1/0/1] port link-type hybrid
[SwitchB-GigabitEthernet1/0/1] port hybrid vlan 10 tagged
[SwitchB-GigabitEthernet1/0/1] quit
# 配置VLAN 10为IPv6组播VLAN,并把VLAN 2~VLAN 4都配置为该IPv6组播VLAN的子VLAN。
[SwitchB] ipv6 multicast-vlan 10
[SwitchB-ipv6-mvlan-10] subvlan 2 to 4
[SwitchB-ipv6-mvlan-10] quit
# 显示Switch B上所有IPv6组播VLAN的信息。
[SwitchB] display ipv6 multicast-vlan
Total 1 IPv6 multicast VLANs.
IPv6 multicast VLAN 10:
Sub-VLAN list(3 in total):
2-4
Port list(0 in total):
# 显示Switch B上IPv6组播VLAN的所有组播组表项信息。
[SwitchB] display ipv6 multicast-vlan group
Total 1 entries.
IPv6 multicast VLAN 10: Total 1 entries.
(::, FF1E::101)
Sub-VLANs (3 in total):
VLAN 2
VLAN 3
VLAN 4
由此可见,IPv6组播VLAN(VLAN 10)在各子VLAN(VLAN 2~VLAN 4)内维护组播组表项。
· 如图1-5所示,三层交换机Switch A通过接口VLAN-interface20连接IPv6组播源(Source),通过接口VLAN-interface10连接二层交换机Switch B;Switch A上运行MLDv1,Switch B上运行版本1的MLD Snooping,并由Switch A充当MLD查询器。
· IPv6组播源向IPv6组播组FF1E::101发送IPv6组播数据,Host A~Host C都是该IPv6组播组的接收者(Receiver),且分别属于VLAN 2~VLAN 4。
· 通过在Switch B上配置基于端口的IPv6组播VLAN,使Switch A通过IPv6组播VLAN向Switch B下分属不同用户VLAN的主机分发IPv6组播数据。
图1-5 基于端口的IPv6组播VLAN配置组网图
(1) 配置Switch A
# 使能IPv6组播路由。
<SwitchA> system-view
[SwitchA] ipv6 multicast routing
[SwitchA-mrib6] quit
# 创建VLAN 20,并将端口GigabitEthernet1/0/2加入该VLAN。
[SwitchA] vlan 20
[SwitchA-vlan20] port gigabitethernet 1/0/2
[SwitchA-vlan20] quit
# 在接口VLAN-interface20上配置IPv6地址,并使能IPv6 PIM-DM。
[SwitchA] interface vlan-interface 20
[SwitchA-Vlan-interface20] ipv6 address 1::2 64
[SwitchA-Vlan-interface20] ipv6 pim dm
[SwitchA-Vlan-interface20] quit
# 创建VLAN 10,将端口GigabitEthernet1/0/1加入该VLAN。
[SwitchA] vlan 10
[SwitchA-vlan10] port gigabitethernet 1/0/1
[SwitchA-vlan10] quit
# 在接口VLAN-interface10上配置IPv6地址,并使能MLD。
[SwitchA] interface vlan-interface 10
[SwitchA-Vlan-interface10] ipv6 address 2001::1 64
[SwitchA-Vlan-interface10] mld enable
[SwitchA-Vlan-interface10] quit
(2) 配置Switch B
# 全局使能MLD Snooping。
<SwitchB> system-view
[SwitchB] mld-snooping
[SwitchB-mld-snooping] quit
# 创建VLAN 10,把端口GigabitEthernet1/0/1加入该VLAN,并在该VLAN内使能MLD Snooping。
[SwitchB] vlan 10
[SwitchB-vlan10] port gigabitethernet 1/0/1
[SwitchB-vlan10] mld-snooping enable
[SwitchB-vlan10] quit
# 创建VLAN 2,并在该VLAN内使能MLD Snooping。
[SwitchB] vlan 2
[SwitchB-vlan2] mld-snooping enable
[SwitchB-vlan2] quit
# 创建VLAN 3,并在该VLAN内使能MLD Snooping。
[SwitchB] vlan 3
[SwitchB-vlan3] mld-snooping enable
[SwitchB-vlan3] quit
# 创建VLAN 4,并在该VLAN内使能MLD Snooping。
[SwitchB] vlan 4
[SwitchB-vlan4] mld-snooping enable
[SwitchB-vlan4] quit
# 配置端口GigabitEthernet1/0/2为Hybrid类型,缺省VLAN为VLAN 2;允许VLAN 2和VLAN 10的报文不带Tag通过。
[SwitchB] interface gigabitethernet 1/0/2
[SwitchB-GigabitEthernet1/0/2] port link-type hybrid
[SwitchB-GigabitEthernet1/0/2] port hybrid pvid vlan 2
[SwitchB-GigabitEthernet1/0/2] port hybrid vlan 2 untagged
[SwitchB-GigabitEthernet1/0/2] port hybrid vlan 10 untagged
[SwitchB-GigabitEthernet1/0/2] quit
# 配置端口GigabitEthernet1/0/3为Hybrid类型,缺省VLAN为VLAN 3;允许VLAN 3和VLAN 10的报文不带Tag通过。
[SwitchB] interface gigabitethernet 1/0/3
[SwitchB-GigabitEthernet1/0/3] port link-type hybrid
[SwitchB-GigabitEthernet1/0/3] port hybrid pvid vlan 3
[SwitchB-GigabitEthernet1/0/3] port hybrid vlan 3 untagged
[SwitchB-GigabitEthernet1/0/3] port hybrid vlan 10 untagged
[SwitchB-GigabitEthernet1/0/3] quit
# 配置端口GigabitEthernet1/0/4为Hybrid类型,缺省VLAN为VLAN 4;允许VLAN 4和VLAN 10的报文不带Tag通过。
[SwitchB] interface gigabitethernet 1/0/4
[SwitchB-GigabitEthernet1/0/4] port link-type hybrid
[SwitchB-GigabitEthernet1/0/4] port hybrid pvid vlan 4
[SwitchB-GigabitEthernet1/0/4] port hybrid vlan 4 untagged
[SwitchB-GigabitEthernet1/0/4] port hybrid vlan 10 untagged
[SwitchB-GigabitEthernet1/0/4] quit
# 配置VLAN 10为IPv6组播VLAN。
[SwitchB] ipv6 multicast-vlan 10
# 将端口GigabitEthernet1/0/2到GigabitEthernet1/0/3加入IPv6组播VLAN 10。
[SwitchB-ipv6-mvlan-10] port gigabitethernet 1/0/2 to gigabitethernet 1/0/3
[SwitchB-ipv6-mvlan-10] quit
# 配置端口GigabitEthernet1/0/4也属于IPv6组播VLAN 10。
[SwitchB] interface gigabitethernet 1/0/4
[SwitchB-GigabitEthernet1/0/4] ipv6 port multicast-vlan 10
[SwitchB-GigabitEthernet1/0/4] quit
# 显示Switch B上所有IPv6组播VLAN的信息。
[SwitchB] display ipv6 multicast-vlan
Total 1 IPv6 multicast VLANs.
IPv6 multicast VLAN 10:
Sub-VLAN list(0 in total):
Port list(0 in total):
GE1/0/2
GE1/0/3
GE1/0/4
# 显示Switch B上IPv6动态组播组的MLD Snooping转发表项信息。
[SwitchB] display mld-snooping group
Total 1 entries.
VLAN 10: Total 1 entries.
(::, FF1E::101)
Host slots (0 in total):
Host ports (3 in total):
GE1/0/2 (00:03:23)
GE1/0/3 (00:04:07)
GE1/0/4 (00:04:16)
由此可见,MLD Snooping统一在IPv6组播VLAN(VLAN 10)中维护成员端口。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!