以下内容摘自正在当当网、京东网、卓越网、互动出版网预售,即将正式发售的《华为交换机学习指南》一书(全书近千页)。本书是由华为官方授权,国内第一本,也是唯一一本华为交换机权威学习指南,是华为ICT认证培训指定教材。
当当网链接:http://product.dangdang.com/23372225.html
京东网链接:http://item.jd.com/11355972.html
卓越网上的链接:http://www.amazon.cn/dp/B00GT743ME/ref=sr_1_1(6.9折限时疯抢中)
预订本书,可参见抽奖(现金、图书大奖等着你),参与即可获赠《深入理解计算机网络》配套习题集(50多页):
详情点击:
随着互联网应用的广泛普及,IP组播在远程视频会议、远程医疗等应用中得到了广泛应用。在多数企业IP组播网络中一般是只运行PIM协议和IGMP协议,前者用于路由器(也可以是三层交换机)之间的连接,后者用于组播源和组播用户的连接,当然在网络边缘IGMP协议的路由器还需要同时运行PIM协议,以便于其他PIM路由器进行组播路由。而在PIM协议中最为典型的又是ASM和SSM这两种模型,本文将介绍华为S系列交换机两个基于这两种PIM模型的IP组播网络的具体配置思路和方法。
13.3.6 PIM-SM(ASM模型)综合配置示例
本示例拓扑结构如图13-8所示,是一个单域PIM-SM网络。现用户主机HostA、HostB希望能够接收到Source发送的组播数据。
图13-8 ASM模型的PIM-SM域内组播配置示例
1. 基本配置思路分析
本示例中没有明确要求用户仅接收指定组播源发来的数据,所以可以通过PIM-SM ASM模型来实现,使得加入同一组播组的所有用户主机能够接收任意源发往该组的组播数据。总体配置任务如下(主要为PIM-SM ASM的基本功能配置):
(1)配置交换机各VLAN接口IP地址和单播路由协议。组播域内路由协议PIM依赖单播路由协议,单播路由正常是组播协议正常工作的基础。
(2)在所有提供组播服务的交换机上使能组播路由功能,是配置PIM-SM的前提。
(3)在交换机所有接口上使能PIM-SM功能,然后才能配置PIM-SM的其他功能。
(4)在与主机侧相连的交换机接口上使能IGMP。组播组成员能通过发送IGMP消息自由加入或者离开某个组播组。叶节点交换机通过IGMP协议来维护组成员关系列表。
如果用户主机侧需同时配置PIM-SM和IGMP,必须先使能PIM-SM,再使能IGMP。
(5)可在与主机侧相连的交换机接口上使能PIM Silent,防止恶意主机模拟发送PIM Hello报文,增加PIM-SM域的安全性。但如果用户主机(如HostB)所在网段相连着多台交换机,那么这些交换机的用户主机侧接口不能使能PIM Silent,如图中的SwitchB、SwitchC的对应接口。
(6)配置RP。在PIM-SM域中,RP是提供ASM服务的核心,是转发组播数据的中转站。建议RP的位置配置在组播流量分支较多的交换机上,如图中的SwitchE的位置。
(7)在与外域相连的SwitchD GE0/0/1接口上配置BSR边界,自举报文不能通过该边界,使BSR只为该PIM-SM域服务,增加组播可控性。
2. 具体配置步骤
下面是以上各配置任务的具体配置步骤。
(1)按照图中标注配置各交换机VLAN接口的IP地址和掩码,配置各交换机间采用OSPF进行互连,确保网络中各交换机间能够在网络层互通。因为SwitchA、SwitchB、SwitchC、SwitchD和SwitchE上的配置方法一样,所以下面仅以SwitchA上的配置为例进行介绍。
[SwitchA] vlan batch 10 20 30 #---批量创建VLAN 10、VLAN 20和VLAN 30
[SwitchA] interface gigabitethernet0/0/1
[SwitchA-GigabitEthernet0/0/1] port hybrid pvid vlan 10
[SwitchA-GigabitEthernet0/0/1] port hybrid untagged vlan 10
[SwitchA-GigabitEthernet0/0/1] quit
[SwitchA] interface gigabitethernet0/0/2
[SwitchA-GigabitEthernet0/0/2] port hybrid pvid vlan 20
[SwitchA-GigabitEthernet0/0/2] port hybrid untagged vlan 20
[SwitchA-GigabitEthernet0/0/2] quit
[SwitchA] interface gigabitethernet0/0/3
[SwitchA-GigabitEthernet0/0/3] port hybrid pvid vlan 30
[SwitchA-GigabitEthernet0/0/3] port hybrid untagged vlan 30
[SwitchA-GigabitEthernet0/0/3] quit
[SwitchA] interface vlanif 10
[SwitchA-Vlanif10] ip address 192.168.5.1 24
[SwitchA-Vlanif10] quit
[SwitchA] interface vlanif 20
[SwitchA-Vlanif20] ip address 10.110.1.1 24
[SwitchA-Vlanif20] quit
[SwitchA] interface vlanif 30
[SwitchA-Vlanif30] ip address 192.168.1.1 24
[SwitchA-Vlanif30] quit
[SwitchA] ospf
[SwitchA-ospf-1] area 0
[SwitchA-ospf-1-area-0.0.0.0] network 10.110.1.0 0.0.0.255
[SwitchA-ospf-1-area-0.0.0.0] network 192.168.1.0 0.0.0.255
[SwitchA-ospf-1-area-0.0.0.0] network 192.168.5.0 0.0.0.255
[SwitchA-ospf-1-area-0.0.0.0] quit
[SwitchA-ospf-1] quit
(2)在所有交换机使能组播路由功能,在各VLAN接口上使能PIM-SM功能。同样因为SwitchA、SwitchB、SwitchC、SwitchD和SwitchE上的配置方法一样,所以也仅以SwitchA为例进行介绍。
[SwitchA] multicast routing-enable
[SwitchA] interface vlanif 10
[SwitchA-Vlanif10] pim sm
[SwitchA-Vlanif10] quit
[SwitchA] interface vlanif 20
[SwitchA-Vlanif20] pim sm
[SwitchA-Vlanif20] quit
[SwitchA] interface vlanif 30
[SwitchA-Vlanif30] pim sm
[SwitchA-Vlanif30] quit
(3)在SwitchA连接用户主机的接口上使能IGMP功能。SwitchB和SwitchC上的配置过程与SwitchA上的配置相似,配置过程略。
[SwitchA] interface vlanif 20
[SwitchA-Vlanif20] igmp enable
(4)在SwitchA接口上使能PIM silent。
[SwitchA] interface vlanif 20
[SwitchA-Vlanif20] pim silent
(5)配置RP。配置RP有两种方式:静态RP和动态RP两种。可以同时配置,也可以只配置其中一种。同时配置两种RP时,可以通过参数调整优先选择哪种RP。本实例同时配置两种RP,默认优选动态RP,静态RP作为备份。
下面是配置动态RP的方法,需要将PIM-SM域的一个或多个交换机上配置为C-RP和C-BSR。本例中指定SwitchE同时为C-RP和C-BSR,在SwitchE上配置RP服务的组地址范围,及C-BSR和C-RP所在接口位置。
[SwitchE] acl number 2008
[SwitchE-acl-basic-2008] rule permit source 225.1.1.0 0.0.0.255
[SwitchE-acl-basic-2008] quit
[SwitchE] pim
[SwitchE-pim] c-bsr vlanif 60
[SwitchE-pim] c-rp vlanif 60 group-policy 2008
下面是配置静态RP的方法,需要在所有交换机上指定静态RP的地址。因为SwitchA、SwitchB、SwitchC、SwitchD和SwitchE上的配置方法一样,下面仅以SwitchA上的配置为例进行介绍。
[SwitchA] pim
[SwitchA-pim] static-rp 192.168.2.2
(6)在SwitchD与外域相连的接口上配置BSR边界。
[SwitchD] interface vlanif 70
[SwitchD-Vlanif70] pim bsr-boundary
[SwitchD-Vlanif70] quit
配置好后,可通过display pim interface命令查看接口上PIM的配置和运行情况,以验证配置结果。SwitchC上PIM的显示信息如下:
×××-Instance: public net
Interface State NbrCnt HelloInt DR-Pri DR-Address
Vlanif40 up 0 30 1 10.110.2.2 (local)
Vlanif50 up 1 30 1 192.168.3.1 (local)
可通过display pim bsr-info命令查看交换机上BSR选举的信息。SwitchA和SwitchE上BSR信息分别如下(SwitchE上还显示C-BSR信息):
×××-Instance: public net
Elected AdminScoped BSR Count: 0
Elected BSR Address: 192.168.4.2
Priority: 0
Hash mask length: 30
State: Accept Preferred
Scope: Not scoped
Uptime: 01:40:40
Expires: 00:01:42
C-RP Count: 1
×××-Instance: public net
Elected AdminScoped BSR Count: 0
Elected BSR Address: 192.168.4.2
Priority: 0
Hash Mask length: 30
State: Elected
Scope: Not scoped
Uptime: 00:00:18
Next BSR message scheduled at :00:01:42
C-RP Count: 1
Candidate AdminScoped BSR Count: 0
Candidate BSR Address: 192.168.4.2
Priority: 0
Hash mask length: 30
State:Elected
Scope: Not scoped
Wait to be BSR: 0
可通过display pim rp-info命令查看Switch上获取的RP信息。SwitchA上RP信息如下:
×××-Instance: public net
PIM-SM BSR RP Number:1
Group/MaskLen: 225.1.1.0/24
RP: 192.168.4.2
Priority: 0
Uptime: 00:45:13
Expires: 00:02:17
PIM SM static RP Number:1
Static RP: 192.168.2.2
可通过display pim routing-table命令查看PIM协议组播路由表。组播源(10.110.3.100/24)向组播组(225.1.1.1/24)发送信息,HostA、HostB都加入了组播组(225.1.1.1/24)。SwitchA和SwitchB上的PIM组播路由表显示如下,其它交换机上组播路由表显示类似。
【说明】缺省情况下,组成员端DR在收到组播源发来的第一份组播数据后就会触发SPT切换,新建(S,G)路由表项。因此交换机上显示的(S,G)路由表项一般都是SPT切换后的(S,G)路由表项。
[SwitchA] display pim routing-table
×××-Instance: public net
Total 1 (*, G) entry; 1 (S, G) entry
(*, 225.1.1.1)
RP: 192.168.4.2
Protocol: pim-sm, Flag: WC
UpTime: 00:13:46
Upstream interface: Vlanif10,
Upstream neighbor: 192.168.5.2
RPF prime neighbor: 192.168.5.2
Downstream interface(s) information:
Total number of downstreams: 1
1: Vlanif20
Protocol: pim-sm, UpTime: 00:13:46, Expires:-
(10.110.3.100, 225.1.1.1)
RP: 192.168.4.2
Protocol: pim-sm, Flag: SPT ACT
UpTime: 00:00:42
Upstream interface: Vlanif30
Upstream neighbor: 192.168.1.2
RPF prime neighbor: 192.168.1.2
Downstream interface(s) information:
Total number of downstreams: 1
1: Vlanif20
Protocol: pim-sm, UpTime: 00:00:42, Expires:-
[SwitchB] display pim routing-table
×××-Instance: public net
Total 1 (*, G) entry; 1 (S, G) entry
(*, 225.1.1.1)
RP: 192.168.4.2
Protocol: pim-sm, Flag: WC
UpTime: 00:10:12
Upstream interface: Vlanif90,
Upstream neighbor: 192.168.2.2
RPF prime neighbor: 192.168.2.2
Downstream interface(s) information:
Total number of downstreams: 1
1: Vlanif40
Protocol: pim-sm, UpTime: 00:10:12, Expires:-
(10.110.3.100, 225.1.1.1)
RP: 192.168.4.2
Protocol: pim-sm, Flag: SPT ACT
UpTime: 00:00:42
Upstream interface: Vlanif90
Upstream neighbor: 192.168.2.2
RPF prime neighbor: 192.168.2.2
Downstream interface(s) information:
Total number of downstreams: 1
1: Vlanif40
Protocol: pim-sm, UpTime: 00:00:30, Expires:-
13.3.7 PIM-SM(SSM模型)综合配置示例
本示例拓扑结构如图13-9所示,是一个单域PIM-SM网络。现HostA希望能够接收组播源S1(10.110.4.100/24)、S2(10.110.3.100/24)发送的组播数据,而HostB希望能够接收组播源S2发送的组播数据。
1. 基本配置思路分析
本示例要求组播组成员仅接收指定源的组播数据,所以需要采用PIM-SM SSM模型,使得用户主机在加入组播组的同时能够接收到自己所指定的组播源的组播数据。
相对于PIM-SM ASM模型来说,SSM模型的配置要简单许多,因为它既不需要维护RP,也不需要专门构建SPT,也无需注册组播源,仅需要使能SSM服务,配置用于限定接收指定组播源数据的组策略。下面是本示例的基本配置任务:
图13-9 SSM模型的PIM-SM域内组播配置示例拓扑结构
(1)配置交换机接口IP地址和单播路由协议。
(2)在所有提供组播服务的交换机上使能组播功能。
(3)在交换机所有接口上使能PIM-SM功能。
(4)在与主机侧相连的交换机接口上使能IGMP,并配置IGMP协议的版本号为v3,因为在不启用SSM Mapping的情况下仅IGMPv3支持SSM服务。
如果用户主机侧需同时配置PIM-SM和IGMP,必须先使能PIM-SM,再使能IGMP。
(5)在与主机侧相连的交换机接口上使能PIM Silent,防止恶意主机模拟发送PIM Hello报文,增加PIM-SM域的安全性。同样,如果用户主机所在网段相连着多台交换机,那么这些交换机的用户主机侧接口不能使能PIM Silent,如图中的SwitchB、SwitchC。
(6)在各交换机上设置SSM组地址范围。使PIM-SM域内的交换机为特定组地址范围内的SSM服务,实现可控组播。但各交换机上设置SSM组地址范围必须相同。
(7)在HostA和HostB主机连接的交换机VLANIF接口上配置Join-Prune报文过滤,以实现仅接收来自限定组播源的组播数据。
2. 具体配置步骤
下面是本示例的具体配置步骤。
(1)按照图13-9中的标注配置各交换机VLAN接口的IP地址和掩码,配置各交换机间采用OSPF进行互连,确保网络中各交换机间能够在网络层互通。因为SwitchA、SwitchB、SwitchC、SwitchD、SwitchE和SwitchF上的配置方法一样,所以下面仅以SwitchA为例进行介绍。
[SwitchA] vlan batch 10 20 30
[SwitchA] interface gigabitethernet0/0/1
[SwitchA-GigabitEthernet0/0/1] port hybrid pvid vlan 10
[SwitchA-GigabitEthernet0/0/1] port hybrid untagged vlan 10
[SwitchA-GigabitEthernet0/0/1] quit
[SwitchA] interface gigabitethernet0/0/2
[SwitchA-GigabitEthernet0/0/2] port hybrid pvid vlan 20
[SwitchA-GigabitEthernet0/0/2] port hybrid untagged vlan 20
[SwitchA-GigabitEthernet0/0/2] quit
[SwitchA] interface gigabitethernet0/0/3
[SwitchA-GigabitEthernet0/0/3] port hybrid pvid vlan 30
[SwitchA-GigabitEthernet0/0/3] port hybrid untagged vlan 30
[SwitchA-GigabitEthernet0/0/3] quit
[SwitchA] interface vlanif 10
[SwitchA-Vlanif10] ip address 192.168.5.1 24
[SwitchA-Vlanif10] quit
[SwitchA] interface vlanif 20
[SwitchA-Vlanif20] ip address 10.110.1.1 24
[SwitchA-Vlanif20] quit
[SwitchA] interface vlanif 30
[SwitchA-Vlanif30] ip address 192.168.1.1 24
[SwitchA-Vlanif30] quit
[SwitchA] ospf
[SwitchA-ospf-1] area 0
[SwitchA-ospf-1-area-0.0.0.0] network 10.110.1.0 0.0.0.255
[SwitchA-ospf-1-area-0.0.0.0] network 192.168.1.0 0.0.0.255
[SwitchA-ospf-1-area-0.0.0.0] network 192.168.5.0 0.0.0.255
[SwitchA-ospf-1-area-0.0.0.0] quit
[SwitchA-ospf-1] quit
(2)在所有交换机使能组播路由功能,在各VLAN接口上使能PIM-SM功能。同样因为SwitchA、SwitchB、SwitchC、SwitchD、SwitchE和SwitchF的配置方法一样,所以下面也仅以SwitchA为例进行介绍。
[SwitchA] multicast routing-enable
[SwitchA] interface vlanif 10
[SwitchA-Vlanif10] pim sm
[SwitchA-Vlanif10] quit
[SwitchA] interface vlanif 20
[SwitchA-Vlanif20] pim sm
[SwitchA-Vlanif20] quit
[SwitchA] interface vlanif 30
[SwitchA-Vlanif30] pim sm
[SwitchA-Vlanif30] quit
(3)在SwitchA连接用户主机的接口上使能IGMPv3功能。SwitchB和SwitchC上的配置过程与SwitchA上的配置相似,配置过程略。
[SwitchA] interface vlanif 20
[SwitchA-Vlanif20] igmp enable
[SwitchA-Vlanif20] igmp version 3
(4)在SwitchA接口上使能PIM silent。
[SwitchA] interface vlanif 20
[SwitchA-Vlanif20] pim silent
(5)在所有交换机配置SSM组播组地址范围为232.1.1.0/24。因为SwitchA、SwitchB、SwitchC、SwitchD、SwitchE和SwitchF的配置方法一样,所以下面仅以SwitchA为例进行介绍。
[SwitchA] acl number 2000
[SwitchA-acl-basic-2000] rule permit source 232.1.1.0 0.0.0.255 #---限定232.1.1.0/24范围的组播组报文通过
[SwitchA-acl-basic-2000] quit
[SwitchA] pim
[SwitchA-pim] ssm-policy 2000
(6)在SwitchA的VLANIF20接口上配置Join-Prune报文过滤,指定HostA可接收组播播源S1和S2发来的组播数据。
[SwitchA-pim] quit
[SwitchA] acl number 3001
[SwitchA-acl-adv-3001] rule permit source 10.110.3.100 0 destination 232.1.1.0 0.0.255.255
[SwitchA-acl-adv-3001] rule permit source 10.110.4.100 0 destination 232.1.1.0 0.0.255.255
[SwitchA-acl-adv-3001]quit
[SwitchA] interface vlanif 20
[SwitchA –Vlanif20] pim join-policy asm 3001
(7)在SwitchB和的SwitchC的VLANIF40接口上配置Join-Prune报文过滤,指定HostB仅可接收组播播源S2发来的组播数据。因SwitchB和的SwitchC的一样,在此仅以SwitchB上的配置为例进行介绍。
[SwitchB] acl number 3001
[SwitchB-acl-adv-3001] rule permit source 10.110.3.100 0 destination 232.1.1.0 0.0.255.255
[SwitchB-acl-adv-3001]quit
[SwitchB] interface vlanif 40
[SwitchB –Vlanif40] pim join-policy asm 3001
配置好后,可通过display pim interface命令查看接口上PIM的配置和运行情况,以验证配置结果。SwitchC上PIM的显示信息如下:
×××-Instance: public net
Interface State NbrCnt HelloInt DR-Pri DR-Address
Vlanif40 up 0 30 1 10.110.2.2 (local)
Vlanif50 up 1 30 1 192.168.3.1 (local)
可通过display pim routing-table命令查看PIM协议组播路由表。SwitchA和SwitchB上的显示信息如下。从中可以看出HostA接收了组播源(10.110.3.100/24)和组播源(10.110.4.100/24)发往组播组(232.1.1.1/24)的信息,HostB只接收了组播源(10.110.3.100/24)发往组播组(232.1.1.1/24)的信息,达到了要求。
[SwitchA] display pim routing-table
×××-Instance: public net
Total 2 (S, G) entry
(10.110.3.100, 232.1.1.1)
Protocol: pim-ssm, Flag: SG_RCVCR
UpTime: 00:13:46
Upstream interface: Vlanif10,
Upstream neighbor: 192.168.5.2
RPF prime neighbor: 192.168.5.2
Downstream interface(s) information:
Total number of downstreams: 1
1: Vlanif20
Protocol: pim-ssm, UpTime: 00:13:46, Expires:-
(10.110.4.100, 232.1.1.1)
Protocol: pim-ssm, Flag: SG_RCVCR
UpTime: 00:00:42
Upstream interface: Vlanif30
Upstream neighbor: 192.168.1.2
RPF prime neighbor: 192.168.1.2
Downstream interface(s) information:
Total number of downstreams: 1
1: Vlanif20
Protocol: pim-ssm, UpTime: 00:00:42, Expires:-
[SwitchB] display pim routing-table
×××-Instance: public net
Total 1 (S, G) entry
(10.110.3.100, 232.1.1.1)
Protocol: pim-ssm, Flag: SG_RCVCR
UpTime: 00:10:12
Upstream interface: Vlanif90,
Upstream neighbor: 192.168.2.2
RPF prime neighbor: 192.168.2.2
Downstream interface(s) information:
Total number of downstreams: 1
1: Vlanif40
Protocol: pim-ssm, UpTime: 00:10:12, Expires:-