• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

08-IP组播配置指导

目录

05-IGMP配置

本章节下载 05-IGMP配置  (547.12 KB)

docurl=/cn/Service/Document_Software/Document_Center/Routers/Catalog/CR/CR16000-F/Configure/Operation_Manual/H3C_CR16000-F_CG-R7143-6W710/08/201808/1102070_30005_0.htm

05-IGMP配置


1 IGMP

1.1  IGMP简介

IGMP(Internet Group Management Protocol,互联网组管理协议)用于在三层设备和其直连网段中的用户主机之间建立和维护组播组成员关系。

1.1.1  IGMP的版本

到目前为止,IGMP有三个版本:

·     IGMPv1(由RFC 1112定义)

·     IGMPv2(由RFC 2236定义)

·     IGMPv3(由RFC 3376定义)

所有版本的IGMP都支持ASM(Any-Source Multicast,任意信源组播)模型;IGMPv3可以直接应用于SSM(Source-Specific Multicast,指定信源组播)模型,而IGMPv1和IGMPv2则需要在IGMP SSM Mapping技术的支持下才能应用于SSM模型。有关ASM和SSM模型的介绍,请参见“IP组播配置指导”中的“组播概述”。

1.1.2  IGMPv1工作机制

IGMPv1主要基于查询和响应机制来完成对组播组成员的管理。

当一个网段内有多台运行IGMP的路由器时,由于它们都能从主机那里收到IGMP成员关系报告报文(Membership Report Message),因此只需其中一台路由器发送IGMP查询报文(Query Message)即可,该路由器就称为IGMP查询器(Querier)。这就需要有一个查询器的选举机制来确定由哪台路由器作为IGMP查询器。

对于IGMPv1来说,由组播路由协议(如PIM)选举出唯一的组播信息转发者DR(Designated Router,指定路由器)作为IGMP查询器。有关DR的介绍,请参见“IP组播配置指导”中的“PIM”。

图1-1 IGMP查询响应示意图

 

图1-1所示,假设Host B与Host C想要收到发往组播组G1的组播数据,而Host A想要收到发往组播组G2的组播数据,那么主机加入组播组以及IGMP查询器(Router B)维护组播组成员关系的基本过程如下:

(1)     主机会主动向其要加入的组播组发送IGMP成员关系报告报文以声明加入,而不必等待IGMP查询器发来的IGMP查询报文;

(2)     IGMP查询器周期性地以组播方式向本地网段内的所有主机与路由器发送IGMP查询报文(目的地址为224.0.0.1);

(3)     在收到该查询报文后,关注G1的Host B与Host C其中之一(这取决于谁的延迟定时器先超时)——譬如Host B会首先以组播方式向G1发送IGMP成员关系报告报文,以宣告其属于G1。由于本地网段中的所有主机和路由器都能收到Host B发往G1的报告报文,因此当Host C收到该报告报文后,将不再发送同样针对G1的报告报文,因为IGMP路由器(Router A和Router B)已知道本地网段中有对G1感兴趣的主机了。这个机制称为主机上的IGMP成员关系报告抑制机制,该机制有助于减少本地网段的信息流量;

(4)     与此同时,由于Host A关注的是G2,所以它仍将以组播方式向G2发送报告报文,以宣告其属于G2;

(5)     经过以上的查询和响应过程,IGMP路由器了解到本地网段中有G1和G2的成员,于是由组播路由协议(如PIM)生成(*,G1)和(*,G2)组播转发项作为组播数据的转发依据,其中的“*”代表任意组播源;

(6)     当由组播源发往G1或G2的组播数据经过组播路由到达IGMP路由器时,由于IGMP路由器上存在(*,G1)和(*,G2)组播转发项,于是将该组播数据转发到本地网段,接收者主机便能收到该组播数据了。

IGMPv1没有专门定义离开组播组的报文。当运行IGMPv1的主机离开某组播组时,将不会向该组播组发送报告报文。当一个网段中不再有该组播组的成员后,IGMP路由器将不会收到任何发往该组播组的报告报文,于是在一段时间之后便删除该组播组的记录。

1.1.3  IGMPv2的改进

IGMPv2在兼容和继承IGMPv1的基础上,增加了查询器选举机制和离开组播组机制。

1. 查询器选举机制

在IGMPv1中,当一个网段内有多台运行IGMP的路由器时,由组播路由协议(如PIM)选举的指定路由器充当查询器。在IGMPv2中增加了独立的查询器选举机制,其选举过程如下:

(1)     所有IGMPv2路由器在初始时都认为自己是查询器,并向本地网段内的所有主机和路由器发送IGMP普遍组查询(General Query)报文(目的地址为224.0.0.1);

(2)     本地网段中的其它IGMPv2路由器在收到该报文后,将报文的源IP地址与自己的接口地址作比较。通过比较,IP地址最小的路由器将成为查询器,其它路由器成为非查询器(Non-Querier);

(3)     所有非查询器上都会启动一个定时器(即其它查询器存在时间定时器,Other Querier Present Timer)。在该定时器超时前,如果收到了来自查询器的IGMP查询报文,则重置该定时器;否则,就认为原查询器失效,并发起新的查询器选举过程。

2. 离开组播组机制

在IGMPv1中,主机离开组播组时不会向组播路由器发出任何通知,导致组播路由器只能依靠组播组成员查询的响应超时来获知组播组成员的离开。而在IGMPv2中,当一个主机离开某组播组时:

(1)     该主机向本地网段内的所有组播路由器(目的地址为224.0.0.2)发送离开组(Leave Group)报文;

(2)     当查询器收到该报文后,向该主机所声明要离开的那个组播组发送特定组查询(Group-Specific Query)报文(目的地址字段和组地址字段均填充为所要查询的组播组地址);

(3)     如果该网段内还有该组播组的其它成员,则这些成员在收到特定组查询报文后,会在该报文中所设定的最大响应时间(Max Response Time)内发送成员关系报告报文;

(4)     如果在最大响应时间内收到了该组播组其它成员发送的成员关系报告报文,查询器就会继续维护该组播组的成员关系;否则,查询器将认为该网段内已无该组播组的成员,于是不再维护这个组播组的成员关系。

1.1.4  IGMPv3的改进

IGMPv3在兼容和继承IGMPv1和IGMPv2的基础上,进一步增强了主机的控制能力,并增强了查询和报告报文的功能。

1. 主机控制能力的增强

IGMPv3增加了针对组播源的过滤模式(INCLUDE/EXCLUDE),使主机在加入某组播组G的同时,能够明确要求接收或拒绝来自某特定组播源S的组播信息。当主机加入组播组时:

·     若要求只接收来自指定组播源如S1、S2、……的组播信息,则其报告报文中可以标记为INCLUDE Sources(S1,S2,……);

·     若拒绝接收来自指定组播源如S1、S2、……的组播信息,则其报告报文中可以标记为EXCLUDE Sources(S1,S2,……)。

图1-2所示,网络中存在Source 1(S1)和Source 2(S2)两个组播源,均向组播组G发送组播报文。Host B仅对从Source 1发往G的信息感兴趣,而对来自Source 2的信息没有兴趣。

图1-2 指定源组的组播流路经

 

如果主机与路由器之间运行的是IGMPv1或IGMPv2,Host B加入组播组G时无法对组播源进行选择,因此无论Host B是否需要,来自Source 1和Source 2的组播信息都将传递给Host B。

当主机与路由器之间运行了IGMPv3之后,Host B就可以要求只接收来自Source 1、发往G的组播信息(S1,G),或要求拒绝来自Source 2、发往G的组播信息(S2,G),这样就只有来自Source 1的组播信息才能传递给Host B了。

2. 查询和报告报文功能的增强

(1)     携带源地址的查询报文

IGMPv3不仅支持IGMPv1的普遍组查询和IGMPv2的特定组查询,而且还增加了对特定源组查询的支持:

·     普遍组查询报文中,既不携带组地址,也不携带源地址;

·     特定组查询报文中,携带组地址,但不携带源地址;

·     特定源组查询报文中,既携带组地址,还携带一个或多个源地址。

(2)     包含多组记录的报告报文

IGMPv3报告报文的目的地址为224.0.0.22,可以携带一个或多个组记录。在每个组记录中,包含有组播组地址和组播源地址列表。组记录可以分为多种类型,如下:

·     IS_IN:表示组播组与组播源列表之间的过滤模式为INCLUDE,即只接收从指定组播源列表发往该组播组的组播数据。

·     IS_EX:表示组播组与组播源列表之间的过滤模式为EXCLUDE,即只接收从指定组播源列表之外的组播源发往该组播组的组播数据。

·     TO_IN:表示组播组与组播源列表之间的过滤模式由EXCLUDE转变为INCLUDE。

·     TO_EX:表示组播组与组播源列表之间的过滤模式由INCLUDE转变为EXCLUDE。

·     ALLOW:表示在现有状态的基础上,还希望从某些组播源接收组播数据。如果当前的对应关系为INCLUDE,则向现有组播源列表中添加这些组播源;如果当前的对应关系为EXCLUDE,则从现有组播源列表中删除这些组播源。

·     BLOCK:表示在现有状态的基础上,不再希望从某些组播源接收组播数据。如果当前的对应关系为INCLUDE,则从现有组播源列表中删除这些组播源;如果当前的对应关系为EXCLUDE,则向现有组播源列表中添加这些组播源。

1.1.5  IGMP SSM Mapping

IGMP SSM Mapping通过在路由器上配置SSM静态映射规则,从而为运行IGMPv1或IGMPv2的接收者主机提供对SSM模型的支持。

SSM模型要求在接收者主机所在的网段,路由器能够了解主机加入组播组时所指定的组播源。如果接收者主机上运行的是IGMPv3,则可以在IGMPv3的报告报文中直接指定组播源的地址;如果某些接收者主机只能运行IGMPv1或IGMPv2,则在IGMPv1或IGMPv2的报告报文中无法指定组播源的地址。这种情况下需要通过在路由器上配置IGMP SSM Mapping规则,将IGMPv1或IGMPv2报告报文中所包含的(*,G)信息映射为(G,INCLUDE,(S1,S2...))信息。

图1-3 IGMP SSM Mapping组网图

 

在如图1-3所示的SSM网络中,Host A、Host B和Host C上分别运行IGMPv1、IGMPv2和IGMPv3。在不允许将Host A和Host B升级为IGMPv3的情况下,若要为Host A和Host B也提供SSM组播服务,则需在Router A上配置IGMP SSM Mapping规则。

配置完成后,当Router A收到来自主机的IGMPv1或IGMPv2报告报文时,首先检查该报文中所携带的组播组地址G,然后根据检查结果的不同分别进行处理:

(1)     如果G不在SSM组地址范围内,则提供ASM组播服务。

(2)     如果G在SSM组地址范围内:

·     若Router A上没有G对应的IGMP SSM Mapping规则,则无法提供SSM组播服务,丢弃该报文;

·     若Router A上有G对应的IGMP SSM Mapping规则,则依据规则将报告报文中所包含的(*,G)信息映射为(G,INCLUDE,(S1,S2...))信息,可以提供SSM组播服务。

说明

·     IGMP SSM Mapping不对IGMPv3的报告报文进行处理。

·     有关SSM组地址范围的介绍,请参见“IP组播配置指导”中的“PIM”。

 

1.1.6  IGMP代理

在如图1-4所示的一些简单网络拓扑中,诸如Router B之类的边缘设备上并不需要运行PIM等复杂的组播路由协议,可以通过在这些设备上配置IGMP代理功能,使其在上游的IGMP查询器和下游的接收者主机之间充当代理者:

·     对于IGMP查询器来说,IGMP代理设备的行为就像一台主机。

·     对于主机来说,IGMP代理设备的行为就像一台IGMP查询器。

图1-4 IGMP代理组网图

 

为了便于理解,IGMP代理中定义了以下两种类型的接口:

·     主机接口:面向组播分发树树根方向的接口,执行IGMP协议的主机行为。由于此接口上需使能IGMP代理功能,因此也称为代理接口。

·     路由器接口:面向组播分发树树叶方向的接口,执行IGMP协议的路由器行为。在此接口上需使能并配置IGMP功能

IGMP代理设备上维护着一个组成员关系数据库,记录所有路由器接口维护的组成员关系。主机接口和路由器接口正是依据这个数据库来执行相应的行为:

·     主机接口收到查询报文后根据当前的组成员关系来响应报告报文,或者当组成员关系改变时发送报告报文或离开报文。

·     路由器接口参与下游查询器的选举,发送查询报文,并根据主机发来的报告报文维护组成员关系

1.1.7  可控组播

传统组播业务对组播用户是不可控的,用户可自行加入某个组播组,从而接收该组播组的组播报文。由于无法对用户进行有效的识别控制,因而这种不可控的组播无法满足运营商对IPTV等业务的运营需求。

可控组播的核心就是控制用户加入组播组的权限。用户上线后,BRAS(Broadband Remote Access Server,宽带远程接入服务器)设备可获得用户的授权信息,当用户发送IGMP成员关系报告报文请求加入某个组播组时,BRAS设备可根据该用户的授权信息接受或拒绝其加入请求。

1.1.8  多实例的IGMP

IGMP依据接口来维护组成员关系,各实例的IGMP根据接口所属的实例来处理协议报文的收发。当路由器收到IGMP报文时,需要区分该报文所属的实例,并在该实例范围内对其进行处理。当某实例内的IGMP需要和其它组播协议交互信息时,只会通知本实例内的其它组播协议。

1.1.9  协议规范

与IGMP相关的协议规范有:

·     RFC 1112:Host Extensions for IP Multicasting

·     RFC 2236Internet Group Management Protocol, Version 2

·     RFC 3376Internet Group Management Protocol, Version 3

1.2  IGMP配置任务简介

表1-1 IGMP配置任务简介

配置任务

说明

详细配置

配置IGMP基本功能

使能IGMP

必选

1.3.2 

配置IGMP版本

可选

1.3.3 

配置静态加入

可选

1.3.4 

配置组播组过滤器

可选

1.3.5 

调整IGMP性能

配置组播组成员快速离开

可选

1.4.2 

配置IGMP SSM Mapping

可选

1.5.2 

配置IGMP代理

使能IGMP代理功能

可选

1.6.2 

配置非查询器转发功能

可选

1.6.3 

配置IGMP代理的负载分担功能

可选

1.6.4 

配置可控组播

使能可控组播功能

可选

1.7.2 

配置IGMP用户的接入策略

可选

1.7.3 

配置组播复制方式

可选

1.7.4 

配置带VLAN封装的静态加入

可选

1.7.5 

 

1.3  配置IGMP基本功能

1.3.1  配置准备

在配置IGMP基本功能之前,需完成以下任务:

·     配置任一单播路由协议,实现网络层互通

·     配置PIM协议

在配置IGMP基本功能之前,需准备以下数据:

·     IGMP的版本

·     以静态方式加入的组播组和组播源的地址

·     组播组过滤的ACL规则

1.3.2  使能IGMP

在需要建立和维护组播组成员关系的接口上使能IGMP

表1-2 使能IGMP

操作

命令

说明

进入系统视图

system-view

-

使能IP组播路由,并进入MRIB视图

multicast routing [ vpn-instance vpn-instance-name ]

缺省情况下,IP组播路由处于关闭状态

本命令的详细介绍请参见“IP组播命令参考”中的“组播路由与转发”

退回系统视图

quit

-

进入接口视图

interface interface-type interface-number

-

使能IGMP

igmp enable

缺省情况下,IGMP处于关闭状态

 

1.3.3  配置IGMP版本

由于不同版本IGMP协议的报文结构与种类不同,因此需要为同一网段上的所有路由器配置相同版本的IGMP,否则IGMP将不能正常运行。

表1-3 配置IGMP版本

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

配置IGMP的版本

igmp version version-number

缺省情况下,IGMP的版本为IGMPv2

 

1.3.4  配置静态加入

在配置了静态加入组播组或组播源组后,接口将作为该组播组的虚拟组成员存在,从而可以接收发往该组的组播数据,以测试组播数据的转发。

在配置了静态加入后,接口并不会对IGMP查询器发出的查询报文进行响应;当配置静态加入或取消静态加入的配置时,接口也不会主动发送IGMP成员关系报告报文或IGMP离开组报文。也就是说,该接口并没有真正成为该组播组的成员。

提示

在运行PIM-SM的设备上配置静态加入时,如果待配接口上同时使能了IGMP和PIM-SM,则该接口必须为PIM-SM的DR,否则该接口将不能加入组播组或组播源组;如果待配接口上使能了IGMP但未使能PIM-SM,则该接口必须为IGMP查询器,否则该接口也不能加入组播组或组播源组。有关PIM-SM和DR的介绍,请参见“IP组播配置指导”中的“PIM”。

 

表1-4 配置静态加入

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

配置静态加入组播组或组播源组

igmp static-group group-address [ source source-address ]

缺省情况下,接口没有以静态方式加入任何组播组或组播源组

 

1.3.5  配置组播组过滤器

如果不希望接口所在网段上的主机加入某些组播组,可在该接口上配置ACL规则作为过滤器,接口将按照该规则对收到的IGMP成员关系报告报文进行过滤,只为该规则所允许的组播组维护组成员关系。

表1-5 配置组播组过滤器

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

配置组播组过滤器

igmp group-policy acl-number [ version-number ]

缺省情况下,接口上没有配置组播组过滤器,即该接口下的主机可以加入任意组播组

 

说明

由于组播组过滤器只能过滤IGMP报文,因此无法对接口静态加入组播组或组播源组进行限制。

 

1.4  调整IGMP性能

1.4.1  配置准备

在调整IGMP性能之前,需完成以下任务:

·     配置任一单播路由协议,实现网络层互通

·     配置IGMP基本功能

1.4.2  配置组播组成员快速离开

提示

只有当设备运行在IGMPv2或IGMPv3时,本配置才有效。

 

在某些应用(如ADSL拨号上网)中,IGMP查询器的一个端口唯一对应着一台接收者主机,当主机在多个组播组间频繁切换(如进行电视选台)时,为了快速响应主机的离开组报文,可以在IGMP查询器上开启IGMP快速离开功能。

在使能了IGMP快速离开功能之后,当IGMP查询器收到来自主机的离开组报文时,不再发送IGMP特定组查询报文或IGMP特定源组查询报文,而是直接向上游发送离开通告,这样一方面减小了响应延迟,另一方面也节省了网络带宽。

表1-6 配置组播组成员快速离开

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

使能组播组成员快速离开功能

igmp fast-leave [ group-policy acl-number ]

缺省情况下,组播组成员快速离开功能处于关闭状态

 

1.5  配置IGMP SSM Mapping

在SSM网络中,由于各种可能的限制,某些接收者主机只能运行IGMPv1或IGMPv2。为了向这些仅支持IGMPv1或IGMPv2的接收者主机提供SSM服务,可以在路由器上配置IGMP SSM Mapping规则。

提示

由于IGMP SSM Mapping不会对IGMPv3的报告报文进行处理,因此为保证本网段内运行任意版本IGMP的接收者主机都能得到SSM服务,建议在该网段的接口上运行IGMPv3。

 

1.5.1  配置准备

在配置IGMP SSM Mapping规则之前,需完成以下任务:

·     配置任一单播路由协议,实现域内网络层互通

·     配置IGMP基本功能

1.5.2  配置过程

表1-7 配置IGMP SSM Mapping

操作

命令

说明

进入系统视图

system-view

-

进入IGMP视图

igmp [ vpn-instance vpn-instance-name ]

-

配置IGMP SSM Mapping规则

ssm-mapping source-address acl-number

缺省情况下,未配置IGMP SSM Mapping规则

 

1.6  配置IGMP代理

在IGMP代理设备上,请先根据网络拓扑确定其路由器接口和主机接口,然后在路由器接口上使能并配置IGMP功能,在主机接口上使能IGMP代理功能。

1.6.1  配置准备

在配置IGMP代理之前,需完成以下任务:

·     配置任一单播路由协议,实现域内网络层互通

1.6.2  使能IGMP代理功能

确定了主机接口之后,请在该接口上使能IGMP代理功能。

提示

·     一个接口上如果同时使能IGMP代理功能和IGMP协议,IGMP协议将不会生效。在已使能IGMP代理功能的接口上配置其它IGMP命令时,只有igmp version命令会生效。

·     如果在一台设备上同时使能IGMP代理功能和组播路由协议(如PIM和MSDP),组播路由协议将不会生效。而由于IGMPv1查询器要由PIM选出的DR来充当,因此若IGMP代理设备的路由器接口运行IGMPv1,则该接口将无法成为DR,从而无法充当IGMP查询器,此时为使该接口下的主机能够接收组播数据,需在该接口上使能非查询器转发功能。

 

表1-8 使能IGMP代理功能

操作

命令

说明

进入系统视图

system-view

-

使能IP组播路由,并进入MRIB视图

multicast routing [ vpn-instance vpn-instance-name ]

缺省情况下,IP组播路由处于关闭状态

本命令的详细介绍请参见“IP组播命令参考”中的“组播路由与转发”

退回系统视图

quit

-

进入接口视图

interface interface-type interface-number

-

使能IGMP代理功能

igmp proxy enable

缺省情况下,IGMP代理功能处于关闭状态

 

1.6.3  配置非查询器转发功能

组播数据通常只被查询器转发,非查询器不具备组播转发能力,这样可避免组播数据被重复转发。但如果IGMP代理设备的路由器接口未能当选查询器,应在该接口上使能非查询器转发功能,否则下游主机将无法收到组播数据。

提示

在共享网段内存在多台IGMP代理设备的情况下,如果其中一台IGMP代理设备的路由器接口已当选为查询器,不应再在其它IGMP代理设备的路由器接口上使能非查询器转发功能,否则该网段将收到多份重复的组播数据。

 

表1-9 配置非查询器转发功能

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

使能非查询器转发功能

igmp proxy forwarding

缺省情况下,非查询器转发功能处于关闭状态

 

1.6.4  配置IGMP代理的负载分担功能

当在IGMP代理设备的多个接口上使能了IGMP代理功能时:

·     如果关闭了IGMP代理的负载分担功能,则只有IP地址最大的接口会转发组播流量。

·     如果使能了IGMP代理的负载分担功能,则可通过这些接口对组播流量按组进行负载分担。

表1-10 配置IGMP代理的负载分担功能

操作

命令

说明

进入系统视图

system-view

-

进入IGMP视图

igmp [ vpn-instance vpn-instance-name ]

-

使能IGMP代理的负载分担功能

proxy multipath

缺省情况下,IGMP代理的负载分担功能处于关闭状态

 

1.7  配置可控组播

说明

·     仅CSPEX-1204单板支持配置本功能。

·     可控组播不支持IPoE专线方式和多机备份功能。关于IPoE的详细介绍请参见“二层技术-广域网接入配置指导”中的“IPoE”。关于多机备份的详细介绍请参见“可靠性配置指导”中的“多机备份”。

·     可控组播不支持IPoE和PPPoE的用户侧接口作为组播源的入接口。关于PPPoE的详细介绍请参见“二层技术-广域网接入配置指导”中的“PPP”。

·     L3VE接口及其子接口不支持IPoE和PPPoE可控组播功能。关于L3VE接口及其子接口的详细介绍请参见“MPLS配置指导”中的“L2VPN接入L3VPN或IP骨干网”。

·     当用户侧接口配置了QinQ终结或模糊Dot1q终结功能时,为确保组播数据按会话记录的用户进行正常转发,要求必须通过igmp join-by-session命令开启设备的按会话记录用户加入组播组功能。对于可控组播功能的PPPoE接入方式不存在该限制。关于QinQ终结和模糊Dot1q终结的详细介绍请参见“二层技术-以太网交换配置指导”中的“VLAN终结”。

 

1.7.1  配置准备

在配置可控组播之前,需完成以下任务:

·     配置任一单播路由协议,实现域内网络层互通

·     配置IGMP基本功能(请勿使用IGMPv1版本,否则将无IGMP查询器可用)

1.7.2  使能可控组播功能

请在需要控制用户加入组播组权限的接口上使能可控组播功能。

表1-11 使能可控组播功能

操作

命令

说明

进入系统视图

system-view

-

进入三层以太网接口/三层以太网子接口/三层聚合接口/三层聚合子接口/VT接口视图

interface interface-type { interface-number | interface-number.subnumber }

-

使能可控组播功能

igmp authorization-enable

缺省情况下,可控组播功能处于关闭状态

 

1.7.3  配置IGMP用户的接入策略

如果在一个User Profile下指定了某ACL规则作为IGMP用户的接入策略,当被授权此User Profile的用户上线后,设备将按照该规则对用户发送的IGMP成员关系报告报文进行过滤,只为该规则所允许的组播组维护组成员关系。

说明

RADIUS服务器上还可以配置用户授权的组列表,并与用户授权的User Profile共同构成了用户的授权信息。当用户发送的IGMP成员关系报告报文只要能通过其中的一项,就允许通过。

 

表1-12 配置IGMP用户的接入策略

操作

命令

说明

进入系统视图

system-view

-

进入ISP域视图

domain isp-name

本命令的详细介绍请参见“安全命令参考”中的“AAA

配置当前ISP域的缺省授权User Porfile

authorization-attribute user-profile profile-name

缺省情况下,当前ISP域无缺省授权User Porfile

如果RADIUS服务器上指定了用户授权的User Profile,则以服务器的配置为准

本命令的详细介绍请参见“安全命令参考”中的“AAA

退回系统视图

quit

-

进入User-Profile视图

user-profile profile-name

本命令的详细介绍请参见“安全命令参考”中的“User Profile

配置IGMP用户的接入策略

igmp access-policy acl-number

缺省情况下,没有配置IGMP用户的接入策略,即IGMP用户未被授权加入组播组

通过多次执行本命令可以配置多条IGMP用户接入策略,用户发送的IGMP成员关系报告报文只需匹配其中一条就允许通过

 

1.7.4  配置组播按会话复制

通常情况下,BRAS设备按接口记录用户加入的组播组,只会向物理接口发送一份组播报文,组播的复制分发工作将由运行IGMP Snooping的下游设备完成。

当下游设备不支持IGMP Snooping时,可以在BRAS设备的下游接口上配置按会话记录用户加入的组播组,BRAS设备将按会话复制组播报文,并向接口下的每位用户分别发送一份。

提示

如果接口上存在不带VLAN封装的静态加入配置,当在该接口上进行本配置时系统会自动删除这些不带VLAN封装的静态表项。

 

表1-13 配置组播按会话复制

操作

命令

说明

进入系统视图

system-view

-

进入三层以太网接口/三层以太网子接口/三层聚合接口/三层聚合子接口视图

interface interface-type { interface-number | interface-number.subnumber }

-

配置按会话记录用户加入的组播组

igmp join-by-session

缺省情况下,按接口记录用户加入的组播组

 

1.7.5  配置带VLAN封装的静态加入

由于可控组播中的用户带有VLAN封装,因此在BRAS设备的子接口上配置静态加入时也要带有VLAN封装,否则该子接口将无法加入相应的组播组或组播源组。

在子接口上配置了带VLAN封装的静态加入后,当该VLAN内的用户上线,或指定该子接口转发该VLAN的组播数据时,将创建相应的静态组播表项。

表1-14 配置带VLAN封装的静态加入

操作

命令

说明

进入系统视图

system-view

-

进入三层以太网子接口/三层聚合子接口视图

interface interface-type { interface-number | interface-number.subnumber }

-

配置接口静态加入组播组或组播源组(带VLAN封装)

igmp static-group group-address [ source source-address ] { dot1q vid vlan-list | dot1q vid vlan-id second-dot1q vlan-list }

缺省情况下,接口没有以静态方式加入任何组播组或组播源组

 

1.8  IGMP显示和维护

注意

执行reset igmp group命令可能导致接收者中断组播信息的接收。

 

在完成上述配置后,在任意视图下执行display命令可以显示配置后IGMP的运行情况,通过查看显示信息验证配置的效果。

在用户视图下执行reset命令可以清除IGMP的统计信息。

表1-15 IGMP显示和维护

操作

命令

显示IGMP组播组的信息

display igmp [ vpn-instance vpn-instance-name ] group [ group-address | interface interface-type interface-number ] [ static | verbose ]

显示接口上IGMP配置和运行信息

display igmp [ vpn-instance vpn-instance-name ] interface [ interface-type interface-number ] [ proxy ] [ verbose ]

显示IGMP代理记录的组播组信息

display igmp [ vpn-instance vpn-instance-name ] proxy group [ group-address | interface interface-type interface-number ] [ verbose ]

显示IGMP代理路由表的信息

display igmp [ vpn-instance vpn-instance-name ] proxy routing-table [ source-address [ mask { mask-length | mask } ] | group-address [ mask { mask-length | mask } ] ] * [ verbose ]

显示IGMP SSM Mapping规则

display igmp [ vpn-instance vpn-instance-name ] ssm-mapping group-address

显示IGMP用户的授权信息

display igmp user-authorization [ interface interface-type interface-number ]

清除IGMP组的动态加入记录

reset igmp [ vpn-instance vpn-instance-name ] group { all | interface interface-type interface-number { all | group-address [ mask { mask | mask-length } ] [ source-address [ mask { mask | mask-length } ] ] } }

 

说明

reset igmp group命令只能清除动态加入记录,无法清除静态加入记录。

 

1.9  IGMP典型配置举例

1.9.1  IGMP基本功能配置举例

1. 组网需求

·     网络中运行OSPF和PIM-DM,接收者通过组播方式接收视频点播信息,不同组织的接收者组成末梢网络N1和N2,Host A与Host C分别为N1和N2中的组播信息接收者。

·     PIM网络中的Router A连接N1,Router B与Router C共同连接N2。

·     Router A通过GigabitEthernet1/0/1连接N1,通过GigabitEthernet1/0/2连接PIM网络中的其它设备。

·     Router B与Router C分别通过各自的GigabitEthernet1/0/1连接N2,并分别通过各自的GigabitEthernet1/0/2连接PIM网络中的其它设备。

·     Router A与N1之间运行IGMPv2,Router A为IGMP查询器;Router B、Router C与N2之间也分别运行IGMPv2,且由于Router B的接口IP地址较小,因此由其充当IGMP查询器。

·     通过配置,使N1中的主机只能加入组播组224.1.1.1,而对N2中的主机则无任何限制。

2. 组网图

图1-5 IGMP基本功能配置组网图

 

 

3. 配置步骤

(1)     配置IP地址和单播路由协议

请按照图1-5配置各接口的IP地址和子网掩码,并在PIM-DM域内的各路由器上配置OSPF协议,具体配置过程略。

(2)     使能IP组播路由,并使能PIM-DM和IGMP

# 在Router A上使能IP组播路由,在接口GigabitEthernet1/0/2上使能PIM-DM,并在接口GigabitEthernet1/0/1上使能IGMP。

<RouterA> system-view

[RouterA] multicast routing

[RouterA-mrib] quit

[RouterA] interface gigabitethernet 1/0/1

[RouterA-GigabitEthernet1/0/1] igmp enable

[RouterA-GigabitEthernet1/0/1] quit

[RouterA] interface gigabitethernet 1/0/2

[RouterA-GigabitEthernet1/0/2] pim dm

[RouterA-GigabitEthernet1/0/2] quit

# Router B上使能IP组播路由,在接口GigabitEthernet1/0/2上使能PIM-DM,并在接口GigabitEthernet1/0/1上使能IGMP

<RouterB> system-view

[RouterB] multicast routing

[RouterB-mrib] quit

[RouterB] interface gigabitethernet 1/0/1

[RouterB-GigabitEthernet1/0/1] igmp enable

[RouterB-GigabitEthernet1/0/1] quit

[RouterB] interface gigabitethernet 1/0/2

[RouterB-GigabitEthernet1/0/2] pim dm

[RouterB-GigabitEthernet1/0/2] quit

# Router C上使能IP组播路由,在接口GigabitEthernet1/0/2上使能PIM-DM,并在接口GigabitEthernet1/0/1上使能IGMP

<RouterC> system-view

[RouterC] multicast routing

[RouterC-mrib] quit

[RouterC] interface gigabitethernet 1/0/1

[RouterC-GigabitEthernet1/0/1] igmp enable

[RouterC-GigabitEthernet1/0/1] quit

[RouterC] interface gigabitethernet 1/0/2

[RouterC-GigabitEthernet1/0/2] pim dm

[RouterC-GigabitEthernet1/0/2] quit

(3)     配置组播组过滤器

# 在Router A上限定接口GigabitEthernet1/0/1下的主机只能加入组播组224.1.1.1。

[RouterA] acl number 2001

[RouterA-acl-basic-2001] rule permit source 224.1.1.1 0

[RouterA-acl-basic-2001] quit

[RouterA] interface gigabitethernet 1/0/1

[RouterA-GigabitEthernet1/0/1] igmp group-policy 2001

[RouterA-GigabitEthernet1/0/1] quit

4. 验证配置

# 在Router B上显示接口GigabitEthernet1/0/1上IGMP配置和运行的信息。

[RouterB] display igmp interface gigabitethernet 1/0/1

 GigabitEthernet1/0/1(10.110.2.1):

   IGMP is enabled.

   IGMP version: 2

   Query interval for IGMP: 125s

   Other querier present time for IGMP: 255s

   Maximum query response time for IGMP: 10s

   Querier for IGMP: 10.110.2.1 (This router)

  IGMP groups reported in total: 1

1.9.2  IGMP SSM Mapping配置举例

1. 组网需求

·     运行OSPF协议的PIM-SM网络中同时采用ASM和SSM方式提供组播服务,将Router D的接口GigabitEthernet1/0/3配置为C-BSR和C-RP,SSM组播组的范围为232.1.1.0/24。

·     Router D的接口GigabitEthernet1/0/1上运行IGMPv3,接收者主机上运行IGMPv2,且不能升级至IGMPv3,因此该主机在加入组播组时无法指定组播源。

·     Source 1、Source 2和Source 3都向SSM组范围内的组播组发送组播数据,要求通过在Router D上配置IGMP SSM Mapping规则,使接收者主机只能接收来自Source 1和Source 3的组播数据。

2. 组网图

图1-6 IGMP SSM Mapping配置组网图

设备

接口

IP地址

设备

接口

IP地址

Source 1

-

133.133.1.1/24

Source 3

-

133.133.3.1/24

Source 2

-

133.133.2.1/24

Receiver

-

133.133.4.1/24

Router A

GE1/0/1

133.133.1.2/24

Router C

GE1/0/1

133.133.3.2/24

 

GE1/0/2

192.168.1.1/24

 

GE1/0/2

192.168.3.1/24

 

GE1/0/3

192.168.4.2/24

 

GE1/0/3

192.168.2.2/24

Router B

GE1/0/1

133.133.2.2/24

Router D

GE1/0/1

133.133.4.2/24

 

GE1/0/2

192.168.1.2/24

 

GE1/0/2

192.168.3.2/24

 

GE1/0/3

192.168.2.1/24

 

GE1/0/3

192.168.4.1/24

 

3. 配置步骤

(1)     配置IP地址和单播路由协议

请按照图1-6配置各接口的IP地址和子网掩码,并在PIM-SM域内的各路由器上配置OSPF协议,具体配置过程略。

(2)     使能IP组播路由,并使能PIM-SM和IGMP

# 在Router D上使能IP组播路由,在主机侧接口GigabitEthernet1/0/1上使能IGMP,配置IGMP版本为3;并在其它接口上使能PIM-SM。

<RouterD> system-view

[RouterD] multicast routing

[RouterD-mrib] quit

[RouterD] interface gigabitethernet 1/0/1

[RouterD-GigabitEthernet1/0/1] igmp enable

[RouterD-GigabitEthernet1/0/1] igmp version 3

[RouterD-GigabitEthernet1/0/1] quit

[RouterD] interface gigabitethernet 1/0/2

[RouterD-GigabitEthernet1/0/2] pim sm

[RouterD-GigabitEthernet1/0/2] quit

[RouterD] interface gigabitethernet 1/0/3

[RouterD-GigabitEthernet1/0/3] pim sm

[RouterD-GigabitEthernet1/0/3] quit

# Router A上使能IP组播路由,并在各接口上使能PIM-SM

<RouterA> system-view

[RouterA] multicast routing

[RouterA-mrib] quit

[RouterA] interface gigabitethernet 1/0/1

[RouterA-GigabitEthernet1/0/1] pim sm

[RouterA-GigabitEthernet1/0/1] quit

[RouterA] interface gigabitethernet 1/0/2

[RouterA-GigabitEthernet1/0/2] pim sm

[RouterA-GigabitEthernet1/0/2] quit

[RouterA] interface gigabitethernet 1/0/3

[RouterA-GigabitEthernet1/0/3] pim sm

[RouterA-GigabitEthernet1/0/3] quit

Router BRouter C的配置与Router A相似,配置过程略。

(3)     配置C-BSR和C-RP

# 在Router D上配置C-BSR和C-RP的位置。

[RouterD] pim

[RouterD-pim] c-bsr 192.168.4.1

[RouterD-pim] c-rp 192.168.4.1

[RouterD-pim] quit

(4)     配置SSM组播组的地址范围

# 在Router D上配置SSM组播组的地址范围为232.1.1.0/24。

[RouterD] acl number 2000

[RouterD-acl-basic-2000] rule permit source 232.1.1.0 0.0.0.255

[RouterD-acl-basic-2000] quit

[RouterD] pim

[RouterD-pim] ssm-policy 2000

[RouterD-pim] quit

Router A、Router B和Router C的配置与Router D相似,配置过程略。

(5)     配置IGMP SSM Mapping规则

# 在Router D上配置IGMP SSM Mapping规则。

[RouterD] igmp

[RouterD-igmp] ssm-mapping 133.133.1.1 2000

[RouterD-igmp] ssm-mapping 133.133.3.1 2000

[RouterD-igmp] quit

4. 验证配置

# 显示Router D上公网实例中组播组232.1.1.1对应的IGMP SSM Mapping规则。

[RouterD] display igmp ssm-mapping 232.1.1.1

 Group: 232.1.1.1

 Source list:

        133.133.1.1

        133.133.3.1

# 显示Router D上公网实例中依据IGMP SSM Mapping规则创建的IGMP组播组信息。

[RouterD] display igmp group

IGMP groups in total: 1

 GigabitEthernet1/0/1(133.133.4.2):

  IGMP groups reported in total: 1

   Group address   Last reporter   Uptime      Expires

   232.1.1.1       133.133.4.1     00:02:04    off

# 显示Router D上公网实例PIM路由表的内容。

[RouterD] display pim routing-table

 Total 0 (*, G) entry; 2 (S, G) entry

 

 (133.133.1.1, 232.1.1.1)

     RP: 192.168.4.1

     Protocol: pim-ssm, Flag:

     UpTime: 00:13:25

     Upstream interface: GigabitEthernet1/0/3

         Upstream neighbor: 192.168.4.2

         RPF prime neighbor: 192.168.4.2

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: GigabitEthernet1/0/1

             Protocol: igmp, UpTime: 00:13:25, Expires: -

 

 (133.133.3.1, 232.1.1.1)

     RP: 192.168.4.1

     Protocol: pim-ssm, Flag:

     UpTime: 00:13:25

     Upstream interface: GigabitEthernet1/0/2

         Upstream neighbor: 192.168.3.1

         RPF prime neighbor: 192.168.3.1

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: GigabitEthernet1/0/1

             Protocol: igmp, UpTime: 00:13:25, Expires: -

1.9.3  IGMP代理配置举例

1. 组网需求

·     核心网络中运行PIM-DM,末梢网络中的接收者Host A和Host C通过组播组224.1.1.1点播视频节目。

·     要求通过在Router B上配置IGMP代理,使其在不运行PIM-DM的情况下实现组成员关系的维护和组播数据的正常转发。

2. 组网图

图1-7 IGMP代理配置组网图

 

3. 配置步骤

(1)     配置IP地址

请按照图1-7配置各接口的IP地址和子网掩码,具体配置过程略。

(2)     使能IP组播路由,并使能PIM-DM、IGMP和IGMP代理

# 在Router A上使能IP组播路由,在接口GigabitEthernet1/0/2上使能PIM-DM,并在接口GigabitEthernet1/0/1上使能IGMP。

<RouterA> system-view

[RouterA] multicast routing

[RouterA-mrib] quit

[RouterA] interface gigabitethernet 1/0/2

[RouterA-GigabitEthernet1/0/2] pim dm

[RouterA-GigabitEthernet1/0/2] quit

[RouterA] interface gigabitethernet 1/0/1

[RouterA-GigabitEthernet1/0/1] igmp enable

[RouterA-GigabitEthernet1/0/1] quit

# Router B上使能IP组播路由,在接口GigabitEthernet1/0/1上使能IGMP代理,并在接口GigabitEthernet1/0/2上使能IGMP

<RouterB> system-view

[RouterB] multicast routing

[RouterB-mrib] quit

[RouterB] interface gigabitethernet 1/0/1

[RouterB-GigabitEthernet1/0/1] igmp proxy enable

[RouterB-GigabitEthernet1/0/1] quit

[RouterB] interface gigabitethernet 1/0/2

[RouterB-GigabitEthernet1/0/2] igmp enable

[RouterB-GigabitEthernet1/0/2] quit

4. 验证配置

# 在Router B上显示IGMP代理记录的所有组播组信息。

[RouterB] display igmp proxy group

IGMP proxy group records in total: 1

 GigabitEthernet1/0/1(192.168.1.2):

  IGMP proxy group records in total: 1

   Group address      Member state      Expires

   224.1.1.1          Delay             00:00:02

1.9.4  可控组播配置举例(PPPoE接入方式)

1. 组网需求

·     运行OSPF协议的PIM-SM网络中有三个组播源Source 1、Source 2和Source 3,依次向组播组224.1.1.1、225.1.1.1和226.1.1.1发送组播数据。Router A的接口GigabitEthernet1/1/2为C-BSR和C-RP,服务于所有组播组。

·     Router A作为BRAS设备,将两个ISP的用户接入PIM-SM网络。要求通过配置可控组播功能,使ISP 1的用户只能加入组播组224.1.1.1和225.1.1.1,ISP 2的用户只能加入组播组225.1.1.1和226.1.1.1。

2. 组网图

图1-8 可控组播配置组网图(PPPoE接入方式)

设备

接口

IP地址

设备

接口

IP地址

Source 1

-

10.100.1.1/24

Host A

-

192.168.1.2/24

Source 2

-

10.100.2.1/24

Host B

-

192.168.1.3/24

Source 3

-

10.100.3.1/24

Host C

-

192.168.2.2/24

RADIUS server

-

11.110.4.2/24

Host D

-

192.168.2.3/24

Router B

GE1/0/1

11.110.1.2/24

Router A

GE1/1/1

11.110.1.1/24

 

GE1/0/2

10.100.1.2/24

 

GE1/1/2

11.110.2.1/24

Router C

GE1/0/1

11.110.2.2/24

 

GE1/1/3

11.110.3.1/24

 

GE1/0/2

10.100.2.2/24

 

GE1/1/4

11.110.4.1/24

Router D

GE1/0/1

11.110.3.2/24

 

GE1/1/5.1

192.168.1.1/24

 

GE1/0/2

10.100.3.2/24

 

GE1/1/5.2

192.168.2.1/24

 

3. 配置步骤

(1)     配置IP地址和单播路由协议

请按照图1-8配置各接口的IP地址和子网掩码,并在PIM-SM域内的各路由器上配置OSPF协议,具体配置过程略。

(2)     使能IP组播路由,并配置PIM-SM

# 在Router A上使能IP组播路由,并在接口GigabitEthernet3/1/1~GigabitEthernet3/1/3上使能PIM-SM。

<RouterA> system-view

[RouterA] multicast routing

[RouterA-mrib] quit

[RouterA] interface gigabitethernet 3/1/1

[RouterA-GigabitEthernet3/1/1] pim sm

[RouterA-GigabitEthernet3/1/1] quit

[RouterA] interface gigabitethernet 3/1/2

[RouterA-GigabitEthernet3/1/2] pim sm

[RouterA-GigabitEthernet3/1/2] quit

[RouterA] interface gigabitethernet 3/1/3

[RouterA-GigabitEthernet3/1/3] pim sm

[RouterA-GigabitEthernet3/1/3] quit

# Router B上使能IP组播路由,并在各接口上使能PIM-SM

<RouterB> system-view

[RouterB] multicast routing

[RouterB-mrib] quit

[RouterB] interface gigabitethernet 1/0/1

[RouterB-GigabitEthernet1/0/1] pim sm

[RouterB-GigabitEthernet1/0/1] quit

[RouterB] interface gigabitethernet 1/0/2

[RouterB-GigabitEthernet1/0/2] pim sm

[RouterB-GigabitEthernet1/0/2] quit

Router CRouter D的配置与Router B相似,配置过程略。

# Router A的接口GigabitEthernet3/1/2配置为C-BSRC-RP

[RouterA] pim

[RouterA-pim] c-bsr 11.110.2.1

[RouterA-pim] c-rp 11.110.2.1

[RouterA-pim] quit

(3)     在BRAS设备上配置接入业务

# 配置RADIUS客户端。

[RouterA] radius scheme spec

[RouterA-radius-spec] primary authentication 11.110.4.2 key simple 123456

[RouterA-radius-spec] primary accounting 11.110.4.2 key simple 123456

[RouterA-radius-spec] user-name-format without-domain

[RouterA-radius-spec] nas-ip 11.110.4.1

[RouterA-radius-spec] quit

此外,还需要修改RADIUS服务器上的配置文件:增加相应的用户,并指定与客户端一致的密码和IP地址。

# 创建ISP域,并配置业务类型和接入方式。

[RouterA] domain isp1

[RouterA-isp-isp1] service-type stb

[RouterA-isp-isp1] authentication ppp radius-scheme spec

[RouterA-isp-isp1] authorization ppp radius-scheme spec

[RouterA-isp-isp1] accounting ppp radius-scheme spec

[RouterA-isp-isp1] quit

[RouterA] domain isp2

[RouterA-isp-isp2] service-type stb

[RouterA-isp-isp2] authentication ppp radius-scheme spec

[RouterA-isp-isp2] authorization ppp radius-scheme spec

[RouterA-isp-isp2] accounting ppp radius-scheme spec

[RouterA-isp-isp2] quit

# 创建虚拟模板接口,并为其配置IP地址和PPPoE认证方式。

[RouterA] interface virtual-template 1

[RouterA-Virtual-Template1] ip address 2.1.1.1 255.255.255.0

[RouterA-Virtual-Template1] ppp authentication-mode pap domain isp1

[RouterA-Virtual-Template1] quit

[RouterA] interface virtual-template 2

[RouterA-Virtual-Template2] ip address 2.1.2.1 255.255.255.0

[RouterA-Virtual-Template2] ppp authentication-mode pap domain isp2

[RouterA-Virtual-Template2] quit

# 在用户的接入接口GigabitEthernet1/1/5.1和GigabitEthernet1/1/5.2上分别配置VLAN终结,并绑定虚拟模板接口。

[RouterA] interface gigabitethernet 1/1/5.1

[RouterA-GigabitEthernet1/1/5.1] vlan-type dot1q vid 1 second-dot1q 1 to 100

[RouterA-GigabitEthernet1/1/5.1] pppoe-server bind virtual-template 1

[RouterA-GigabitEthernet1/1/5.1] quit

[RouterA] interface gigabitethernet 1/1/5.2

[RouterA-GigabitEthernet1/1/5.2] vlan-type dot1q vid 2 second-dot1q 1 to 100

[RouterA-GigabitEthernet1/1/5.2] pppoe-server bind virtual-template 2

[RouterA-GigabitEthernet1/1/5.2] quit

(4)     在BRAS设备上配置可控组播

# 在虚拟模板接口上使能IGMP和可控组播功能。

[RouterA] interface virtual-template 1

[RouterA-Virtual-Template1] igmp enable

[RouterA-Virtual-Template1] igmp authorization-enable

[RouterA-Virtual-Template1] quit

[RouterA] interface virtual-template 2

[RouterA-Virtual-Template2] igmp enable

[RouterA-Virtual-Template2] igmp authorization-enable

[RouterA-Virtual-Template2] quit

# 配置IGMP用户的接入策略。

[RouterA] acl number 2000

[RouterA-acl-basic-2000] rule permit source 224.1.1.1 0

[RouterA-acl-basic-2000] rule permit source 225.1.1.1 0

[RouterA-acl-basic-2000] quit

[RouterA] user-profile profile1

[RouterA-user-profile-profile1] igmp access-policy 2000

[RouterA-user-profile-profile1] quit

[RouterA] domain isp1

[RouterA-isp-isp1] authorization-attribute user-profile profile1

[RouterA-isp-isp1] quit

[RouterA] acl number 2001

[RouterA-acl-basic-2001] rule permit source 225.1.1.1 0

[RouterA-acl-basic-2001] rule permit source 226.1.1.1 0

[RouterA-acl-basic-2001] quit

[RouterA] user-profile profile2

[RouterA-user-profile-profile2] igmp access-policy 2001

[RouterA-user-profile-profile2] quit

[RouterA] domain isp2

[RouterA-isp-isp2] authorization-attribute user-profile profile2

[RouterA-isp-isp2] quit

说明

RADIUS服务器上配置用户授权的组列表,也同样可以控制用户加入的组播组。

 

4. 验证配置

# 假设Host A和Host C两个用户已上线,此时在Router A上可显示IGMP用户的授权信息。

[RouterA] display igmp user-authorization

 Authorized users in total: 2

 

   User name: user1@isp1

   Access type: PPP

   Interface: Virtual-Access0

   Access interface: Virtual-Access0

   Maximum programs for order: 4

   User profile: profile1

   Authorized programs list:

 

   User name: user1@isp2

   Access type: PPP

   Interface: Virtual-Access1

   Access interface: Virtual-Access1

   Maximum programs for order: 4

   User profile: profile2

   Authorized programs list:

1.9.5  可控组播配置举例(IPoE接入方式)

1. 组网需求

·     运行OSPF协议的PIM-SM网络中有三个组播源Source 1、Source 2和Source 3,依次向组播组224.1.1.1、225.1.1.1和226.1.1.1发送组播数据。Router A的接口GigabitEthernet1/1/2为C-BSR和C-RP,服务于所有组播组。

·     Router A作为BRAS设备,将两个ISP的用户接入PIM-SM网络。要求通过配置可控组播功能,使ISP 1的用户只能加入组播组224.1.1.1和225.1.1.1,ISP 2的用户只能加入组播组225.1.1.1和226.1.1.1。

2. 组网图

图1-9 可控组播配置组网图(IPoE接入方式)

设备

接口

IP地址

设备

接口

IP地址

Source 1

-

10.100.1.1/24

Host A

-

192.168.1.2/24

Source 2

-

10.100.2.1/24

Host B

-

192.168.1.3/24

Source 3

-

10.100.3.1/24

Host C

-

192.168.2.2/24

RADIUS server

-

11.110.4.2/24

Host D

-

192.168.2.3/24

Router B

GE1/0/1

11.110.1.2/24

Router A

GE1/1/1

11.110.1.1/24

 

GE1/0/2

10.100.1.2/24

 

GE1/1/2

11.110.2.1/24

Router C

GE1/0/1

11.110.2.2/24

 

GE1/1/3

11.110.3.1/24

 

GE1/0/2

10.100.2.2/24

 

GE1/1/4

11.110.4.1/24

Router D

GE1/0/1

11.110.3.2/24

 

GE1/1/5.1

192.168.1.1/24

 

GE1/0/2

10.100.3.2/24

 

GE1/1/5.2

192.168.2.1/24

 

3. 配置步骤

(1)     配置IP地址和单播路由协议

请按照图1-9配置各接口的IP地址和子网掩码,并在PIM-SM域内的各路由器上配置OSPF协议,具体配置过程略。

(2)     使能IP组播路由,并配置PIM-SM

# 在Router A上使能IP组播路由,并在接口GigabitEthernet1/1/1~GigabitEthernet1/1/3上使能PIM-SM。

<RouterA> system-view

[RouterA] multicast routing

[RouterA-mrib] quit

[RouterA] interface gigabitethernet 1/1/1

[RouterA-GigabitEthernet1/1/1] pim sm

[RouterA-GigabitEthernet1/1/1] quit

[RouterA] interface gigabitethernet 1/1/2

[RouterA-GigabitEthernet1/1/2] pim sm

[RouterA-GigabitEthernet1/1/2] quit

[RouterA] interface gigabitethernet 1/1/3

[RouterA-GigabitEthernet1/1/3] pim sm

[RouterA-GigabitEthernet1/1/3] quit

# Router B上使能IP组播路由,并在各接口上使能PIM-SM

<RouterB> system-view

[RouterB] multicast routing

[RouterB-mrib] quit

[RouterB] interface gigabitethernet 1/0/1

[RouterB-GigabitEthernet1/0/1] pim sm

[RouterB-GigabitEthernet1/0/1] quit

[RouterB] interface gigabitethernet 1/0/2

[RouterB-GigabitEthernet1/0/2] pim sm

[RouterB-GigabitEthernet1/0/2] quit

Router CRouter D的配置与Router B相似,配置过程略。

# Router A的接口GigabitEthernet1/1/2配置为C-BSRC-RP

[RouterA] pim

[RouterA-pim] c-bsr 11.110.2.1

[RouterA-pim] c-rp 11.110.2.1

[RouterA-pim] quit

(3)     在BRAS设备上配置接入业务

# 配置RADIUS客户端。

[RouterA] radius scheme spec

[RouterA-radius-spec] primary authentication 11.110.4.2 key simple 123456

[RouterA-radius-spec] primary accounting 11.110.4.2 key simple 123456

[RouterA-radius-spec] user-name-format without-domain

[RouterA-radius-spec] nas-ip 11.110.4.1

[RouterA-radius-spec] quit

此外,还需要修改RADIUS服务器上的配置文件:增加相应的用户,并指定与客户端一致的密码和IP地址。

# 创建ISP域,并配置业务类型和接入方式。

[RouterA] domain isp1

[RouterA-isp-isp1] service-type stb

[RouterA-isp-isp1] authentication ipoe radius-scheme spec

[RouterA-isp-isp1] authorization ipoe radius-scheme spec

[RouterA-isp-isp1] accounting ipoe radius-scheme spec

[RouterA-isp-isp1] quit

[RouterA] domain isp2

[RouterA-isp-isp2] service-type stb

[RouterA-isp-isp2] authentication ipoe radius-scheme spec

[RouterA-isp-isp2] authorization ipoe radius-scheme spec

[RouterA-isp-isp2] accounting ipoe radius-scheme spec

[RouterA-isp-isp2] quit

 # 启用DHCP服务。

[RouterA] dhcp enable

# 为ISP域创建并配置DHCP地址池。

[RouterA] dhcp server ip-pool 1

[RouterA-dhcp-pool-1] network 192.168.2.1 mask 255.255.255.0

[RouterA-dhcp-pool-1] domain-name isp1

[RouterA-dhcp-pool-1] quit

[RouterA] dhcp server ip-pool 2

[RouterA-dhcp-pool-2] network 192.168.3.1 mask 255.255.255.0

[RouterA-dhcp-pool-2] domain-name isp2

[RouterA-dhcp-pool-2] quit

# 在用户的接入接口GigabitEthernet1/1/5.1和GigabitEthernet1/1/5.2上分别配置VLAN终结,并配置DHCP服务。

[RouterA] interface gigabitethernet 1/1/5.1

[RouterA-GigabitEthernet1/1/5.1] vlan-type dot1q vid 1 second-dot1q 1 to 100

[RouterA-GigabitEthernet1/1/5.1] dhcp server apply ip-pool 1

[RouterA-GigabitEthernet1/1/5.1] ip subscriber routed enable

[RouterA-GigabitEthernet1/1/5.1] ip subscriber initiator dhcp enable

[RouterA-GigabitEthernet1/1/5.1] ip subscriber dhcp domain isp1

[RouterA-GigabitEthernet1/1/5.1] quit

[RouterA] interface gigabitethernet 1/1/5.2

[RouterA-GigabitEthernet1/1/5.2] vlan-type dot1q vid 2 second-dot1q 1 to 100

[RouterA-GigabitEthernet1/1/5.2] dhcp server apply ip-pool 2

[RouterA-GigabitEthernet1/1/5.2] ip subscriber routed enable

[RouterA-GigabitEthernet1/1/5.2] ip subscriber initiator dhcp enable

[RouterA-GigabitEthernet1/1/5.2] ip subscriber dhcp domain isp2

[RouterA-GigabitEthernet1/1/5.2] quit

(4)     在BRAS设备上配置可控组播

# 在子接口上使能IGMP和可控组播功能,并配置按会话记录用户加入的组播组。

[RouterA] interface gigabitethernet 1/1/5.1

[RouterA-GigabitEthernet1/1/5.1] igmp enable

[RouterA-GigabitEthernet1/1/5.1] igmp authorization-enable

[RouterA-GigabitEthernet1/1/5.1] igmp join-by-session

[RouterA-GigabitEthernet1/1/5.1] quit

[RouterA] interface gigabitethernet 1/1/5.2

[RouterA-GigabitEthernet1/1/5.2] igmp enable

[RouterA-GigabitEthernet1/1/5.2] igmp authorization-enable

[RouterA-GigabitEthernet1/1/5.2] igmp join-by-session

[RouterA-GigabitEthernet1/1/5.2] quit

# 配置IGMP用户的接入策略。

[RouterA] acl number 2000

[RouterA-acl-basic-2000] rule permit source 224.1.1.1 0

[RouterA-acl-basic-2000] rule permit source 225.1.1.1 0

[RouterA-acl-basic-2000] quit

[RouterA] user-profile profile1

[RouterA-user-profile-profile1] igmp access-policy 2000

[RouterA-user-profile-profile1] quit

[RouterA] domain isp1

[RouterA-isp-isp1] authorization-attribute user-profile profile1

[RouterA-isp-isp1] quit

[RouterA] acl number 2001

[RouterA-acl-basic-2001] rule permit source 225.1.1.1 0

[RouterA-acl-basic-2001] rule permit source 226.1.1.1 0

[RouterA-acl-basic-2001] quit

[RouterA] user-profile profile2

[RouterA-user-profile-profile2] igmp access-policy 2001

[RouterA-user-profile-profile2] quit

[RouterA] domain isp2

[RouterA-isp-isp2] authorization-attribute user-profile profile2

[RouterA-isp-isp2] quit

说明

RADIUS服务器上配置用户授权的组列表,也同样可以控制用户加入的组播组。

 

4. 验证配置

# 假设Host A和Host C两个用户已上线,此时在Router A上可显示IGMP用户的授权信息。

[RouterA] display igmp user-authorization

 Authorized users in total: 2

 

   User name: user1@isp1

   Access type: IPoE

   Interface: Multicast-UA1

   Access interface: GigabitEthernet1/1/5.1

   VLAN ID: 1

   Second VLAN ID: 2

   Maximum programs for order: 4

   User profile: profile1

   Authorized programs list:

 

   User name: user1@isp2

   Access type: IPoE

   Interface: Multicast-UA2

   Access interface: GigabitEthernet1/1/5.2

   VLAN ID: 2 

   Second VLAN ID: 2

   Maximum programs for order: 4

   User profile: profile2

   Authorized programs list:

1.9.6  可控组播配置举例(Portal接入方式)

1. 组网需求

·     运行OSPF协议的PIM-SM网络中有三个组播源Source 1、Source 2和Source 3,依次向组播组224.1.1.1、225.1.1.1和226.1.1.1发送组播数据。Router A的接口GigabitEthernet1/1/2为C-BSR和C-RP,服务于所有组播组。

·     Router A作为BRAS设备,将两个ISP的用户接入PIM-SM网络。要求通过配置可控组播功能,使ISP 1的用户只能加入组播组224.1.1.1和225.1.1.1,ISP 2的用户只能加入组播组225.1.1.1和226.1.1.1。

2. 组网图

图1-10 可控组播配置组网图(Portal接入方式)

设备

接口

IP地址

设备

接口

IP地址

Source 1

-

10.100.1.1/24

Host A

-

192.168.1.2/24

Source 2

-

10.100.2.1/24

Host B

-

192.168.1.3/24

Source 3

-

10.100.3.1/24

Host C

-

192.168.2.2/24

RADIUS server

-

11.110.4.2/24

Host D

-

192.168.2.3/24

iMC server

-

11.110.5.2/24

Router A

GE1/1/1

11.110.1.1/24

Router B

GE1/0/1

11.110.1.2/24

 

GE1/1/2

11.110.2.1/24

 

GE1/0/2

10.100.1.2/24

 

GE1/1/3

11.110.3.1/24

Router C

GE1/0/1

11.110.2.2/24

 

GE1/1/4

11.110.4.1/24

 

GE1/0/2

10.100.2.2/24

 

GE1/1/5

192.168.2.1/24

Router D

GE1/0/1

11.110.3.2/24

 

GE1/1/6

192.168.1.1/24

 

GE1/0/2

10.100.3.2/24

 

GE1/1/7

11.110.5.1/24

 

3. 配置步骤

(1)     配置IP地址和单播路由协议

请按照图1-10配置各接口的IP地址和子网掩码,并在PIM-SM域内的各路由器上配置OSPF协议,具体配置过程略。

(2)     使能IP组播路由,并配置PIM-SM

# 在Router A上使能IP组播路由,并在接口GigabitEthernet1/1/1~GigabitEthernet1/1/3上使能PIM-SM。

<RouterA> system-view

[RouterA] multicast routing

[RouterA-mrib] quit

[RouterA] interface gigabitethernet 1/1/1

[RouterA-GigabitEthernet1/1/1] pim sm

[RouterA-GigabitEthernet1/1/1] quit

[RouterA] interface gigabitethernet 1/1/2

[RouterA-GigabitEthernet1/1/2] pim sm

[RouterA-GigabitEthernet1/1/2] quit

[RouterA] interface gigabitethernet 1/1/3

[RouterA-GigabitEthernet1/1/3] pim sm

[RouterA-GigabitEthernet1/1/3] quit

# Router B上使能IP组播路由,并在各接口上使能PIM-SM

<RouterB> system-view

[RouterB] multicast routing

[RouterB-mrib] quit

[RouterB] interface gigabitethernet 1/1/1

[RouterB-GigabitEthernet1/1/1] pim sm

[RouterB-GigabitEthernet1/1/1] quit

[RouterB] interface gigabitethernet 1/1/2

[RouterB-GigabitEthernet1/1/2] pim sm

[RouterB-GigabitEthernet1/1/2] quit

Router CRouter D的配置与Router B相似,配置过程略。

# Router A的接口GigabitEthernet1/1/2配置为C-BSRC-RP

[RouterA] pim

[RouterA-pim] c-bsr 11.110.2.1

[RouterA-pim] c-rp 11.110.2.1

[RouterA-pim] quit

(3)     在BRAS设备上配置接入业务

# 配置RADIUS客户端。

[RouterA] radius scheme spec

[RouterA-radius-spec] primary authentication 11.110.4.2 key simple 123456

[RouterA-radius-spec] primary accounting 11.110.4.2 key simple 123456

[RouterA-radius-spec] user-name-format without-domain

[RouterA-radius-spec] nas-ip 11.110.4.1

[RouterA-radius-spec] quit

# 配置Portal客户端。

[RouterA] portal web-server spec

[RouterA-portal-websvr-spec] url http://10.110.5.2:8080/portal

[RouterA-portal-websvr-spec] url-parameter user-ip source-address

[RouterA-portal-websvr-spec] quit

[RouterA] portal server spec

[RouterA-portal-server-spec] ip 10.110.5.2 key simple 123456

[RouterA-portal-websvr-spec] quit

此外,还需要进行如下配置:

·     修改RADIUS服务器上的配置文件:增加相应的用户,并指定与客户端一致的密码和IP地址。

·     在iMC服务器上:配置上线用户的地址范围,配置到用户方向的路由下一跳为10.110.5.1,并指定与客户端一致的密码和IP地址。

·     在用户主机上:配置ISP 1中主机到iMC服务器方向的路由下一跳为192.168.1.1;配置ISP 2中主机到iMC服务器方向的路由下一跳为192.168.2.1。

# 创建ISP域,并配置业务类型和接入方式。

[RouterA] domain isp1

[RouterA-isp-isp1] service-type stb

[RouterA-isp-isp1] authentication portal radius-scheme spec

[RouterA-isp-isp1] authorization portal radius-scheme spec

[RouterA-isp-isp1] accounting portal radius-scheme spec

[RouterA-isp-isp1] quit

[RouterA] domain isp2

[RouterA-isp-isp2] service-type stb

[RouterA-isp-isp2] authentication portal radius-scheme spec

[RouterA-isp-isp2] authorization portal radius-scheme spec

[RouterA-isp-isp2] accounting portal radius-scheme spec

[RouterA-isp-isp2] quit

# 在用户的接入接口GigabitEthernet1/1/5和GigabitEthernet1/1/6上分别配置Portal服务。

[RouterA] interface gigabitethernet 1/1/5

[RouterA-GigabitEthernet1/1/5] portal enable method direct

[RouterA-GigabitEthernet1/1/5] portal domain isp2

[RouterA-GigabitEthernet1/1/5] portal apply web-server spec

[RouterA-GigabitEthernet1/1/5] quit

[RouterA] interface gigabitethernet 1/1/6

[RouterA-GigabitEthernet1/1/6] portal enable method direct

[RouterA-GigabitEthernet1/1/6] portal domain isp1

[RouterA-GigabitEthernet1/1/6] portal apply web-server spec

[RouterA-GigabitEthernet1/1/6] quit

(4)     在BRAS设备上配置可控组播

# 在子接口上使能IGMP和可控组播功能,并配置按会话记录用户加入的组播组。

[RouterA] interface gigabitethernet 1/1/5

[RouterA-GigabitEthernet1/1/5] igmp enable

[RouterA-GigabitEthernet1/1/5] igmp authorization-enable

[RouterA-GigabitEthernet1/1/5] igmp join-by-session

[RouterA-GigabitEthernet1/1/5] quit

[RouterA] interface gigabitethernet 1/1/6

[RouterA-GigabitEthernet1/1/6] igmp enable

[RouterA-GigabitEthernet1/1/6] igmp authorization-enable

[RouterA-GigabitEthernet1/1/6] igmp join-by-session

[RouterA-GigabitEthernet1/1/6] quit

# 配置IGMP用户的接入策略。

[RouterA] acl number 2000

[RouterA-acl-basic-2000] rule permit source 224.1.1.1 0

[RouterA-acl-basic-2000] rule permit source 225.1.1.1 0

[RouterA-acl-basic-2000] quit

[RouterA] user-profile profile1

[RouterA-user-profile-profile1] igmp access-policy 2000

[RouterA-user-profile-profile1] quit

[RouterA] domain isp1

[RouterA-isp-isp1] authorization-attribute user-profile profile1

[RouterA-isp-isp1] quit

[RouterA] acl number 2001

[RouterA-acl-basic-2001] rule permit source 225.1.1.1 0

[RouterA-acl-basic-2001] rule permit source 226.1.1.1 0

[RouterA-acl-basic-2001] quit

[RouterA] user-profile profile2

[RouterA-user-profile-profile2] igmp access-policy 2001

[RouterA-user-profile-profile2] quit

[RouterA] domain isp2

[RouterA-isp-isp2] authorization-attribute user-profile profile2

[RouterA-isp-isp2] quit

说明

RADIUS服务器上配置用户授权的组列表,也同样可以控制用户加入的组播组。

 

4. 验证配置

# 假设Host A和Host C两个用户已上线,此时在Router A上可显示IGMP用户的授权信息。

[RouterA] display igmp user-authorization

 Authorized users in total: 2

 

   User name: user1@isp1

   Access type: Portal

   Interface: Multicast-UA1

   Access interface: GigabitEthernet1/1/6

   Maximum programs for order: 4

   User profile: profile1

   Authorized programs list:

 

   User name: user1@isp2

   Access type: Portal

   Interface: Multicast-UA2

   Access interface: GigabitEthernet1/1/5

   Maximum programs for order: 4

   User profile: profile2

   Authorized programs list:

1.10  常见配置错误举例

1.10.1  接收者侧路由器上无组成员信息

1. 故障现象

当某主机发送了加入组播组G的报文后,离该主机最近的路由器上却没有组播组G的组成员信息。

2. 故障分析

·     组网、接口连线的正确与否以及接口的协议层是否up将直接影响组播组成员信息的生成;

·     在路由器上必须使能组播路由,在连接主机的接口上必须使能IGMP;

·     如果路由器接口上运行的IGMP版本比主机的低,那么路由器将无法识别主机发来的较高版本的IGMP报告报文;

·     如果在接口上使用命令igmp group-policy对加入组播组G进行了限制后,该接口将不再接收未通过过滤的那些要求加入组播组G的报文。

3. 处理过程

(1)     检查组网是否正确,接口间的连线是否正确,以及接口状态是否正常,是否配置了正确的IP地址。通过命令display igmp interface查看接口信息。若无接口信息输出,说明接口状态异常,原因通常是接口上配置了shutdown命令,或者接口连线不正确,或者接口上没有配置正确的IP地址。

(2)     检查是否使能了组播路由。通过命令display current-configuration查看是否配置了命令multicast routing。若缺少该配置,则需要在系统视图下执行命令multicast routing使能IP组播路由,同时也需要在相应接口上使能IGMP。

(3)     检查接口上运行的IGMP版本。通过命令display igmp interface来检查接口上运行的IGMP版本是否低于主机所使用的版本。

(4)     检查接口上是否配置了ACL规则来限制主机加入组播组G。通过命令display current-configuration interface观察是否配置了igmp group-policy命令。如果配置的ACL规则对加入组播组G进行了限制,则需要修改该ACL规则,允许接受组播组G的报告报文。

1.10.2  同一网段各路由器上组成员关系不一致

1. 故障现象

在同一网段的不同IGMP路由器上,各自维护的组成员关系不一致。

2. 故障分析

·     运行IGMP的路由器为每个接口维护多个参数,各参数之间相互影响,非常复杂。如果同一网段路由器的IGMP接口参数配置不一致,必然导致组成员关系的混乱;

·     另外,IGMP目前有3个版本,版本不同的IGMP路由器与主机之间虽然可以部分兼容,但是连接在同一网段的所有路由器必须运行相同版本的IGMP。如果同一网段路由器的IGMP版本不一致,也将导致IGMP组成员关系的混乱。

3. 处理过程

(1)     检查IGMP配置。通过命令display current-configuration观察接口上IGMP的配置信息。

(2)     在同一网段的所有路由器上执行命令display igmp interface来检查IGMP相关定时器的参数,确保配置一致。

(3)     通过命令display igmp interface来检查各路由器上运行的IGMP版本是否一致。

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们