11-IPoE配置
本章节下载: 11-IPoE配置 (5.22 MB)
目 录
1.1.10 普通模式下IPoE 802.1X认证用户接入流程
1.1.11 转发与控制分离模式下IPoE绑定认证用户接入流程
1.1.12 转发与控制分离模式下IPoE Web认证用户接入流程
1.1.13 转发与控制分离模式下IPoE Web认证支持快速认证
1.3.3 普通模式下IPoE 802.1X认证接入用户配置任务
1.3.4 转发与控制分离模式下IPoE绑定认证接入用户配置任务
1.3.5 转发与控制分离模式下IPoE Web认证接入用户配置任务
1.12.8 配置DHCP Option中circuit-id和remote-id解析格式
1.12.11 配置允许IPoE用户异常下线后通过报文重新触发上线
1.12.12 配置允许DHCP个人接入用户采用松散模式上线
1.15.9 配置IPoE Web支持HTTP/HTTPS攻击防范功能
1.17.3 配置802.1X客户端下线强制IPoE下线功能
1.23 配置IPoE接入用户的NAS-PORT-ID属性封装
1.30.2 DHCPv4报文触发IPoE接入配置举例(授权远端BAS IP地址池)
1.30.3 DHCPv4报文触发IPoE接入配置举例(授权IP地址池组)
1.30.4 DHCPv6报文触发IPoE接入配置举例(授权远端IPv6地址池)
1.30.5 IPv6 ND RS报文触发IPoE接入配置举例(AAA授权前缀)
1.30.6 IPv6 ND RS报文触发IPoE接入配置举例(ND前缀池授权前缀)
1.30.7 IPv6 ND RS+DHCPv6(IA_PD)触发IPoE接入配置举例
1.30.9 NS/NA报文触发静态IPoE用户接入配置举例
1.30.10 IPv6 PD前缀用户通过未知源IP报文触发静态IPoE用户接入配置举例
1.30.15 IPoE为接入用户授权地址池和VPN配置举例
1.30.17 IPoE DHCPv4用户普通Web认证配置举例(授权远端BAS IP地址池)
1.30.18 IPoE DHCPv4多网段用户普通Web认证配置举例(授权远端BAS IP地址池)
1.30.19 IPoE DHCPv6用户普通Web认证配置举例(授权远端IPv6地址池)
1.30.20 IPoE NDRS用户普通Web认证配置举例(ND前缀池授权前缀)
1.30.21 IPoE MAC Trigger无感知认证配置举例(二层无感知)
1.30.22 IPoE普通MAC无感知认证配置举例(二层无感知)
1.30.23 IPoE MAC Trigger无感知认证配置举例(三层无感知)
1.30.24 IPoE MAC无感知认证配置举例(三层无感知)
1.30.27 双栈IPoE用户普通Web认证配置举例(URL白名单)
1.30.28 双栈IPoE用户IPv6智能多出口Web认证配置举例
1.30.29 双栈IPoE用户普通MAC无感知认证配置举例
1.30.32 IPoE DHCPv4+IPv6 ND RS双栈用户漫游配置举例
1.31.2 DHCPv4报文触发IPoE接入配置举例(授权本地ODAP IP地址池)
1.31.3 DHCPv4报文触发IPoE接入配置举例(授权远端BAS IP地址池)
1.31.4 DHCPv4报文触发IPoE接入配置举例(授权IP地址池组)
1.31.5 DHCPv6报文触发IPoE接入配置举例(授权本地ODAP IPv6地址池)
1.31.6 DHCPv6报文触发IPoE接入配置举例(授权远端BAS IPv6地址池)
1.31.7 IPoE DHCP双栈用户接入配置举例(授权远端BAS IP/IPv6地址池)
1.31.8 IPv6 ND RS报文触发IPoE接入配置举例(AAA授权前缀)
1.31.9 IPv6 ND RS报文触发IPoE接入配置举例(ND前缀池授权前缀)
1.31.10 IPv6 ND RS+DHCPv6(IA_PD)触发IPoE接入配置举例
1.31.12 NS/NA报文触发静态IPoE用户接入配置举例
1.31.13 IPv6 PD前缀用户通过未知源IP报文触发静态IPoE用户接入配置举例
1.31.17 IPoE DHCPv4用户普通Web认证配置举例(授权远端BAS IP地址池)
1.31.18 IPoE DHCPv4多网段用户普通Web认证配置举例(授权远端BAS IP地址池)
1.31.19 IPoE DHCPv6用户普通Web认证配置举例(授权远端BAS IPv6地址池)
1.31.20 IPoE NDRS用户普通Web认证配置举例(ND前缀池授权前缀)
1.31.21 IPoE MAC Trigger无感知认证配置举例(二层无感知)
1.31.22 IPoE普通MAC无感知认证配置举例(二层无感知)
1.31.23 双栈IPoE用户普通MAC无感知认证配置举例
1.31.24 未知源IP报文触发IPoE全局静态用户接入配置举例(UP备份组网)
IPoE(IP over Ethernet)是一种常见的IPoX接入方式,目前支持如下几种认证方式。
· 绑定认证是指BRAS(Broadband Remote Access Server,宽带远程接入服务器)设备根据用户接入的位置信息自动生成用户名和密码进行身份认证的一种认证方式,无需用户输入用户名和密码。
· Web认证是指用户通过访问Web认证服务器的认证页面,交互输入用户名和密码进行身份认证的一种认证方式。
· 802.1X认证,是一种通过在802.1X客户端中输入用户名/密码进行认证的一种方式。当需要在三层接口上实现802.1X方式接入时,可以配置802.1X认证方式。
IPoE的典型组网方式如下图所示,它由六个基本要素组成:用户主机、BRAS接入设备、AAA服务器、安全策略服务器、DHCP服务器和Portal服务器。
图1-1 IPoE系统组成示意图
用户终端的客户端系统,为运行HTTP/HTTPS协议的浏览器或运行H3C iNode客户端的主机。
提供接入服务的设备,主要有三方面的作用:
· 在认证之前,阻止用户访问互联网资源。
· 在认证过程中,与AAA服务器交互,完成身份认证/授权/计费的功能。
· 在认证通过后,允许用户访问被授权的互联网资源。
与接入设备进行交互,完成对用户的认证、授权和计费。目前仅RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)服务器支持对IPoE用户进行认证、授权和计费。
与接入设备进行交互,完成对用户的安全检测,并对用户进行安全授权操作。
与用户主机、接入设备进行交互,完成对用户主机IP地址的管理和分配。
包括Portal Web服务器和Portal认证服务器。Portal Web服务器负责向客户端提供Web认证页面,并将客户端的认证信息(用户名、密码等)提交给Portal认证服务器。Portal认证服务器用于与接入设备交互认证客户端的认证信息。Portal Web服务器通常与Portal认证服务器是一体的,也可以是独立的服务器端系统。
IPoE的接入模式分为二层和三层两种模式,对应的用户分别通过二层网络或三层网络接入。
· 二层接入:用户直接连接接入设备,或通过二层网络设备连接接入设备。接入设备需要识别用户的MAC地址。
· 三层接入:用户流量通过三层网络路由到接入设备,用户可直接连接接入设备或通过三层转发设备连接接入设备。接入设备不关心用户的MAC地址。
需要注意的是,通过三层转发设备接入时,用户报文信息中的源MAC地址为三层网络设备的MAC地址,并非用户的MAC地址,因此该方式下用户的MAC地址不能作为用户的身份标识。
为解决传统BRAS(Broadband Remote Access Server,宽带远程接入服务器)中存在的控制平面与转发平面能力不匹配、无法共享资源以及新业务部署不及时等问题,业界提出了基于vBRAS(Virtual Broadband Remote Access Server,虚拟化宽带远程接入服务器)的转发与控制分离方案。
转发与控制分离是指将转发平面与控制平面完全解耦,二者互不约束。在转发与控制分离方案中,包括CP和UP两种角色,由二者共同实现BRAS功能。其中:
· CP(Control Plane,控制平面):负责完成用户身份认证、地址分配与管理等控制平面功能。其中,CP一般由vBRAS系列虚拟宽带远程接入服务器担任。
· UP(User Plane,用户平面):负责完成用户数据流量转发和流量控制等转发平面功能。其中,UP可由路由器或者vBRAS虚拟宽带远程接入服务器担任。
CP和UP之间通过建立如下三条通道实现转发与控制分离功能:
· 管理通道:用作CP和UP之间配置下发的通道。
· 控制通道:用作CP和UP之间表项下发的通道。
· 协议通道:用作CP和UP之间协议报文交互的通道。
在转发与控制分离的组网环境中,IPoE有三种工作模式:普通模式、控制模式和转发模式。其中控制模式和转发模式又统称为转发与控制分离模式。
· 普通模式:本模式下,不区分CP和UP,BRAS模块的控制及数据转发业务均由同一台设备完成。工作在本模式的设备称作一体化设备。
· 控制模式:即session模式:该模式基于远端接口实现CP功能。当CP所连接的UP设备支持IPoE功能时,可采用session模式,工作在session模式的CP将会向UP发送BRAS会话信息,UP根据从CP收到的BRAS会话信息指导数据报文转发。有关远端接口的介绍,请参见vBRAS-CP产品配置指导中的“CP-UP连接管理”。
· 转发模式:本模式下,设备仅完成数据转发业务。工作在本模式的设备称作UP。
· 除特殊说明外,本手册中的IPoE均指工作在普通模式的情况。
· 转发与控制分离模式下,本设备仅支持作为UP,不支持作为CP。
IPoE支持通过IP报文、ARP报文、NS报文、NA报文、RS报文和DHCP报文多种触发方式上线。根据用户是否拥有独立的业务属性,IPoE用户可分为个人接入用户、专线接入用户两种类型。
个人接入用户拥有独立的业务属性,接入设备根据用户的位置信息和报文特征对其进行独立的认证、授权和计费。
根据触发上线方式的不同,可以将个人接入用户分为以下两种类型:
· 动态个人接入用户
动态个人接入用户通过IP报文、RS报文或DHCP报文触发上线,且由报文动态触发认证并根据认证结果建立IPoE会话。根据触发上线的方式不同可将动态个人接入用户分为未知源IP接入用户、IPv6 ND RS接入用户和DHCP接入用户。对于DHCP接入用户,还需要与DHCP服务器交互获取IP地址;对于IPv6 ND RS接入用户,还需要与接入设备进行交互获取IPv6地址。
· 静态个人接入用户
静态个人接入用户通过IP、ARP、NS或NA报文触发上线,需要用户报文与手工配置的IPoE会话匹配后才能触发认证。
对于不是因为DHCP或IPv6 ND RS接入用户主动释放IP地址引起的用户IPoE会话被删除的情况,在开启IPoE用户异常下线后重新上线功能后,当设备再次收到该用户的IP、ARP或NS/NA报文时,可恢复用户的IPoE会话,恢复后的IPoE会话仍为DHCP和IPv6 ND RS接入类型。有关IPoE用户异常下线后重新上线功能的介绍,请参见“1.12.11 配置允许IPoE用户异常下线后通过报文重新触发上线”。
专线是指将接入设备上的某个接口或接口上的某些系统资源整体出租给一组用户。一条专线下可以接入多个用户,在认证流程中表现为一个用户,也称为专线接入用户。
根据对专线资源的占用情况,可以分为以下几种类型:
· 接口专线用户:一个接口上接入的所有IP用户,该接口上接入的所有用户统一进行认证、授权和计费。
· 子网专线用户:一个接口上接入的指定子网内的所有IP用户,与接口专线用户类似,该接口上接入的所有指定子网的用户统一进行认证、授权和计费。
· L2VPN专线用户:L2VPN组网下,一个接口上接入的所有IP用户,与接口专线用户类似,该接口上接入的所有用户统一进行认证、授权和计费。
· 静态专线用户:静态专线用户是一种特殊的专线,具体表现在如下两个方面:
¡ 在业务属性的独立性方面:类似接口专线,该接口上接入的所有用户统一进行认证、授权和计费。当静态专线会话上线后,任意源IP地址的报文都允许从专线接口通过。
¡ 在触发上线方式方面:类似全局静态个人会话,在接入接口上开启了IPoE功能、且接口状态up的情况下,当IP、ARP、NS或NA流量通过时接入设备会尝试以配置的用户名和密码发起认证。如果认证通过,则建立静态专线会话;如果认证未通过,则不建立静态专线会话。
因静态专线的特殊性,为便于描述,后续如无特殊说明,专线用户仅指接口专线、子网专线和L2VPN专线,不包括静态专线。
一个IPoE会话表示了一个或一组IPoE客户端的所有网络连接,可由客户端的IP报文特征或接入位置信息来标识,用于记录IPoE客户端的身份信息、认证状态、授权属性和DHCP地址分配信息等内容。
根据IPoE用户类型不同,IPoE会话可分为IPoE个人会话和IPoE专线会话两种类型。
根据IPoE会话的触发方式,可以将IPoE个人会话分为IPoE动态个人会话和IPoE静态个人会话两种类型。
· IPoE动态个人会话
由动态个人接入用户触发建立的IPoE会话称为动态个人会话。
每个动态个人会话都有自己的生存周期,动态个人会话将在以下几种情况下被删除:
¡ AAA服务器授权的在线时长到期。
¡ AAA服务器强制用户下线。
¡ 在AAA服务器授权的闲置切断时长内,该会话的用户流量小于授权的流量阈值。
¡ 接入设备对该会话的在线用户进行探测,对于单协议栈用户,当探测失败的次数达到最大值时会话会被删除,对于双协议栈用户当且仅当双栈都探测失败达到最大值时会话才会被删除。
¡ 对于DHCP报文触发建立的IPoE会话,对于单协议栈用户,当DHCP服务器分配的租约时长到期时会话会被删除,对于双协议栈用户当且仅当DHCP服务器分配的租约时长都到期时会话才会被删除。
¡ 用户接入接口Down。
· IPoE静态个人会话
静态个人会话仅代表一个指定IP地址(IPv6或双栈全局静态也可包含IPv6 Delegation前缀)的IPoE客户端的所有网络连接,通常用于为IP地址已知的客户端单独提供稳定的接入服务。
在接入接口上开启了IPoE功能、且接口状态up的情况下,当IP、ARP、NS或NA流量通过时接入设备会尝试以配置的用户名和密码发起认证。如果认证通过,则建立静态个人会话;如果认证未通过,则不建立静态个人会话。
由专线用户的配置触发建立的IPoE会话称为IPoE专线会话,包括以下几种类型:
· 接口专线会话:代表一个接口上所有IPoE客户端的网络连接。
· 子网专线会话:代表一个接口上指定子网内的所有IPoE客户端的网络连接。
· L2VPN专线会话:代表一个接口上所有IPoE客户端的网络连接。
· 静态专线会话:代表一个接口上所有IPoE客户端的网络连接。
对于接口专线会话、子网专线会话和L2VPN专线会话:在接入接口上开启了IPoE功能、且接口状态up的情况下,无需用户流量触发,接入设备会主动尝试以配置的用户名和密码发起认证。如果认证通过,则建立专线会话;如果认证未通过,则不建立专线会话。
静态专线会话是一种特殊的专线,具体表现在如下两个方面:
· 在业务属性的独立性方面:类似接口专线,该接口上接入的所有用户统一进行认证、授权和计费。当静态专线会话上线后,任意源IP地址的报文都允许从专线接口通过。
· 在触发上线方式方面:类似全局静态个人会话,在接入接口上开启了IPoE功能、且接口状态up的情况下,当IP、ARP、NS或NA流量通过时接入设备会尝试以配置的用户名和密码发起认证。如果认证通过,则建立静态专线会话;如果认证未通过,则不建立静态专线会话。
因静态专线的特殊性,为便于描述,后续如无特殊说明,专线用户仅指接口专线、子网专线和L2VPN专线,不包括静态专线。
对于通过DHCP报文触发认证的用户,在认证成功之后由DHCP模块为其分配AAA授权的地址池中的地址。若AAA未授权,则使用用户所属认证域中配置的授权地址池;若认证域中未配置授权地址池,则在接口上配置了IP地址的情况下,由DHCP模块分配与接口IP地址同一网段的IP地址给用户。
在IPv6组网中,主机可以通过如下几种方式分配到IPv6全球单播地址:
· NDRA方式:对于通过RS报文触发认证的用户,在认证成功之后,可通过ND协议中的RA报文获得IPv6地址前缀,并通过获得的IPv6地址前缀生成IPv6全球单播地址。IPv6地址前缀的来源有四种:AAA授权的IPv6前缀、AAA授权的ND前缀池中的前缀、接口下配置的RA前缀、接口下配置的IPv6全球单播地址的前缀。四种来源的优先级依次降低,AAA授权的IPv6前缀优先级最高。其中:
¡ AAA授权的IPv6前缀、接口下配置的RA前缀、接口下配置的IPv6全球单播地址的前缀三种方式适用于共享前缀应用场景,该场景中多个用户共用同一个IPv6前缀。
¡ AAA授权的ND前缀池(或ND前缀池组)中的前缀方式适用于每用户每前缀应用场景,该场景中每个用户都独占一个IPv6前缀。
· DHCPv6(IA_NA)方式:主机通过DHCPv6协议申请IPv6全球单播地址。在为用户授权了IPv6地址池的情况下,DHCP报文触发方式还支持通过以下两种方式为用户授权指定的128位IPv6全球单播地址。
¡ AAA服务器通过Framed-IPv6-Address属性授权的128位IPv6全球单播地址。
¡ 本地用户视图下通过authorization-attribute ipv6命令授权的128位IPv6全球单播地址。
需要注意的是,上述两种方式授权的128位IPv6全球单播地址必须是授权的IPv6地址池中的地址,否则不会使用上述两种方式授权的128位IPv6全球单播地址,而是采用IPv6地址池中地址随机分配给用户。
· DHCPv6(IA_PD)方式:CPE设备通过DHCPv6协议申请代理前缀,并使用申请到的代理前缀为下面的主机分配IPv6全球单播地址。代理前缀分配方式中地址池的选择原则和通过DHCPv6协议分配IPv6全球单播地址方式中地址池的选择原则一致。
其中,NDRA+IA_PD、IA_NA+IA_PD可以根据实际组网需求进行组合使用,以满足多种地址分配方式的需求。
当采用ND前缀池为用户分配前缀(即每用户每前缀应用场景中)时,对于IPoE每用户每前缀用户,需要注意:
· 不支持专线方式(包括接口专线、子网专线和L2VPN专线)。
· 不支持ICMPv6探测方式。
· 不允许配置和IPoE每用户每前缀用户相同前缀的静态用户。
· 不允许在IPoE每用户每前缀用户的上线接口配置IPv6全球单播地址。
对于DHCPv6(IA_PD)方式,不允许在用户上线接口配置IPv6全球单播地址。
其它类型的用户,可以通过静态配置或通过DHCP动态分配获得IP地址,但其IP地址的获取与IPoE认证无关。
普通模式下IPoE绑定认证用户的接入流程主要包括以下几个步骤:
(1) 用户识别与发起认证请求
¡ 对于动态个人接入用户,当发出的连接请求报文到达接入设备后,接入设备使用从报文中获取用户的物理位置等信息生成用户名和密码或配置的用户名和密码,向AAA服务器发起认证请求。
¡ 对于静态个人接入用户,当用户的首报文通过接入设备时,接入设备以配置的认证信息向AAA服务器发起认证请求。
¡ 对于专线接入用户,无需用户流量触发,接入设备会主动以配置的认证信息向AAA服务器发起认证请求。
(2) 身份认证
接入设备根据该用户关联的认证域的配置向AAA服务器发起认证请求,并完成认证授权操作,若配置有安全策略服务器,则由安全策略服务器进行安全授权操作。
(3) 地址分配与管理(可选)
对于DHCP接入用户,身份认证通过后,接入设备通知DHCP模块负责为接入用户分配IP地址;对于IPv6 ND RS接入用户,身份认证通过后,IPoE负责为接入用户分配前缀,用户通过此前缀生成IPv6地址。若用户已经获取到IP地址,则无此步骤直接进入步骤(4)。
(4) 接入控制
IP地址分配成功后,接入设备通知用户上线,并根据授权结果对用户进行接入控制,计费等。
下面将详细介绍几种典型的IPoE用户接入流程。
当用户通过DHCP方式动态获取IP地址时,BRAS截获用户的DHCP报文,首先对用户进行身份认证,如果认证通过则可以允许继续申请动态IP地址,否则终止用户接入过程。这里以DHCP中继组网环境中的IPv4 DHCP用户的IPoE接入为例,具体流程如图1-2所示。
图1-2 IPv4 DHCP用户接入流程图
IPv4 DHCP报文触发的IPoE接入过程如下:
(1) DHCP客户端发送DHCP-DISCOVER报文。
(2) 接入设备在DHCP-DISCOVER报文中插入Option82选项,然后把报文交由DHCP中继设备处理。
(3) DHCP中继设备根据DHCP-DISCOVER报文创建一个IPoE会话,并向AAA服务器发送认证请求。其中,认证请求消息中的用户名包含了用户信息,如DHCP报文中的Client ID选项、用户报文的源MAC地址。
(4) AAA服务器返回认证结果。若用户认证通过,则发送认证接受报文,并携带授权信息;否则发送认证拒绝报文。
(5) DHCP中继获取用户的认证和授权结果,更新IPoE会话的认证状态为通过或失败。
(6) 如果用户认证通过,DHCP中继将DHCP-DISCOVER报文转发给DHCP服务器。如果认证失败,DHCP中继将丢弃DHCP-DISCOVER报文。
(7) DHCP服务器回应DHCP-OFFER报文。之后,DHCP中继把DHCP-OFFER报文转发给DHCP客户端。
(8) DHCP客户端根据DHCP-OFFER报文选择一个DHCP服务器,发送DHCP-REQUEST报文。之后,DHCP中继把DHCP-REQUEST报文转发给DHCP服务器。
(9) DHCP服务器回应DHCP-ACK报文。
(10) DHCP中继从DHCP-ACK报文中解析出用户的IP地址和其它地址参数信息,更新IPoE会话,并下发User Profile策略,然后将IPoE会话的状态置为在线。
(11) DHCP中继把DHCP-ACK报文转发给DHCP客户端。DHCP客户端根据收到的DHCP-ACK报文获得IP地址以及相关地址参数信息。
(12) 接入设备向AAA服务器发送计费开始报文,开始对该用户计费。
当用户通过DHCP方式动态获取IP地址时,BRAS截获用户的DHCP报文,首先对用户进行身份认证,如果认证通过则可以允许继续申请动态IP地址,否则终止用户接入过程。DHCPv6包括IA_NA和IA_PD两种上线方式,其中:IA_NA为主机通过DHCPv6协议申请IPv6全球单播地址,IA_PD为Client端设备通过DHCPv6协议申请代理前缀。
这里以DHCP中继组网环境中的DHCP用户的IPoE接入为例,具体流程如图1-3所示。
图1-3 DHCP双栈用户接入流程图
双协议栈用户DHCP报文触发的IPoE接入过程如下:
(1) DHCPv4客户端发送DHCP-DISCOVER报文。
(2) 接入设备在DHCP-DISCOVER报文中插入Option82选项,然后把报文交由DHCPv4中继设备处理。
(3) DHCPv4中继设备根据DHCP-DISCOVER报文创建一个IPoE会话,并向AAA服务器发送认证请求。其中,认证请求消息中的用户名包含了用户信息,如DHCPv4报文中的Client ID选项、用户报文的源MAC地址。
(4) AAA服务器返回认证结果。若用户认证通过,则发送认证接受报文,并携带授权信息;否则发送认证拒绝报文。
(5) DHCPv4中继获取用户的认证和授权结果,更新IPoE会话的认证状态为通过或失败。
(6) 如果用户认证通过,DHCPv4中继将DHCP-DISCOVER报文转发给DHCP服务器。如果认证失败,DHCPv4中继将丢弃DHCP-DISCOVER报文。
(7) DHCPv4服务器回应DHCP-OFFER报文。之后,DHCPv4中继把DHCP-OFFER报文转发给DHCPv4客户端。
(8) DHCPv4客户端根据DHCP-OFFER报文选择一个DHCPv4服务器,发送DHCP-REQUEST报文。之后,DHCPv4中继把DHCP-REQUEST报文转发给DHCPv4服务器。
(9) DHCPv4服务器回应DHCP-ACK报文。
(10) DHCPv4中继从DHCP-ACK报文中解析出用户的IP地址和其它地址参数信息,更新IPoE会话,并下发User Profile策略,然后将IPoE会话的状态置为在线。
(11) DHCPv4中继把DHCP-ACK报文转发给DHCPv4客户端。DHCPv4客户端根据收到的DHCP-ACK报文获得IP地址以及相关地址参数信息。
(12) 接入设备向AAA服务器发送计费开始报文,开始对该用户计费。
(13) DHCPv6客户端发送Solicit报文,DHCPv6中继设备根据Solicit报文更新IPoE会话信息。报文中的IA_NA字段,对应获取IPV6全球单播地址,IA_PD字段,对应获取IPV6地址前缀。
(14) DHCPv6服务器回应Advertise报文。之后,DHCPv6中继把Advertise报文转发给DHCPv6客户端。
(15) DHCPv6客户端根据Advertise报文选择一个DHCPv6服务器,发送Request报文。之后,DHCPv6中继把Request报文转发给DHCPv6服务器。
(16) DHCPv6服务器回应Reply报文。
(17) DHCPv6中继从Reply报文中解析出用户的IPv6地址、IPv6地址前缀和其它地址参数信息,更新IPoE会话。
(18) DHCPv6中继把Reply报文转发给DHCPv6客户端。DHCPv6客户端根据收到的Reply报文获得IPv6地址以及相关地址参数信息。
当用户通过IPv6 ND RS方式动态获取IPv6地址时,BRAS截获用户的IPv6 ND RS报文,首先对用户进行身份认证,如果认证通过则发送IPv6 RA报文给用户,否则终止用户接入过程。这里以二层接入组网环境中的IPv6用户的IPoE接入为例,具体流程如图1-4所示。
图1-4 IPv6 ND RS用户接入流程图
IPv6 ND RS报文触发的IPoE接入过程如下:
(1) 用户主机发送IPv6 ND RS报文。
(2) 接入设备根据IPv6 ND RS报文创建一个IPoE会话。
(3) 接入设备向AAA服务器发送认证请求,认证请求消息中的用户名包含了用户信息,如源MAC地址等。
(4) AAA服务器返回认证结果。若用户认证通过,则发送认证接受报文,并携带授权信息;否则发送认证拒绝报文。
(5) 接入设备获取用户的认证和授权结果,更新IPoE会话的认证状态为通过或失败。如果用户认证通过,则根据用户MAC地址和获取到的前缀信息生成用户IPv6地址,更新IPoE会话信息。如果认证失败,接入设备则丢弃收到的IPv6 ND RS报文。
(6) 接入设备发送携带前缀信息的IPv6 ND RA报文给用户主机。用户主机根据IPv6 ND RA报文中携带的前缀信息生成IPv6地址。
(7) 接入设备向AAA服务器发送计费开始报文,开始对该用户计费。
对于已经通过DHCP、ND RS报文或手工静态配置的方式获取到IP地址的用户,当前接入设备上不存在对应的IPoE会话时,该用户的IP报文会直接触发IPoE认证,具体过程如图1-5所示。
图1-5 未知源IP接入用户触发IPoE接入过程
用户IP报文触发IPoE接入的步骤如下:
(1) 用户主机发送IP报文。
(2) 接入设备收到IP报文后,根据已有的IPoE会话检查该用户是否是新接入的用户。如果用户报文中的用户信息未匹配到相应的IPoE会话,则认为该用户是新用户,并为其创建IPoE会话,记录用户信息。对于匹配上IPoE会话且会话状态为已通过认证的用户报文,直接转发;对于匹配上IPoE会话且会话状态不为已通过认证的所有用户报文,均丢弃。
(3) 接入设备根据获取的用户信息向AAA服务器发送认证请求。其中,认证请求消息中的用户名包含了用户信息,如源IP地址或源MAC地址。
(4) AAA服务器返回认证结果。若用户认证通过,则发送认证接受报文,并携带授权信息;否则发送认证拒绝报文。
(5) 接入设备收到认证结果。如果用户认证通过,则根据授权信息下发业务策略,将IPoE会话状态置为在线。
(6) 接入设备向AAA服务器发送计费开始报文,开始对该用户进行计费。
静态用户的IPoE会话通过配置信息创建,当接口上有指定的IP、ARP、NS或NA报文通过时,将使用配置信息触发认证,认证流程与未知源IP接入方式中的认证流程相同。认证流程完成后,后续对应的用户报文到达设备后,接口直接将其转发。如果是指定带IPv6 Delegation前缀的全局静态用户,用户上线后,IPv6 Delegation前缀网段的流量也可以直接转发。
专线接入用户的IPoE会话通过配置信息创建,无需接口上有报文通过,即可自动根据配置的用户名和密码发起认证。除触发认证方式不同外,其余认证流程与未知源IP接入方式中的认证流程相同,这里不再赘述。认证流程完成后,后续对应的用户报文到达设备对应接口后,即可直接转发。
IPoE Web认证支持DHCP用户接入、IPv6 ND RS用户接入和静态用户接入,认证过程包含认证前域认证和Web认证(也称作后域认证)两个阶段。
IPoE Web认证用户接入流程主要包括以下几个步骤:
认证前域阶段的用户接入流程与普通模式下绑定认证的用户接入流程相同,具体请参见“1.1.7 2. DHCP单协议栈用户接入流程”、“1.1.7 4. IPv6 ND RS用户接入流程”和“1.1.7 6. 静态接入用户和专线接入用户接入流程”。
用户可以使用浏览器或iNode客户端进行Web认证。
当用户使用浏览器进行Web认证时,可以主动登录Portal Web服务器的Web认证页面。如果认证前域用户访问的不是Portal Web服务器,接入设备会将此HTTP/HTTPS请求重定向到Portal Web服务器的Web认证页面。当用户使用iNode客户端进行Web认证时,可直接打开客户端认证页面,输入认证信息。用户在认证页面中输入认证信息后提交,Portal Web服务器会将用户的认证信息传递给Portal认证服务器,由Portal认证服务器处理并转发给接入设备。接入设备收到用户认证信息后,将用户的认证信息发送给AAA进行认证,认证成功则通知用户上线,并根据授权结果对用户进行接入控制,计费等。在Web认证阶段,接入用户的认证流程基本相同,这里仅以DHCP中继组网环境中的IPoE Web接入为例进行说明,具体流程如图1-6所示。
图1-6 IPoE Web认证用户接入流程
IPoE Web认证用户接入流程(以用户使用浏览器进行Web认证为例):
(1) 客户端发起HTTP/HTTPS请求。
(2) 接入设备根据目的地址判断是否需要重定向:如果HTTP/HTTPS请求的目的地址和Portal Web服务器的地址相同则直接转发,否则将此HTTP/HTTPS请求重定向到Portal Web服务器的Web认证页面。
(3) HTTP/HTTPS请求的目的地址和Portal Web服务器的地址相同时,客户端直接访问Portal Web服务器的Web认证页面。
(4) 对于需要重定向处理的HTTP/HTTPS请求,接入设备将包含Portal Web服务器的Web认证页面URL信息的HTTP/HTTPS报文回复给客户端。
(5) 客户端浏览器自动访问重定向后的URL(即用户配置的Portal Web服务器的Web认证页面)。
(6) Portal Web服务器将Web认证页面内容发送给客户端。
(7) 用户输入用户名和密码,点击登录后将认证信息发送给Portal服务器。
(8) Portal服务器把Web认证信息转发给接入设备。
(9) 接入设备使用从Portal 服务器获取到的用户信息向AAA服务器发送认证请求。
(10) AAA服务器返回认证结果。若用户认证通过,则发送认证接受报文,并携带授权信息;否则发送认证拒绝报文。
(11) 接入设备根据从AAA服务器获取到的认证和授权结果,更新IPoE会话的认证状态为通过或失败。
(12) 如果认证授权成功,接入设备向AAA服务器发送计费开始报文,开始对该用户计费。
在IPoE Web认证环境中,为避免在Web认证阶段用户每次上线都需要手工输入认证信息进行认证带来的不便,IPoE Web认证下支持快速认证。
对于需要频繁接入网络的合法用户,可以通过基于MAC地址的快速认证功能,使用户无需每次接入网络都手工输入认证信息便可以自动完成Web认证。基于MAC地址的快速认证又称为无感知认证,根据存储用户的认证用户名/密码和用户MAC地址的绑定信息的位置不同,无感知认证分为如下两种方式:
· MAC Trigger无感知认证:该方式需要在网络中部署支持MAC Trigger协议的MAC绑定服务器,MAC绑定服务器用于记录用户的Web认证信息和用户终端的MAC地址,并将二者进行绑定,以便代替用户完成Web认证。
· MAC无感知认证:该方式需要在网络中部署具有将用户的Web认证信息和用户终端的MAC地址进行绑定功能的AAA服务器,以便代替用户完成Web认证。
根据IP地址分配方式不同,MAC无感知认证包括如下两种类型:
¡ 普通MAC无感知认证:整个认证上线过程仅进行一次IP地址分配,并且用户是在Web阶段认证时触发MAC无感知流程,MAC无感知上线后,用户在Web阶段上线。
¡ 二次地址分配MAC无感知认证:整个认证上线过程进行两次IP地址分配,并且用户是在前域阶段认证时触发MAC无感知流程,MAC无感知上线后,用户在前域阶段上线。
如果配置了MAC Trigger无感知或普通MAC无感知认证,则IPoE在认证前域中收到用户的任意IP报文后,都将先进行MAC绑定查询处理。即相对于未配置IPoE Web的快速认证的情况,对于第一次Web接入的用户,上线过程中增加了一次查询处理。
如果配置了二次地址分配MAC无感知认证,则IPoE在收到DHCP-DISCOVER(IPv4)或Solicit(IPv6)报文后,会触发前域认证,进行MAC绑定查询处理。
MAC Trigger无感知功能具体实现过程如下:
(1) 客户端认证前域上线后发起HTTP/HTTPS请求。
(2) 接入设备根据目的地址判断是否需要重定向:如果HTTP/HTTPS请求的目的地址和Portal Web服务器的地址相同则直接转发,访问Portal Web服务器的Web认证页面。
(3) 否则接入设备将向Portal发送绑定查询请求,等待Portal返回查询结果,根据返回结果不同分为如下情况:
· 如果Portal返回的查询结果是用户未绑定,则:
a. 接入设备将后续HTTP/HTTPS请求重定向到Portal Web服务器的Web认证页面,即设备将包含Portal Web服务器的Web认证页面URL信息的HTTP/HTTPS报文回复给客户端。
b. 客户端浏览器自动访问重定向后的URL,即用户配置的Portal Web服务器的Web认证页面。
c. Portal Web服务器将Web认证页面内容发送给客户端。
d. 用户输入用户名和密码,点击登录后将认证信息发送给Portal服务器。
· 如果Portal返回的查询结果是用户已绑定,则继续等待Portal服务器返回Web认证信息。
(4) Portal服务器把Web认证信息转发给接入设备。
(5) 接入设备使用从Portal服务器获取到的用户信息向AAA服务器发送认证请求。
(6) AAA服务器返回认证结果。若用户认证通过,则发送认证接受报文,并携带授权信息;否则发送认证拒绝报文。
(7) 接入设备根据从AAA服务器获取到的认证和授权结果,更新IPoE会话的认证状态为通过或失败。
(8) 如果认证授权成功,接入设备向AAA服务器发送计费开始报文,开始对该用户计费。
(9) (本步骤仅适用于用户首次Web认证的情况)用户上线以后,接入设备通知Portal用户已上线,Portal收到用户上线通知后,再通知MAC绑定服务器为用户添加MAC绑定记录。当该用户下线后再接入时,收到用户任意IP报文,接入设备即可根据查询到MAC绑定记录进行快速认证上线。
MAC Trigger无感知认证仅支持使用浏览器触发Web认证,不支持使用iNode客户端。
普通MAC无感知功能具体实现过程如下(以用户首次登录为例):
(1) 客户端认证前域上线后发起HTTP/HTTPS请求。
(2) 接入设备根据目的地址判断是否需要重定向:如果HTTP/HTTPS请求的目的地址和Portal Web服务器的地址相同则直接转发,访问Portal Web服务器的Web认证页面。
(3) 否则接入设备使用该用户MAC地址作为用户名向AAA服务器发起认证,因用户是首次登录,AAA服务器根据用户MAC地址查询该用户未绑定,返回认证失败。
a. 接入设备将后续HTTP/HTTPS请求重定向到Portal Web服务器的Web认证页面。
b. 客户端浏览器自动访问重定向后的URL,即用户配置的Portal Web服务器的Web认证页面。
c. Portal Web服务器将Web认证页面内容发送给客户端。
(4) 用户输入用户名和密码,点击登录后将认证信息发送给Portal服务器。
(5) Portal服务器把Web认证信息转发给接入设备。
(6) 接入设备使用从Portal服务器获取到的用户信息向AAA服务器发送认证请求。
(7) 用户认证通过,AAA服务器发送认证接受报文,并携带授权信息。
(8) 接入设备根据从AAA服务器获取到的认证和授权结果,更新IPoE会话的认证状态为通过。
(9) 如果认证授权成功,接入设备向AAA服务器发送计费开始报文,开始对该用户计费。
(10) 用户上线以后,接入设备通知AAA服务器用户已上线,AAA服务器为用户添加MAC绑定记录。
(11) 当该用户下线后再接入时,收到用户任意IP报文,接入设备都将直接使用该用户MAC地址作为用户名向AAA服务器发起认证,AAA服务器根据该用户MAC地址查询到MAC绑定记录,返回认证通过,无需用户再此手工输入用户名/密码即可快速上线。
普通MAC无感知认证仅支持使用浏览器触发Web认证,不支持使用iNode客户端。
二次地址分配MAC无感知功能实现过程如下(以用户首次登录为例):
(1) 当设备收到用户的DHCP-DISCOVER(IPv4)或Solicit(IPv6)报文时,触发前域认证,设备以用户MAC地址作为用户名向AAA服务器发起认证。(该阶段使用ISP域假设为dm1,由ip subscriber pre-auth domain命令配置)
(2) 因用户是首次登录,AAA服务器根据用户MAC地址查询该用户未绑定,返回认证失败。用户认证失败后,使用认证失败域dm2重新触发前域认证,dm2配置为不认证none,用户在认证前域上线,并获取临时IP地址。(该阶段使用ISP域即认证失败域,假设为dm2,由authen-fail online domain命令配置)
(3) 用户认证前域上线后发起HTTP/HTTPS请求,按普通Web认证流程在Web阶段上线后,AAA服务器为用户添加MAC绑定记录。(该阶段使用ISP域假设为dm3,由ip subscriber web-auth domain命令配置)
(4) 设备收到AAA服务器的计费应答报文后,清除DHCP用户的会话信息,强制该用户下线(对于双栈用户,只要其中一个协议栈为DHCP,不论另一个协议栈是否为DHCP,整个用户都会被强制下线)。该用户如需上线,需要重新触发前域认证(对于非DHCP类型的协议栈,需要根据原有的配置重新触发上线);此后,如果收到用户的DHCP续约报文,则直接回应NAK,以便用户可以尽快重新走前域MAC无感知流程上线。
(5) 当设备再次收到该用户的DHCP-DISCOVER(IPv4)或Solicit(IPv6)报文时,触发前域认证,设备以用户MAC地址作为用户名向AAA服务器发起认证。AAA服务器根据该用户MAC地址查询到MAC绑定记录,返回认证通过,并携带授权域(假设为dm4)。设备根据授权域中的IP地址池为用户分配公网IP地址。
(6) 如果AAA服务器根据该用户MAC地址查询到MAC绑定记录,返回认证通过时,未携带授权域,则需要在认证域dm1中授权IP地址池,设备根据该IP地址池为用户分配公网IP地址。
· 仅DHCP用户(包括IPv4和IPv6)支持二次地址分配MAC无感知认证。对于双栈用户,如果要支持二次地址分配MAC无感知认证,要求其中至少一个协议栈为DHCP类型。
· 二次地址分配MAC无感知认证仅支持使用浏览器触发Web认证,不支持使用iNode客户端。
IPoE 802.1X认证支持DHCP用户接入、IPv6 ND RS用户接入和全局静态用户接入,认证过程包含前域认证和后域认证两个阶段。对于配置了静态IP地址的用户,如果管理员希望这类用户既可以通过802.1X认证方式上线,同时又无需在BRAS设备上为他们配置对应的IPoE静态用户接入,可开启静态802.1X用户认证功能,具体介绍请见ip subscriber static-dot1x-user enable命令。
未配置802.1X认证优先时,在802.1X上线过程中需要进行前域阶段IPoE认证和后域阶段802.1X客户端认证两次认证过程;配置802.1X认证优先时,在802.1X上线过程中仅需进行802.1X客户端的一次认证即可,请管理员根据组网需要选择是否配置802.1X认证优先。
如果未配置802.1X认证优先,IPoE用户上线流程如下:
· 前域阶段:
前域阶段的用户接入流程与绑定认证方式相应的用户接入流程相同,该阶段不涉及802.1X认证流程。
· 后域阶段:
IPoE用户在前域上线后,根据802.1X客户端的认证结果,决定后域的处理方式:
¡ 如果该用户的802.1X客户端已在线,则IPoE采用802.1X认证结果让用户直接在后域上线,此时记录的用户信息为802.1X用户信息(包括802.1X用户名、认证域、授权属性等)。
¡ 如果该用户的802.1X客户端不在线,则IPoE用户停留在前域阶段。当802.1X客户端上线后,与上一条处理一致。
¡ 当接口上同时配置了802.1X认证和Web认证时:
- 如果在802.1X客户端上线之前,该IPoE用户已按Web认证方式在后域上线,待802.1X客户端上线后,设备会强制该用户从Web认证的后域返回前域,然后采用802.1X认证方式重新在802.1X的后域上线。
- 当IPoE用户采用802.1X认证方式在后域上线后,不允许再按Web认证方式在后域上线。
如果配置了802.1X认证优先,当IPoE用户触发前域阶段上线流程时:
· 如果该IPoE用户的802.1X客户端未认证上线,该IPoE用户将停留在前域阶段的认证前状态;待802.1X客户端上线后,IPoE采用802.1X认证结果让用户直接在后域上线,此时记录的用户信息为802.1X用户信息(包括802.1X用户名、认证域、授权属性等)。
· 如果该IPoE用户的802.1X客户端已认证上线,则IPoE采用802.1X认证结果让用户直接在后域上线,此时记录的用户信息为802.1X用户信息(包括802.1X用户名、认证域、授权属性等)。
· 如果该IPoE用户的802.1X客户端认证失败,则IPoE用户继续走IPoE认证流程上线,此时记录的用户信息为IPoE用户信息(包括IPoE用户名、认证域、授权属性等)。
目前,仅普通模式下的支持IPoE 802.1X认证。
IPoE转发与控制分离模式下绑定认证用户接入流程如下:
当用户通过DHCP方式动态获取IP地址时,BRAS截获用户的DHCP报文,首先对用户进行身份认证,如果认证通过则可以允许继续申请动态IP地址,否则终止用户接入过程。这里以IPv4 DHCP用户的IPoE接入为例,具体流程如图1-7所示。
图1-7 IPv4 DHCP用户接入流程图:
IPv4 DHCP报文触发的IPoE接入过程如下:
(1) DHCP客户端发送DHCP-DISCOVER报文到UP。
(2) UP将报文通过VXLAN隧道交由CP处理。
(3) CP根据DHCP-DISCOVER报文创建一个IPoE会话,并向AAA服务器发送认证请求。其中,认证请求消息中包含了用户信息,如DHCP报文中的Client ID选项、用户报文的源MAC地址。
(4) AAA服务器返回认证结果。若用户认证通过,则发送认证接受报文,并携带授权信息;否则发送认证拒绝报文。
(5) CP获取用户的认证和授权结果,更新IPoE会话的认证状态为通过或失败。
(6) 如果用户认证通过,CP将DHCP-DISCOVER报文转发给DHCP服务器。如果认证失败,CP将丢弃DHCP-DISCOVER报文。
(7) DHCP服务器回应DHCP-OFFER报文给CP。之后,CP把DHCP-OFFER报文通过VXLAN隧道转发给UP,并由UP将报文转发给DHCP客户端。
(8) DHCP客户端根据DHCP-OFFER报文选择一个DHCP服务器,发送DHCP-REQUEST报文。之后,UP把DHCP-REQUEST报文转发给CP,然后由CP将DHCP-REQUEST报文转发给DHCP服务器。
(9) DHCP服务器回应DHCP-ACK报文。
(10) CP从DHCP-ACK报文中解析出用户的IP地址和其它地址参数信息,更新IPoE会话,并下发User Profile策略,然后将IPoE会话的状态置为在线。
(11) CP把DHCP-ACK报文通过VXLAN隧道转发给UP。
(12) UP把DHCP-ACK报文转发给DHCP客户端。DHCP客户端根据收到的DHCP-ACK报文获得IP地址以及相关地址参数信息。
(13) CP将IPoE会话信息通过CUSP通道同步到UP,后续UP定时收集流量统计信息,通过CUSP通道上送CP。
(14) CP向AAA服务器发送计费开始报文,开始对该用户计费。
当用户通过DHCP方式动态获取IP地址时,BRAS截获用户的DHCP报文,首先对用户进行身份认证,如果认证通过则可以允许继续申请动态IP地址,否则终止用户接入过程。具体流程如图1-8所示。
图1-8 DHCP双协议栈用户接入流程图:
IPv4 DHCP报文触发的IPoE接入过程如下:
(1) DHCP客户端发送DHCP-DISCOVER报文到UP。
(2) UP将报文通过VXLAN隧道交由CP处理。
(3) CP根据DHCP-DISCOVER报文创建一个IPoE会话,并向AAA服务器发送认证请求。其中,认证请求消息中包含了用户信息,如DHCP报文中的Client ID选项、用户报文的源MAC地址。
(4) AAA服务器返回认证结果。若用户认证通过,则发送认证接受报文,并携带授权信息;否则发送认证拒绝报文。
(5) CP获取用户的认证和授权结果,更新IPoE会话的认证状态为通过或失败。
(6) 如果用户认证通过,CP将DHCP-DISCOVER报文转发给DHCP服务器。如果认证失败,CP将丢弃DHCP-DISCOVER报文。
(7) DHCP服务器回应DHCP-OFFER报文给CP。之后,CP把DHCP-OFFER报文通过VXLAN隧道转发给UP,并由UP将报文转发给DHCP客户端。
(8) DHCP客户端根据DHCP-OFFER报文选择一个DHCP服务器,发送DHCP-REQUEST报文。之后,UP把DHCP-REQUEST报文转发给CP,然后由CP将DHCP-REQUEST报文转发给DHCP服务器。
(9) DHCP服务器回应DHCP-ACK报文。
(10) CP从DHCP-ACK报文中解析出用户的IP地址和其它地址参数信息,更新IPoE会话,并下发User Profile策略,然后将IPoE会话的状态置为在线。
(11) CP把DHCP-ACK报文通过VXLAN隧道转发给UP。
(12) UP把DHCP-ACK报文转发给DHCP客户端。DHCP客户端根据收到的DHCP-ACK报文获得IP地址以及相关地址参数信息。
(13) CP将IPoE会话信息通过CUSP通道同步到UP,后续UP定时收集流量统计信息,通过CUSP通道上送CP。
(14) CP向AAA服务器发送计费开始报文,开始对该用户计费。
(15) DHCPv6客户端发送Solicit报文,UP将报文通过VXLAN隧道交由CP处理,CP根据Solicit报文更新IPoE会话信息。
(16) DHCPv6服务器回应Advertise报文,CP通过VXLAN隧道把Advertise报文转发给UP,并由UP转发给DHCPv6客户端。
(17) DHCPv6客户端根据Advertise报文选择一个DHCPv6服务器,发送Request报文,UP将报文通过VXLAN隧道交由CP处理,CP把Request报文转发给DHCPv6服务器。
(18) DHCPv6服务器回应Reply报文。
(19) CP从Reply报文中解析出用户的IPv6地址和其它地址参数信息,更新IPoE会话。
(20) CP把Reply报文通过VXLAN转发给UP。
(21) UP转发给DHCPv6客户端。DHCPv6客户端根据收到的Reply报文获得IPv6地址以及相关地址参数信息。
(22) CP将IPoE会话更新信息通过CUSP同步到UP。
当用户通过IPv6 ND RS方式动态获取IPv6地址时,BRAS截获用户的IPv6 ND RS报文,首先对用户进行身份认证,如果认证通过则发送IPv6 RA报文给用户,否则终止用户接入过程。这里以二层接入组网环境中的IPv6用户的IPoE接入为例,具体流程如图1-9所示。
图1-9 IPv6 ND RS用户接入流程图
IPv6 ND RS报文触发的IPoE接入过程如下:
(1) 用户主机向UP发送IPv6 ND RS报文,UP将报文上送CP处理。
(2) CP根据IPv6 ND RS报文创建一个IPoE会话。
(3) CP向AAA服务器发送认证请求,认证请求消息中的用户名包含了用户信息,如源MAC地址等。
(4) AAA服务器返回认证结果。若用户认证通过,则发送认证接受报文,并携带授权信息;否则发送认证拒绝报文。
(5) CP获取用户的认证和授权结果,更新IPoE会话的认证状态为通过或失败。如果用户认证通过,则根据用户MAC地址和获取到的前缀信息生成用户IPv6地址,更新IPoE会话信息。如果认证失败,CP则丢弃收到的IPv6 ND RS报文。
(6) CP发送携带前缀信息的IPv6 ND RA报文给UP,UP发送携带前缀信息的IPv6 ND RA报文给用户主机。用户主机根据IPv6 ND RA报文中携带的前缀信息生成IPv6地址。
(7) CP将IPoE会话信息通过CUSP通道同步到UP,后续UP定时收集流量统计信息,通过CUSP通道上送CP。
(8) CP向AAA服务器发送计费开始报文,开始对该用户计费。
对于已经通过DHCP或者手工静态配置的方式获取到IP地址的用户,当前CP上不存在对应的IPoE会话时,该用户的IP报文会直接触发IPoE认证,具体过程如图1-10所示。
图1-10 未知源IP接入用户触发IPoE接入过程
用户IP报文触发IPoE接入的步骤如下:
(1) 用户主机发送IP报文到UP。
(2) UP收到IP报文后,根据已有的IPoE会话检查该用户是否是新接入的用户。如果用户报文中的用户信息未匹配到相应的IPoE会话,则认为该用户是新用户,把报文交给CP处理。对于匹配上IPoE会话且会话状态为已通过认证的用户报文,UP直接转发;对于匹配上IPoE会话且会话状态不为已通过认证的所有用户报文,均丢弃。
(3) CP根据收到的IP报文创建一个IPoE会话,记录用户信息。
(4) CP根据获取的用户信息向AAA服务器发送认证请求。其中,认证请求消息中的用户名包含了用户信息,如源IP地址或源MAC地址。
(5) AAA服务器返回认证结果。若用户认证通过,则发送认证接受报文,并携带授权信息;否则发送认证拒绝报文。
(6) CP收到认证结果。如果用户认证通过,则根据授权信息下发业务策略,将IPoE会话状态置为在线。
(7) CP将IPoE会话信息通过CUSP通道同步到UP,后续UP定时收集流量统计信息,通过CUSP通道上送CP。
(8) CP向AAA服务器发送计费开始报文,开始对该用户进行计费。
静态个人用户的IPoE会话通过配置信息创建,当接口上有指定的IP、ARP、NS或NA报文通过时,将使用配置信息触发认证,认证流程与未知源IP接入方式中的认证流程相同。认证流程完成后,后续对应的用户报文到达设备后,接口直接将其转发。
接口专线用户的IPoE会话通过配置信息创建,无需当前接口上有报文通过,即可自动根据配置的用户名和密码发起认证。除触发认证方式不同外,其余认证流程与未知源IP接入方式中的认证流程相同,这里不再赘述。认证流程完成后,后续对应的用户报文到达设备对应接口后,即可直接转发。
子网专线用户的IPoE会话通过配置信息创建,无需当接口上有指定子网的用户报文通过,即可自动根据配置的用户名和密码发起认证,除触发认证方式不同外,其余认证流程与未知源IP接入方式中的认证流程相同。认证流程完成后,后续该子网的用户报文到达设备后,接口直接将其转发。
· 目前IPoE Web认证用户仅支持session模式。
· 本节中的用户接入流程均指CP在session模式下的组网情况。
IPoE Web认证支持DHCP用户接入、IPv6 ND RS用户接入和静态用户接入,认证过程包含认证前域认证和Web认证两个阶段。
IPoE转发与控制分离模式下Web认证用户接入流程主要包括以下几个步骤:
认证前域阶段的用户接入流程与转发与控制分离模式下绑定认证用户接入流程相同,具体请参见“1.1.10 1. DHCP单协议栈用户接入流程”、“1.1.10 3. IPv6 ND RS用户接入流程”和“1.1.10 5. 静态接入用户和专线接入用户接入流程”。
用户可以使用浏览器或iNode客户端进行Web认证。
当用户使用浏览器进行Web认证时,可以主动登录Portal Web服务器的Web认证页面。如果认证前域用户访问的不是Portal Web服务器,UP会将此HTTP/HTTPS请求重定向到Portal Web服务器的Web认证页面。当用户使用iNode客户端进行Web认证时,可直接打开客户端,输入认证信息。用户在认证页面中输入认证信息后提交,Portal Web服务器会将用户的认证信息传递给Portal认证服务器,由Portal认证服务器处理并转发给CP。CP收到用户认证信息后,将用户的认证信息发送给AAA进行认证,认证成功则通知用户上线,并根据授权结果对用户进行接入控制,计费等。在Web认证阶段,接入用户的认证流程基本相同,这里仅以DHCP接入为例进行说明,具体流程如图1-11所示。
图1-11 IPoE Web认证用户接入流程
IPoE Web认证,IPoE转发与控制分离用户接入流程(以用户使用浏览器进行Web认证为例):
(1) 客户端向UP发起HTTP/HTTPS请求。
(2) UP根据目的地址判断是否需要重定向:如果HTTP/HTTPS请求的目的地址和Portal Web服务器的地址相同则直接转发,否则UP将此HTTP/HTTPS请求重定向发送到Portal Web服务器的Web认证页面。
(3) HTTP/HTTPS请求的目的地址和Portal Web服务器的地址相同时,客户端直接访问Portal Web服务器的Web认证页面。
(4) 对于需要重定向处理的HTTP/HTTPS请求,UP将获取到的包含Portal Web服务器的Web认证页面URL信息的HTTP/HTTPS报文回复给客户端。
(5) 客户端浏览器自动访问重定向后的URL(即用户配置的Portal Web服务器的Web认证页面)。
(6) Portal Web服务器将Web认证页面内容发送给客户端。
(7) 用户输入用户名和密码,点击登录后将认证信息发送给Portal服务器。
(8) Portal服务器把Web认证信息转发给CP。
(9) CP使用从Portal服务器获取到的用户信息向AAA服务器发送认证请求。
(10) AAA服务器向CP返回认证结果。若用户认证通过,则发送认证接受报文,并携带授权信息;否则发送认证拒绝报文。
(11) CP根据从AAA服务器获取到的认证和授权结果,更新IPoE会话的认证状态。
(12) CP将IPoE会话通过CUSP通道同步到UP,后续UP定时收集流量统计信息,通过CUSP通道上送CP。
(13) 如果认证授权成功,CP向AAA服务器发送计费开始报文,开始对该用户计费。
在IPoE Web认证环境中,为避免在Web认证阶段用户每次上线都需要手工输入认证信息进行认证带来的不便,IPoE Web认证下支持快速认证。
对于需要频繁接入网络的合法用户,可以通过基于MAC地址的快速认证功能,使用户无需每次接入网络都手工输入认证信息便可以自动完成Web认证。基于MAC地址的快速认证又称为无感知认证,根据存储用户的认证用户名/密码和用户MAC地址的绑定信息的位置不同,无感知认证分为如下两种方式:
· MAC Trigger无感知认证:该方式需要在网络中部署支持MAC Trigger协议的MAC绑定服务器,MAC绑定服务器用于记录用户的Web认证信息和用户终端的MAC地址,并将二者进行绑定,以便代替用户完成Web认证。
· MAC无感知认证:该方式需要在网络中部署具有将用户的Web认证信息和用户终端的MAC地址进行绑定功能的AAA服务器,以便代替用户完成Web认证。
根据IP地址分配方式不同,MAC无感知认证包括如下两种类型:
¡ 普通MAC无感知认证:整个认证上线过程仅进行一次IP地址分配,并且用户是在Web阶段认证时触发MAC无感知流程,MAC无感知上线后,用户在Web阶段上线。
¡ 二次地址分配MAC无感知认证:整个认证上线过程进行两次IP地址分配,并且用户是在前域阶段认证时触发MAC无感知流程,MAC无感知上线后,用户在前域阶段上线。
如果配置了MAC Trigger无感知或普通MAC无感知认证,则IPoE在认证前域中收到用户的任意IP报文后,都将先进行MAC绑定查询处理。即相对于未配置IPoE Web的快速认证的情况,对于第一次Web接入的用户,上线过程中增加了一次查询处理。
如果配置了二次地址分配MAC无感知认证,则IPoE在收到DHCP-DISCOVER(IPv4)或Solicit(IPv6)报文后,会触发前域认证,进行MAC绑定查询处理。
MAC Trigger无感知功能具体实现过程如下:
(1) 客户端认证前域上线后发起HTTP/HTTPS请求。
(2) 接入设备(为便于描述,这里以接入设备代指由CP和UP组成的转发与控制分离系统)根据目的地址判断是否需要重定向:如果HTTP/HTTPS请求的目的地址和Portal Web服务器的地址相同则直接转发,访问Portal Web服务器的Web认证页面。
(3) 否则接入设备将向Portal发送绑定查询请求,等待Portal返回查询结果,根据返回结果不同分为如下情况:
· 如果Portal返回的查询结果是用户未绑定,则:
a. 接入设备将后续HTTP/HTTPS请求重定向到Portal Web服务器的Web认证页面,即设备将包含Portal Web服务器的Web认证页面URL信息的HTTP/HTTPS报文回复给客户端。
b. 客户端浏览器自动访问重定向后的URL,即用户配置的Portal Web服务器的Web认证页面。
c. Portal Web服务器将Web认证页面内容发送给客户端。
d. 用户输入用户名和密码,点击登录后将认证信息发送给Portal服务器。
· 如果Portal返回的查询结果是用户已绑定,则继续等待Portal服务器返回Web认证信息。
(4) Portal服务器把Web认证信息转发给接入设备。
(5) 接入设备使用从Portal服务器获取到的用户信息向AAA服务器发送认证请求。
(6) AAA服务器返回认证结果。若用户认证通过,则发送认证接受报文,并携带授权信息;否则发送认证拒绝报文。
(7) 接入设备根据从AAA服务器获取到的认证和授权结果,更新IPoE会话的认证状态为通过或失败。
(8) 如果认证授权成功,接入设备向AAA服务器发送计费开始报文,开始对该用户计费。
(9) (本步骤仅适用于用户首次Web认证的情况)用户上线以后,接入设备通知Portal用户已上线,Portal收到用户上线通知后,再通知MAC绑定服务器为用户添加MAC绑定记录。当该用户下线后再接入时,收到用户任意IP报文,接入设备即可根据查询到MAC绑定记录进行快速认证上线。
MAC Trigger无感知认证仅支持使用浏览器触发Web认证,不支持使用iNode客户端。
普通MAC无感知功能具体实现过程如下(以用户首次登录为例):
(1) 客户端认证前域上线后发起HTTP/HTTPS请求。
(2) 接入设备(为便于描述,这里以接入设备代指由CP和UP组成的转发与控制分离系统)根据目的地址判断是否需要重定向:如果HTTP/HTTPS请求的目的地址和Portal Web服务器的地址相同则直接转发,访问Portal Web服务器的Web认证页面。
(3) 否则接入设备使用该用户MAC地址作为用户名向AAA服务器发起认证,因用户是首次登录,AAA服务器根据用户MAC地址查询该用户未绑定,返回认证失败。
a. 接入设备将后续HTTP/HTTPS请求重定向到Portal Web服务器的Web认证页面。
b. 客户端浏览器自动访问重定向后的URL,即用户配置的Portal Web服务器的Web认证页面。
c. Portal Web服务器将Web认证页面内容发送给客户端。
(4) 用户输入用户名和密码,点击登录后将认证信息发送给Portal服务器。
(5) Portal服务器把Web认证信息转发给接入设备。
(6) 接入设备使用从Portal服务器获取到的用户信息向AAA服务器发送认证请求。
(7) 用户认证通过,AAA服务器发送认证接受报文,并携带授权信息。
(8) 接入设备根据从AAA服务器获取到的认证和授权结果,更新IPoE会话的认证状态为通过。
(9) 如果认证授权成功,接入设备向AAA服务器发送计费开始报文,开始对该用户计费。
(10) 用户上线以后,接入设备通知AAA服务器用户已上线,AAA服务器为用户添加MAC绑定记录。
(11) 当该用户下线后再接入时,收到用户任意IP报文,接入设备都将直接使用该用户MAC地址作为用户名向AAA服务器发起认证,AAA服务器根据该用户MAC地址查询到MAC绑定记录,返回认证通过,无需用户再此手工输入用户名/密码即可快速上线。
普通MAC无感知认证仅支持使用浏览器触发Web认证,不支持使用iNode客户端。
二次地址分配MAC无感知功能实现过程如下(以用户首次登录为例):
(1) 当设备收到用户的DHCP-DISCOVER(IPv4)或Solicit(IPv6)报文时,触发前域认证,设备以用户MAC地址作为用户名向AAA服务器发起认证。(该阶段使用ISP域假设为dm1,由ip subscriber pre-auth domain命令配置)
(2) 因用户是首次登录,AAA服务器根据用户MAC地址查询该用户未绑定,返回认证失败。用户认证失败后,使用认证失败域dm2重新触发前域认证,dm2配置为不认证none,用户在认证前域上线,并获取临时IP地址。(该阶段使用ISP域即认证失败域,假设为dm2,由authen-fail online domain命令配置)
(3) 用户认证前域上线后发起HTTP/HTTPS请求,按普通Web认证流程在Web阶段上线后,AAA服务器为用户添加MAC绑定记录。(该阶段使用ISP域假设为dm3,由ip subscriber web-auth domain命令配置)
(4) 设备收到AAA服务器的计费应答报文后,清除DHCP用户的会话信息,强制该用户下线(对于双栈用户,只要其中一个协议栈为DHCP,不论另一个协议栈是否为DHCP,整个用户都会被强制下线)。该用户如需上线,需要重新触发前域认证(对于非DHCP类型的协议栈,需要根据原有的配置重新触发上线);此后,如果收到用户的DHCP续约报文,则直接回应NAK,以便用户可以尽快重新走前域MAC无感知流程上线。
(5) 当设备再次收到该用户的DHCP-DISCOVER(IPv4)或Solicit(IPv6)报文时,触发前域认证,设备以用户MAC地址作为用户名向AAA服务器发起认证。AAA服务器根据该用户MAC地址查询到MAC绑定记录,返回认证通过,并携带授权域(假设为dm4)。设备根据授权域中的IP地址池为用户分配公网IP地址。
(6) 如果AAA服务器根据该用户MAC地址查询到MAC绑定记录,返回认证通过时,未携带授权域,则需要在认证域dm1中授权IP地址池,设备根据该IP地址池为用户分配公网IP地址。
· 仅DHCP用户(包括IPv4和IPv6)支持二次地址分配MAC无感知认证。对于双栈用户,如果要支持二次地址分配MAC无感知认证,要求其中至少一个协议栈为DHCP类型。
· 二次地址分配MAC无感知认证仅支持使用浏览器触发Web认证,不支持使用iNode客户端。
实际组网应用中,接入用户可以属于不同的VPN,且各VPN之间的业务相互隔离。IPoE通过支持MPLS L3VPN,可实现位于不同VPN中的用户都能通过IPoE方式接入到网络中。用户通过AAA授权后,接入设备可以将不同用户划分到不同授权VPN中,实现服务器指定用户的VPN归属。需要注意的是,IPoE专线用户不支持通过AAA授权(包括ISP域和AAA服务器两种授权方式)VPN属性。有关通过ISP域授权VPN属性的相关介绍,请参见“BRAS业务配置指导”中的“AAA”。
· 当未知源IPoE用户通过授权VPN方式上线时,必须在用户接入接口为用户配置网关IP地址或在公网IP地址池中通过gateway命令发布网关IP地址,推荐采用公网IP地址池发布网关IP地址方式。有关gateway命令的介绍,请参见“BRAS业务命令参考”中的“DHCP”。
· 当非未知源IPoE用户通过授权VPN方式上线时,必须在用户接入接口为用户配置网关IP地址或通过proxy-arp enable命令开启用户接入接口的代理ARP功能,推荐配置代理ARP。有关代理ARP的相关介绍,请参见“三层技术-IP业务配置指导”中的“ARP”。
· 在接口绑定VPN的情况下,为保证已经在线的用户流量可以在授权的VPN中正常转发,需要手工删除已有的IPoE会话。
EAP认证仅能与H3C iMC的Portal服务器以及H3C iNode Portal客户端配合使用。
在对接入用户身份可靠性要求较高的网络应用中,传统的基于用户名和口令的用户身份验证方式存在一定的安全问题,基于数字证书的用户身份验证方式通常被用来建立更为安全和可靠的网络接入认证机制。
EAP(Extensible Authentication Protocol,可扩展认证协议)可支持多种基于数字证书的认证方式(例如EAP-TLS),它与IPoE认证相配合,可共同为用户提供基于数字证书的接入认证服务。
图1-12 IPoE支持EAP认证协议交互示意图
如图1-12所示,在IPoE支持EAP认证的实现中,客户端与Portal服务器之间交互EAP认证报文,Portal服务器与接入设备之间交互携带EAP-Message属性的Portal协议报文,接入设备与RADIUS服务器之间交互携带EAP-Message属性的RADIUS协议报文,由具备EAP服务器功能的RADIUS服务器处理EAP-Message属性中封装的EAP报文,并给出EAP认证结果。整个EAP认证过程中,接入设备只是对Portal服务器与RADIUS服务器之间的EAP-Message属性进行透传,并不对其进行任何处理,因此接入设备上无需任何额外配置。
standard工作模式下,仅下表所列单板支持本功能。
表1-1 单板信息一览表
单板类型 |
单板丝印 |
CEPC单板 |
CEPC-XP4LX、CEPC-XP24LX、CEPC-XP48RX、CEPC-CP4RX、CEPC-CP4RX-L |
CSPEX单板 |
CSPEX-1304X、CSPEX-1304S、CSPEX-1404X、CSPEX-1404S、CSPEX-1502X、CSPEX-1504X、CSPEX-1504S、CSPEX-1602X、CSPEX-1804X、CSPEX-1512X、CSPEX-1612X、CSPEX-1812X、CSPEX-1802XB、CSPEX-1802X、CSPEX-1812X-E、CSPEX-2304X-G |
SPE单板 |
RX-SPE200、RX-SPE200-E |
sdn-wan工作模式下,仅下表所列单板支持本功能。
单板类型 |
单板丝印 |
CSPEX单板 |
CSPEX-1802XB、CSPEX-1802X、CSPEX-1812X-E、CSPEX-2304X-G |
SPE单板 |
RX-SPE200-E |
对于表1-2所列单板,配置IPoE Web认证时,涉及下列命令的配置,要求认证前域和Web认证保持一致(同时配置或者同时不配置),同时建议配置的数值保持一致:
· connection-limit amount命令(用来配置最大用户连接数)
· connection-limit rate命令(用来配置最大用户新建连接速率)
上述命令的详细介绍,请参见“BRAS业务命令参考”中的“连接数限制”。
全局L3VE接口配置本功能不生效。
基于slot的L3VE接口仅在转发与控制分离组网中支持本功能,一体化组网中配置本功能不生效。
对于IPoE Web认证:
· 在认证前域中不允许配置users-per-account命令。有关该命令的详细介绍,请参见“BRAS业务命令参考”中的“AAA”。
· 在IPv6网络中,为避免终端使用临时IPv6地址进行认证,从而导致认证失败,可在用户上线接口配置ipv6 nd ra prefix { ipv6-prefix prefix-length | ipv6-prefix/prefix-length } no-advertise命令禁止终端生成临时IPv6地址。其中,ipv6-prefix prefix-length | ipv6-prefix/prefix-length表示用户所在网段的IPv6地址前缀和前缀长度。有关临时IPv6地址的相关介绍,请参见“三层技术-IP业务配置指导”中的“IPv6基础”。
当使用设备作为DHCP Server为IPoE用户分配IP地址时,为确保IPoE功能正常,要求在IP地址池中禁用网关地址,具体如下:
· 对于IP地址池需要通过命令dhcp server forbidden-ip或forbidden-ip配置网关IP地址为不参与自动分配的IP地址。
· 对于IPv6地址池需要通过命令ipv6 dhcp server forbidden-address配置网关IPv6地址为不参与自动分配的IPv6地址。
有关配置不参与自动分配IP地址命令的详细介绍,请参见“BRAS业务命令参考”中的“DHCP”和“DHCPv6”。
对于IPoE DHCP接入用户,如果同时配置了ISP域授权DNS和DHCP Server分配DNS,则:
· 在IPoE设备作为DHCP Server组网中,用户优先使用ISP域授权的DNS。
· 在IPoE设备作为DHCP Relay组网中,用户优先使用DHCP Server分配的DNS。
在DHCP中继组网环境中,需要注意:
· 当IPoE工作在三层接入模式下,并且BRAS设备同时作为DHCP Server时,为确保DHCP接入用户可以正常上线,不允许在接入接口上配置ip subscriber initiator arp enable命令。
· 当未采用ISP域下授权地址池方式为用户分配地址,而是采用在接口上配置IP地址、DHCP中继模式(由dhcp select relay命令配置)及中继的服务器地址(由remote-server命令配置)的方式为用户分配地址池时,必须在DHCP中继上创建和DHCP服务器对应的中继地址池。目前支持使用下列类型的IP地址池作为中继地址池。
¡ 远端BAS IP地址池(由ip pool pool-name bas remote命令配置)。
¡ 普通IP地址池(由ip pool pool-name命令配置)。
关于远端BAS IP地址池和普通IP地址池的完整配置示例,请参见“1.30.18 IPoE DHCPv4多网段用户普通Web认证配置举例”。
在BRAS设备作为DHCP relay的中继组网中,对于普通IP地址池,涉及下列命令的配置时,要求DHCP relay和远端DHCP server保持一致:
· DHCPv4
¡ network命令(用来配置IP地址池动态分配的IP地址网段)
¡ address range命令(用来配置IP地址池动态分配的IP地址范围)
¡ forbidden-ip命令(用来配置IP地址池中不参与自动分配的IP地址)
上述命令的详细介绍,请参见“BRAS业务命令参考”中的“DHCP”。
· DHCPv6:
¡ network命令(用来配置IPv6地址池动态分配的IPv6地址网段)
¡ address range命令(用来配置地址池中动态分配的IPv6非临时地址范围)
¡ forbidden-address命令(用来配置不参与自动分配的IPv6地址或地址段)
¡ forbidden-prefix命令(用来配置不参与自动分配的IPv6前缀或前缀段)
¡ prefix-pool命令(用来配置地址池引用前缀池,以便从前缀池中动态选择前缀分配给客户端)
上述命令的详细介绍,请参见“BRAS业务命令参考”中的“DHCPv6”。
在IPoE应用中,广告推送功能仅对使用80端口号的HTTP报文和443端口号的HTTPS报文生效。
开启IPoE功能并指定用户的接入模式后,可根据实际组网需求配置多种类型的IPoE接入用户。
IPoE绑定认证接入用户配置任务如下:
(2) (可选)配置IPoE认证方式
(3) 配置IPoE绑定认证接入用户类型
(4) (可选)配置IPoE支持DHCP报文限速功能
(5) (可选)配置IPoE个人会话和专线子用户会话的最大总数目
(6) (可选)配置报文业务识别方式以及与认证域的映射关系
(7) (可选)配置IPoE接入用户的静默功能
(8) (可选)配置IPoE接入用户在线探测功能
(9) (可选)配置IPoE接入用户的NAS-PORT-ID属性封装
当需要根据NAS-PORT-ID精确获取IPoE用户的接入接口的物理位置信息时需要配置本功能。
(11) 配置IPoE准出认证功能
二次认证组网环境下需要配置本功能。
(12) 配置IPoE个人接入用户漫游功能
在漫游用户组网情况下需要配置本功能。
(13) (可选)配置IPoE用户接入响应延迟时间
(14) (可选)配置IPoE用户接入管理功能
IPoE Web认证接入用户配置任务如下:
(1) 配置远程Portal认证服务器
(2) (可选)配置对HTTPS报文进行重定向的内部侦听端口号
仅当使用HTTPS协议时需要本配置。
(5) 配置IPoE认证方式
(6) 配置IPoE Web认证接入用户类型
仅IPv6 ND RS个人接入用户需要本配置。
仅IPoE静态个人接入用户需要本配置。
(7) (可选)配置IPoE Web认证高级功能
(8) (可选)配置IPoE支持DHCP报文限速功能
(9) (可选)配置IPoE个人会话和专线子用户会话的最大总数目
(10) (可选)配置报文业务识别方式以及与认证域的映射关系
(11) (可选)配置IPoE接入用户的静默功能
(12) (可选)配置IPoE接入用户在线探测功能
(13) (可选)配置IPoE接入用户的NAS-PORT-ID属性封装
当需要根据NAS-PORT-ID精确获取IPoE用户的接入接口的物理位置信息时需要配置本功能。
(15) 配置IPoE Web的快速认证功能
在IPoE Web快速认证组网环境下需要配置本功能。
(16) 配置IPoE个人接入用户漫游功能
在漫游用户组网情况下需要配置本功能。
(17) (可选)配置IPoE用户接入响应延迟时间
(18) (可选)配置IPoE用户接入管理功能
IPoE 802.1X认证接入用户配置任务如下:
(1) 配置IPoE基本功能。
具体配置任务请参见普通模式下IPoE绑定认证。
(2) 配置802.1X相关功能。
802.1X客户端的认证和授权功能由802.1X模块完成,因此需要正确配置802.1X认证域等相关功能。具体配置请参见“BRAS业务配置指导”中的“802.1X”。
(3) (可选)配置802.1X认证高级功能
· 在转发与控制分离组网中,由CP和UP共同作为BRAS接入设备,对用户提供BRAS功能。
· 在转发与控制分离组网中,本设备仅支持作为UP,不支持作为CP。
· 本节仅介绍本设备作为UP时的相关配置。有关CP的相关配置,请参见担任CP角色的设备的产品手册。
当UP上联的CP工作在session模式时,UP配置任务如下:
(1) 配置设备工作在转发模式
(2) 配置CP-UP连接管理
· 在转发与控制分离组网中,由CP和UP共同作为BRAS接入设备,对用户提供BRAS功能。
· 在转发与控制分离组网中,本设备仅支持作为UP,不支持作为CP。
· 本节仅介绍本设备作为UP时的相关配置。有关CP的相关配置,请参见担任CP角色的设备的产品手册。
UP配置任务如下:
(1) 配置设备工作在转发模式
(2) 配置CP-UP连接管理
(3) (可选)配置对HTTPS报文进行重定向的内部侦听端口号
仅当使用HTTPS协议时需要本配置。
(4) (可选)配置HTTP报文的快速应答功能
(5) (可选)配置Web认证的重定向功能
IPoE提供了一个用户身份认证和安全认证的实现方案,但是仅仅依靠IPoE不足以实现该方案。接入设备的管理者需选择使用RADIUS认证方法或本地认证方法,以配合IPoE完成用户的身份认证。IPoE的配置前提如下:
· 若配置的是DHCP触发方式,需要安装并配置好DHCP服务器。如果是DHCP中继组网,接入设备还需启动DHCP中继功能。
· 如果通过远端RADIUS服务器进行身份认证,则首先保证RADIUS服务器已安装并配置成功,其次需要在RADIUS服务器上配置相应的用户名和密码,然后在接入设备端进行RADIUS客户端的相关设置。如果需要通过远端的安全策略服务器进行安全检测和授权,则需要在H3C iMC安全策略服务器上配置相应的安全策略,并在接入设备上指定安全策略服务器的IP地址。RADIUS客户端以及安全策略服务器的具体配置请参见“BRAS业务配置指导”中的“AAA”。
· 如果通过本地设备进行身份认证,则需要在接入设备上配置相关的本地用户及其属性。本地用户的具体配置请参见“BRAS业务配置指导”中的“AAA”。
· 保证用户、接入设备和各服务器之间路由可达。
· 在转发与控制分离模式组网环境中,请提前规划好哪些设备作为UP,哪些作为CP。
在转发与控制分离模式组网环境中,当UP上联的CP工作在session模式时,需要通过本节配置指定设备工作在转发模式。
(1) 进入系统视图。
system-view
(2) 配置IPoE接入设备的工作在转发模式。
work-mode user-plane
缺省情况下,IPoE接入设备工作在普通模式。
本命令的详细请参见“BRAS业务命令参考”中的“UCM”。
具体配置请参见vBRAS-CP产品配置指导中的“CP-UP连接管理”。
具体配置请参见本手册中的“Portral”章节。
具体配置请参见“三层技术-IP业务配置指导”中的“HTTP重定向”。
具体配置请参见本手册中的“Portral”章节。
只有在接口上开启了IPv4和IPv6协议栈的IPoE功能后,该协议栈对应的其他IPoE相关配置才能生效。
为确保IPoE功能正常,若需要在接口上通过ip subscriber basic-service-ip-type命令配置IPoE用户主业务依赖的IP地址类型(IPv4或IPv6),则必须确保该接口上通过ip subscriber enable命令开启了双栈IPoE功能。
对于接口专线用户、L2VPN专线用户和双栈静态用户,仅在同时开启IPv4和IPv6协议栈的IPoE功能的情况下,才允许用户上线。
在IPv4网络中,当IPoE工作在二层接入模式时,请采用在IP地址池下配置gateway命令的方式为用户指定网关地址,不允许采用在接入接口上配置IP地址的方式为用户指定网关地址。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 开启IPoE功能,并指定用户接入模式。
ip subscriber { l2-connected | routed } enable [ ipv4 | ipv6 ]
缺省情况下,接口上的IPoE功能处于关闭状态。
如果未指定ipv4或ipv6参数,则表示将同时开启IPv4和IPv6协议栈的IPoE功能。
不能通过重复执行本命令修改IPoE的接入模式和协议栈类型,如需修改IPoE的接入模式或协议栈类型,请先通过undo ip subscriber enable命令关闭IPoE功能,再执行ip subscriber enable命令。
目前IPoE主要支持以下几种认证方式:
· 绑定认证:是指BRAS设备根据用户接入的位置信息自动生成用户名和密码进行身份认证的一种认证方式,无需用户输入用户名和密码。绑定认证适用于所有IPoE接入用户类型。
· 802.1X认证:是一种通过在802.1X客户端中输入用户名/密码进行认证的一种方式。当需要在三层接口上实现802.1X方式接入时,可以配置802.1X认证方式。
· Web认证:是指用户通过访问Web认证服务器的认证页面,交互输入用户名和密码进行身份认证的一种认证方式。Web认证适用于IPoE DHCP个人接入用户和IPoE静态个人接入用户。
· Web MAC认证:是指用户只需在第一次上网时输入用户名/密码,后续无需输入用户名/密码即可上网的一种快速Web认证方式。
缺省情况下,IPoE接入用户采用绑定认证方式。当需要在三层接口上对IPoE接入用户进行802.1X认证时,必须配置IPoE用户的认证方式为802.1X认证。如果需要对IPoE接入用户进行Web认证,必须配置IPoE用户的认证方式为Web认证。
在IPoE Web认证组网中,如果希望在IPoE Web用户后域认证上线时,通过授权VPN方式实现对上线用户访问权限的差异化管理,可通过指定support-authorized-vpn参数开启Web认证后域支持授权VPN功能。
开启Web认证后域支持授权VPN功能后,当IPoE Web用户在后域认证上线时支持通过AAA为该用户授权相应的VPN实例;授权VPN用户后域上线后,该用户的主机路由会切换至指定VPN实例中,以达到用户只能访问被授权VPN实例中网络资源的目的。
在IPoE Web认证组网中,对于IPoE静态用户,需要注意:
· 如果在该IPoE静态用户的静态会话中指定了vpn-instance参数,则该静态用户不支持后域授权VPN功能。
· 如果在该IPoE静态用户的静态会话中未指定vpn-instance参数,则:
¡ 若该静态用户的授权域中配置了strict-check access-interface vpn-instance命令,则该静态用户不支持后域授权VPN功能。
¡ 若该静态用户的授权域中未配置strict-check access-interface vpn-instance命令,则该静态用户支持后域授权VPN功能。
当切换IPoE的认证方式时,根据不同的IPoE会话触发方式,有以下几种处理机制:
· 对于动态个人会话:将删除当前接口上所有动态触发创建的IPoE会话信息,并强制用户下线。
· 对于接口静态个人会话:将删除当前接口上所有静态个人IPoE会话,并强制用户下线。
· 对于全局静态个人会话:将删除所有的IPoE全局静态个人会话,并强制用户下线。
· 对于专线会话(包括静态专线):若当前接口上配置了专线会话,则不允许切换。
配置802.1X认证方式时,需要注意:
· standard工作模式下,仅下表所列单板支持本功能。
表1-3 单板信息一览表
单板类型 |
单板丝印 |
CEPC单板 |
CEPC-XP4LX、CEPC-XP24LX、CEPC-XP48RX、CEPC-CP4RX、CEPC-CP4RX-L |
CSPEX单板 |
CSPEX-1304X、CSPEX-1304S、CSPEX-1404X、CSPEX-1404S、CSPEX-1502X、CSPEX-1504X、CSPEX-1504S、CSPEX-1602X、CSPEX-1804X、CSPEX-1512X、CSPEX-1612X、CSPEX-1812X、CSPEX-1802XB、CSPEX-1802X、CSPEX-1812X-E、CSPEX-2304X-G |
SPE单板 |
RX-SPE200、RX-SPE200-E |
· sdn-wan工作模式下,不支持本功能。
· IPoE 802.1X认证支持DHCP用户接入、IPv6 ND RS用户接入和全局静态用户接入。对于配置了静态IP地址的用户,如果管理员希望这类用户既可以通过802.1X认证方式上线,同时又无需在BRAS设备上为他们配置对应的IPoE静态用户接入,可开启静态802.1X用户认证功能,具体介绍请见ip subscriber static-dot1x-user enable命令。
· 当接口上同时配置了802.1X认证和Web认证时,一个用户同一时刻只能选择其中一种认证方式上线,并且802.1X认证的优先级高于Web认证。
· 若设备上存在未指定support-ds参数的全局静态会话,在配置802.1X认证方式之前,请先通过undo ip subscriber session static命令删除所有未指定support-ds参数的全局静态会话后再执行ip subscriber session static命令重新配置全局静态会话并指定support-ds参数。
· 接口静态用户接入不支持802.1X认证方式,在同一接口上不允许同时配置802.1X认证方式和IPoE接口静态个人会话,否则可能会影响该接口上配置的IPoE接口静态个人会话功能的正常使用。
· 同一接口上,802.1X认证方式与IPoE三层接入模式、IPoE接口专线用户、IPoE子网专线用户和L2VPN专线用户的配置互斥。
· 仅当接口工作在IPoE二层接入模式时支持802.1X认证方式。
· 缺省情况下,802.1X客户端的IPv4和IPv6协议栈同时使能,因此建议配置802.1X认证方法时同时开启IPv4和IPv6协议栈的IPoE功能。
· 802.1X客户端的认证和授权功能由802.1X模块完成,因此需要正确配置802.1X相关功能。802.1X配置的介绍,请参见“BRAS业务配置指导”中的“802.1X”。
· 仅三层以太网接口/三层以太网子接口和三层聚合接口/三层聚合子接口支持802.1X认证方式。
当DHCP接入用户或者静态接入用户采用Web方式上线时,支持普通Web接入、MAC Trigger无感知接入和MAC无感知接入三种接入方式。当同时配置多种接入方式时,按如下原则选择实际采用的接入方式:
· 当接口上配置了Web认证方式时:
¡ 如果未通过portal apply mac-trigger-server命令在接口上应用MAC绑定服务器,则DHCP接入用户或者静态接入用户按普通Web接入流程上线。
¡ 如果通过portal apply mac-trigger-server命令在接口上应用了MAC绑定服务器,则DHCP接入用户或者静态接入用户按MAC Trigger无感知接入流程上线。
¡ 如果通过ip subscriber web-redhcp enable命令开启IPoE Web二次地址分配认证功能,则不论是否通过portal apply mac-trigger-server命令在接口上应用MAC绑定服务器,此时DHCP接入用户都按二次地址分配MAC无感知接入流程上线。
· 当接口上配置了Web MAC认证方式时,不论是否通过portal apply mac-trigger-server命令在接口上应用MAC绑定服务器,此时DHCP接入用户或者静态接入用户都将按普通MAC无感知接入流程上线。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置IPoE接入用户的认证方式。
ip subscriber authentication-method { bind | { dot1x [ high-priority] | web [ mac-auth ] [ basic-service-ipv4 ] [ support-authorized-vpn ] [ inherit-pppoe ] } * }
缺省情况下,IPoE接入用户采用绑定认证。
(4) 开启IPoE Web二次地址分配功能。
ip subscriber web-redhcp enable
缺省情况下,IPoE Web二次地址分配功能处于关闭状态。
在二次地址分配MAC地址无感知认证组网中需要配置本命令。
IPoE动态个人接入用户配置任务如下:
(1) 配置动态个人会话的触发方式
(2) (可选)配置动态个人接入用户的认证用户名的命名规则
(3) (可选)配置动态个人接入用户的认证密码
(4) (可选)配置动态个人接入用户使用的认证域
(5) (可选)配置动态个人会话的最大数目
(6) (可选)配置DHCP个人接入用户的信任Option
(7) (可选)配置DHCP Option中circuit-id和remote-id解析格式
(8) (可选)配置DHCP个人接入用户的信任认证域
(9) (可选)配置DHCP个人接入用户的认证域名生成规则
(10) (可选)配置允许IPoE用户异常下线后通过报文重新触发上线
(11) (可选)配置允许DHCP个人接入用户采用松散模式上线
(12) (可选)配置IPoE用户的自动备份功能
(13) (可选)配置IAPD上线后才能上线NDRS用户
接口上开启了IPoE功能后,缺省情况下丢弃接收到的用户报文,需要配置IPoE用户触发方式,使指定的用户报文得以处理,后续能够正常使用网络服务。
接口上可同时配置多种触发方式,其中:
· 配置未知源IP触发方式后,IPoE会处理接口上收到的普通IP报文,保存用户信息生成IPoE会话,并进行认证、授权和计费。
· 配置DHCP触发方式后,IPoE会处理接口上收到的DHCP Discover报文、DHCP Solicit或直接申请地址的DHCP Request报文,保存用户信息生成IPoE会话,进行认证、授权和计费,并能根据后续的DHCP报文交互更新用户信息。
· 配置IPv6 ND RS触发方式后,IPoE会处理接口上收到的IPv6 ND RS报文,保存用户信息生成IPoE会话,进行认证、授权和计费,并能根据后续的IPv6 ND报文交互更新用户信息。
对于未知源IPv4报文触发方式,需要执行dhcp enable命令开启DHCP服务。有关该命令的介绍,请参见“BRAS业务命令参考”中的“DHCP”。
使用IPv6 ND RS报文触发方式时,需要注意:
· 开启IPv6 ND RS报文触发方式,需先确认接入设备可发送IPv6 ND RA报文。若接入设备可以发送IPv6 ND RA报文,则建议IPv6 ND RA报文发送间隔不小于6分钟。
· IPv6 ND RS报文触发IPv6单栈IPoE会话功能仅在二层接入模式下生效。
· Windows系统的PC可能生成两类IPv6地址,一类是随机生成的临时地址,另外一类是通过EUI-64方式生成的公共地址。因临时地址可能发生变化,当采用AAA直接为用户授权前缀(即共享前缀)时,为确保在临时地址发生变化的情况下,用户仍可以使用临时地址接入,建议在接口上同时开启未知源IPv6报文触发方式。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置IPv4动态个人会话的触发方式。
ip subscriber initiator unclassified-ip enable
缺省情况下,未知源IP报文触发生成IPoE会话功能均处于关闭状态。
(4) 配置IPv6动态个人会话的触发方式。
ip subscriber initiator { ndrs | unclassified-ipv6 } enable
缺省情况下,ND RS报文以及未知源IPv6报文触发生成IPoE会话功能均处于关闭状态。
通过该配置可以指定动态个人接入用户认证使用的用户名的命名规则,并且根据该命名规则获取的用户名必须与认证服务器配置的用户名保持一致,用户才可以认证通过。
绑定认证方式下,动态个人接入用户按如下先后顺序选择认证用户名:
(1) 使用接入用户专有命令指定的用户名。
¡ 对于DHCP接入用户,使用ip subscriber dhcp username命令获取到的用户名作为认证用户名。
¡ 对于ND RS接入用户,使用ip subscriber ndrs username获取到的用户名作为认证用户名。
¡ 对于未知源IP接入用户,使用ip subscriber unclassified-ip username获取到的用户名作为认证用户名。
(2) 使用ip subscriber username命令配置的用户名作为认证用户名。
(3) 使用缺省的用户名。
¡ 对于DHCP接入用户,使用用户MAC地址作为认证用户名,如果用户MAC地址无法获取,则使用报文源MAC地址作为认证用户名。
¡ 对于ND RS接入用户,使用报文的源MAC地址作为认证用户名。
¡ 对于未知源IP接入用户,使用报文的源IP地址作为认证用户名。
Web认证方式和Web MAC认证方式下,在认证前域阶段,动态个人接入用户认证用户名的选择原则和绑定模式下认证用户名选择原则相同。
Web认证方式下,在Web认证阶段,动态个人接入用户按如下先后顺序选择认证用户名:
(1) 使用用户登录时输入的用户名作为认证用户名。
(2) 使用ip subscriber username命令配置的用户名作为认证用户名。
(3) 使用缺省用户名。
¡ 对于DHCP接入用户,使用用户MAC地址作为认证用户名,如果用户MAC地址无法获取,则使用报文源MAC地址作为认证用户名。
¡ 对于ND RS接入用户,使用报文源MAC地址作为认证用户名。
Web MAC认证方式下,在Web认证阶段,动态个人接入用户按如下先后顺序选择认证用户名:
(4) 使用ip subscriber username命令配置的用户名作为认证用户名
(5) 使用缺省用户名。
¡ 对于DHCP接入用户,使用用户MAC地址作为认证用户名,如果用户MAC地址无法获取,则使用报文源MAC地址作为认证用户名。
¡ 对于ND RS接入用户,使用报文源MAC地址作为认证用户名。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置DHCP接入用户的认证用户名。
ip subscriber dhcp username include { circuit-id [ mac ] [ separator separator ] | client-id [ separator separator ] | hostname [ original ] [ separator separator ] | nas-port-id [ separator separator ] | port [ separator separator ] | remote-id [ separator separator ] | second-vlan [ separator separator ] | slot [ separator separator ] | source-mac [ address-separator address-separator ] [ separator separator ] | string string [ separator separator ] | subslot [ separator separator ] | sysname [ separator separator ] | vendor-class [ absent-replace | original ] * [ separator separator ] | vendor-specific [ separator separator ] | vlan [ separator separator ] } *
缺省情况下,未配置DHCP个人接入用户的认证用户名的命名规则。
对于采用松散模式上线DHCPv4接入用户,因报文中没有携带DHCP Option信息,所以circuit-id、mac、client-id、remote-id、vendor-class、original、vendor-specific这些参数不生效;此时,即使命令中指定上述参数,设备在生成用户名时也会按照未指定的情况处理。DHCPv6接入用户不支持采用松散模式上线。
(4) 配置未知源IP接入用户的认证用户名。
ip subscriber unclassified-ip username include { nas-port-id [ separator separator ] | port [ separator separator ] | second-vlan [ separator separator ] | slot [ separator separator ] | source-ip [ address-separator address-separator ] [ separator separator ] | source-mac [address-separator address-separator ] [ separator separator ] | string string [ separator separator ] | subslot [ separator separator ] | sysname [ separator separator ] | vlan [ separator separator ] } *
缺省情况下,未配置未知源IP接入用户的认证用户名的命名规则。
ip subscriber ndrs username include { nas-port-id [ separator separator ] | port [ separator separator ] | second-vlan [ separator separator ] | slot [ separator separator ] | source-mac [ address-separator address-separator ] [ separator separator ] | string string [ separator separator ] | subslot [ separator separator ] | sysname [ separator separator ] | vlan [ separator separator ] } *
缺省情况下,未配置IPv6 ND RS接入用户的认证用户名的命名规则。
(6) 配置IPoE个人接入用户的认证用户名
ip subscriber username { mac-address [ address-separator address-separator ] [ lowercase | uppercase ] | string string }
缺省情况下,未配置IPoE个人接入用户的认证用户名。
当接口上同时配置多种个人会话的触发方式时,如果管理员想避免为每种触发方式单独配置用户名带来的繁琐操作,可通过本命令一次性为当前接口上所有个人用户配置统一的认证用户名。
本节关于DHCPv4接入用户认证密码的选择原则均是针对采用非松散模式上线的情况。采用松散模式上线时,DHCPv4接入用户认证密码的选择原则请见命令手册。有关松散模式上线的介绍,请参见“1.12.12 配置允许DHCP个人接入用户采用松散模式上线”。
通过该配置指定IPoE接入用户进行认证时使用的密码,该密码必须与认证服务器配置的密码保持一致,用户才可以认证通过。
绑定认证方式下,动态个人接入用户按如下先后顺序选择认证密码:
(1) 使用ip subscriber dhcp password和ip subscriber dhcpv6 password option16命令获取到的密码作为认证密码。(仅适用于DHCP接入用户)
(2) 使用ip subscriber password命令配置的密码作为认证密码。
(3) 使用字符串“vlan”作为认证密码。
Web认证方式和Web MAC认证方式下,在认证前域阶段,动态个人接入用户认证密码的选择原则和绑定模式下认证密码选择原则相同。
Web认证方式下,在Web认证阶段,动态个人接入用户按如下先后顺序选择认证密码:
(1) 使用用户登录时输入的密码作为认证密码。
(2) 使用ip subscriber password命令配置的密码作为认证密码。
(3) 使用字符串“vlan”作为认证密码。
Web MAC认证方式下,在Web认证阶段,动态个人接入用户按如下先后顺序选择认证密码:
(1) 使用ip subscriber password命令配置的密码作为认证密码。
(2) 使用字符串“vlan”作为认证密码。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置动态个人接入用户的认证密码。
ip subscriber password { mac-address [ address-separator address-separator ] [ lowercase | uppercase ] | { ciphertext | plaintext } string }
缺省情况下,动态个人接入用户的认证密码为字符串vlan。
当接口上同时配置多种个人会话的触发方式时,如果管理员想避免为每种触发方式单独配置认证密码带来的繁琐操作,可通过本命令一次性为当前接口上所有个人用户配置统一的认证密码。
(4) 配置DHCPv4个人接入用户使用DHCPv4报文中的信息作为认证密码。
ip subscriber dhcp password { circuit-id mac | option60 [ offset offset ] [ length length ] [ original ] | user-class }
缺省情况下,IPv4 DHCP个人接入用户未使用DHCPv4报文中的信息作为认证密码。
若要使用报文中携带的Option60或Option77内容作为认证密码,还必须配置信任DHCPv4报文中的Option60或Option77字段。信任Option60或Option77字段的介绍请参见“1.12.7 配置DHCP个人接入用户的信任Option”。
(5) 配置DHCPv6个人接入用户使用Option16或者Option17字段的内容作为认证密码。
ip subscriber dhcpv6 password option16 [ offset offset ] [ length length ] [ original ]
缺省情况下,DHCPv6个人接入用户未使用Option16或者Option17字段的内容作为认证密码。
若要使用报文中携带的Option16或者Option17内容作为认证密码,还必须配置信任DHCPv6报文中的Option16或者Option17字段。信任Option16/Option17字段的介绍请参见“1.12.7 配置DHCP个人接入用户的信任Option”。
本节关于认证域的选择原则均是针对采用非松散模式上线的IPoE用户。采用松散模式上线时,用户认证域的选择原则请见命令手册。有关松散模式上线的介绍,请参见“1.12.12 配置允许DHCP个人接入用户采用松散模式上线”。
绑定认证方式下,动态个人接入用户支持通过多种方式获取认证域,并按如下优先顺序选择第一个匹配到的认证域进行认证(其中,步骤(1)~(2)仅适用于DHCP接入用户,步骤(3)仅适用于DHCP接入用户和未知源IP接入用户):
(1) 使用ip subscriber dhcp domain命令指定的强制认证域;若该域未创建,则用户上线失败。(仅适用于DHCP接入用户)
(2) 使用Option中的信息作为认证域。(仅适用于DHCP接入用户)
对于DHCPv4接入用户,使用Option中的信息作为认证域的原则如下:
a. 同时满足如下条件时,使用根据ip subscriber dhcp domain include命令配置的域名生成规则生成的认证域;若该域未创建,则跳转到步骤(3)。
- 接口上配置了ip subscriber trust option60命令;
- 接口上配置了ip subscriber dhcp option60 match命令并且在Option60中的指定位置能够匹配到ip subscriber dhcp option60 match命令指定的字符串;
- 接口上配置了ip subscriber dhcp domain include命令。
b. 同时满足如下条件时,使用和ip subscriber dhcp option60 match命令指定的信任字符串相匹配的Option60中字符串作为认证域;若该域未创建,则跳转到步骤(3)。
- 接口上配置了ip subscriber trust option60命令;
- 接口上配置了ip subscriber dhcp option60 match命令并且在Option60中的指定位置能够匹配到ip subscriber dhcp option60 match命令指定的字符串。
- 接口上未配置ip subscriber dhcp domain include命令。
c. 在信任Option60的情况下,如果接口上配置ip subscriber dhcp option60 match命令但在Option60中的指定位置不能匹配到ip subscriber dhcp option60 match命令指定的字符串,则忽略option60内容,不会使用option60内容作为认证域(即按报文未携带option60选项的情况选择认证域),此时直接跳转到步骤(3)。
d. 同时满足如下条件时,使用根据ip subscriber dhcp domain include命令配置的域名生成规则生成的认证域;若该域未创建,则跳转到步骤(3)。
- 接口上配置了ip subscriber trust option60命令;
- 接口上未配置ip subscriber dhcp option60 match命令;
- Option60内容有效(无非法字符“/”、“\”、“|”、““”、“:”、“*”、“?”、“<”、“>”);
- 接口上配置了ip subscriber dhcp domain include命令。
e. 同时满足如下条件时,使用ip subscriber trust option60命令提取的内容作为认证域;若该域未创建,则跳转到步骤(3)。
- 接口上配置了ip subscriber trust option60命令;
- 接口上未配置ip subscriber dhcp option60 match命令和ip subscriber dhcp domain include命令;
- Option60内容有效(无非法字符“/”、“\”、“|”、““”、“:”、“*”、“?”、“<”、“>”)。
对于DHCPv6接入用户,使用Option中的信息作为认证域的原则如下:
f. 同时满足如下条件时,使用和ip subscriber dhcpv6 option16 match命令指定的信任字符串相匹配的Option16中的字符串作为认证域;若该域未创建,则跳转到步骤(3)。
- 接口上配置了ip subscriber trust option16命令;
- 接口上配置ip subscriber dhcpv6 option16 match命令并且在Option16中的指定位置能够匹配到ip subscriber dhcpv6 option16 match命令指定的信任字符串。
g. 同时满足如下条件时,使用ip subscriber trust option16命令提取的内容作为认证域;若该域未创建,则跳转到步骤(3)。
- 接口上配置了ip subscriber trust option16命令;
- 接口上未配置ip subscriber dhcpv6 option16 match命令或配置了该命令但在Option16中的指定位置不能匹配到ip subscriber dhcpv6 option16 match命令指定的信任字符串。
- Option16内容有效(无非法字符“/”、“\”、“|”、““”、“:”、“*”、“?”、“<”、“>”)。
(3) 使用与报文指定业务特征相映射的认证域;若该域未创建,则用户上线失败。(仅适用于DHCP接入用户和未知源IP接入用户)
(4) 使用动态个人接入用户域配置命令中指定的认证域,具体如下:
¡ 对于DHCP接入用户,使用ip subscriber dhcp domain命令指定的非强制认证域;若该域未创建,则用户上线失败。
¡ 对于未知源IP接入用户,使用ip subscriber unclassified-ip domain命令配置的认证域;若该域未创建,则用户上线失败。
¡ 对于IPv6 ND RS接入用户,使用ip subscriber ndrs domain命令指定的认证域;若该域未创建,则用户上线失败。
(5) 使用AAA模块选择的认证域,具体请参见“BRAS业务配置指导”中的“AAA”。
关于域名生成规则的介绍,请参见“1.12.10 配置DHCP个人接入用户的认证域名生成规则”。
关于如何使用配置的匹配Option60/Option16/Option17中的字符串作为DHCP个人接入用户的认证域,请参见“1.12.9 配置DHCP个人接入用户的信任认证域”。
关于报文业务识别方式映射的认证域的具体配置,请参见“1.20 配置报文业务识别方式以及与认证域的映射关系”。
Web认证方式下,认证域的选择原则请参见“1.15.2 配置Web个人接入用户的认证域”。
如果需要使用Option60/Option16/Option17中的信息作为DHCP个人接入用户的认证域,则需要配置接入设备信任DHCPv4 Option60/DHCPv6 Option16/DHCPv6 Option17中的信息,具体配置请参见“1.12.7 配置DHCP个人接入用户的信任Option”。
为使得用户认证成功,请确保按照认证域优先顺序选择出的认证域在接入设备上存在且配置完整。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置动态个人接入用户使用的认证域。
ip subscriber dhcp domain domain-name [ force ]
ip subscriber { ndrs | unclassified-ip } domain domain-name
缺省情况下,未配置动态个人接入用户使用的认证域。
通过配置动态个人会话的最大数目可以控制系统中的动态个人接入用户总数。
如果接口上配置的IPoE最大会话数目小于当前处于在线状态的动态个人会话数目,则该配置可以执行成功,且在线IPoE用户不受影响,但系统将不允许新的IPoE用户接入。
在双栈IPoE组网应用中,建议:
· 对于DHCP接入用户:DHCPv4和DHCPv6,二者配置相同的最大会话数。
· 对于未知源IP接入用户:未知源IPv4和未知源IPv6,二者配置相同的最大会话数。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置动态个人会话的最大数目。
ip subscriber { dhcp | dhcpv6 | ndrs | unclassified-ip | unclassified-ipv6 } max-session max-number
缺省情况下,未配置接口上允许创建的动态个人会话的最大数目。
本命令与ip subscriber max-session同时配置时,两者可以同时生效,由于控制的角度不同,因此会话数会收到双重限制,即仅在两者均未达到最大会话数限制时才允许创建新的会话。有关ip subscriber max-session命令的相关介绍,请参见“1.19 配置IPoE个人会话和专线子用户会话的最大总数目”。
在DHCP中继组网环境中,接入设备可以从用户的DHCP报文中提取出相应的DHCP Option,这些Option中携带了用户接入线路的相关信息,例如接入节点的物理位置、线路速率等。如果接入设备信任DHCP报文中的这些Option,则会使用这些Option中的相关内容来封装发往RADIUS服务器的RADIUS属性,远程RADIUS服务器可结合这些属性对用户进行更为灵活的接入管理。
信任的Option和对应的RADIUS属性对应关系为:
· 若信任DHCPv4 Option82,则其中的Circuit-ID可用来封装NAS-PORT-ID和DSL_AGENT_CIRCUIT_ID属性。
· 若信任DHCPv4 Option82,则其中的Remote-ID可用来封装DSL_AGENT_REMOTE_ID属性。
· 若信任DHCPv6 Option18,则Option18可用来封装NAS-PORT-ID和DSL_AGENT_CIRCUIT_ID属性。
· 若信任DHCPv6 Option37,则Option37可用来封装DSL_AGENT_REMOTE_ID属性。
· 若信任DHCPv6 Option79,则可以使用Option79中解析出MAC地址,并将该MAC地址作为一个必要条件来识别一个DHCPv6用户,如果存在同MAC地址的DHCPv4用户,二者可以组成双栈。需要注意:
¡ 如果IPoE可以同时从Option79和Client ID字段中解析出用户的MAC地址,则优先使用从Option79中解析出的用户MAC地址。
¡ 为确保BRAS设备可以收到携带Option79的DHCPv6报文,要求在DHCPv6客户端发出请求报文后经过的第一个DHCPv6中继上开启DHCPv6中继支持添加Option79选项功能(由ipv6 dhcp relay client-link-address enable命令配置)。有关ipv6 dhcp relay client-link-address enable命令的介绍,请参见“BRAS业务命令参考”中的“DHCPv6”。
缺省情况下,按字符串格式对option82、option18和option37中的circuit-id和remote-id字段进行解析。有关circuit-id和remote-id解析格式的介绍,请参见“1.12.8 配置DHCP Option中circuit-id和remote-id解析格式”。
在DHCP组网环境中,如果接入设备信任DHCPv4 Option60/DHCPv6 Option16/DHCPv6 Option17中的信息,在满足一定的条件时,IPoE用户可以使用Option60/Option16/Option17中的信息作为指定的认证域进行认证。有关认证域的具体选择情况,请参见“1.12.5 配置动态个人接入用户使用的认证域”。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置信任DHCP报文中的指定Option。
ip subscriber trust { option12 | option60 | option77 | option82 | option16 | option17 | option18 | option37 | option79 }
缺省情况下,仅信任DHCP报文中的Option79,不信任其它Option。
同一接口视图下可以多次执行本命令配置信任DHCP报文中不同的Option,但不允许同时配置信任Option16和Option17。
为确保IPoE对circuit-id和remote-id中的信息进行正确解析,需要根据下游设备上送上来的circuit-id和remote-id信息的不同格式,通过本功能为其配置相应的解析格式。
仅在通过ip subscriber trust命令配置了信任相应Option的情况下,本功能配置后才生效。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置信任DHCP报文中的指定Option。
ip subscriber trust { option82 | option18 | option37 }
缺省情况下,不信任DHCP报文中的任何Option。
(4) 配置IPoE对DHCP Option中circuit-id的解析格式。
ip subscriber access-line-id circuit-id trans-format { ascii | hex }
缺省情况下,IPoE对DHCP Option中circuit-id解析格式为字符串格式。
(5) 配置IPoE对DHCP Option中remote-id的解析格式。
ip subscriber access-line-id remote-id trans-format { ascii | hex }
缺省情况下,IPoE对DHCP Option中remote-id的解析格式为字符串格式。
配置信任DHCPv4 Option60/DHCPv6 Option16/DHCPv6 Option17字段中某些字符串,使设备根据匹配规则从Option60/Option16/Option17字段提取出的字符串中是否存在与配置的信任字符串相同的字符串,分别做如下不同的处理:
· 如果从Option60/Option16/Option17字段提取的字符串中存在与配置的信任字符串相同的字符串,则DHCP报文触发IPoE接入认证,并按如下优先顺序选择第一个匹配到的认证域进行认证。
a. 配置了强制认证域的情况下,使用强制认证域进行认证;若该域未创建,则用户上线失败。
b. 配置了信任Option60/Option16/Option17的情况下,如果配置了域名生成规则,则使用根据域名生成规则生成的认证域;如果未配置域名生成规则,则使用配置的信任字符串作为DHCP个人接入用户的认证域。有关域名生成规则的介绍,请参见“1.12.10 配置DHCP个人接入用户的认证域名生成规则”。
c. 未配置信任Option60/Option16/Option17的情况下,认证域的选择请见1.12.5 配置动态个人接入用户使用的认证域。
d. 使用AAA模块选择的认证域,具体请参见“BRAS业务配置指导”中的“AAA”。
· 如果从Option60/Option16/Option17字段提取的字符串中不存在与配置的信任字符串相同的字符串,则DHCP报文不会触发IPoE接入认证。
如果需要使用ip subscriber dhcp option60 match/ip subscriber dhcpv6 { option16 | option17 } match命令匹配到的字符串作为认证域,必须配置信任Option60/Option16/Option17。有关信任Option60/Option16/Option17的具体配置请参见“1.12.7 配置DHCP个人接入用户的信任Option”。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置DHCPv4个人接入用户的信任认证域。
ip subscriber dhcp option60 match string [ offset offset ] [ length length ]
缺省情况下,未配置DHCPv4个人接入用户的信任认证域。
(4) 配置DHCPv6个人接入用户的信任认证域。
ip subscriber dhcpv6 { option16 | option17 } match string [ offset offset ] [ length length ]
缺省情况下,未配置DHCPv6个人接入用户的信任认证域。
在一些组网环境中,需要把接入信息和option60的字符拼接后作为认证域来认证。例如:用户A和用户B属于不同的VLAN,但拥有相同的Option60,并通过同一接入接口上线。现要求将用户A和用户B划分到不同的认证域,并根据不同的认证域授权不同的地址池。此时可通过本特性配置VLAN信息参与域名生成,即通过Option60+VLAN组合方式生成不同的域名。
在DHCP接入用户使用Option60中的信息作为认证域的情况下,如果配置了本特性,则配置的参数将参与域名的生成,最终的域名生成规则为:Option60中的作为认证域的字段+命令配置的参数信息。在配置了信任Option60的情况下,Option60中参与域名生成字段的选取规则如下:
· 如果配置了ip subscriber dhcp option60 match命令,并且在Option60中的指定位置能够匹配到指定的信任字符串,则使用匹配的信任字符串参与域名生成。如果不能匹配到指定的信任字符串,则忽略Option60内容,不会使用Option60内容作为认证域(即按报文未携带option60选项的情况选择认证域)。
· 如果未配置ip subscriber dhcp option60 match命令,则使用ip subscriber trust option60命令提取的内容参与域名生成。
如果需要使用ip subscriber dhcp domain include命令生成认证域名,必须配置信任Option60。有关信任Option60的具体配置请参见“1.12.9 配置DHCP个人接入用户的信任认证域”。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置信任DHCP报文中Option60。
ip subscriber trust option60
缺省情况下,不信任DHCP报文中的任何Option。
(4) 配置DHCPv4个人接入用户的信任认证域。
ip subscriber dhcp option60 match string [ offset offset ] [ length length ]
缺省情况下,未配置DHCPv4个人接入用户的信任认证域。
(5) 配置DHCPv4个人接入用户的认证域名生成规则。
ip subscriber dhcp domain include vendor-class [ separator separator ] { second-vlan [ separator separator ] | string string [ separator separator ] | vlan [ separator separator ] } *
缺省情况下,未配置DHCPv4个人接入用户的认证域名生成规则。
因用户接入接口所在Slot重启、接入接口Down、用户在线探测超时或误操作(例如执行cut access-user命令误删)等原因导致在线IPoE用户的会话被删除时,对于某些用户,因无法感知接入设备上的故障或误操作,不会再次发送请求报文触发上线,导致接入设备无法为其重新生成相应类型的IPoE会话。为解决这类问题,IPoE允许用户异常下线后通过报文重新触发上线。
设备根据如下原则唯一标识并记录一个IPoE异常下线用户:
· 对于DHCPv4用户和NDRS用户,设备根据用户MAC地址、内层VLAN ID、外层VLAN ID和接入接口四个字段信息来记录一个IPoE异常下线用户。
· 对于DHCPv6用户,设备根据用户DUID、内层VLAN ID、外层VLAN ID和接入接口四个字段信息来记录一个IPoE异常下线用户。
目前IPoE支持DHCP用户和ND RS用户异常下线后通过报文重新触发上线。其中:
· DHCP用户异常下线后通过报文重新触发上线,是指设备通过对异常下线的DHCP用户信息进行记录,当收到异常下线DHCP用户的IP、ARP或NS/NA报文时,根据DHCP异常下线记录表项恢复该用户的IPoE会话。
· ND RS用户异常下线后通过报文重新触发上线,是指设备通过对异常下线的ND RS用户信息进行记录,当收到异常下线ND RS用户的IP或NS/NA报文时,根据ND RS异常下线记录表项恢复该用户的IPoE会话。
当设备记录的IPoE异常下线用户达到最大数目后,如有再有新的IPoE异常下线用户需要记录,设备会使用新记录覆盖旧记录。
本功能主要用于在设备不重启的情况下,用来恢复异常下线用户的IPoE会话信息。
当接口收到用户IP报文、ARP报文或NS/NA报文时,如果该报文可以同时匹配静态IPoE会话和异常下线记录表项,则按静态IPoE会话方式上线。
为保证DHCP用户异常下线后可以通过报文重新触发上线,需要注意:
· 用户认证域或AAA服务器中需要授权相应的IP地址池或IP地址池组。如果未在用户认证域或AAA服务器中授权相应的IP地址池或IP地址池组,则要求:
¡ 当BRAS设备作为DHCP server时,必须在接入接口上配置IPv4或IPv6地址,BRAS设备需要根据接入接口IP地址查找同网段的地址池为用户分配IP地址或IPv6 PD前缀。
¡ 当BRAS设备作为DHCP relay时,必须在接入接口上配置IPv4或IPv6地址,并且通过命令dhcp relay server-address命令或ipv6 dhcp relay server-address指定远端DHCP server的地址。相关命令详细介绍,请参见“BRAS业务命令参考”中的“DHCP”和“DHCPv6”。
· 在IPv6组网中,当BRAS设备作为DHCP relay时,必须在DHCPv6服务器上执行ipv6 dhcp server allow-hint命令开启服务器支持期望地址/前缀分配功能。有关该命令的介绍,请参见“BRAS业务命令参考”中的“DHCPv6”。
目前ND RS用户异常下线仅支持每用户每前缀应用场景,不支持共享前缀应用场景。
IPoE Web认证用户异常下线后重新触发上线时只能恢复其在认证前域中的会话。如果该用户需要在Web认证阶段上线,仍需走正常Web认证流程。
(1) 进入系统视图。
system-view
(2) 配置设备所能记录IPoE异常下线用户的最大数目。
ip subscriber abnormal-logout max-user max-user
缺省情况下,设备所能记录IPoE异常下线用户的最大数目为512000。
(3) 进入接口视图。
interface interface-type interface-number
(4) 开启未知源IP报文触发生成IPoE会话功能或ARP报文触发用户上线功能。请至少选择其中一项进行配置。
¡ 开启未知源IP报文触发生成IPoE会话功能。
ip subscriber initiator unclassified-ip enable [ matching-user ]
缺省情况下,未知源IP报文触发生成IPoE会话功能处于关闭状态。
¡ 开启ARP报文触发用户上线功能。
ip subscriber initiator arp enable
缺省情况下,ARP报文触发用户上线功能处于关闭状态。
(5) 开启未知源IPv6报文触发生成IPoE会话功能或NS/NA报文触发用户上线功能。请至少选择其中一项进行配置。
¡ 开启未知源IP报文触发生成IPoE会话功能。
ip subscriber initiator unclassified-ipv6 enable [ matching-user ]
缺省情况下,未知源IPv6报文触发生成IPoE会话功能处于关闭状态。
¡ 开启NS/NA报文触发用户上线功能。
ip subscriber initiator nsna enable
缺省情况下,NS/NA报文触发用户上线功能处于关闭状态。
(6) (可选)配置异常下线用户再次触发上线时租约到期时间为异常下线前的时间。
ip subscriber lease-end-time original
缺省情况下,异常下线用户再次触发上线时租约到期重新开始计算。
因系统重启导致在线IPoE用户的会话被删除时,待系统重启后,对于DHCP用户,因无法感知接入设备的重启,不会再次发送DHCP报文触发上线,导致接入设备无法为其重新生成DHCP类型的IPoE会话。为解决这类问题,IPoE支持用户采用松散模式上线。
采用松散模式上线,是指系统重启后,允许IPoE用户在指定的loose-time/all-time时长内,通过IP、ARP或NS/NA报文触发上线生成DHCP类型的IPoE会话。
本功能主要用于在设备异常重启的情况下,在指定时间内,用来恢复异常下线DHCP用户的IPoE会话信息。
在系统重启后的设置时长内,当接口收到用户IP、ARP或NS/NA报文时,按如下先后顺序上线:
· 如果该报文可以匹配静态IPoE会话,则按静态IPoE会话方式上线。
· 如果该报文可以匹配漫游用户,则按漫游流程处理。
· 如果该报文可以匹配DHCP异常下线记录表项,则按异常下线记录重新上线。
· 采用松散模式上线。
对于IPoE DHCP用户,仅在同时满足下列条件时,才支持用户采用松散模式上线:
· 接入接口上配置了二层接入模式。
· 在IPv6组网中,当BRAS设备作为DHCP relay时,必须在DHCPv6服务器上执行ipv6 dhcp server allow-hint命令开启服务器支持期望地址/前缀分配功能。有关该命令的介绍,请参见“BRAS业务命令参考”中的“DHCPv6”。
· 通过认证域或AAA服务器为用户授权了IP地址池。
对于IPoE Web认证用户,采用松散模式上线时只能重新生成其在认证前域中的会话。如果该用户需要在Web认证阶段上线,仍需走正常Web认证流程。
在IPoE转发与控制分离组网环境下,本命令仅在CP上配置后才生效。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 开启未知源IP报文触发生成IPoE会话功能或ARP报文触发用户上线功能。请至少选择其中一项进行配置。
¡ 开启未知源IP报文触发生成IPoE会话功能。
ip subscriber initiator unclassified-ip enable [ matching-user ]
缺省情况下,未知源IP报文触发生成IPoE会话功能处于关闭状态。
¡ 开启ARP报文触发用户上线功能。
ip subscriber initiator arp enable
缺省情况下,ARP报文触发用户上线功能处于关闭状态。
(4) 开启未知源IPv6报文触发生成IPoE会话功能或NS/NA报文触发用户上线功能。请至少选择其中一项进行配置。
¡ 开启未知源IP报文触发生成IPoE会话功能。
ip subscriber initiator unclassified-ipv6 enable [ matching-user ]
缺省情况下,未知源IPv6报文触发生成IPoE会话功能处于关闭状态。
¡ 开启NS/NA报文触发用户上线功能。
ip subscriber initiator nsna enable
缺省情况下,NS/NA报文触发用户上线功能处于关闭状态。
(5) 回退系统视图
quit
(6) 配置松散模式上线功能。
ip subscriber access-trigger loose { loose-time | all-time }
缺省情况下,系统重启后不允许IPoE用户采用松散模式上线。
在IPoE DHCP或ND RS用户接入场景中,设备或用户接入接口所在Slot重启、接入接口Down等故障会导致用户异常下线及用户信息丢失。如果用户未能感知到此故障,待故障恢复后,用户不会重新发送DHCP或ND RS报文触发上线,这种情况下接入设备将无法恢复异常下线用户的信息。为解决这类问题,设备支持IPoE用户信息的自动备份功能。
IPoE用户信息的自动备份功能,是指在用户上线后设备自动对用户信息进行备份,如果出现故障且故障恢复后,设备再根据备份信息自动恢复异常下线用户的上线信息。
设备重启时,因设备重启后,保存在内存中的备份用户信息会丢失,导致设备无法根据内存中的备份信息恢复异常下线用户的上线信息。针对设备重启的情况,设备支持将内存中的信息保存到指定文件中,待设备重启后再从备份文件恢复用户信息到内存中。根据备份和恢复的方式不同,自动备份功能分为如下两种:
· 手动文件备份和恢复
在计划设备重启前,需要先执行ip subscriber save-file命令将内存中的备份信息保存一份到指定文件中。待设备重启后,再执行ip subscriber recover-file命令将文件中的备份信息重新恢复到内存中,以便设备根据内存中的备份用户信息恢复异常下线用户的上线信息。
· 自动定时文件备份和恢复
设备按照指定的备份间隔周期性将设备内存中的用户信息保存到位于系统根目录下的备份文件中,并且在设备整机重启后,设备再自动将备份文件中的备份信息重新恢复到内存中,以便设备根据内存中的备份用户信息恢复异常下线用户的上线信息。
相比于手动备份功能,自动定时备份功能避免了因设备随机性的故障而错过手动备份时机导致用户信息丢失的情况。
目前仅IPoE DHCP用户和ND RS用户支持自动备份功能。
本功能主要用于在计划内重启设备或接入接口Down等故障的情况下,用来恢复异常下线用户的IPoE会话信息。
为了实现IPoE用户信息的自动备份功能,除了需要在系统视图下执行ip subscriber auto-save max-user命令,还需要在用户所属ISP域视图下执行access-user auto-save enable命令(缺省配置),否则自动备份功能不生效。
当各ISP域下需要备份的IPoE用户数量之和超过配置的允许自动备份的最大用户数max-user时,超出数量的用户信息将不会被保存。
在开启定时自动备份功能后,用户不可以通过手动自动备份命令ip subscriber save-file来更新定时自动备份文件。另外,为避免设备频繁对存储介质进行读写,建议根据实际需要合理配置定时自动备份的周期。
目前对于ND RS用户,IPoE自动备份功能仅支持每用户每前缀应用场景,不支持共享前缀应用场景。
IPoE Web认证用户下线后重新上线时只能恢复其在认证前域中的会话。如果该用户需要在Web认证阶段上线,仍需走正常Web认证流程。对于双栈IPoE用户,如果在用户上线接口通过ip subscriber authentication-method命令指定了basic-service-ipv4参数,则仅在用户的两个协议栈均在Web认证阶段上线后,自动备份功能才会将该用户记录为在线状态,否则将记录为处于等待恢复状态(即wait-recover状态)。
转发与控制分离组网中不支持本功能。
(1) 进入系统视图。
system-view
(2) 在IPoE用户所属ISP下开启用户自动备份功能。
进入ISP视图。
domain name isp-name
开启用户自动备份功能。
access-user auto-save enable
缺省情况下,用户自动备份功能处于开启状态。
关于该命令的详细介绍,请参见“BRAS业务命令参考”中的“AAA”。
(3) 回退系统视图
quit
(4) 开启IPoE用户信息的自动备份功能,并配置允许自动备份的最大用户数。
ip subscriber auto-save max-user max-user
缺省情况下,IPoE用户信息的自动备份功能处于开启状态,允许自动备份的最大用户数512000。
(5) 开启IPoE用户的自动恢复功能
ip subscriber auto-recover enable
缺省情况下,IPoE用户的自动恢复功能处于开启状态。
仅在开启了IPoE用户的自动恢复功能的情况下,当故障恢复后,设备才会根据内存中的备份信息自动恢复异常下线用户的上线信息。
(6) (可选)配置IPoE用户自动恢复上线的速率模式。
ip subscriber auto-recover speed { fast | normal | slow } [ recover-delay delay-time ]
缺省情况下,IPoE用户自动恢复上线的速率为normal,延迟恢复时间为5秒。
在fast模式下,设备会较高的速率恢复用户的上线信息,在恢复期间会对设备的处理性能有一定的影响,请根据需要选择该模式。
(7) 进入接口视图。
interface interface-type interface-number
(8) (可选)配置自动备份用户下线后再次触发上线后的租约到期时间为自动备份表项记录的租约时间。
ip subscriber lease-end-time original
缺省情况下,自动备份用户下线后再次触发上线后的租约到期时间重新开始计算。
(9) 回退系统视图
quit
(10) 配置将用户信息保持到指定文件。请至少选择其中一项进行配置。
¡ 配置手动备份。
设备重启前,先将内存中的备份用户信息保存到指定文件。
ip subscriber save-file filename
缺省情况下,内存中的备份用户信息不会保存到文件中。
设备重启后,再将指定文件中保存的备份信息恢复到内存中。
ip subscriber recover-file filename
缺省情况下,文件中的备份用户信息不会恢复到内存中。
¡ 配置定时自动备份。
开启IPoE用户信息自动定时备份功能。
ip subscriber auto-save-file file-name interval interval
缺省情况下,IPoE用户信息自动定时备份功能处于关闭状态。
(可选)立即将内存中的IPoE用户信息保存到定时自动备份功能所指定的备份文件中。
ip subscriber auto-save-file now
在开启IPoE用户信息的定时自动备份功能的情况下,如果配置的自动备份周期时间间隔较长,在计划内重启设备前,为避免用户信息丢失,可以通过本命令立即执行一次备份操作,把当前内存中最新的备份用户信息保存到定时自动备份所指定的备份文件中。
如下图所示,CPE支持通过NDRA和IA_PD两种方式分别向BRAS申请ND前缀和PD前缀。其中:
· NDRA:CPE主动向BRAS发送ND RS报文,BRAS通过ND RA报文给CPE WAN口分配ND前缀,用于CPE WAN口生成IPv6全球单播地址,该地址可被用于远程管理CPE设备。
· IA_PD:CPE主动向BRAS发送DHCPv6请求报文,BRAS通过DHCPv6(IA_PD)协议给CPE分配PD前缀;CPE将获取到PD前缀通过无状态方式分配给下连的主机,用于主机生成IPv6全球单播地址。
图1-13 NDRA+DHCPv6(IA_PD)方式地址分配组网示意图
在上述组网中,对于同一个CPE下连的Host,如果该CPE未能成功通过IA_PD方式上线,那么这些Host就无法生成IPv6全球单播地址,不能访问网络资源。这种情况下,即使CPE通过NDRA方式成功上线,对Host用户也没有实际意义,同时,维护CPE的NDRS用户表项还会占用BRAS的系统资源。基于上述原因,建议在NDRA+DHCPv6(IA_PD)组网中,通过本命令配置仅在用户以IA_PD方式成功上线的情况下,才允许以NDRS方式上线。
在非NDRA+DHCPv6(IA_PD)组网中,请不要配置本功能,否则会导致用户不能以NDRS方式上线。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 在接口上配置用户以IA_PD方式成功上线后,才允许以NDRS方式上线。
ip subscriber ndrs wait-delegation-prefix
缺省情况下,接口上不限制用户以IA_PD方式和NDRS方式上线的先后顺序。
IPoE静态接入用户配置任务如下:
(1) 配置静态会话的触发方式
(2) 配置静态个人会话
(3) 配置静态专线会话
(4) (可选)配置静态接入用户的认证用户名的命名规则
(5) (可选)配置静态接入用户的认证密码
(6) (可选)配置静态接入用户使用的认证域
(7) (可选)配置IPoE用户的会话冲突检测功能
配置静态会话时,必须开启未知源IP报文触发生成IPoE会话的功能,才能使IP报文来触发静态会话发起认证。
对于IPv4静态会话,如需通过ARP报文触发用户上线,则需要开启静态接入用户通过ARP报文触发上线功能,此时,当设备收到的ARP报文与手工配置的IPoE会话匹配后才会触发认证。
关闭静态接入用户通过ARP报文触发上线功能时,接口上已由ARP报文触发上线的IPv4静态会话将仍保持其在线状态。
对于IPv6静态会话,如需通过NS或NA报文触发用户上线,则需要开启静态接入用户通过NS/NA报文触发上线功能,此时,当设备收到的NS或NA报文与手工配置的IPoE会话匹配后才会触发认证。
关闭静态接入用户通过NS/NA报文触发上线功能时,接口上已由NS或NA报文触发上线的IPv6静态会话将仍保持其在线状态。
开启静态接入用户通过ARP报文触发上线功能时,请确保给静态接入用户分配的网关地址是用户接入接口的IP地址或IP地址池下的共享网关地址(例如BAS类型的IP地址池下通过命令gateway指定的网关地址),否则即使该用户的ARP报文与手工配置的IPoE会话匹配也无法触发认证。
仅在IPoE二层接入模式下才支持通过NS和NA报文触发用户上线。当需要通过NS或NA报文触发用户上线时,必须通过ip subscriber initiator nsna enable命令开启NS/NA报文触发用户上线功能。
在配置全局静态指定了IPv6 Delegation前缀的情况下,只有在接口使能二层接入模式且是Bind认证方式时匹配该会话的用户才能上线。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置IPv4静态会话的触发方式。请至少选择其中一项进行配置。
¡ 开启未知源IPv4报文触发生成IPoE会话功能。
ip subscriber initiator unclassified-ip enable [ matching-user ]
缺省情况下,未知源IPv4报文触发生成IPoE会话功能处于关闭状态。
¡ 开启ARP报文触发用户上线功能。
ip subscriber initiator arp enable
缺省情况下,ARP报文触发用户上线功能处于关闭状态。
(4) 配置IPv6静态会话的触发方式。请至少选择其中一项进行配置。
¡ 开启未知源IPv6报文触发生成IPoE会话功能。
ip subscriber initiator unclassified-ipv6 enable [ matching-user ]
缺省情况下,未知源IPv6报文触发生成IPoE会话功能处于关闭状态。
¡ 开启NS/NA报文触发用户上线功能。
ip subscriber initiator nsna enable
缺省情况下,NS/NA报文触发用户上线功能处于关闭状态。
管理员手工输入静态个人会话所需的信息(用户IP地址、MAC地址、用户报文的内/外层VLAN)后,接入设备根据这些信息生成对应的静态个人会话。当接口上有与手工配置的静态个人会话相匹配的IP、ARP、NS或NA报文通过时,将触发认证过程。认证成功后,设备对静态个人接入用户下发用户策略,允许该用户报文通过接口并对该用户的流量进行计费。
静态个人会话可在接口上配置,也可以全局配置。当静态个人用户上线时,如果用户报文可同时匹配全局静态个人会话和接口静态个人会话,则优先使用接口静态个人会话上线。
同一接口下任意IP地址的静态个人会话最多只能存在一条。
系统视图下,在公网或同一VPN实例中,任意IP地址的全局静态个人会话最多只能存在一条。
接口静态用户接入不支持802.1X认证方式,在同一接口上不允许同时配置802.1X认证方式和IPoE接口静态个人会话,否则可能会影响该接口上配置的IPoE接口静态个人会话功能的正常使用。
为避免动/静态用户使用的IP地址冲突,建议:
· 在配置IPv4静态个人会话或双栈静态个人会话之前,先通过dhcp enable命令开启DHCP服务,并且静态会话中待指定的所有IPv4地址,都已经在IP地址池中通过forbidden-ip命令被禁用掉。有关dhcp enable命令、IP地址池和forbidden-ip命令的介绍,请参见“BRAS业务配置指导”中的“DHCP”。
· 在配置IPv6静态个人会话或双栈静态个人会话之前,先通过forbidden-address命令将静态会话中待指定的所有IPv6地址在IPv6地址池中禁用掉。有关IPv6地址池和forbidden-address命令的介绍,请参见“BRAS业务配置指导”中的“DHCPv6”。
(1) 进入系统视图。
system-view
(2) (可选)配置设备发送静态个人接入用户上线请求的时间间隔。
ip subscriber static-session request-online interval seconds
缺省情况下,设备发送静态个人接入用户上线请求的时间间隔为180秒。
(3) 进入接口视图。
interface interface-type interface-number
(4) 配置IPv4静态个人会话。
ip subscriber session static ip start-ipv4-address [ end-ipv4-address ] [ vlan vlan-id [ second-vlan vlan-id ] ] [ mac mac-address ] [ domain domain-name ] [ password mac ] [ request-online ] [ description string ] [ gateway ip ipv4-address ] [ vpn-instance vpn-instance-name ] [ keep-online ]
缺省情况下,未配置IPv4静态个人会话。
(5) 配置IPv6静态个人会话。
ip subscriber session static ipv6 start-ipv6-address [ end-ipv6-address ] [ vlan vlan-id [ second-vlan vlan-id ] ] [ mac mac-address ] [ domain domain-name ] [ password mac ] [ request-online ] [ description string ] [ gateway ipv6 ipv6-address ] [ vpn-instance vpn-instance-name ] [ keep-online ]
缺省情况下,未配置IPv6静态个人会话。
(6) 配置双栈静态个人会话。
ip subscriber session static ip start-ipv4-address [ end-ipv4-address ] ipv6 start-ipv6-address [ end-ipv6-address ] [ vlan vlan-id [ second-vlan vlan-id ] ] [ mac mac-address ] [ domain domain-name ] [ password mac ] [ request-online { ip | ipv6 } ] [ description string ] [ gateway { ip ipv4-address | ipv6 ipv6-address } * ] [ vpn-instance vpn-instance-name ] [ keep-online ]
缺省情况下,未配置双栈静态个人会话。
在先开启IPoE功能,后配置双栈静态用户的情况下,必须同时开启IPv4和IPv6协议栈的IPoE功能,才允许配置双栈静态用户;在先配置双栈静态用户,后开启IPoE功能的情况下,必须同时开启IPv4和IPv6协议栈的IPoE功能,否则不允许开启IPoE功能。
(1) 进入系统视图。
system-view
(2) 创建静态用户接口列表,并进入静态用户接口列表视图。
static-user interface-list list-id
仅采用(命令形式二)配置全局静态个人会话时需要本配置。
(3) 将接口加入到静态用户接口列表。
add interface interface-type interface-number
缺省情况下,未将接口加入到静态用户接口列表。
仅采用(命令形式二)配置全局静态个人会话时需要本配置。
(4) 配置IPv4静态个人会话。
(命令形式一)
ip subscriber session static ip start-ipv4-address [ end-ipv4-address ] [ mac mac-address ] [ domain domain-name ] [ username name ] [ password { { ciphertext | plaintext } string | mac } ] [ interface interface-type interface-number [ vlan vlan-id [ second-vlan vlan-id ] ] [ request-online ] ] [ description string ] [ gateway ip ipv4-address ] [ vpn-instance vpn-instance-name ] [ keep-online | support-ds ]
(命令形式二)
ip subscriber session static ip start-ipv4-address [ end-ipv4-address ] interface-list list-id [ mac mac-address ] [ domain domain-name ] [ username name ] [ password { { ciphertext | plaintext } string | mac } ] [ description string ] [ vpn-instance vpn-instance-name ] [ keep-online | support-ds ]
缺省情况下,未配置IPv4静态个人会话。
(5) 配置IPv6静态个人会话。
(命令形式一)
ip subscriber session static ipv6 start-ipv6-address [ end-ipv6-address ] [ delegation-prefix start-ipv6-prefix [ end-ipv6-prefix ] prefix-length ] [ mac mac-address ] [ domain domain-name ] [ username name ] [ password { { ciphertext | plaintext } string | mac } ] [ interface interface-type interface-number [ vlan vlan-id [ second-vlan vlan-id ] ] [ request-online ] ] [ description string ] [ gateway ipv6 ipv6-address ] [ vpn-instance vpn-instance-name ] [ keep-online | support-ds ]
(命令形式二)
ip subscriber session static ipv6 start-ipv6-address [ end-ipv6-address ] interface-list list-id [ delegation-prefix start-ipv6-prefix [ end-ipv6-prefix ] prefix-length ] [ mac mac-address ] [ domain domain-name ] [ username name ] [ password { { ciphertext | plaintext } string | mac } ] [ description string ] [ vpn-instance vpn-instance-name ] [ keep-online | support-ds ]
缺省情况下,未配置IPv6静态个人会话。
(6) 配置双栈静态个人会话。
(命令形式一)
ip subscriber session static ip start-ipv4-address [ end-ipv4-address ] ipv6 start-ipv6-address [ end-ipv6-address ] [ delegation-prefix start-ipv6-prefix [ end-ipv6-prefix ] prefix-length ] [ mac mac-address ] [ domain domain-name ] [ username name ] [ password { { ciphertext | plaintext } string | mac } ] [ interface interface-type interface-number [ vlan vlan-id [ second-vlan vlan-id ] ] [ request-online [ ip | ipv6 ] ] ] [ description string ] [ gateway { ip ipv4-address | ipv6 ipv6-address } * ] [ vpn-instance vpn-instance-name ] [ keep-online ]
(命令形式二)
ip subscriber session static ip start-ipv4-address [ end-ipv4-address ] ipv6 start-ipv6-address [ end-ipv6-address ] interface-list list-id [ delegation-prefix start-ipv6-prefix [ end-ipv6-prefix ] prefix-length ] [ mac mac-address ] [ domain domain-name ] [ username name ] [ password { { ciphertext | plaintext } string | mac } ] [ description string ] [ vpn-instance vpn-instance-name ] [ keep-online ]
缺省情况下,未配置双栈静态个人会话。
当配置携带interface参数的双栈静态个人会话时,需要注意:
¡ 如果先在interface参数指定的接口上开启IPoE功能,后配置双栈静态用户,必须同时开启IPv4和IPv6协议栈的IPoE功能,才允许配置双栈静态用户;
¡ 如果先配置双栈静态用户,后在interface参数指定的接口上开启IPoE功能,必须同时开启IPv4和IPv6协议栈的IPoE功能,否则不允许开启IPoE功能。
(7) (可选)配置设备发送静态个人接入用户上线请求的时间间隔。
ip subscriber static-session request-online interval seconds
缺省情况下,设备发送静态个人接入用户上线请求的时间间隔为180秒。
如下图所示,在运营商专线业务中,某企业的三层设备Device下挂多台主机,Device的上行接口Port A需要由运营商分配公网IP地址,并且在BRAS侧需要对Device下挂的所有主机统一进行认证、授权和计费。针对这种情况,在满足专线业务需求的前提下,为便于管理员合理分配和维护公网IP地址,管理员还希望能够在BRAS设备上随时查阅为各个专线业务的Device设备分配的公网IP地址,此时可在BRAS设备上部署IPoE静态专线。
图1-14 IPoE静态专线应用组网示意图
静态专线是一种特殊的专线,具体表现在如下两个方面:
· 在业务属性的独立性方面:类似接口专线,该接口上接入的所有用户统一进行认证、授权和计费。当静态专线会话上线后,任意源IP地址的报文都允许从专线接口通过。
· 在触发上线方式方面:类似全局静态个人会话,在接入接口上开启了IPoE功能、且接口状态up的情况下,当IP、ARP、NS或NA流量通过时接入设备会尝试以配置的用户名和密码发起认证。如果认证通过,则建立静态专线会话;如果认证未通过,则不建立静态专线会话。
每个接口上只能配置一个静态专线会话。
仅当IPoE工作在二层接入模式,并且采用绑定认证方式时支持静态专线。
在静态用户接入接口不允许配置IPv4地址和IPv6全球单播地址,要求:
· 对于IPv4:使用IP地址池下的共享网关地址(例如BAS类型的IP地址池下通过命令gateway指定的网关地址)。
· 对于IPv6:使用ipv6 address auto link-local命令配置静态用户接入接口自动生成链路本地地址。
为避免动/静态用户使用的IP地址冲突,建议:
· 在配置IPv4单栈IPoE静态专线会话或双栈IPoE静态专线会话之前,先通过dhcp enable命令开启DHCP服务,并且静态专线会话中待指定的所有IPv4地址,都已经在IP地址池中通过forbidden-ip命令被禁用掉。有关dhcp enable命令、IP地址池和forbidden-ip命令的介绍,请参见“BRAS业务配置指导”中的“DHCP”。
· 在配置IPv6单栈IPoE静态专线会话或双栈IPoE静态专线会话之前,先通过forbidden-address命令将静态专线会话中待指定的所有IPv6地址在IPv6地址池中禁用掉。有关IPv6地址池和forbidden-address命令的介绍,请参见“BRAS业务配置指导”中的“DHCPv6”。
(1) 进入系统视图。
system-view
(2) 配置IPv4单栈IPoE静态专线会话。
ip subscriber session static-leased ip ipv4-address interface interface-type interface-number [ vlan vlan-id [ second-vlan vlan-id ] ] [ mac mac-address ] [ domain domain-name ] [ password mac ] [ request-online ] [ description string ] [ gateway ip ipv4-address ] [ vpn-instance vpn-instance-name ] [ keep-online ]
缺省情况下,未配置IPv4单栈IPoE静态专线会话。
(3) 配置IPv6单栈IPoE静态专线会话。
ip subscriber session static-leased ipv6 ipv6-address interface interface-type interface-number [ vlan vlan-id [ second-vlan vlan-id ] ] [ mac mac-address ] [ domain domain-name ] [ password mac ] [ request-online ] [ description string ] [ gateway ipv6 ipv6-address ] [ vpn-instance vpn-instance-name ] [ keep-online ]
缺省情况下,未配置IPv6单栈IPoE静态专线会话。
(4) 配置双栈IPoE静态专线会话。
ip subscriber session static-leased ip ipv4-address ipv6 ipv6-address interface interface-type interface-number [ vlan vlan-id [ second-vlan vlan-id ] ] [ mac mac-address ] [ domain domain-name ] [ password mac ] [ request-online [ ip | ipv6 ] ] [ description string ] [ gateway { ip ipv4-address | ipv6 ipv6-address } * ] [ vpn-instance vpn-instance-name ] [ keep-online ]
缺省情况下,未配置双栈IPoE静态专线会话。
通过该配置可以指定静态接入用户认证使用的用户名的命名规则,并且根据该命名规则获取的用户名必须与认证服务器配置的用户名保持一致,用户才可以认证通过。
绑定认证方式下,静态接入用户按如下先后顺序选择认证用户名:
(1) 使用ip subscriber session static命令中username参数指定的用户名作为认证用户名。(仅适用于全局静态接入用户)
(2) 使用ip subscriber unclassified-ip username获取到的用户名作为认证用户名。
(3) 使用ip subscriber username命令配置的用户名作为认证用户名。
(4) 使用报文的源IP地址作为认证用户名。
Web认证方式和Web MAC认证方式下,在认证前域阶段,静态接入用户按如下先后顺序选择认证用户名:
(1) 使用ip subscriber session static命令中username参数指定的用户名作为认证用户名。(仅适用于全局静态接入用户)
(2) 使用ip subscriber unclassified-ip username获取到的用户名作为认证用户名。
(3) 使用ip subscriber username命令配置的用户名作为认证用户名。
(4) 使用报文的源IP地址作为认证用户名。
Web认证方式下,在Web认证阶段,静态接入用户按如下先后顺序选择认证用户名:
(1) 使用用户登录时输入的用户名作为认证用户名。
(2) 使用ip subscriber username命令配置的用户名作为认证用户名。
(3) 使用报文的源IP地址作为认证用户名。
Web MAC认证方式下,在Web认证阶段,静态接入用户按如下先后顺序选择认证用户名:
(1) 使用ip subscriber username命令配置的用户名作为认证用户名
(2) 使用报文的源IP地址作为认证用户名。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置未知源IP接入用户的认证用户名。
ip subscriber unclassified-ip username include { nas-port-id [ separator separator ] | port [ separator separator ] | second-vlan [ separator separator ] | slot [ separator separator ] | source-ip [ address-separator address-separator ] [ separator separator ] | source-mac [address-separator address-separator ] [ separator separator ] | string string [ separator separator ] | subslot [ separator separator ] | sysname [ separator separator ] | vlan [ separator separator ] } *
缺省情况下,未知源IP接入用户采用用户报文的源IP地址作为认证用户名。
(4) 配置IPoE个人接入用户的认证用户名
ip subscriber username { mac-address [ address-separator address-separator ] [ lowercase | uppercase ] | string string }
缺省情况下,未配置IPoE个人接入用户的认证用户名。
静态接入用户使用接口上配置的IPoE接入用户的认证密码进行认证。通过该配置指定的密码必须与认证服务器配置的密码保持一致,用户才可以认证通过。
绑定认证方式下静态接入用户按如下先后顺序选择认证密码:
(1) ip subscriber session static命令中指定password时,使用配置值作为认证密码。
(2) 使用ip subscriber password命令配置的密码作为认证密码。
(3) 使用字符串“vlan”作为认证密码。
Web认证方式和Web MAC认证方式下,在认证前域阶段,静态接入用户按如下先后顺序选择认证密码:
(1) ip subscriber session static命令中指定password时,使用配置值作为认证密码。
(2) 使用ip subscriber password命令配置的密码作为认证密码。
(3) 使用字符串“vlan”作为认证密码。
Web认证方式下,在Web认证阶段,静态接入用户按如下先后顺序选择认证密码:
(1) 使用用户登录时输入的密码作为认证密码。
(2) 使用ip subscriber password命令配置的密码作为认证密码。
(3) 使用字符串“vlan”作为认证密码。
Web MAC认证方式下,在Web认证阶段,静态接入用户按如下先后顺序选择认证密码:
(1) 使用ip subscriber password命令配置的密码作为认证密码。
(2) 使用字符串“vlan”作为认证密码。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置IPoE接入用户的认证密码。
ip subscriber password { mac-address [ address-separator address-separator ] [ lowercase | uppercase ] | { ciphertext | plaintext } string }
缺省情况下,IPoE接入用户的认证密码为字符串vlan。
绑定认证方式下,IPoE静态接入用户支持通过多种方式获取认证域,具体认证域选择原则如下:
· 采用bind认证方式时,按如下优先顺序选择第一个匹配到的认证域进行认证:
a. 使用ip subscriber session static命令中domain domain-name指定的认证域;若该域未创建,则用户上线失败。
b. 使用与报文指定业务特征相映射的认证域;若该域未创建,则用户上线失败。
c. 使用ip subscriber unclassified-ip domain命令配置的认证域;若该域未创建,则用户上线失败。
d. 使用AAA模块选择的认证域,具体请参见“BRAS业务配置指导”中的“AAA”。
· Web认证方式下,认证域的选择原则请参见“1.15.2 配置Web个人接入用户的认证域”。
关于报文业务识别方式映射的认证域的具体配置,请参见“1.20 配置报文业务识别方式以及与认证域的映射关系”。
为使得用户认证成功,请确保按照认证域优先顺序选择出的认证域在接入设备上存在且配置完整。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置未知源IP用户使用的认证域。
ip subscriber unclassified-ip domain domain-name
缺省情况下,未配置未知源IP用户使用的认证域。
在IPoE二层组网中,当用户及其使用的上网终端从一个接口迁移到另一个接口时,在用户通过新接口上线后,设备仍旧维护该用户在原接口上的会话信息,造成设备资源浪费并增加网络维护的复杂度。通过开启IPoE用户的会话冲突检测功能,可以避免上述问题。
开启该功能后,当用户在某接口上线时,设备会根据上线用户的IP地址和MAC地址两个元素查询该用户是否在当前设备上的其它接口已上线。如查询到,则强制其它接口上的该用户下线。
本功能仅在IPoE工作在二层接入模式的情况下才生效。
本功能目前仅适用于IPoE全局静态用户且静态会话中未指定interface参数的情况,用于检测IPoE静态用户的同IP同MAC地址的会话冲突情况。
在同一接口上,本功能与接口的漫游配置互斥。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置IPoE用户的会话冲突检测功能。
ip subscriber session-conflict action offline
缺省情况下,IPoE用户的会话冲突检测功能处于关闭状态。
IPoE专线接入用户配置任务如下:
(1) 配置IPoE专线接入用户
请选择以下一项任务进行配置:
¡ 配置接口专线用户
¡ 配置子网专线用户
(2) (可选)配置专线接入用户的认证域
一个IPoE接口专线代表了该接口接入的所有IP用户,接口专线上接入的所有用户统一认证、计费授权。在接入接口上同时开启了IPv4和IPv6协议栈的IPoE功能、且接口状态up的情况下,无需用户流量触发,接入设备会主动尝试以配置的用户名和密码发起认证;用户认证成功后,建立专线会话,接口上接入的所有用户流量均允许通过。
当专线用户在二层接入模式时,从IPoE接口接入的所有IP用户统称为子用户。通过相应的display access-user和cut access-user命令查看或删除指定子用户的信息。有关查看和删除指定子用户信息命令的详细介绍请参见“BRAS业务命令参考”中的“UCM”。
每个接口上只能配置一个接口专线用户。
目前,接口专线的子用户支持通过DHCP报文、未知源IP报文和IPv6 ND RS报文触发上线。
对于IPv6 ND RS报文触发上线的接口专线子用户,仅支持共享前缀应用场景,不支持每用户每前缀应用场景。
在先开启IPoE功能,后配置接口专线用户的情况下,必须同时开启IPv4和IPv6协议栈的IPoE功能,才允许配置接口专线用户;在先配置接口专线用户,后开启IPoE功能的情况下,必须同时开启IPv4和IPv6协议栈的IPoE功能,否则不允许开启IPoE功能。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置接口专线用户。
ip subscriber interface-leased username name password { ciphertext | plaintext } string [ domain domain-name ]
缺省情况下,未配置接口专线用户。
一个IPoE接口子网专线代表了该接口上指定子网的所有IP用户,接口子网专线上接入的所有用户统一认证、计费授权。当子网专线用户在二层接入模式时,从IPoE接口接入的指定子网的所有IP用户统称为子用户。通过相应的display access-user和cut access-user命令可查看或删除指定子用户的信息。有关查看和删除指定子用户信息命令的详细介绍请参见“BRAS业务命令参考”中的“UCM”。
一个接口上可以配置多个子网专线用户,但必须保证每个子网的网段不能存在交集。每个子网只能配置一个子网专线用户。
目前,子网专线的子用户仅支持通过未知源IP报文触发上线。
如果先开启IPoE功能,后配置子网专线用户,仅当相应协议栈的IPoE功能处于开启状态时才允许配置该协议栈对应的子网专线用户;如果先配置子网专线用户,后开启IPoE功能,则仅允许开启和配置的子网专线用户相同协议栈的IPoE功能,或双栈IPoE功能。
对于IPv4子网专线用户,需要执行dhcp enable命令开启DHCP服务。有关该命令的介绍,请参见“BRAS业务命令参考”中的“DHCP”。
对于IPv6子网专线用户,需要执行DHCPv6模块中的操作类命令(例如ipv6 pool命令)开启DHCPv6服务。有关该命令的介绍,请参见“BRAS业务命令参考”中的“DHCPv6”。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置IPv4子网专线用户。
ip subscriber subnet-leased ip ipv4-address { mask | mask-length } username name password { ciphertext | plaintext } string [ domain domain-name ] [ vpn-instance vpn-instance-name ]
缺省情况下,未配置IPv4子网专线用户。
(4) 配置IPv6子网专线用户。
ip subscriber subnet-leased ipv6 ipv6-address prefix-length username name password { ciphertext | plaintext } string [ domain domain-name ] [ vpn-instance vpn-instance-name ]
缺省情况下,未配置IPv6子网专线用户。
在L2VPN组网下,一个IPoE L2VPN专线用户代表了该接口接入的所有用户,接口上接入的所有用户统一认证、授权和计费。该IPoE专线用户认证成功后,接口上接入的所有L2VPN专线用户流量均允许通过,且共享一个IPoE会话,并基于接口进行授权和计费。
每个接口上只能配置一个L2VPN专线用户,该用户对接口上的所有IPv4和IPv6流量进行统一处理。
同一三层以太网子接口下,L2VPN专线用户和以太网子接口/三层聚合子接口的报文统计功能互斥,二者只能配置其一。有关以太网子接口的报文统计功能的详细介绍,请参见“接口管理配置指导”中的“以太网接口”。有关三层聚合子接口的报文统计功能的详细介绍,请参见“二层技术-以太网交换配置指导”中的“以太网链路聚合”。
在先开启IPoE功能,后配置L2VPN专线用户的情况下,必须同时开启IPv4和IPv6协议栈的IPoE功能,才允许配置L2VPN专线用户;在先配置L2VPN专线用户,后开启IPoE功能的情况下,必须同时开启IPv4和IPv6协议栈的IPoE功能,否则不允许开启IPoE功能。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置L2VPN专线用户。
ip subscriber l2vpn-leased username name password { ciphertext | plaintext } string [ domain domain-name ]
缺省情况下,未配置L2VPN专线用户。
专线接入用户支持通过多种方式获取认证域,并按如下优先顺序选择第一个匹配到的认证域进行认证:
(1) 使用与报文指定业务特征相映射的认证域;若该域未创建,则用户上线失败。
(2) 使用专线用户配置中指定的认证域,具体如下:
¡ 对于接口专线用户,使用ip subscriber interface-leased命令中domain domain-name指定的认证域;若该域未创建,则用户上线失败。
¡ 对于子网专线用户,使用ip subscriber subnet-leased命令中domain domain-name指定的认证域;若该域未创建,则用户上线失败。
¡ 对于L2VPN专线用户,使用ip subscriber l2vpn-leased命令中domain domain-name指定的认证域;若该域未创建,则用户上线失败。
(3) 使用ip subscriber unclassified-ip domain命令配置的认证域;若该域未创建,则用户上线失败。(仅适用于接口专线用户和子网专线用户)
(4) 使用AAA模块选择的认证域,具体请参见“BRAS业务配置指导”中的“AAA”。
关于报文业务识别方式映射的认证域的具体配置,请参见“1.20 配置报文业务识别方式以及与认证域的映射关系”。
为使得用户认证成功,请确保按照认证域优先顺序选择出的认证域在接入设备上存在且配置完整。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置未知源IP用户使用的认证域。
ip subscriber unclassified-ip domain domain-name
缺省情况下,未配置未知源IP用户使用的认证域。
本节中的所有配置均为可选,请根据实际情况选择配置。
· 配置IPoE Web支持HTTP/HTTPS攻击防范功能
Web认证包含认证前域认证和Web认证两个阶段。用户必须先通过认证前域的认证,才能进入Web认证阶段。通过认证前域认证的用户可以获得IP地址(对于DHCP接入用户),以及被授予指定认证前域内配置的相关授权属性(例如:User Profile、Session Group Profile、CAR、URL和User group),并根据授权信息获得相应的网络访问权限。之后,如有HTTP/HTTPS报文触发Web认证,则进入Web认证阶段。
用户可以通过配置修改在认证前域阶段所采用的认证域,缺省情况下按照如下先后顺序选择认证前域:
· 对于IPoE静态个人接入用户:
a. 使用ip subscriber session static命令中配置的认证域;若该域未创建,则用户上线失败。
b. 使用ip subscriber pre-auth domain命令配置的Web认证前域;若该域未创建,则用户上线失败。
c. 报文业务识别方式映射的认证域;若该域未创建,则用户上线失败。
d. ip subscriber unclassified-ip domain命令中配置的认证域;若该域未创建,则用户上线失败。
e. 使用AAA模块选择的认证域,具体请参见“BRAS业务配置指导”中的“AAA”。
· 对于IPoE DHCP动态个人接入用户:
a. 以Option信息作为认证域,选取原则和绑定模式下Option作为认证域的选取原则相同;若该域未创建,则进入下一步。
b. 报文业务识别方式映射的认证域;若该域未创建,则用户上线失败。
c. 使用ip subscriber pre-auth domain命令配置的Web认证前域;若该域未创建,则用户上线失败。
d. 使用AAA模块选择的认证域,具体请参见“BRAS业务配置指导”中的“AAA”。
· 对于IPv6 ND RS动态个人接入用户:
a. 使用ip subscriber pre-auth domain命令配置的Web认证前域;若该域未创建,则用户上线失败。
b. 使用AAA模块选择的认证域,具体请参见“BRAS业务配置指导”中的“AAA”。
采用Web认证方式时,如果配置了多种认证域,在Web认证阶段,接入用户按如下先后顺序选择认证域:
(1) 使用用户名中携带的域;若该域未创建,则用户上线失败。
(2) 使用ip subscriber web-auth domain命令指定的认证域;若该域未创建,则用户上线失败。
a. 使用AAA模块选择的认证域,具体请参见“BRAS业务配置指导”中的“AAA”。
采用Web MAC认证方式时,如果配置了多种认证域,在Web认证阶段,接入用户按如下先后顺序选择认证域:
(1) 使用用户名中携带的域;若该域未创建,则用户上线失败。
(2) 使用ip subscriber mac-auth domain命令指定的MAC认证域;若该域未创建,则用户上线失败。(仅适用于MAC无感知认证)
(3) 使用ip subscriber web-auth domain命令指定的Web认证域;若该域未创建,则用户上线失败。
a. 使用AAA模块选择的认证域,具体请参见“BRAS业务配置指导”中的“AAA”。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置Web认证前域。
ip subscriber pre-auth domain domain-name
缺省情况下,未配置Web认证前域。
(4) 配置MAC认证域。
ip subscriber mac-auth domain domain-name
缺省情况下,未配置MAC认证域。
MAC认证域仅适用于采用Web MAC认证方式的个人接入用户,在Web认证阶段进行MAC无感知认证时使用。
(5) 配置Web认证域。
ip subscriber web-auth domain domain-name
缺省情况下,未配置Web认证域。
Web认证域仅适用于采用Web认证方式和Web MAC认证方式的个人接入用户,在Web认证阶段使用。
缺省情况下,当用户使用浏览器进行Web认证时,如果访问的不是Portal Web服务器,接入设备会将此HTTP请求重定向到CPU,由CPU推送Portal Web服务器的Web认证页面。如果攻击者向设备发送大量的HTTP请求报文,会对设备造成拒绝服务攻击。
开启HTTP报文的快速应答功能后,设备可以通过硬件识别HTTP请求报文并自动回复HTTP应答报文,从而减轻CPU的负担,避免成为拒绝服务攻击的目标。
standard工作模式下,仅下表所列单板支持本功能,并且快速应答的URL长度最大为178个字节。
表1-4 单板信息一览表
单板类型 |
单板丝印 |
CEPC单板 |
CEPC-XP4LX、CEPC-XP24LX、CEPC-XP48RX、CEPC-CP4RX、CEPC-CP4RX-L |
CSPEX单板 |
CSPEX-1304X、CSPEX-1304S、CSPEX-1404X、CSPEX-1404S、CSPEX-1502X、CSPEX-1504X、CSPEX-1504S、CSPEX-1602X、CSPEX-1804X、CSPEX-1512X、CSPEX-1612X、CSPEX-1812X、CSPEX-1802XB、CSPEX-1802X、CSPEX-1812X-E、CSPEX-2304X-G |
SPE单板 |
RX-SPE200、RX-SPE200-E |
sdn-wan工作模式下,仅下表所列单板支持本功能,并且快速应答的URL长度最大为178个字节。
表1-5 单板信息一览表
单板类型 |
单板丝印 |
CSPEX单板 |
CSPEX-1802XB、CSPEX-1802X、CSPEX-1812X-E、CSPEX-2304X-G |
SPE单板 |
RX-SPE200-E |
对于在开启快速应答功能前已经通过认证前域认证上线的用户,本功能开启后不立即生效,当该用户下线后再次通过认证前域上线或者该用户Web上线后再次回到认证前域时本功能才生效。
在同时配置本功能和无感知认证功能的情况下,当用户上线时先尝试按无感知认证方式接入,如果无法无感知(例如:无感知绑定查询请求超时或Portal返回的查询结果是用户未绑定),则由硬件应答推送Web认证页面。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 开启HTTP报文的快速应答功能。
ip subscriber http-fast-reply enable
缺省情况下,HTTP报文的快速应答功能处于关闭状态。
DHCP个人接入用户通过HTTPS报文触发Web认证时,如果用户不使用默认SSL服务器端策略,而是希望使用自定义的SSL服务器端策略保证HTTPS的交互过程,可以进行本配置。
(1) 配置PKI策略,并成功申请或导入本地证书和CA证书,具体配置请参见“安全配置指导”中的“PKI”。
(2) 配置自定义名称为https_redirect的SSL服务器端策略,并指定使用已配置的PKI域。为避免在用户浏览器和设备建立SSL连接过程中用户浏览器出现“使用的证书不安全”的告警,需在设备上安装用户浏览器信任的证书。具体配置请参见“安全配置指导”中的“SSL”。
根据访问的URL或者用户终端信息的不同,推送不同的认证页面。
重定向URL匹配规则用于控制重定向用户的HTTP或HTTPS请求,该匹配规则可匹配用户的Web请求地址或者用户的终端信息。
为了让用户能够成功访问重定向后的地址,需要通过认证前域用户组ACL配置Permit规则,放行去往该地址的HTTP或HTTPS请求报文。
与ISP域下web-server { url | ipv6-url }命令不同的是,重定向匹配规则可以灵活的进行地址的重定向,而ISP域下web-server { url | ipv6-url }命令一般只用于将用户的HTTP或HTTPS请求重定向到Web服务器进行Web认证。在二者同时存在时,优先使用重定向URL匹配规则进行地址的重定向。
在转发与控制分离组网中,本功能仅在UP上配置后生效。
(1) 配置ACL规则,放行去往重定向地址的HTTP或HTTPS请求报文。
ACL配置具体参见“ACL和QoS配置指导”中的“ACL”。
(2) 请依次执行以下命令配置重定向URL匹配规则。
a. 进入系统视图。
system-view
b. 进入接口视图。
interface interface-type interface-number
c. 配置重定向URL匹配规则。
ip subscriber if-match { original-url url-string redirect-url url-string [ url-param-encryption { aes | des } key { cipher | simple } string ] | user-agent user-agent redirect-url url-string }
缺省情况下,未配置IPoE Web重定向URL的匹配规则。
· 自动弹出Web认证页面功能
用户终端自动弹出Web认证页面的实现原理为:终端关联到SSID后,主动发出HTTP的探测请求报文,检测目的地址(目的地址一般是固定的网址,各终端或APP应用存在差异)是否可达,以及回应的内容是否符合预期,以此来判断接入的网络是否需要进行Web认证:
¡ 如果目的地址可达且回应内容符合预期,说明网络畅通,无需进行Web认证。
¡ 如果目的地址不可达或回应内容不符合预期,说明需要进行Web认证,那么终端会调用浏览器再次发出HTTP请求,设备拦截到此请求进行重定向,实现用户终端自动弹出Web认证页面的功能。
某些终端可能无法自动弹出Web认证页面,可能的原因有:
¡ 终端没有主动发出探测请求报文。
¡ 终端可以发出一次探测请求报文,但是由于安装的某些APP影响导致终端无法调用浏览器再次发出请求,导致无法自动弹出Web认证页面。
¡ 大部分安卓手机,自动弹Web认证页面功能,依赖用户手动点击ssid界面进行触发。
· 被动Web认证功能
缺省情况下,在无线接入场景中,当用户终端接入已开启IPoE Web认证的网络后,设备会主动向用户终端推送Web认证页面,以便用户终端可以自动弹出Web认证页面。但是,这种自动弹页面的方式需要设备拦截终端的探测报文来实现,有些终端发现网络探测不通,可能会自动断开WI-FI连接,该情况下,因Wi-Fi连接已断开,设备无法向用户推送Web认证页面,导致认证无法完成。
针对上述问题,可开启IPoE被动Web认证功能,让用户使用浏览器访问Internet方式触发设备会向用户推送Web认证页面来完成认证。
开启被动Web认证功能后,设备不会拦截终端的探测报文,确保终端保持Wi-Fi连接。当用户连接到网络时,设备不会立即向用户推送Web认证页面;仅在用户尝试使用浏览器访问Internet时,设备才会向用户推送Web认证页面,要求用户输入用户名/密码来完成认证。
· 被动Web认证的优化功能(此功能仅对IOS系统生效)
缺省情况下,苹果终端通过自身的CNA(Captive Network Assistant)工具固定对http://captive.apple.com进行探测,如果网络畅通,那么终端会收到Success回应;反之,则会调用浏览器再次进行探测,实现自动弹出Web认证页面的功能。
但是,下列情况可能导致终端自动弹出Web认证页面的机制失效:
¡ 如果是HTTPS的页面,并且证书不是终端信任的第三方机构颁发,那么自动弹出Web认证页面的机制就会失效。
¡ 苹果终端上安装的APP(如Wi-Fi助手)对其自身的探测机制影响很大,可能导致自动探测功能失效,或者导致苹果终端的WI-FI信号无法点亮,Wi-Fi连接断开。
¡ 用户在未完全探测完成的情况下,直接按home键返回桌面,导致苹果终端的WI-FI信号无法点亮,Wi-Fi连接断开。
针对上述问题,可开启IPoE被动Web认证的优化功能。
开启IPoE被动Web认证的优化功能后,对于IOS系统用户,当设备收到苹果终端的探测请求报文时,会构造Success回应,让苹果终端认为网络已连通,从而点亮WI-FI信号,并自动弹出Web认证页面。
· IPoE被动Web认证功能,对IOS系统用户和Android系统用户都生效。
· IPoE被动Web认证优化功能,仅对IOS系统用户有效,对Android系统用户无效。
· 下列命令的配置效果为:
¡ 配置ip subscriber captive-bypass enable命令:
- 苹果终端不会自动弹出Web认证页面,直接按home键返回桌面时根据苹果终端软件版本不同,部分终端Wi-Fi连接可能会断开。
- 安卓终端不会自动弹出Web认证页面。
¡ 配置ip subscriber captive-bypass enable optimize命令:
- 苹果终端会自动弹出Web认证页面,直接按home键返回桌面时Wi-Fi连接不会断开。
- 安卓终端不会自动弹出Web认证页面。
¡ (推荐)配置ip subscriber captive-bypass enable ios optimize命令:
- 苹果终端会自动弹出Web认证页面,直接按home键返回桌面时Wi-Fi连接不会断开。
- 安卓终端会自动弹出Web认证页面。(缺省情况)
¡ 配置ip subscriber captive-bypass enable ios命令:
- 苹果终端不会自动弹出Web认证页面,直接按home键返回桌面时根据苹果终端软件版本不同,部分终端Wi-Fi连接可能会断开。
- 安卓终端会自动弹出Web认证页面。(缺省情况)
¡ 配置ip subscriber captive-bypass enable android命令和配置ip subscriber captive-bypass enable android optimize命令效果相同:
- 苹果终端会自动弹出Web认证页面,直接按home键返回桌面时根据苹果终端软件版本不同,部分终端Wi-Fi连接可能会断开。(缺省情况)
- 安卓终端不会自动弹出Web认证页面。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 开启IPoE被动Web认证功能或被动Web认证优化功能。
ip subscriber captive-bypass enable [ android | ios ] [ optimize ]
缺省情况下,IPoE被动Web认证功能和被动Web认证优化功能都处于关闭状态。
多次执行本命令,最后一次执行的命令生效。
Web认证的逃生功能是指当设备探测到Web认证服务器或AAA认证服务器不可达时,可自动放开接口上的网络限制,允许用户不需经过Web认证即可访问网络资源。通过配置逃生用户组与Track项关联,可以实现IPoE用户逃生功能。
缺省情况下,Web认证用户在认证前域上线后所属用户组是用户上线时由AAA服务器直接授权或ISP域下授权的用户组。配置逃生用户组与Track项关联后:
· 当Track项状态变成negative时,接入设备会把当前认证前域中所有在线用户从授权用户组迁移到逃生用户组,允许认证前域用户不经过Web认证即可访问逃生用户组的网络资源,已通过认证的用户不受影响。
· 当Track项变成positive时,接入设备会把当前认证前域中所有在线用户从逃生用户组重新迁移到授权用户组,再重新启动认证前域用户的认证功能,认证前域用户需要通过认证之后才能继续访问网络资源,已通过认证的用户不受影响。
本功能仅对认证前域中的在线用户生效。
配置Web认证的逃生功能需要进行如下配置:
(1) 配置Track项。
Track监测认证服务器状态的支持NQA,BFD等多种方式,具体配置请参见“可靠性配置指导”中的“Track”。
(2) 配置逃生用户组权限。
用户组具体配置请参见“BRAS业务配置指导”中的“AAA”。
(3) 请依次执行以下命令配置逃生用户组与Track项关联。
a. 进入系统视图。
system-view
b. 进入接口视图。
interface interface-type interface-number
c. 配置逃生用户组与Track项关联。
ip subscriber pre-auth track track-entry-number fail-permit user-group group-name
缺省情况下,未配置逃生用户组与Track项关联。
多次执行本命令,最后一次执行的命令生效。
IPoE Web认证的URL白名单,是指在用户未认证或已欠费等情况下仍可访问的网络资源清单。
例如,在采用IPoE Web认证的校园网中,可将校内网站地址、缴费页面地址加入URL白名单中:
· 当学生未通过IPoE Web认证、或通过IPoE Web认证但已欠费时,依旧允许学生继续访问校内网站,从而保证学生的正常学习和交流不受影响。
· 当学生欠费时,学生仍可访问运营商缴费页面或通过运营商推送的缴费页面来补缴欠费,从而保证学生能够快速恢复对Internet网络的访问。
根据应用场景不同,IPoE Web认证的URL白名单分为基于IP地址的URL白名单和基于域名的URL白名单。
IPoE Web认证的URL白名单通过借助对象组实现。有关对象组的详细介绍请参见“安全配置指导”中的“对象组”。
(1) 配置对象组
此配置用于定义URL白名单,包括校内网站地址、缴费页面地址。
a. 进入系统视图。
system-view
b. 创建对象组。
(IPv4)
object-group ip address object-group-name
缺省情况下,存在系统默认的IPv4地址对象组,名称为any。
(IPv6)
创建IPv6地址对象组,并进入对象组视图。
object-group ipv6 address object-group-name
缺省情况下,存在系统默认的IPv6地址对象组,名称为any。
c. 配置URL白名单。请至少选择其中一项进行配置。
- 配置基于IP地址的URL白名单。
network host address ip-address
该命令的详细介绍请参见“安全命令参考”中的“对象组”。
- 配置基于域名的URL白名单。
network host name host-name
该命令的详细介绍请参见“安全命令参考”中的“对象组”。
(2) 配置用户组
此配置用于为不同场景下的用户进行授权(具体略)。
(3) 配置和应用QoS策略
a. 配置ACL。
此ACL用于匹配特定用户组的用户访问白名单的报文。
b. 定义匹配用户业务流的类,使用上一步中的ACL作为匹配数据包的规则;定义流行为,指定对用户认证前及欠费后的报文动作。
c. 创建QoS策略,并将类和流行为绑定。
d. 在用户流量的出入方向上应用QoS策略。
(具体略)关于上述ACL和QoS命令的详细介绍,请参见“ACL和QoS配置指导”中的“QoS策略”。
由于某些用户客户端安装了各种工具软件(如百度云等),每种工具软件都可能向某个固定目的IP地址持续发送HTTP/HTTPS请求,这些工具软件产生的大量HTTP/HTTPS请求将导致用户在IPoE Web认证之前设备的资源占用率过高,从而影响正常用户的认证效率,甚至导致用户认证失败。针对上述情况,可开启基于目的IP地址的IPoE HTTP/HTTPS攻击防范功能。攻击防范功能目前有如下两种应用场景:
· 当希望对那些频繁发起的HTTP/HTTPS请求报文进行限制,以减轻大量HTTP/HTTPS报文对设备资源的占用时,可通过ip subscriber http-defense destination-ip enable action block命令配置当攻击达到阻断条件后,生成防攻击阻断表项,并基于阻断表项阻断发往指定目的IP地址的HTTP/HTTPS请求报文。
· 当仅希望能够及时感知到频繁发起的HTTP/HTTPS请求的目的IP地址,不希望对HTTP/HTTPS请求报文进行阻断,以免影响正常用户对该目的IP地址的访问时,可通过ip subscriber http-defense destination-ip enable action logging命令配置当攻击达到阻断条件后,设备输出攻击日志,并生成仅用于查看阻断用户信息的防攻击阻断表项(该类防攻击阻断表项不会对攻击报文进行阻断)。设备生成的攻击日志信息会交给信息中心模块处理,信息中心模块的配置将决定日志信息的发送规则和发送方向。关于信息中心的详细描述请参见“网络管理和监控配置指导”中的“信息中心”。
开启基于目的IP地址的IPoE HTTP/HTTPS攻击防范功能后,设备会对IPoE Web认证前域用户发往任意目的IP地址的HTTP/HTTPS报文进行监测和统计。如果在一个统计周期内,去往某目的IP地址的HTTP/HTTPS报文总数达到指定的阈值,设备将根据ip subscriber http-defense destination-ip enable命令中指定的动作生成阻断表项阻断攻击报文或者输出攻击日志信息。
在报文阻断周期内设备直接丢弃去往此目的的报文,以降低对用户上线速率的影响。阻断周期后,如果设备再次收到发往该目的的报文,则重新进行监测和统计。
standard工作模式下,仅下表所列单板支持本功能。
表1-6 单板信息一览表
单板类型 |
单板丝印 |
CEPC单板 |
CEPC-XP4LX、CEPC-XP24LX、CEPC-XP48RX、CEPC-CP4RX、CEPC-CP4RX-L |
CSPEX单板 |
CSPEX-1304X、CSPEX-1304S、CSPEX-1404X、CSPEX-1404S、CSPEX-1502X、CSPEX-1504X、CSPEX-1504S、CSPEX-1602X、CSPEX-1804X、CSPEX-1512X、CSPEX-1612X、CSPEX-1812X、CSPEX-1802XB、CSPEX-1802X、CSPEX-1812X-E、CSPEX-2304X-G |
SPE单板 |
RX-SPE200、RX-SPE200-E |
sdn-wan工作模式下,仅下表所列单板支持本功能。
表1-7 单板信息一览表
单板类型 |
单板丝印 |
CSPEX单板 |
CSPEX-1802XB、CSPEX-1802X、CSPEX-1812X-E、CSPEX-2304X-G |
SPE单板 |
RX-SPE200-E |
IPoE HTTP/HTTPS攻击防范功能目前仅对已在认证前域上线的IPoE Web用户发送的HTTP/HTTPS报文生效。
如果管理员希望对用户访问某些特定目的IP地址的HTTP/HTTPS报文不进行攻击防范统计,并在用户访问这些目的IP地址时,为用户无条件推送Web认证页面时,可通过命令ip subscriber http-defense free-destination-ip将这些特定目的IP地址配置为白名单地址。
(1) 进入系统视图。
system-view
(2) 开启基于目的IP地址的IPoE HTTP/HTTPS攻击防范功能。
ip subscriber http-defense destination-ip enable [ action { block [ period blocking-period ] | logging } ]
缺省情况下,基于目的IP地址的IPoE HTTP/HTTPS攻击防范功能处于关闭状态。
(3) (可选)配置IPoE HTTP/HTTPS攻击防范的触发阈值。
ip subscriber http-defense destination-ip threshold packet-number interval interval
缺省情况下,在300秒时间内去往同一目的IP地址的HTTP/HTTPS报文总数达到6000时即认为达到攻击防范的触发阈值
(4) (可选)配置IPoE HTTP/HTTPS攻击防范功能的白名单地址。
ip subscriber http-defense free-destination-ip { ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ]
缺省情况下,未配置IPoE HTTP/HTTPS攻击防范功能的白名单地址。
可通过多次执行本命令,将多个目的IP地址配置为白名单地址。
目前仅普通模式下IPoE Web认证支持快速认证功能。
在使用H3C iMC作为Portal认证服务器的情况下,如果Portal服务器上指定的设备IP不是BRAS设备上Portal报文出接口的IP地址,则在用户接入接口上必须通过portal bas-ip命令配置BAS-IP与Portal认证服务器上指定的设备IP一致,否则快速认证功能不生效。
MAC绑定服务器的具体配置请参见本手册中的“Portal”章节。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置在IPoE Web认证用户接入接口上应用MAC绑定服务器。
portal apply mac-trigger-server server-name
缺省情况下,未在IPoE Web认证用户接入接口上应用MAC绑定服务器。
本命令的详细介绍请参见“IPoE命令参考”中的“Portal”。
MAC无感知认证使用的AAA服务器需要支持MAC绑定功能。
· 普通MAC无感知认证
在IPoE采用Web MAC认证方式。
· 二次地址分配MAC无感知认证
配置IPoE采用Web认证方式和Web MAC认证方式均可,推荐采用Web认证方式。
具体配置请参见“1.11 配置IPoE认证方式”。
缺省情况下,在IPoE 802.1X认证场景中,IPoE 802.1X认证支持DHCP用户接入、IPv6 ND RS用户接入和全局静态用户接入。对于配置了静态IP地址的用户,如果管理员希望这类用户可以通过802.1X认证方式上线,必须在BRAS设备上为这类用户配置和其静态IP地址对应的IPoE静态用户接入。
对于配置了静态IP地址的用户,如果管理员希望这类用户既可以通过802.1X认证方式上线,同时又无需在BRAS设备上为他们配置对应的IPoE静态用户接入,可开启本功能。
开启本功能后,当某用户的802.1X客户端认证上线后,BRAS设备便会基于该用户的MAC地址+VLAN信息(无IP地址信息)生成一个临时会话表项。当BRAS设备收到该用户发送的ARP报文、未知源IP报文和NS/NA报文时:
· 如果能查询到该用户的临时会话表项,则IPoE采用802.1X认证结果让用户直接在后域上线。用户在后域上线后,BRAS设备会使用该用户的正式会话表项替换临时会话表项,后续基于正式会话表项处理用户报文,此时正式会话表项记录的用户信息为802.1X用户信息(包括802.1X用户名、认证域、授权属性等)。
· 如果查询不到该用户的临时会话表项,则丢弃收到的报文。
现网中,如果需要同时部署动态802.1X用户和静态802.1X用户,建议二者分部署于不同的接口上(例如:分别部署于同一主接口的不同子接口上)。
如果某接口上同时配置了802.1X认证接入和IPoE静态用户接入,并且同时开启了如下功能:
· 针对802.1X认证接入,开启了静态802.1X用户认证功能。
· 针对IPoE静态用户接入,开启了指定matching-user参数的未知源IP报文触发上线功能。
那么,当BRAS设备收到的报文可以同时匹配802.1X临时会话表项和IPoE静态用户的会话时,则按IPoE静态用户上线流程处理。
IPoE 802.1X认证场景中,在开启了本功能的情况下,当某用户的802.1X客户端认证上线后,只要用户发送的ARP报文、未知源IP报文和NS/NA报文能够匹配到临时会话表项即可直接在后域上线,无需配置下列命令开启ARP报文、未知源IP报文和NS/NA报文触发用户上线功能。
· ip subscriber initiator unclassified-ip enable
· ip subscriber initiator unclassified-ipv6 enable
· ip subscriber initiator arp enable
· ip subscriber initiator nsna enable
配置静态802.1X用户认证功能时,需要注意:
· 同一接口上,静态802.1X用户认证功能与IPoE三层接入模式、IPoE接口专线用户、IPoE子网专线用户和L2VPN专线用户的配置互斥。
· 仅当接口工作在IPoE二层接入模式时支持静态802.1X用户认证功能。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 开启静态802.1X用户认证功能。
ip subscriber static-dot1x-user enable
缺省情况下,静态802.1X用户认证功能处于关闭状态。
对于采用802.1X认证方式上线的IPoE用户,该用户的802.1X客户端是指该用户的主机上安装的支持802.1X认证的客户端软件。
缺省情况下,对于IPoE DHCP用户,当用户的IP地址租约期满、续约失败或设备收到用户发送的DHCP-RELEASE、DHCP-DECLINE和DHCP-NAK报文时,设备会将采用802.1X认证方式上线的IPoE用户下线,但会允许该用户的802.1X客户端继续保持在线。如果管理员希望当IPoE用户下线时,同时下线该用户的802.1X客户端,可配置本功能。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置当IPoE用户的IP地址被释放时强制该IPoE用户的802.1X客户端下线。
ip subscriber dhcp-release-ip dot1x-offline
缺省情况下,当IPoE用户的IP地址被释放时允许该用户的802.1X客户端继续保持在线。
对于采用802.1X认证方式上线的IPoE用户,该用户的802.1X客户端是指该用户的主机上安装的支持802.1X认证的客户端软件。
缺省情况下,对于采用802.1X认证方式上线的IPoE用户,当该用户的802.1X客户端发起下线时,设备会将该IPoE用户从后域返回前域,并在前域中继续保持在线。如果管理员希望当IPoE用户的802.1X客户端发起下线,同时下线该IPoE用户(即清除IPoE用户会话),可配置本功能。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置当802.1X客户端下线强制IPoE用户下线。
ip subscriber dot1x-offline user-offline
缺省情况下,当用户的802.1X客户端发起下线,允许该用户的IPoE继续保持在线。
在大量DHCP用户同时上线的情况下,通过开启本功能可以避免大量DHCP报文导致的拥塞,保证用户正常上线。
开启DHCPv4报文限速功能后,当单板上收到的DHCPv4报文(包括Discover报文和未经认证用户的Request报文)速率超过用户设定的限速值时,该报文会被丢弃。(独立运行模式)(IRF模式)
开启DHCPv6报文限速功能后,当单板上收到的DHCPv6报文(包括Solicit报文和未经认证用户的Request报文)速率超过用户设定的限速值时,该报文会被丢弃。(独立运行模式)(IRF模式)
standard工作模式下,支持本功能。
sdn-wan工作模式下,不支持本功能。
本特性对动态DHCP个人接入用户和二层接口专线下的DHCP子用户生效。
(1) 进入系统视图。
system-view
(2) 开启DHCP接入用户的DHCPv4报文限速功能。
ip subscriber dhcp rate-limit rate
缺省情况下,DHCP接入用户的DHCPv4报文限速功能处于关闭状态。
多次执行本命令,最后一次执行的命令生效。
(3) 开启DHCP接入用户的DHCPv6报文限速功能。
ip subscriber dhcpv6 rate-limit rate
缺省情况下,DHCP接入用户的DHCPv6报文限速功能处于关闭状态。
多次执行本命令,最后一次执行的命令生效。
通过配置IPoE个人会话和专线子用户会话的最大总数目可以控制系统中的个人接入用户(包括动态个人和静态个人)和专线子用户的总数。
当接口上已创建的IPoE个人会话和专线子用户会话的总数目达到最大值后,则不允许再创建新的IPoE会话。创建的IPoE会话数目包括IPv4单栈会话数目、IPv6单栈会话数目和双栈会话数目,其中,单栈用户占用一个会话资源,双栈用户占用一个会话资源;如果某单栈用户已经成功上线,那么同一用户的另一协议栈可以直接上线,双栈共用一个会话资源。
如果接口上配置的最大会话数小于当前接口上已经在线的会话数,则该配置可以执行成功,且在线的会话不会受影响,但系统将不允许在该接口上再创建新的会话。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置IPoE个人会话和专线子用户会话的最大总数目。
ip subscriber max-session max-number
缺省情况下,未配置接口上允许创建的IPoE个人会话和专线子用户会话的最大总数目。
本命令与ip subscriber { dhcp | dhcpv6 | ndrs | unclassified-ip | unclassified-ipv6 } max-session同时配置时,两者可以同时生效,由于控制的角度不同,因此会话数会收到双重限制,即仅在两者均未达到最大会话数限制时才允许创建新的会话。有关ip subscriber { dhcp | dhcpv6 | ndrs | unclassified-ip | unclassified-ipv6 } max-session命令的相关介绍,请参见“1.12.6 配置动态个人会话的最大数目”。
不同的IP报文携带了不同的报文信息,可以通过配置业务识别方式,根据用户IP报文的内/外层VLAN ID值、内/外层VLAN携带的802.1p值、DSCP值,来决定对该用户使用不同的认证域。
对于DHCPv4接入用户,如果同时配置了信任DHCPv4 Option60中的信息,则优先使用Option60中的信息作为指定的认证域。
对于DHCPv6接入用户,如果同时配置了信任DHCPv6 Option16/Option17中的信息,则优先使用Option16/Option17中的信息作为指定的认证域。
如果配置了某种业务识别方式所映射的认证域,但是没有配置使用该业务识别方式,则前者不生效。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置IPoE接入用户的业务识别方式。
ip subscriber service-identify { 8021p { second-vlan | vlan } | dscp | second-vlan | vlan }
(4) 配置IPoE接入用户的IP报文内/外层VLAN值与认证域的映射关系。
ip subscriber vlan vlan-list domain domain-name
(5) 配置IPoE接入用户的IP报文内/外层VLAN tag中802.1p值与认证域的映射关系。
ip subscriber 8021p 8021p-list domain domain-name
(6) 配置IPoE接入用户的IP报文DSCP值与认证域的映射关系。
ip subscriber dscp dscp-value-list domain domain-name
缺省情况下,未配置IPoE接入用户(包括DHCP接入用户、未知源IP接入用户和静态接入用户)使用的业务识别方式,也没有配置与之相映射的认证域。
配置IPoE接入用户的静默功能后,当某IPoE用户在指定检测周期内连续认证失败次数达到允许的最大值时,将被静默一段时间,在静默周期内设备直接丢弃来自此用户的报文,以降低非法用户使用穷举法试探合法用户密码的成功率,同时避免设备持续向认证服务器转发该IPoE用户的认证报文而对设备性能造成影响。静默期后,如果设备再次收到该用户的报文,则依然可以对其进行认证处理。
对于未构成双栈IPoE会话的用户,两个协议栈的认证失败次数是分开统计,当且仅当某个协议栈在一个检测周期内连续认证失败次数达到最大值时,该双栈用户才会被静默。对于已构成双栈IPoE会话的用户,两个协议栈的认证失败次数是统一统计,只要该用户在一个检测周期内连续认证失败次数达到最大值,该用户就会被静默。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 开启IPoE接入用户的静默功能并指定静默时间。
ip subscriber timer quiet time
缺省情况下,IPoE接入用户的静默时间功能处于关闭状态。
(4) (可选)配置允许IPoE接入用户在指定检测周期内连续认证失败次数的最大值。
ip subscriber authentication chasten auth-failure auth-period
缺省情况下,认证失败一次立即对用户进行静默处理。
开启了IPoE接入用户在线探测功能后,设备在用户上线之后将定时发送探测报文,如果设备在探测间隔内未收到用户的报文,则认为一次探测失败。
若设备首次探测失败,将继续做指定次数(retries次或retransmit-times减1次)的重复探测,若全部探测尝试都失败(即一直未收到该用户的报文),则认为此用户不在线,停止发送探测报文并删除用户。
若设备在探测过程中收到用户的报文,则认为用户在线,重置探测失败计数器并开始下一次探测。
设备支持的IPv4探测报文为ARP请求报文和ICMP请求报文,支持的IPv6探测报文为ND协议中的NS报文和ICMPv6请求报文。
本探测功能当前仅支持对个人接入用户和二层接入模式下的专线子用户进行探测。
在三层组网(即用户和BRAS设备之间存在三层设备)中,建议关闭用户在线探测功能。
双协议栈用户统一计费时,以IPv4上行流量和IPv6上行流量统一汇总后的总上行流量作为上行流量是否有更新的判断依据。
探测报文的源IP地址,必须和探测的目的IP地址属于同一个VPN实例或均处于公网中,否则探测功能不可用。
为平衡设备整体性能,确保设备以最佳状态运行,设备采用定时统计机制来统计用户流量更新情况。在大量用户在线的情况下,配置在一个探测的时间间隔内,如果用户上行流量有更新,则interval超时后下一个周期不发送探测报文时,建议适当调大interval取值,否则可能部分用户流量有更新,但因在一个探测的时间间隔内,设备来不及统计这部分用户流量更新情况导致设备认为这部分用户流量无更新从而对这部分用户发送探测报文。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 开启IPv4接入用户在线探测功能。
ip subscriber user-detect ip { arp | icmp } retry retries interval interval [ no-datacheck ]
缺省情况下,IPv4协议栈接入用户在线探测功能处于开启状态:
¡ 对于专线子用户,在一个120秒的探测时间间隔内,无论用户上行流量是否有更新,探测时间间隔超时后设备都会发送ARP请求报文对用户进行在线探测,探测失败后允许重复尝试5次;
¡ 对于其它用户,在一个120秒的探测时间间隔内,如果用户上行流量有更新则设备不发送探测报文,否则,发送ARP请求报文对IPv4协议栈接入用户进行在线探测,探测失败后允许重复尝试5次,探测的时间间隔为120秒。
对于专线子用户配置no-datacheck不生效。
(4) 开启IPv6接入用户在线探测功能。
ip subscriber user-detect ipv6 { icmp | nd } retry retries interval interval [ no-datacheck ]
缺省情况下,IPv6协议栈接入用户在线探测功能处于开启状态:
¡ 对于专线子用户,在一个120秒的探测时间间隔内,无论用户上行流量是否有更新,探测时间间隔超时后设备都会发送ND NS(Neighbor Solicitation,邻居请求消息)报文对用户进行在线探测,探测失败后允许重复尝试5次;
¡ 对于其它用户,在一个120秒的探测时间间隔内,如果用户上行流量有更新则设备不发送探测报文,否则,发送ND NS报文对IPv6协议栈接入用户进行在线探测,探测失败后允许重复尝试5次,探测的时间间隔为120秒。
对于专线子用户配置no-datacheck不生效。
(5) 配置使用EUI-64方式生成的IPv6地址作为在线探测的目的地址。
ip subscriber ndrs user-detect-address eui-64
缺省情况下,采用终端的链路本地地址(格式为:FE80+终端的接口ID)作为在线探测的目的地址。
当使用ND NS报文作为探测报文对IPv6 ND RS接入用户进行在线探测时,如果希望设备采用ND前缀+EUI-64格式的接口标识符方式生成的IPv6地址作为在线探测的目的地址,可配置本命令。
IPoE用户进行认证时,需要按照运营商要求的封装格式向RADIUS服务器传递NAS-PORT-ID属性,该属性标识了用户所处的物理位置。
NAS-PORT-ID属性支持如下几种封装格式:
· version 1.0:发送给RADIUS服务器的NAS-PORT-ID属性以电信163大后台要求的格式填充。
· version 2.0:发送给RADIUS服务器的NAS-PORT-ID属性以YDT 2275-2011宽带接入用户线路(端口)标识要求的格式填充。
· version3.0:封装格式为version 3.0。version 3.0封装格式的内容形式为:SlotID/00/IfNO/VlanID,其中“/”符号不显示。
· version4.0:封装格式为version 4.0。
¡ 当收到的DHCPv4报文带有Option82 Circuit-ID并且信任Option82或当收到的DHCPv6报文带有Option18并且信任Option18时,其格式为在version3.0的NAS-PORT-ID内容后面添加用户DHCP报文中指定Option的内容:对于IPv4用户,此处添加的是DHCP Option82的内容,即格式为SlotID/00/IfNO/VlanID/Option82 Circuit-ID,其中“/”符号不显示;对于IPv6用户,此处添加的是DHCP Option18的内容,即格式为SlotID/00/IfNO/VlanID/Option18,其中“/”符号不显示。
¡ 其余情况下,version 4.0封装格式与version 3.0封装格式完全相同。
· version5.0:封装格式为version 5.0,表示发送给RADIUS服务器的NAS-PORT-ID属性以YDT 2275-2011宽带接入用户线路(端口)标识要求的格式填充。
在DHCP中继组网环境中,当接入设备采用version 2.0或者version 5.0格式封装RADIUS NAS-PORT-ID属性时,可以配置信任DHCPv4 报文中的Option82或DHCPv6报文中的Option18,并在提取出的Option82 Circuit-ID或Option18中插入NAS信息后,使用该内容填充NAS-PORT-ID属性。插入的新NAS信息标识了用户在本设备上的接入位置。
如果在RADIUS方案视图下配置了attribute 87 format命令,则发送给RADIUS服务器的NAS-Port-ID属性的格式完全由该命令决定,IPoE模块定义的RADIUS NAS-Port-ID属性格式不再生效。有关attribute 87 format命令的详细介绍,请参见“BRAS业务命令参考”中的“AAA”。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 为IPoE接入用户配置NAS-PORT-ID属性的封装格式。
ip subscriber nas-port-id format cn-telecom { version1.0 | version2.0 | version3.0 | version4.0 | version5.0 }
缺省情况下,按version 1.0格式填充RADIUS的NAS-PORT-ID属性。
(4) (可选)配置信任DHCPv4报文中的Option82或DHCPv6报文中的Option18。
ip subscriber trust { option82 | option18 }
缺省情况下,不信任DHCPv4报文中的Option82和DHCPv6报文中的Option18。
(5) (可选)配置在提取出的Option82 Circuit-ID或Option18内容中插入NAS信息,并使用插入NAS信息后的内容作为NAS-PORT-ID属性。
ip subscriber nas-port-id nasinfo-insert
缺省情况下,如果收到的DHCPv4报文带有Option82 Circuit-ID,则直接使用该内容作为NAS-PORT-ID属性内容。如果收到的DHCPv6报文带有Option18,则直接使用该选项内容作为发往RADIUS服务器的NAS-PORT-ID属性内容。
缺省情况下,设备使用用户上线的接口信息填充NAS-PORT-ID属性上送RADIUS服务器。在某些特殊应用中,当需要手工指定用于填充NAS-PORT-ID属性的上线接口信息时,可配置本特性。例如,若RADIUS服务器上限制了用户A只能通过接口A上线,当用户A切换到一个新接口B上线时,若不想更改RADIUS服务器的配置,可通过本特性配置用户A仍使用接口A的信息填充NAS-PORT-ID属性上送RADIUS服务器。
当NAS-PORT-ID属性的封装格式为version 1.0格式且配置了ip subscriber nas-port-id interface命令时:
· 若同时配置了access-user four-dimension-mode enable命令,将使用ip subscriber nas-port-id interface命令的配置填充NAS-PORT-ID属性中的如下接入接口信息字段:
¡ 非转发与控制分离组网:chassis=NAS_chassis;slot=NAS_slot;subslot=NAS_subslot;port=NAS_port。
¡ 转发与控制分离组网:chassis=UP_ID;slot=NAS_slot;subslot=NAS_subslot;port=NAS_port。
· 若未配置access-user four-dimension-mode enable命令,将使用ip subscriber nas-port-id interface命令的配置填充NAS-PORT-ID属性中的如下接入接口信息字段:slot=NAS_slot;subslot=NAS_subslot;port=NAS_port。
当NAS-PORT-ID属性的封装格式为version 2.0或者version 5.0格式且配置了ip subscriber nas-port-id interface命令时:
· 若同时配置了access-user four-dimension-mode enable命令,将使用本命令的配置填充NAS-PORT-ID属性中的如下NAS信息字段:
¡ 非转发与控制分离组网:{eth|trunk|atm} NAS_chassis/NAS_slot/NAS_subslot/NAS_port。
¡ 转发与控制分离组网:{eth|trunk|atm} UP_ID/NAS_slot/NAS_subslot/NAS_port。
· 若未配置access-user four-dimension-mode enable命令,将使用本命令的配置填充NAS-PORT-ID属性中的如下NAS信息字段:{eth|trunk|atm} NAS_slot/NAS_subslot/NAS_port。
当NAS-PORT-ID属性的封装格式为version 3.0格式时,若配置本特性,将使用本特性的配置填充NAS-PORT-ID属性中的如下NAS信息字段:SlotID/IfNO。
当NAS-PORT-ID属性的封装格式为version 4.0格式时,若配置本特性,将使用本特性的配置填充NAS-PORT-ID属性中的如下NAS信息字段:对于IPv4用户为SlotID/IfNO/Option82 Circuit-ID,对于IPv6为SlotID/IfNO/Option18。
如果在RADIUS方案视图下配置了attribute 87 format命令,则发送给RADIUS服务器的NAS-Port-ID属性的格式完全由该命令决定,IPoE模块定义的RADIUS NAS-Port-ID属性格式不再生效。有关attribute 87 format命令的详细介绍,请参见“BRAS业务命令参考”中的“AAA”。
若配置本特性,除使用本特性的配置填充NAS-PORT-ID属性外,还将填充NAS-PORT属性。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 使用指定接口信息填充RADIUS的NAS-PORT-ID属性。
ip subscriber nas-port-id interface interface-type interface-number
缺省情况下,设备使用用户上线的接口信息填充RADIUS的NAS-PORT-ID属性。
本配置用来设置IPoE的准出认证功能,在二次认证组网环境下需要配置本功能。二次认证是指使用两台设备分别作为准入和准出的网关,用于控制用户访问内网和外网,准入设备负责用户接入内网,准出设备负责用户接入外网。用户通过准入认证后,可以访问内网,在访问外网时,报文在准出设备网关触发IPoE认证,认证通过后将用户放行,认证过程中用户不感知。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置IPoE准出认证功能。
ip subscriber access-out
缺省情况下,IPoE准出认证功能处于关闭状态。
IPoE用户漫游,是指允许IPoE用户在多个指定的无线网络覆盖区域之间移动时,始终保持在线状态。目前,支持下列多种漫游方式。
· 跨VLAN漫游:IPoE用户在BRAS上同一子接口的不同VLAN之间,或不同子接口的不同VLAN之间进行漫游。
· 跨接口漫游:IPoE用户在BRAS上同一单板的不同接口之间,或不同单板的不同接口之间进行漫游。(独立运行模式)
· 跨成员设备漫游:IPoE用户在同一IRF系统内的不同IRF成员设备之间进行漫游。(IRF模式)
为了减小用户在漫游过程中对其它用户产生影响,可通过漫游组限定用户的漫游范围,即限定上线用户只能在上线接口所属的漫游组中进行漫游。例如:假设用户A和用户B的IP地址均为1.1.1.1/24,并且属于同一个VPN实例,用户A先在接口A上通过未知源方式上线,接口A和接口B均开启了漫游功能但未配置漫游组,此时用户B再在接口B上通过未知源方式上线时,设备将会把用户A下线。此时,如需用户A和用户B同时上线,二者互不影响,可为接口A和接口B配置不同的漫游组,以隔离用户A和用户B的漫游范围。
为保证IPoE用户可以正常漫游,请确保漫游前后用户接入接口上必须开启完全相同协议栈的IPoE功能,并且配置相同的IPoE认证方式、认证域、漫游组、IPoE用户主业务依赖的IP地址类型和信任Option79配置(仅对于DHCPv6用户要求漫游前后Option79配置相同)等。
目前常见的支持触发漫游的报文有:ARP报文、IPv4报文、IPv6报文等。
在IPv4网络中:
· 当需要通过IPv4报文触发漫游时,漫游的目的接口上必须配置ip subscriber initiator unclassified-ip enable matching-user命令。
· 当需要通过ARP报文触发漫游时,漫游的目的接口上必须同时配置ip subscriber initiator arp enable命令和ip subscriber initiator unclassified-ip enable matching-user命令。
在IPv4网络漫游中,建议同时配置上述两种触发方式。
在IPv6网络中:
· 当需要通过IPv6报文触发漫游时,漫游的目的接口上必须配置ip subscriber initiator unclassified-ipv6 enable matching-user命令。
· 当需要通过NS或NA报文触发漫游时,漫游的目的接口上必须同时配置ip subscriber initiator nsna enable命令和ip subscriber initiator unclassified-ipv6 enable matching-user命令。
在IPv6网络漫游中,建议同时配置上述两种触发方式。
对于IPoE DHCP用户漫游,要求:
· 对于IPoE DHCPv4用户,必须在所有可漫游的接口上配置dhcp session-mismatch action roam命令。
· 对于IPoE DHCPv6用户,必须在所有可漫游的接口上配置ipv6 dhcp session-mismatch action roam命令。
· 在DHCP中继组网环境下,需要在DHCP中继接口上通过dhcp-proxy enable命令(缺省配置)配置DHCP中继支持代理功能。有关DHCP中继的相关介绍,请参见“BRAS业务配置指导”中的“DHCP”。
漫游过程中,以下变化会导致漫游失败,此时用户需在目的接口上重新认证上线,重新认证上线需要一定时间:
· 若漫游过程中漫游用户IP地址发生变化,用户将无法继续漫游。
· 若漫游的目的接口上未配置和漫游前相同的IPoE会话触发方式,会导致用户无法漫游到该接口。
· 若漫游的目的接口和漫游前的上线接口不在同一个漫游组中,则会漫游失败。
· 针对动态个人接入用户:
¡ 在为漫游用户授权VPN的情况下,如果漫游的目的接口绑定了VPN,允许目的接口绑定的VPN和授权的VPN不同,此时用户漫游到目的接口时仍是授权VPN生效。
¡ 在未为漫游用户授权VPN的情况下,如果漫游前的接口绑定了VPN,则要求漫游的目的接口上必须绑定相同的VPN,否则不允许用户漫游到该目的接口。
· 针对全局静态个人接入用户:
¡ 在为漫游用户授权VPN的情况下:
- 如果用户授权域中配置了strict-check access-interface vpn-instance命令,则要求目的接口必须绑定VPN并且绑定的VPN要和授权的VPN相同,否则不允许用户漫游到该目的接口。
- 如果用户授权域中未配置strict-check access-interface vpn-instance命令,允许目的接口不绑定VPN,或者绑定VPN但和授权的VPN不同。
¡ 在未为漫游用户授权VPN并且静态会话中未指定VPN参数的情况下,如果漫游前的接口绑定了VPN,则要求漫游的目的接口上必须绑定相同的VPN,否则不允许用户漫游到该目的接口。
· 针对全局静态和动态用户组成的双栈个人接入用户:
¡ 在全局静态会话中指定VPN参数的情况下,如果双栈中的动态个人接入用户进行漫游,则要求目的接口绑定的VPN必须和全局静态会话中指定的VPN相同。如果双栈中的全局静态个人接入用户进行漫游,则漫游的条件和一般的全局静态个人接入用户的漫游条件相同。
对于IPoE静态个人接入用户,漫游功能的生效情况如下:
· 对于接口静态个人接入用户,仅当在接口视图下通过ip subscriber session static命令配置静态IPoE会话时,在不指定VLAN的情况下才支持漫游功能,并且只能在在该接口上的不同VLAN之间进行漫游。
· 对于全局静态个人接入用户或者全局静态和动态用户组成的双栈个人接入用户,在系统视图下配置ip subscriber session static命令时:
¡ 如果指定了用户接入接口但未指定VLAN时,支持在该接入接口上的不同VLAN之间进行漫游。
¡ 如果未指定用户接入接口,用户在某接口上线时,如果该接口开启了漫游功能,则允许用户在所有开启本功能的接口之间进行漫游。
¡ 如果指定了IPv6 Delegation前缀,那么该静态会话中用户将不支持漫游功能。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置IPoE个人接入用户漫游功能。
ip subscriber roaming enable [ roam-group roam-group-name ]
缺省情况下,IPoE个人接入用户漫游功能处于关闭状态。
配置IPoE用户接入响应延迟时间后,系统将按照配置的时间对IPoE用户的上线请求进行延迟响应。
可分别为奇数MAC和偶数MAC配置不同的响应延迟时间。
本特性仅对IPoE DHCP用户生效。
若采用Web认证方式,则本特性仅对认证前域阶段的用户生效,对Web认证阶段的用户无影响。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置IPoE用户接入响应延迟时间。
ip subscriber access-delay delay-time [ even-mac | odd-mac ]
缺省情况下,对IPoE用户接入响应不延迟。
如果先配置了携带even-mac(或odd-mac)参数的本命令,再配置未携带任何参数的本命令,则后者会覆盖前者,反之亦然。
在一些安全性要求比较高的组网环境中,可配置IPoE认证信任的IP地址/地址范围,使设备仅处理在信任IP地址范围内的IP报文。
如果配置了信任IP地址/地址范围,当设备收到IP报文时按如下原则处理:
· 如果IP报文能够匹配静态IPoE会话,则不论IP报文中的源IP地址是否是信任的IP地址,都直接走IPoE静态用户上线流程。
· 如果IP报文未能匹配静态IPoE会话,则只有当IP报文中的源IP地址是信任的IP地址时才会触发IPoE接入认证,否则丢弃报文。
本功能对未知源IP个人用户和专线的未知源IP子用户生效。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置信任的源IPv4地址/地址范围。
ip subscriber unclassified-ip ip match start-ip-address [ end-ip-address ]
缺省情况下,未配置信任任何源IPv4地址/地址范围。
(4) 配置信任的源IPv6地址/地址范围。
ip subscriber unclassified-ip ipv6 match start-ipv6-address [ end-ipv6-address ]
缺省情况下,未配置信任任何源IPv6地址/地址范围。
配置禁止IPoE用户上线功能后,当设备收到IPoE用户的上线请求报文后会将其直接丢弃,以阻止新的IPoE用户上线。
本功能配置后,仅对新接入的IPoE用户生效,对当前已经存在用户(包括认证前域阶段中处于Online状态的IPoE Web用户)无影响。
(1) 进入系统视图。
system-view
(2) 配置IPoE禁止用户上线。
(独立运行模式)
ip subscriber access-block [ interface interface-type interface-number | slot slot-number [ cpu cpu-number ] ]
(IRF模式)
ip subscriber access-block [ interface interface-type interface-number | chassis chassis-number slot slot-number [ cpu cpu-number ] ]
缺省情况下,允许IPoE用户上线。
如果管理员希望对使用DHCP分配的某些地址的用户(例如采用静态地址绑定分配方式将MAC地址与IP地址进行绑定的哑终端用户)进行特殊的权限控制,可开启指定IP地址段中IPoE用户的二次认证功能。开启指定IP地址段中IPoE用户的二次认证功能后,当IPoE用户认证上线后使用的IP地址和本命令中指定的IP地址相匹配,则设备会立即使用本命令中指定的ISP域对该用户进行二次认证,以便在二次认证域中对这些用户的权限进行统一控制。
本功能目前仅支持IPoE DHCP用户。
对于IPoE DHCP双栈用户:
· 如果第一协议栈(例如IPv4)上线后满足触发二次认证条件且已完成二次认证,待第二协议栈(例如IPv6)上线后同样满足二次认证条件,则第二协议栈无需进行二次认证,该双栈用户在二次认证域中上线。
· 如果第一协议栈(例如IPv4)上线后满足触发二次认证条件且已完成二次认证,但是第二协议栈(例如IPv6)上线后不满足二次认证条件,则该双栈用户会重新切回到首次认证的ISP域中。
· 如果第一协议栈(例如IPv4)上线后不满足触发二次认证条件,待第二协议栈(例如IPv6)上线后即使满足二次认证条件也不触发二次认证。
配置或修改本命令仅对新接入用户生效,对已上线的用户无影响。
当设备需要为IPoE Web认证用户提供接入服务时,请合理规划IP地址避免IPoE Web用户使用的IP地址匹配到本命令指定的IP地址段,否则可能影响IPoE Web认证功能的正常使用。
(1) 进入系统视图。
system-view
(2) 开启指定IP地址段中IPoE用户的二次认证功能。
(IPv4协议栈)
ip subscriber reauth ip start-ipv4-address [ end-ipv4-address ] [ vpn-instance vpn-instance-name ] domain domain-name
undo ip subscriber reauth ip start-ipv4-address [ end-ipv4-address ]
(IPv6协议栈)
ip subscriber reauth ipv6 start-ipv6-address [ end-ipv6-address ] [ vpn-instance vpn-instance-name ] domain domain-name
undo ip subscriber reauth ipv6 start-ipv6-address [ end-ipv6-address ]
(双协议栈)
ip subscriber reauth ip start-ipv4-address [ end-ipv4-address ] ipv6 start-ipv6-address [ end-ipv6-address ] [ vpn-instance vpn-instance-name ] domain domain-name
undo ip subscriber reauth ip start-ipv4-address [ end-ipv4-address ] ipv6 start-ipv6-address [ end-ipv6-address ]
缺省情况下,IPoE用户的二次认证功能处于关闭状态。
缺省情况下,设备不限制IPoE用户的IPv4和IPv6两个协议栈上线的先后顺序。
在双栈场景中,如果管理员根据业务需要希望指定某个协议栈作为主业务依赖的协议栈,并且在该主业务依赖的协议栈未上线前不允许用户其它协议栈上线时,可以配置本功能。
对于IPoE Bind用户,配置本功能后,仅在用户主业务依赖的协议栈成功上线后,设备才允许用户的另一个协议栈上线。如果用户主业务依赖的协议栈下线,设备强制用户的另一个协议栈也下线,即整个用户下线。
对于IPoE Web用户,配置本功能后,生效原则如下:
· 用户上线:
¡ 仅前域上线过程受本功能控制,对后域上线过程无影响。例如,某IPoE用户先在前域上线IPv4协议栈,在用户从前域切后域之前配置主业务依赖IPv6协议栈,该情况下不影响用户的IPv4栈从前域切后域。
¡ 仅当IPoE Web用户主业务依赖的协议栈(如IPv4)通过前域上线后才允许该用户的另一个协议栈(如IPv6)上线。
¡ 如果另一个协议栈先于主业务依赖的协议栈在后域上线,则整个用户在后域上线。
· 用户下线:
¡ 如果用户主业务依赖的协议栈由后域返回前域,则整个用户返回前域。
¡ 如果用户主业务依赖的协议栈下线,设备强制用户的另一个协议栈也下线,即整个用户下线。
本功能配置后,对已在线IPoE用户的生效原则如下:
· 如果用户的IPv4协议栈先上线,然后再配置用户主业务依赖IPv6协议栈,那么对已在线的IPv4协议栈无影响,允许IPv4协议栈继续保持在线。反之亦然。
· 如果用户的IPv4和IPv6协议栈先上线,然后再配置用户主业务依赖IPv6协议栈,那么当用户的IPv6协议栈下线时,会同时强制该用户的IPv4协议栈也下线。反之亦然。
· 本功能仅适用于IPoE Bind用户和IPoE Web用户。
· 对于IPoE Web用户,如果接口上配置ip subscriber authentication-method web命令时指定了basic-service-ipv4参数,那么该接口上配置的ip subscriber basic-service-ip-type命令将不生效,仅ip subscriber authentication-method web命令的配置生效。
· 为确保IPoE功能正常,若需要在接口上通过ip subscriber basic-service-ip-type命令配置IPoE用户主业务依赖的IP地址类型(IPv4或IPv6),则必须确保该接口上通过ip subscriber enable命令开启了双栈IPoE功能。
· 下列IPoE用户不受本功能的控制,本功能配置后,对于这些IPoE用户上线过程无影响。
¡ IPoE静态用户(包括静态专线用户)。
¡ IPoE接口专线用户(不包括子用户)。
¡ IPoE子网专线用户(包括子用户)。
¡ IPoE L2VPN专线用户。
¡ IPoE三层接入模式下的未知源IP用户(包括IPv4和IPv6)。
· 在漫游场景中,为确保漫游功能正常,要求漫游前后的接入接口上配置相同的IPoE用户主业务依赖的IP地址类型。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置IPoE用户主业务依赖的IP地址类型。
ip subscriber basic-service-ip-type { ipv4 | ipv6 }
缺省情况下,IPoE用户主业务不依赖于任何IP地址类型。
在完成上述配置后,在任意视图下执行display命令可以显示配置后IPoE的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除IPoE统计信息。
表1-8 IPoE显示和维护
操作 |
命令 |
显示IPoE异常下线用户的表项信息 |
(独立运行模式) display ip subscriber abnormal-logout [ access-type { dhcpv4 | dhcpv6 | ndrs } | { mac mac-address | ip-type { ipv4 | ipv6 } } * | { ip ipv4-address | ipv6 ipv6-address | ipv6-prefix prefix-address/prefix-length } ] [ verbose ] [ slot slot-number ] (IRF模式) display ip subscriber abnormal-logout [ access-type { dhcpv4 | dhcpv6 | ndrs } | { mac mac-address | ip-type { ipv4 | ipv6 } } * | { ip ipv4-address | ipv6 ipv6-address | ipv6-prefix prefix-address/prefix-length } ] [ verbose ] [ chassis chassis-number slot slot-number ] |
显示被静默IPoE用户的信息 |
(独立运行模式) display ip subscriber chasten user quiet [ interface interface-type interface-number ] [ ip ipv4-address | ipv6 ipv6-address | mac mac-address | user-type { dhcp | dhcpv6 | ndrs | unclassified-ip | unclassified-ipv6 | static } ] [ verbose ] [ slot slot-number [ cpu cpu-number ] ] (IRF模式) display ip subscriber chasten user quiet [ interface interface-type interface-number ] [ ip ipv4-address | ipv6 ipv6-address | mac mac-address | user-type { dhcp | dhcpv6 | ndrs | unclassified-ip | unclassified-ipv6 | static } ] [ verbose ] [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
显示有认证失败记录但尚未达到静默条件的IPoE个人接入用户信息 |
(独立运行模式) display ip subscriber chasten user auth-failed [ interface interface-type interface-number ] [ ip ipv4-address | ipv6 ipv6-address | mac mac-address | user-type { dhcp | dhcpv6 | ndrs | unclassified-ip | unclassified-ipv6 | static } ] [ slot slot-number [ cpu cpu-number ] ] (IRF模式) display ip subscriber chasten user auth-failed [ interface interface-type interface-number ] [ ip ipv4-address | ipv6 ipv6-address | mac mac-address | user-type { dhcp | dhcpv6 | ndrs | unclassified-ip | unclassified-ipv6 | static } ] [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
显示自动备份的IPoE用户信息 |
(独立运行模式) display ip subscriber auto-save { access-type { dhcpv4 | dhcpv6 | ndrs } | domain domain-name | ip-type { ipv4 | ipv6 | dual-stack } | mac-address mac-address | online | wait-recover } [ interface interface-type interface-number [ s-vlan s-vlan [ c-vlan c-vlan ] ] ] [ slot slot-number [ cpu cpu-number ] ] (IRF模式) display ip subscriber auto-save { access-type { dhcpv4 | dhcpv6 | ndrs } | domain domain-name | ip-type { ipv4 | ipv6 | dual-stack } | mac-address mac-address | online | wait-recover } [ interface interface-type interface-number [ s-vlan s-vlan [ c-vlan c-vlan ] ] ] [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
显示IPoE用户自动备份功能中的备份文件的状态信息 |
display ip subscriber auto-save file-status |
显示IPoE自动备份的用户的统计信息 |
(独立运行模式) display ip subscriber auto-save statistics [ slot slot-number ] (IRF模式) display ip subscriber auto-save statistics [ chassis chassis-number slot slot-number ] |
显示IPoE HTTP/HTTPS防攻击中被阻断的目的IP地址的表项信息 |
(独立运行模式) display ip subscriber http-defense blocked-destination-ip [ slot slot-number [ cpu cpu-number ] ] (IRF模式) display ip subscriber http-defense blocked-destination-ip [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
显示配置的IPoE HTTP/HTTPS攻击防范功能的白名单地址。 |
display ip subscriber http-defense free-destination-ip |
显示IPoE HTTP/HTTPS防攻击中未被阻断的目的IP地址的表项信息 |
(独立运行模式) display ip subscriber http-defense unblocked-destination-ip [ slot slot-number [ cpu cpu-number ] ] (IRF模式) display ip subscriber http-defense unblocked-destination-ip [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
显示IPoE静态会话的配置信息 |
display ip subscriber static-session configuration [ interface interface-type interface-number | { description string | { ip start-ipv4-address [ end-ipv4-address ] | ipv6 start-ipv6-address [ end-ipv6-address ] | delegation-prefix start-ipv6-prefix [ end-ipv6-prefix ] prefix-length } } | domain domain-name ] [ all-vpn-instance | vpn-instance instance-name ] [ verbose ] |
显示静态用户接口列表的信息 |
display static-user interface-list [ list-id ] |
清除IPoE异常下线用户的信息 |
reset ip subscriber abnormal-logout |
清除有认证失败记录但尚未达到静默条件的IPoE个人接入用户信息 |
reset ip subscriber chasten user auth-failed [ interface interface-type interface-number ] [ ip ipv4-address | ipv6 ipv6-address | mac mac-address ] |
清除被静默IPoE用户的信息 |
reset ip subscriber chasten user quiet [ interface interface-type interface-number ] [ ip ipv4-address | ipv6 ipv6-address | mac mac-address ] |
清除基于目的IP地址的IPoE HTTP/HTTPS攻击防范表项信息 |
(独立运行模式) reset ip subscriber http-defense destination-ip [ slot slot-number [ cpu cpu-number ] ] [ ip ipv4-address | ipv6 ipv6-address ] [ vpn-instance vpn-instance-name ] (IRF模式) reset ip subscriber http-defense destination-ip [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] [ ip ipv4-address | ipv6 ipv6-address ] [ vpn-instance vpn-instance-name ] |
· 用户主机通过手工配置或DHCP获得IP地址,经由三层网络以IPoE方式接入到BRAS接入设备。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-15 未知源IP报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4.4.4.2/32 {
ipaddr = 4.4.4.2
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4.4.4.2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
2.2.2.2 Cleartext-Password :="radius"
以上信息表示:用户名为Host的IP地址2.2.2.2,用户密码为字符串radius。
(2) 配置Device
a. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
<Device> system-view
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.1
[Device-radius-rs1] primary accounting 4.4.4.1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
b. 配置认证域
# 创建并进入名称为dm1的ISP域。
[Device] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[Device-isp-dm1] authentication ipoe radius-scheme rs1
[Device-isp-dm1] authorization ipoe radius-scheme rs1
[Device-isp-dm1] accounting ipoe radius-scheme rs1
[Device-isp-dm1] quit
c. 配置IPoE
# 开启DHCP服务。
[Device] dhcp enable
# 进入接口Ten-GigabitEthernet3/1/2视图。
[Device] interface ten-gigabitethernet 3/1/2
# 开启IPoE功能,并指定三层接入模式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber routed enable
# 开启未知源IP报文触发方式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber initiator unclassified-ip enable
# 设置未知源IP报文触发方式使用的认证域为dm1。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber unclassified-ip domain dm1
# 设置动态用户的认证密码为明文radius。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber password plaintext radius
[Device–Ten-GigabitEthernet3/1/2] quit
# 用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息。
[Device] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x50 XGE3/1/2 2.2.2.2 000c-29a6-b656 -/-
2.2.2.2 L3 IPoE dynamic
-
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· 采用DHCP服务器分配IPv4地址。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
· DHCP client异常下线后通过IPv4报文重新触发上线。
图1-16 DHCPv4报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4.4.4.2/32 {
ipaddr = 4.4.4.2
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4.4.4.2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
以上信息表示:用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius。
(2) 配置DHCP服务器
# 全局开启DHCP。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段3.3.3.0/24和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool1] network 3.3.3.0 24
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
# 配置为用户分配的网关地址为3.3.3.1。
[DHCP-server-ip-pool-pool1] gateway-list 3.3.3.1
# 将3.3.3.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 3.3.3.1
[DHCP-server-ip-pool-pool1] quit
# 配置缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 4.4.4.2
(3) 配置Device
a. 配置DHCP relay
# 全局开启DHCP。
<Device> system-view
[Device] dhcp enable
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将3.3.3.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址。
[Device] ip pool pool1 bas remote
[Device-ip-pool-pool1] gateway 3.3.3.1 24
[Device-ip-pool-pool1] forbidden-ip 3.3.3.1
[Device-ip-pool-pool1] remote-server 4.4.4.3
[Device-ip-pool-pool1] quit
b. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.1
[Device-radius-rs1] primary accounting 4.4.4.1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
c. 配置认证域
# 创建并进入名称为dm1的ISP域。
[Device] domain name dm1
# 配置ISP域使用的RADIUS方案rs1,并授权远端BAS IP地址池。
[Device-isp-dm1] authentication ipoe radius-scheme rs1
[Device-isp-dm1] authorization ipoe radius-scheme rs1
[Device-isp-dm1] accounting ipoe radius-scheme rs1
[Device-isp-dm1] authorization-attribute ip-pool pool1
[Device-isp-dm1] quit
d. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 开启未知源IP报文触发方式,允许DHCP client异常下线后通过IPv4报文重新触发上线。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber initiator unclassified-ip enable matching-user
# 设置DHCP报文触发方式使用的认证域为dm1。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber dhcp domain dm1
# 设置动态用户的认证密码为明文radius。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber password plaintext radius
[Device–Ten-GigabitEthernet3/1/2] quit
# 用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IP地址为3.3.3.2。
[Device] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x5c XGE3/1/2 3.3.3.2 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
-
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· 采用IP地址池组下地址池为用户分配IPv4地址。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-17 DHCPv4报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4.4.4.2/32 {
ipaddr = 4.4.4.2
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4.4.4.2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
000c29a6b657 Cleartext-Password :="radius"
以上信息表示:添加用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius等多个用户。
(2) 配置DHCP服务器
# 全局开启DHCP。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool2地址池并进入其视图。
[DHCP-server] ip pool pool2
# 配置地址池动态分配的IP地址网段2.2.2.0/24和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool2] network 2.2.2.0 24
[DHCP-server-ip-pool-pool2] dns-list 8.8.8.8
# 配置为用户分配的网关地址为2.2.2.1。
[DHCP-server-ip-pool-pool2] gateway-list 2.2.2.1
# 将2.2.2.1设置为禁止地址。
[DHCP-server-ip-pool-pool2] forbidden-ip 2.2.2.1
[DHCP-server-ip-pool-pool2] quit
# 创建名称为pool3地址池并进入其视图。
[DHCP-server] ip pool pool3
# 配置地址池动态分配的IP地址网段3.3.3.0/24和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool3] network 3.3.3.0 24
[DHCP-server-ip-pool-pool3] dns-list 8.8.8.8
# 配置为用户分配的网关地址为3.3.3.1。
[DHCP-server-ip-pool-pool3] gateway-list 3.3.3.1
# 将3.3.3.1设置为禁止地址。
[DHCP-server-ip-pool-pool3] forbidden-ip 3.3.3.1
[DHCP-server-ip-pool-pool3] quit
# 配置缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 4.4.4.2
(3) 配置Device
a. 配置DHCP relay
# 全局开启DHCP。
<Device> system-view
[Device] dhcp enable
# 创建本地BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址和DNS服务器地址8.8.8.8。
[Device] ip pool pool1 bas local
[Device-ip-pool-pool1] gateway 1.1.1.1 24
[Device-ip-pool-pool1] dns-list 8.8.8.8
# 将1.1.1.1设置为禁止地址。
[Device-ip-pool-pool1] forbidden-ip 1.1.1.1
[Device-ip-pool-pool1] quit
# 创建远端BAS IP地址池pool2,指定匹配该地址池的DHCPv4客户端所在的网段地址,将2.2.2.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址。
[Device] ip pool pool2 bas remote
[Device-ip-pool-pool2] gateway 2.2.2.1 24
[Device-ip-pool-pool2] forbidden-ip 2.2.2.1
[Device-ip-pool-pool2] remote-server 4.4.4.3
[Device-ip-pool-pool2] quit
# 创建远端BAS IP地址池pool3,指定匹配该地址池的DHCPv4客户端所在的网段地址,将3.3.3.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址。
[Device] ip pool pool3 bas remote
[Device-ip-pool-pool3] gateway 3.3.3.1 24
[Device-ip-pool-pool3] forbidden-ip 3.3.3.1
[Device-ip-pool-pool3] remote-server 4.4.4.3
[Device-ip-pool-pool3] quit
# 创建IP地址池组poolgroup1,并将本地BAS IP地址池pool1、远端BAS IP地址池pool2和pool3加入到IP地址池组中。
[Device] ip pool-group poolgroup1
[Device-ip-pool-group-poolgroup1] pool pool1
[Device-ip-pool-group-poolgroup1] pool pool2
[Device-ip-pool-group-poolgroup1] pool pool3
[Device-ip-pool-group-poolgroup1] quit
b. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.1
[Device-radius-rs1] primary accounting 4.4.4.1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
c. 配置认证域
# 创建并进入名称为dm1的ISP域。
[Device] domain name dm1
# 配置ISP域使用的RADIUS方案rs1,并授权IP地址池组。
[Device-isp-dm1] authentication ipoe radius-scheme rs1
[Device-isp-dm1] authorization ipoe radius-scheme rs1
[Device-isp-dm1] accounting ipoe radius-scheme rs1
[Device-isp-dm1] authorization-attribute ip-pool-group poolgroup1
[Device-isp-dm1] quit
d. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 设置DHCP报文触发方式使用的认证域为dm1。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber dhcp domain dm1
# 设置动态用户的认证密码为明文radius。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber password plaintext radius
[Device–Ten-GigabitEthernet3/1/2] quit
# 先上线253个用户后,显示DHCP本地地址池pool1的统计信息。
[Device] display dhcp server statistics pool pool1
Total IP addresses: 254
Free IP addresses: 0
Used: 253
Pool utilization: 100.00%
Bindings:
Automatic: 253
Manual: 0
Expired: 0
Conflicts: 0
以上信息说明,DHCP本地地址池pool1的地址利用率为100%,已无可分配的IP地址。
如果再有新用户上线,设备将使用远端BAS IP地址池pool2关联的DHCP服务器上的地址资源为新上线用户分配地址。
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· 采用DHCP服务器分配IPv6地址。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-18 DHCPv6报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4::2/64 {
ipaddr6 = 4::2
netmask=64
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4::2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
以上信息表示:用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius。
(2) 配置DHCP服务器
# 创建名称为pool1的IPv6地址池并进入其视图。
<DHCP-server> system-view
[DHCP-server] ipv6 pool pool1
# 配置地址池动态分配的IPv6地址网段3::/64,DNS服务器地址为8::8。
[DHCP-server-ipv6-pool-pool1] network 3::/64
[DHCP-server-ipv6-pool-pool1] dns-server 8::8
[DHCP-server-ipv6-pool-pool1] quit
# 配置接口Ten-GigabitEthernet3/1/1工作在DHCPv6服务器模式。
[DHCP-server] interface ten-gigabitethernet 3/1/1
[DHCP-server-Ten-GigabitEthernet3/1/1] ipv6 dhcp select server
[DHCP-server-Ten-GigabitEthernet3/1/1] quit
# 配置缺省路由。
[DHCP-server] ipv6 route-static :: 0 4::2
(3) 配置Device
a. 配置DHCP relay
# 创建IPv6远端地址池pool1,指定匹配该地址池的DHCPv6客户端所在的网段地址,并指定IPv6远端地址池对应的DHCP服务器地址。
<Device> system-view
[Device] ipv6 pool pool1
[Device-ipv6-pool-pool1] gateway-list 3::1
[Device-ipv6-pool-pool1] network 3::/64 export-route
[Device-ipv6-pool-pool1] remote-server 4::3
[Device-ipv6-pool-pool1] quit
# 进入接口Ten-GigabitEthernet3/1/2视图。
[Device] interface ten-gigabitethernet 3/1/2
# 配置接口工作在中继模式。
[Device–Ten-GigabitEthernet3/1/2] ipv6 dhcp select relay
# 配置自动生成IPv6链路本地地址,该IPv6链路本地地址作为用户的网关。
[Device–Ten-GigabitEthernet3/1/2] ipv6 address auto link-local
# 取消设备发布RA消息的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址。配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[Device–Ten-GigabitEthernet3/1/2] undo ipv6 nd ra halt
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd autoconfig managed-address-flag
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd autoconfig other-flag
[Device–Ten-GigabitEthernet3/1/2] quit
b. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication ipv6 4::1
[Device-radius-rs1] primary accounting ipv6 4::1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
c. 配置认证域
# 创建并进入名称为dm1的ISP域。
[Device] domain name dm1
# 配置ISP域使用的RADIUS方案rs1,并授权IPv6远端地址池。
[Device-isp-dm1] authentication ipoe radius-scheme rs1
[Device-isp-dm1] authorization ipoe radius-scheme rs1
[Device-isp-dm1] accounting ipoe radius-scheme rs1
[Device-isp-dm1] authorization-attribute ipv6-pool pool1
[Device-isp-dm1] quit
d. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 设置DHCP报文触发方式使用的认证域为dm1。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber dhcp domain dm1
# 设置动态用户的认证密码为明文radius。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber password plaintext radius
[Device–Ten-GigabitEthernet3/1/2] quit
# 用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IPv6地址为3::2。
[Device] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x2c2 XGE3/1/2 - 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
3::2
· 通过IPv6 ND RS报文触发上线的用户主机经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备可以发送IPv6 ND RA报文。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-19 IPv6 ND RS报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4.4.4.2/32 {
ipaddr = 4.4.4.2
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4.4.4.2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
Framed-IPv6-Prefix =10::10/64
以上信息表示:用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius,授权IPv6前缀为10::10/64。
(2) 配置Device
a. 取消对接口Ten-GigabitEthernet3/1/2发布IPv6 ND RA消息的抑制。
<Device> system-view
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] undo ipv6 nd ra halt
b. 配置接口Ten-GigabitEthernet3/1/2自动生成IPv6链路本地地址。
[Device–Ten-GigabitEthernet3/1/2] ipv6 address auto link-local
[Device–Ten-GigabitEthernet3/1/2] quit
c. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.1
[Device-radius-rs1] primary accounting 4.4.4.1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
d. 配置发布前缀网段路由
# (仅用于发布前缀网段路由)创建IPv6地址池并进入IPv6地址池视图,指定匹配该地址池的DHCPv6客户端所在的网段地址并发布网段路由。
[Device] ipv6 pool pool1
[Device-ipv6-pool-pool1] network 10::/64 export-route
[Device-ipv6-pool-pool1] quit
e. 配置认证域
# 创建并进入名称为dm1的ISP域。
[Device] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[Device-isp-dm1] authentication ipoe radius-scheme rs1
[Device-isp-dm1] authorization ipoe radius-scheme rs1
[Device-isp-dm1] accounting ipoe radius-scheme rs1
# 配置为用户授权IPv6 DNS地址池信息。
[Device-isp-dm1] authorization-attribute primary-dns ipv6 8::8
[Device-isp-dm1] quit
f. 配置IPoE
# 进入接口Ten-GigabitEthernet3/1/2视图。
[Device] interface ten-gigabitethernet 3/1/2
# 开启IPoE功能,并指定二层接入模式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 开启IPv6 ND RS报文触发方式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber initiator ndrs enable
# 设置IPv6 ND RS报文触发方式使用的认证域为dm1。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber ndrs domain dm1
# 设置动态用户的认证密码为明文radius。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber password plaintext radius
[Device–Ten-GigabitEthernet3/1/2] quit
# 用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IPv6地址为10::20C:29FF:FEA6:B656。
[Device] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0xc XGE3/1/2 - 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
10::20C:29FF:FEA6:B656
· 通过IPv6 ND RS报文触发上线的用户主机经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备可以发送IPv6 ND RA报文。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-20 IPv6 ND RS报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4.4.4.2/32 {
ipaddr = 4.4.4.2
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4.4.4.2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
以上信息表示:用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius。
(2) 配置Device
a. 取消对接口Ten-GigabitEthernet3/1/2发布IPv6 ND RA消息的抑制。
<Device> system-view
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] undo ipv6 nd ra halt
b. 配置接口Ten-GigabitEthernet3/1/2自动生成IPv6链路本地地址。
[Device–Ten-GigabitEthernet3/1/2] ipv6 address auto link-local
[Device–Ten-GigabitEthernet3/1/2] quit
c. 配置ND前缀池
# 创建名称为1的前缀地址池,包含的前缀为10::/32,分配的前缀长度为64,即前缀池1包含10::/64~10:0:FFFF:FFFF::/64范围内的4294967296个前缀。
[Device] ipv6 dhcp prefix-pool 1 prefix 10::/32 assign-len 64
# 创建名称为pool1的IPv6地址池,并引用前缀池1。
[Device] ipv6 pool pool1
[Device-ipv6-pool-pool1] prefix-pool 1 export-route
[Device-ipv6-pool-pool1] quit
d. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.1
[Device-radius-rs1] primary accounting 4.4.4.1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
e. 配置认证域
# 创建并进入名称为dm1的ISP域。
[Device] domain name dm1
# 配置ISP域使用的RADIUS方案rs1,为用户授权ND前缀池及IPv6 DNS地址池信息。
[Device-isp-dm1] authentication ipoe radius-scheme rs1
[Device-isp-dm1] authorization ipoe radius-scheme rs1
[Device-isp-dm1] accounting ipoe radius-scheme rs1
[Device-isp-dm1] authorization-attribute ipv6-nd-prefix-pool pool1
[Device-isp-dm1] authorization-attribute primary-dns ipv6 8::8
[Device-isp-dm1] quit
f. 配置IPoE
# 进入接口Ten-GigabitEthernet3/1/2视图。
[Device] interface ten-gigabitethernet 3/1/2
# 开启IPoE功能,并指定二层接入模式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 开启IPv6 ND RS报文触发方式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber initiator ndrs enable
# 设置IPv6 ND RS报文触发方式使用的认证域为dm1。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber ndrs domain dm1
# 设置动态用户的认证密码为明文radius。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber password plaintext radius
[Device–Ten-GigabitEthernet3/1/2] quit
# 用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IPv6前缀为10::/64。
[Device] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0xc XGE3/1/2 - 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
10::20C:29FF:FEA6:B656
CPE支持通过NDRA和IA_PD两种方式分别向BRAS申请ND前缀和PD前缀。其中:
· NDRA:CPE主动向BRAS发送ND RS报文,BRAS通过ND RA报文给CPE的Ten-GigabitEthernet3/1/1接口分配ND前缀,用于CPE的Ten-GigabitEthernet3/1/1接口生成IPv6全球单播地址,该地址可被用于远程管理CPE设备。
· IA_PD:CPE主动向BRAS发送DHCPv6请求报文,BRAS通过DHCPv6(IA_PD)协议给CPE分配PD前缀;CPE将获取到PD前缀通过无状态方式分配给下连的主机,用于主机生成IPv6全球单播地址。
· 采用RADIUS作为认证、授权和计费服务器。
图1-21 IPv6 ND RS+DHCPv6(IA_PD)报文触发IPoE接入配置组网图
(1) 配置RADIUS服务器
下面以Linux下的Free Radius服务器为例,说明RADIUS server的基本配置。
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4.4.4.2/32 {
ipaddr = 4.4.4.2
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4.4.4.2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
6a4c310a0207 Cleartext-Password :="radius"
以上信息表示:用户名为Host的MAC地址6a4c310a0207,用户密码为字符串radius。
(2) 配置RouterB
a. 配置各接口的IP地址(略)。
b. 取消对接口Ten-GigabitEthernet3/1/2发布IPv6 ND RA消息的抑制。
<RouterB> system-view
[RouterB] interface ten-gigabitethernet 3/1/2
[RouterB–Ten-GigabitEthernet3/1/2] undo ipv6 nd ra halt
c. 配置接口Ten-GigabitEthernet3/1/2自动生成IPv6链路本地地址。
[RouterB–Ten-GigabitEthernet3/1/2] ipv6 address auto link-local
d. # 配置接口Ten-GigabitEthernet3/1/2工作在DHCPv6服务器模式。
[RouterB–Ten-GigabitEthernet3/1/2] ipv6 dhcp select server
[RouterB–Ten-GigabitEthernet3/1/2] quit
e. 配置ND前缀池和PD前缀池
# (NDRS使用)创建名称为1的前缀地址池,包含的前缀为10::/32,分配的前缀长度为64,即前缀池1包含10::/64~10:0:FFFF:FFFF::/64范围内的4294967296个前缀。
[RouterB] ipv6 dhcp prefix-pool 1 prefix 10::/32 assign-len 64
# 创建名称为nd的IPv6地址池,并引用前缀池1。
[RouterB] ipv6 pool nd
[RouterB-ipv6-pool-nd] prefix-pool 1 export-route
[RouterB-ipv6-pool-nd] quit
# (IA_PD使用)创建名称为2的前缀地址池,包含的前缀为20::/32,分配的前缀长度为64,即前缀池2包含20::/64~20:0:FFFF:FFFF::/64范围内的4294967296个前缀。
[RouterB] ipv6 dhcp prefix-pool 2 prefix 20::/32 assign-len 64
# 创建名称为pd的IPv6地址池,并引用前缀池2。
[RouterB] ipv6 pool pd
[RouterB-ipv6-pool-pd] prefix-pool 2 export-route
[RouterB-ipv6-pool-pd] quit
f. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[RouterB] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[RouterB-radius-rs1] primary authentication 4.4.4.1
[RouterB-radius-rs1] primary accounting 4.4.4.1
[RouterB-radius-rs1] key authentication simple radius
[RouterB-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[RouterB-radius-rs1] user-name-format without-domain
[RouterB-radius-rs1] quit
g. 配置认证域
# 创建并进入名称为dm1的ISP域。
[RouterB] domain name dm1
# 配置ISP域使用的RADIUS方案rs1,为用户授权PD前缀池为pd,ND前缀池为nd。
[RouterB-isp-dm1] authentication ipoe radius-scheme rs1
[RouterB-isp-dm1] authorization ipoe radius-scheme rs1
[RouterB-isp-dm1] accounting ipoe radius-scheme rs1
[RouterB-isp-dm1] authorization-attribute ipv6-pool pd
[RouterB-isp-dm1] authorization-attribute ipv6-nd-prefix-pool nd
[RouterB-isp-dm1] quit
h. 配置IPoE
# 进入接口Ten-GigabitEthernet3/1/2视图。
[RouterB] interface ten-gigabitethernet 3/1/2
# 开启IPoE功能,并指定二层接入模式。
[RouterB–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 开启IPv6 NDRS报文触发方式。
[RouterB–Ten-GigabitEthernet3/1/2] ip subscriber initiator ndrs enable
# 设置IPv6 DHCP报文触发方式使用的认证域为dm1。
[RouterB–Ten-GigabitEthernet3/1/2] ip subscriber dhcp domain dm1
# 设置IPv6 NDRS报文触发方式使用的认证域为dm1。
[RouterB–Ten-GigabitEthernet3/1/2] ip subscriber ndrs domain dm1
# 设置用户以IA_PD方式成功上线后,才允许以NDRS方式上线
[RouterB–Ten-GigabitEthernet3/1/2] ip subscriber ndrs wait-delegation-prefix
# 设置动态用户的认证密码为明文radius。
[RouterB–Ten-GigabitEthernet3/1/2] ip subscriber password plaintext radius
[RouterB–Ten-GigabitEthernet3/1/2] quit
(3) 配置RouterA
a. 配置接口Ten-GigabitEthernet3/1/1的开启无状态地址自动配置功能,使接口通过无状态自动配置方式生成全球单播地址
[RouterA] interface ten-gigabitethernet 3/1/1
[RouterA–Ten-GigabitEthernet3/1/1] ipv6 address auto
b. # 配置接口Ten-GigabitEthernet3/1/1作为DHCPv6客户端,通过DHCPv6方式获取IPv6前缀和其他网络配置参数;指定获取到IPv6前缀后,创建编号为1的IPv6前缀,该前缀编号1对应的IPv6前缀为DHCPv6客户端获取到的前缀。
[RouterA–Ten-GigabitEthernet3/1/1] ipv6 dhcp client pd 1
[RouterA–Ten-GigabitEthernet3/1/1] quit
c. # 配置缺省路由。
[RouterA] ipv6 route-static :: 0 10::1
d. # 在接口Ten-GigabitEthernet3/1/2上取消对RA消息发布的抑制。
[RouterA] interface ten-gigabitethernet 3/1/2
[RouterA-Ten-GigabitEthernet3/1/2] undo ipv6 nd ra halt
e. # 在接口Ten-GigabitEthernet3/1/2上配置动态获取IPv6前缀的编号为1,即该接口将使用编号为1的前缀生成自己的IPv6地址20::123:1:1(CPE下连用户需要将该地址设置为自己的网关地址),并将编号为1的IPv6前缀通过RA报文分配给终端设备。
[RouterA-Ten-GigabitEthernet3/1/2] ipv6 address 1 123::123:1:1/64
[RouterA-Ten-GigabitEthernet3/1/2] quit
# 客户端触发NDRS+IAPD报文,用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的nd前缀为10::,pd前缀为20::/64。
[RouterB] display access-user verbose
Basic:
Description: N/A
User ID: 0x1d
Username: 6a4c310a0207
Authorization domain : dm1
Authentication domain: dm1
Interface: XGE3/1/2
Service-VLAN/Customer-VLAN: -/-
VXLAN ID: -
MAC address: 6a4c-310a-0207
IP address: -
IP pool: -
Primary DNS server: -
Secondary DNS server: -
IPv6 address: 10::684C:31FF:FE0A:207
IPv6 pool: pd
Primary IPv6 DNS server: -
Secondary IPv6 DNS server: -
IPv6 PD prefix: 20::/64
IPv6 ND prefix: 10::/64
……
以上信息表示,Router B通过DHCPv6协议为Router A分配一个代理前缀。
# 显示Router A上创建的IPv6前缀信息。
[RouterA] display ipv6 prefix
Number Prefix Type
1 20::/64 Dynamic
以上信息表示,Router A从Router B获取到代理前缀后,已根据ipv6 dhcp client pd 1配置创建了编号为1的IPv6前缀。
· 通过ARP报文触发上线的IPoE静态个人接入用户主机经由二层网络以IPoE方式接入到BRAS接入设备。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
· 为静态用户分配的网关地址为3.3.3.1。
图1-22 ARP报文触发静态IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4.4.4.2/32 {
ipaddr = 4.4.4.2
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4.4.4.2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
3.3.3.2 Cleartext-Password :="radius"
以上信息表示:用户名为Host的IP地址3.3.3.2,用户密码为字符串radius。
(2) 配置Device
a. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
<Device> system-view
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.1
[Device-radius-rs1] primary accounting 4.4.4.1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
b. 配置认证域
# 创建并进入名称为dm1的ISP域。
[Device] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[Device-isp-dm1] authentication ipoe radius-scheme rs1
[Device-isp-dm1] authorization ipoe radius-scheme rs1
[Device-isp-dm1] accounting ipoe radius-scheme rs1
[Device-isp-dm1] quit
c. 配置DHCP服务器
# 全局开启DHCP。
[Device] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[Device] dhcp server request-ip-address check
# 创建本地BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,并指定地址池禁止分配地址3.3.3.2,该地址必须和IPoE静态会话中指定的用户地址相同。
[Device] ip pool pool1 bas local
[Device-ip-pool-pool1] gateway 3.3.3.1 24
[Device-ip-pool-pool1] forbidden-ip 3.3.3.2
[Device-ip-pool-pool1] quit
d. 配置IPoE
# 进入接口Ten-GigabitEthernet3/1/2视图。
[Device] interface ten-gigabitethernet 3/1/2
# 开启IPoE功能,并指定二层接入模式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# IPoE静态个人接入用户通过ARP报文触发上线功能。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber initiator arp enable
# 配置IP地址为3.3.3.2,该地址必须是已在IP地址池中配置的禁止分配地址,认证域为dm1的静态会话。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber session static ip 3.3.3.2 domain dm1
# 配置IPoE静态个人接入用户的认证密码为radius。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber password plaintext radius
[Device–Ten-GigabitEthernet3/1/2] quit
# 用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息。
[Device] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x10 XGE3/1/2 3.3.3.2 147b-1924-0206 -/-
3.3.3.2 L2 IPoE static
-
· 通过NS/NA报文触发上线的IPoE静态个人接入用户主机经由二层网络以IPoE方式接入到BRAS接入设备。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-23 NS/NA报文触发静态IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4::2/64 {
ipaddr6 = 4::2
netmask=64
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4::2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
3::1 Cleartext-Password :="radius"
以上信息表示:用户名为Host的IP地址3::1,用户密码为字符串radius。
(2) 配置Device
a. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
<Device> system-view
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication ipv6 4::1
[Device-radius-rs1] primary accounting ipv6 4::1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
b. 配置认证域
# 创建并进入名称为dm1的ISP域。
[Device] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[Device-isp-dm1] authentication ipoe radius-scheme rs1
[Device-isp-dm1] authorization ipoe radius-scheme rs1
[Device-isp-dm1] accounting ipoe radius-scheme rs1
[Device-isp-dm1] quit
c. 配置DHCP服务器
# 创建IPv6地址池并进入IPv6地址池视图,指定匹配该地址池的DHCPv6客户端所在的网段地址,并指定地址池禁止分配地址3::1,该地址必须和IPoE静态会话中指定的用户地址相同。
[Device] ipv6 pool pool1
[Device-ipv6-pool-pool1] network 3::/64 export-route
[Device-ipv6-pool-pool1] forbidden-address 3::1
[Device-ipv6-pool-pool1] quit
d. 配置IPoE
# 进入接口Ten-GigabitEthernet3/1/2视图。
[Device] interface ten-gigabitethernet 3/1/2
# 配置自动生成IPv6链路本地地址,该IPv6链路本地地址作为用户的网关。
[Device–Ten-GigabitEthernet3/1/2] ipv6 address auto link-local
# 开启IPoE功能,并指定二层接入模式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# IPoE静态个人接入用户通过NS/NA报文触发上线功能。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber initiator nsna enable
# 配置IPv6地址为3::1,认证域为dm1的静态会话。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber session static ipv6 3::1 domain dm1
# 配置IPoE静态个人接入用户的认证密码为radius。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber password plaintext radius
[Device–Ten-GigabitEthernet3/1/2] quit
# NS/NA报文认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息。
[Device] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x4 XGE3/1/2 - 0010-9400-0002 -/-
3::1 L2 IPoE static
3::1
· 三层设备Device下挂的Host A和Host B均使用相同的IPv6地址前缀(20::/64)且通过无状态自动配置方式获取IPv6地址。
· BRAS设备上采用IPoE静态用户上线方式实现下挂的主机都可以通过IPv6报文触发上线,并对这些使用相同IPv6地址前缀的用户报文进行统一认证、计费、限速和管理。
· 采用RADIUS作为认证、授权和计费服务器。
图1-24 IPv6 PD前缀用户通过未知源IP报文触发静态IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置RADIUS服务器
下面以Linux下的Free Radius服务器为例,说明RADIUS server的基本配置。
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4::2/64 {
ipaddr6 = 4::2
netmask=64
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4::2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
10::2 Cleartext-Password :="radius"
以上信息表示:静态用户的用户名为10::2,用户密码为字符串radius。
(2) 配置BRAS
a. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
<BRAS> system-view
[BRAS] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[BRAS-radius-rs1] primary authentication ipv6 4::1
[BRAS-radius-rs1] primary accounting ipv6 4::1
[BRAS-radius-rs1] key authentication simple radius
[BRAS-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[BRAS-radius-rs1] user-name-format without-domain
[BRAS-radius-rs1] quit
b. 配置认证域
# 创建并进入名称为dm1的ISP域。
[BRAS] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[BRAS-isp-dm1] authentication ipoe radius-scheme rs1
[BRAS-isp-dm1] authorization ipoe radius-scheme rs1
[BRAS-isp-dm1] accounting ipoe radius-scheme rs1
[BRAS-isp-dm1] quit
c. 配置DHCP服务器
# 创建IPv6地址池并进入IPv6地址池视图,指定匹配该地址池的DHCPv6客户端所在的网段地址,并指定地址池禁止分配地址10::2,该地址必须和IPoE静态会话中指定的用户地址相同。
[BRAS] ipv6 pool pool1
[BRAS-ipv6-pool-pool1] network 10::/64 export-route
[BRAS-ipv6-pool-pool1] forbidden-address 10::2
[BRAS-ipv6-pool-pool1] quit
d. 配置IPoE
# 配置IPoE全局静态会话,允许IPv6地址为10::2和属于前缀网段20::/64的用户触发静态用户上线,并配置BRAS设备主动请求用户上线。
[BRAS] ip subscriber session static ipv6 10::2 delegation-prefix 20:: 64 domain dm1 interface ten-gigabitethernet 3/1/2 request-online
# 进入接口Ten-GigabitEthernet3/1/2视图。
[BRAS] interface ten-gigabitethernet 3/1/2
# 开启IPoE功能,并指定二层接入模式。
[BRAS–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 开启未知源IPv6报文和NS/NA报文触发生成IPoE会话功能。
[BRAS–Ten-GigabitEthernet3/1/2] ip subscriber initiator unclassified-ipv6 enable matching-user
[BRAS–Ten-GigabitEthernet3/1/2] ip subscriber initiator nsna enable
# 配置IPoE静态个人接入用户的认证密码为radius。
[BRAS–Ten-GigabitEthernet3/1/2] ip subscriber password plaintext radius
[BRAS–Ten-GigabitEthernet3/1/2] quit
(3) 配置Device
# 配置引用前缀生成接口上的IPv6地址,并将此前缀分配给终端设备。
<Device> system-view
[Device] ipv6 prefix 1 20::/64
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ipv6 address 1 ::1/64
# 取消对RA消息发布的抑制。
[Device–Ten-GigabitEthernet3/1/2] undo ipv6 nd ra halt
[Device–Ten-GigabitEthernet3/1/2] quit
# HostA发送的IPv6报文认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息。
[BRAS] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x4 XGE3/1/2 - 0010-9400-0002 -/-
10::2 L2 IPoE static
10::2
· 子网5.5.5.0/24、6.6.6.0/24、7.7.7.0/24的所有用户经由二层网络以IPoE方式接入到BRAS 接入设备。
· 子网专线用户认证时使用的用户名和密码分别为:5.5.5.0/24网段用户名us1、密码pw1;6.6.6.0/24网段用户名us2、密码pw2;7.7.7.0/24网段用户名us3、密码pw3。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-25 IPoE子网专线用户接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4.4.4.2/32 {
ipaddr = 4.4.4.2
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4.4.4.2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
us1 Cleartext-Password :="pw1"
us2 Cleartext-Password :="pw2"
us3 Cleartext-Password :="pw3"
以上信息表示:三个子网专线用户的用户名分别为us1、us2、us3,相应的用户密码分别为字符串pw1、pw2、pw3。
(2) 配置Device
a. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
<Device> system-view
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.1
[Device-radius-rs1] primary accounting 4.4.4.1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
b. 配置认证域
# 创建并进入名称为dm1的ISP域。
[Device] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[Device-isp-dm1] authentication ipoe radius-scheme rs1
[Device-isp-dm1] authorization ipoe radius-scheme rs1
[Device-isp-dm1] accounting ipoe radius-scheme rs1
[Device-isp-dm1] quit
c. 配置IPoE认证
# 开启DHCP服务。
[Device] dhcp enable
# 进入接口Ten-GigabitEthernet3/1/2视图。
[Device] interface ten-gigabitethernet 3/1/2
# 开启IPoE功能,并指定三层接入模式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber routed enable
# 配置三个子网专线用户。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber subnet-leased ip 5.5.5.0 24 username us1 password plaintext pw1 domain dm1
[Device–Ten-GigabitEthernet3/1/2] ip subscriber subnet-leased ip 6.6.6.0 24 username us2 password plaintext pw2 domain dm1
[Device–Ten-GigabitEthernet3/1/2] ip subscriber subnet-leased ip 7.7.7.0 24 username us3 password plaintext pw3 domain dm1
[Device–Ten-GigabitEthernet3/1/2] quit
# 子网专线用户认证通过之后,各子网网段的用户流量能正常转发,可以使用以下的显示命令查看到IPoE用户在线信息。
[Device] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x16 XGE3/1/2 5.5.5.0 - -/-
us1 L3 IPoE subnet leased
-
0x17 XGE3/1/2 6.6.6.0 - -/-
us2 L3 IPoE subnet leased
-
0x18 XGE3/1/2 7.7.7.0 - -/-
us3 L3 IPoE subnet leased
-
· 2.2.2.0/24网段内的所有用户经由网关设备以IPoE方式接入到BRAS接入设备。
· 接口专线用户认证时使用的用户名为us1、密码为pw1。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-26 IPoE接口专线用户接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4.4.4.2/32 {
ipaddr = 4.4.4.2
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4.4.4.2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
us1 Cleartext-Password :="pw1"
以上信息表示:接口专线用户的用户名为us1,用户密码为字符串pw1。
(2) 配置Device
a. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
<Device> system-view
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.1
[Device-radius-rs1] primary accounting 4.4.4.1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
b. 配置认证域
# 创建并进入名称为dm1的ISP域。
[Device] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[Device-isp-dm1] authentication ipoe radius-scheme rs1
[Device-isp-dm1] authorization ipoe radius-scheme rs1
[Device-isp-dm1] accounting ipoe radius-scheme rs1
[Device-isp-dm1] quit
c. 配置IPoE认证
# 进入接口Ten-GigabitEthernet3/1/2视图。
[Device] interface ten-gigabitethernet 3/1/2
# 开启IPoE功能,并指定三层接入模式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber routed enable
# 配置接口专线用户,认证使用的用户名为us1,认证使用的密码为明文pw1,使用的认证域为dm1。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber interface-leased username us1 password plaintext pw1 domain dm1
[Device–Ten-GigabitEthernet3/1/2] quit
# 接口专线用户认证通过之后,后续经由此接口的用户流量都能正常转发,可以使用以下的显示命令查看到IPoE用户在线信息。
[Device] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0xec XGE3/1/2 - - -/-
us1 L3 IPoE interface leased
-
· L2VPN专线用户Host A经由二层网络以IPoE方式接入到BRAS设备。
· L2VPN专线用户认证时使用的用户名为us1、密码为pw1。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-27 IPoE L2VPN专线用户接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4.4.4.2/32 {
ipaddr = 4.4.4.2
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4.4.4.2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
us1 Cleartext-Password :="pw1"
以上信息表示:接口专线用户的用户名为us1,用户密码为字符串pw1。
(2) 配置PE2
# 配置LSR ID。
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 2.2.2.9 32
[PE2-LoopBack0] quit
[PE2] mpls lsr-id 2.2.2.9
# 使能L2VPN。
# 全局使能LDP。
[PE2-ldp] quit
# 配置连接PE 1的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[PE2] interface ten-gigabitethernet 3/1/2
[PE2-Ten-GigabitEthernet3/1/2] ip address 20.1.1.2 24
[PE2-Ten-GigabitEthernet3/1/2] mpls enable
[PE2-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE2-Ten-GigabitEthernet3/1/2] quit
# 在PE 2上运行OSPF,用于建立LSP。
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 20.1.1.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] network 2.2.2.9 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
# 在PE 2上创建虚拟交换实例,并配置远端PE。
[PE2-vsi-vpn1] pwsignaling static
[PE2-vsi-vpn1-static] peer 1.1.1.9 pw-id 3 in-label 100 out-label 100
[PE2-vsi-vpn1-static-1.1.1.9-3] quit
[PE2-vsi-vpn1-static] quit
[PE2-vsi-vpn1] quit
# 在接入CE 2的接口Ten-GigabitEthernet3/1/1上关联虚拟交换实例。此接口不需配置IP地址。
[PE2] interface ten-gigabitethernet 3/1/1
[PE2-Ten-GigabitEthernet3/1/1] xconnect vsi vpn1
[PE2-Ten-GigabitEthernet3/1/1] quit
(3) 配置PE1
a. 配置VPLS
# 配置LSR ID。
<PE1> system-view
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 1.1.1.9 32
[PE1-LoopBack0] quit
[PE1] mpls lsr-id 1.1.1.9
# 使能L2VPN。
# 全局使能LDP。
[PE1-ldp] quit
# 配置连接PE 2的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[PE1] interface ten-gigabitethernet 3/1/2
[PE1-Ten-GigabitEthernet3/1/2] ip address 20.1.1.1 24
[PE1-Ten-GigabitEthernet3/1/2] mpls enable
[PE1-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE1-Ten-GigabitEthernet3/1/2] quit
# 在PE 1上运行OSPF,用于建立LSP。
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 20.1.1.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 1.1.1.9 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
# 在PE 1上创建虚拟交换实例,并配置远端PE。
[PE1-vsi-vpn1] pwsignaling static
[PE1-vsi-vpn1-static] peer 2.2.2.9 pw-id 3 in-label 100 out-label 100
[PE1-vsi-vpn1-static-2.2.2.9-3] quit
[PE1-vsi-vpn1-static] quit
[PE1-vsi-vpn1] quit
# 在接入CE 1的接口Ten-GigabitEthernet3/1/1上关联虚拟交换实例。此接口不需配置IP地址。
[PE1] interface ten-gigabitethernet 3/1/1
[PE1-Ten-GigabitEthernet3/1/1] xconnect vsi vpn1
[PE1-Ten-GigabitEthernet3/1/1] quit
b. 配置RADIUS方案
# 创建名字为rs1的RADIUS方案并进入该方案视图。
<PE1> system-view
[PE1] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[PE1-radius-rs1] primary authentication 4.4.4.1
[PE1-radius-rs1] primary accounting 4.4.4.1
[PE1-radius-rs1] key authentication simple radius
[PE1-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[PE1-radius-rs1] user-name-format without-domain
[PE1-radius-rs1] quit
c. 配置认证域
# 创建并进入名字为dm1的ISP域。
[PE1] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[PE1-isp-dm1] authentication ipoe radius-scheme rs1
[PE1-isp-dm1] authorization ipoe radius-scheme rs1
[PE1-isp-dm1] accounting ipoe radius-scheme rs1
[PE1-isp-dm1] quit
d. 配置IPoE认证
# 进入接口Ten-GigabitEthernet3/1/1视图。
[PE1] interface ten-gigabitethernet 3/1/1
# 使能IPoE功能,并指定二层接入模式。
[PE1–Ten-GigabitEthernet3/1/1] ip subscriber l2-connected enable
# 配置L2VPN专线用户,认证使用的用户名为us1,认证使用的密码为明文pw1,使用的认证域为dm1。
[PE1–Ten-GigabitEthernet3/1/1] ip subscriber l2vpn-leased username us1 password plaintext pw1 domain dm1
[PE1–Ten-GigabitEthernet3/1/1] quit
# L2VPN专线用户认证通过之后,后续经由此接口的用户流量都能正常转发,可以使用以下的显示命令查看到IPoE用户在线信息。
[PE1] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0xec XGE3/1/1 - - -/-
us1 IPoE L2VPN leased
-
· 192.168.1.0/24网段内的所有用户经由网关设备以IPoE静态专线方式接入到BRAS接入设备。
· 静态专线会话认证时使用的用户名为us1、密码为pw1。
· 采用RADIUS作为认证、授权和计费服务器。
图1-28 IPoE静态专线用户接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置RADIUS服务器
下面以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4.4.4.2/32 {
ipaddr = 4.4.4.2
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4.4.4.2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
us1 Cleartext-Password :="pw1"
以上信息表示:用户名为Host的IP地址us1,用户密码为字符串pw1。
(2) 配置Gateway设备
# 启用DHCP服务。
<Gateway> system-view
[Gateway] dhcp enable
# 配置IP地址池pool1,以便为内网用户分配私网IPv4地址。
[Gateway] ip pool pool1
[Gateway-ip-pool-pool1] network 192.168.1.0 24
[Gateway-ip-pool-pool1] gateway-list 192.168.1.1
[Gateway-ip-pool-pool1] dns-list 8.8.8.8
# 将IP地址192.168.1.1配置为禁用地址。
[Gateway-ip-pool-pool1] forbidden-ip 192.168.1.1
[Gateway-ip-pool-pool1] quit
# 在接口Ten-GigabitEthernet3/1/2上配置内网用户的IPv4网关地址。
[Gateway] interface ten-gigabitethernet 3/1/2
[Gateway-Ten-GigabitEthernet3/1/2] ip address 192.168.1.1 24
# 配置接口的IPv6全球单播地址,并取消对RA消息发布的抑制。
[Gateway-Ten-GigabitEthernet3/1/2] ipv6 address 192::1/64
[Gateway-Ten-GigabitEthernet3/1/2] undo ipv6 nd ra halt
[Gateway-Ten-GigabitEthernet3/1/2] quit
# 进入接口Ten-GigabitEthernet3/1/1视图。
[Gateway] interface ten-gigabitethernet 3/1/1
# 配置接口IPv4地址。
[Gateway-Ten-GigabitEthernet3/1/1] ip address 3.3.3.2 24
# (IPv4使用)配置直接使用接口Ten-GigabitEthernet3/1/1的IP地址对内网访问外网的IP流量进行地址转换。
[Gateway-Ten-GigabitEthernet3/1/1] nat outbound
# 配置接口的IPv6全球单播地址。
[Gateway-Ten-GigabitEthernet3/1/1] ipv6 address 3::2/64
# 配置缺省路由。
[Gateway] ip route-static 0.0.0.0 0 3.3.3.1 //下一跳为共享网关地址
[Gateway] ipv6 route-static :: 0 3::1 //下一跳为和接口Ten-GigabitEthernet3/1/1上地址3::2/64同网段的任意IPv6全球单播地址均可。
(3) 配置Device
a. 配置各接口IP地址(略)。
b. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
<Device> system-view
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.1
[Device-radius-rs1] primary accounting 4.4.4.1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
c. 配置认证域
# 创建并进入名称为dm1的ISP域。
[Device] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[Device-isp-dm1] authentication ipoe radius-scheme rs1
[Device-isp-dm1] authorization ipoe radius-scheme rs1
[Device-isp-dm1] accounting ipoe radius-scheme rs1
[Device-isp-dm1] quit
d. 配置DHCP服务器
# 全局开启DHCP。
[Device] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[Device] dhcp server request-ip-address check
# 创建本地BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,并指定地址池禁止分配地址3.3.3.1、3.3.3.2,该地址必须和IPoE静态会话中指定的用户地址相同。
[Device] ip pool pool1 bas local
[Device-ip-pool-pool1] gateway 3.3.3.1 24
[Device-ip-pool-pool1] forbidden-ip 3.3.3.1 3.3.3.2
[Device-ip-pool-pool1] quit
# 创建IPv6地址池pool1,指定匹配该地址池的DHCPv6客户端所在的网段地址,并指定地址池禁止分配地址3::1、3::2,该地址必须和IPoE静态会话中指定的用户地址相同。
[Device] ipv6 pool pool1
[Device-ipv6-pool-pool1] network 3::/64 export-route
[Device-ipv6-pool-pool1] forbidden-address 3::1 3::2
[Device-ipv6-pool-pool1] quit
e. # 配置静态路由。
# 配置BRAS设备到用户侧下行流量的静态路由。
[Device] ipv6 route-static 192:: 64 3::2
f. 配置IPoE认证
# 配置IPv4地址为3.3.3.2,IPv6地址为3::2,认证域为dm1的静态专线会话,并主动触发用户上线。
[Device] ip subscriber session static-leased ip 3.3.3.2 ipv6 3::2 interface ten-gigabitethernet 3/1/2 domain dm1 request-online
# 进入接口Ten-GigabitEthernet3/1/2视图。
[Device] interface ten-gigabitethernet 3/1/2
# 配置接口自动生成链路本地地址。
[Device–Ten-GigabitEthernet3/1/2] ipv6 address auto link-local
# 开启IPoE功能,并指定二层接入模式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
[Device–Ten-GigabitEthernet3/1/2] quit
# IPoE静态个人接入用户通过未知源报文触发上线功能。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber initiator unclassified-ip enable matching-user
[Device–Ten-GigabitEthernet3/1/2] ip subscriber initiator unclassified-ipv6 enable matching-user
# 开启ARP报文触发上线功能。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber initiator arp enable
# 开启NS/NA报文触发方式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber initiator nsna enable
# 配置IPoE静态个人接入用户的认证用户名为us1,密码为pw1。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber username string us1
[Device–Ten-GigabitEthernet3/1/2] ip subscriber password plaintext pw1
# 关闭用户在线探测功能。
[Device–Ten-GigabitEthernet3/1/2] undo ip subscriber user-detect ip
[Device–Ten-GigabitEthernet3/1/2] undo ip subscriber user-detect ipv6
[Device–Ten-GigabitEthernet3/1/2] quit
# 静态专线用户认证通过之后,后续经由此接口的用户流量都能正常转发,可以使用以下的显示命令查看到IPoE静态专线用户的在线信息。
[Device] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x5c XGE3/1/2 3.3.3.2 000c-29a6-b656 -/-
us1 L2 IPoE static
3::2
· 用户主机经由二层网络以IPoE方式接入到BRAS接入设备。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
· vpn1中的用户通过DHCP获取IP地址。
图1-29 IPoE为接入用户授权地址池和VPN配置组网图
为保证VPN间流量正常转发,需要在Device上配置静态路由和策略路由。
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4.4.4.2/32 {
ipaddr = 4.4.4.2
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4.4.4.2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
H3C-VPN-Instance :="vpn1",
Framed-Pool := " pool1"
以上信息表示:用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius,授权VPN实例名称为vpn1,授权IP地址池名称为pool1。
(2) 配置DHCP服务器
# 全局开启DHCP。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段3.3.3.0/24。
[DHCP-server-ip-pool-pool1] network 3.3.3.0 24
# 配置为客户端分配的网关地址为3.3.3.1。
[DHCP-server-ip-pool-pool1] gateway-list 3.3.3.1
# 将3.3.3.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 3.3.3.1
[DHCP-server-ip-pool-pool1] quit
# 配置缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 4.4.4.2
(3) 配置Device
a. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
<Device> system-view
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.1
[Device-radius-rs1] primary accounting 4.4.4.1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
b. 配置认证域
# 创建并进入名称为dm1的ISP域。
[Device] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[Device-isp-dm1] authentication ipoe radius-scheme rs1
[Device-isp-dm1] authorization ipoe radius-scheme rs1
[Device-isp-dm1] accounting ipoe radius-scheme rs1
[Device-isp-dm1] quit
c. 创建VPN实例
# 创建一个名为vpn1的VPN实例。
[Device] ip vpn-instance vpn1
[Device-vpn-instance-vpn1] quit
d. 配置DHCP relay
# 全局开启DHCP。
[Device] dhcp enable
[Device] interface ten-gigabitethernet 3/1/2
# 配置接口工作在中继模式。
[Device–Ten-GigabitEthernet3/1/2] dhcp select relay
[Device–Ten-GigabitEthernet3/1/2] quit
# 创建IP地址池pool1,并引用VPN实例vpn1。
[Device] ip pool pool1 bas remote
[Device-ip-pool-pool1] vpn-instance vpn1
# 配置为客户端分配的网关地址为3.3.3.1,且指定导出相应的路由。当本配置生效后,会向vpn1的路由表中添加一条网关地址对应的静态主机路由。
[Device-ip-pool-pool1] gateway 3.3.3.1 24
# 将3.3.3.1设置为禁止地址。
[Device-ip-pool-pool1] forbidden-ip 3.3.3.1
# 配置远端DHCP服务器地址为4.4.4.3。
[Device-ip-pool-pool1] remote-server 4.4.4.3
[Device-ip-pool-pool1] quit
e. 配置IPoE
# 在接口Ten-GigabitEthernet3/1/2上开启IPoE功能,并指定二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 设置DHCP报文触发方式使用的认证域为dm1。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber dhcp domain dm1
# 设置动态IPoE用户的认证密码为明文radius。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber password plaintext radius
# 在接口Ten-GigabitEthernet3/1/2上开启代理ARP。
[Device–Ten-GigabitEthernet3/1/2] proxy-arp enable
[Device–Ten-GigabitEthernet3/1/2] quit
g. 配置策略路由
通过配置静态路由,将vpn1内的DHCP请求方向的流量引入到DHCP服务器端
# 配置静态路由。
[Device] ip route-static vpn-instance vpn1 4.4.4.0 24 4.4.4.3 public
通过配置策略路由,将DHCP服务器回应的流量导入到DHCP客户端所在的VPN
# 创建一个策略to_vpn1,其节点序号为0,匹配模式permit,指定报文在vpn1内转发。
[Device] policy-based-route to_vpn1 permit node 0
[Device-pbr-to_vpn1-0] apply access-vpn vpn-instance vpn1
[Device-pbr-to_vpn1-0] quit
# 在以太接口Ten-GigabitEthernet3/1/1上应用该策略路由。
[Device] interface ten-gigabitethernet 3/1/1
[Device–Ten-GigabitEthernet3/1/1] ip policy-based-route to_vpn1
[Device–Ten-GigabitEthernet3/1/1] quit
# 用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息。
[Device]display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0xf8 XGE3/1/2 3.3.3.2 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
-
· 用户主机经由二层网络以IPoE方式接入到BRAS接入设备。
· 由一台安装了H3C iMC的服务器同时承担RADIUS服务器、Portal认证服务器和Portal Web服务器的职责。本举例中使用的iMC版本为:iMC PLAT 7.1(E0303)、iMC UAM 7.1(E0305)、iMC EIP 7.1(E0305))。
· FTP server是一台内网服务器。
图1-30 IPoE静态用户普通Web认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置Device
a. 配置Portal认证服务器
# 配置Portal认证服务器:名称为newpt,IP地址为4.4.4.5,密钥为明文123456。
[Device] portal server newpt
[Device-portal-server-newpt] ip 4.4.4.5 key simple 123456
[Device-portal-server-newpt] quit
b. 配置对HTTPS报文进行重定向的内部侦听端口号
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[Device] http-redirect https-port 11111
c. 配置通过查询ARP/ND表项来获取用户信息
[Device] portal access-info trust arp
[Device] portal access-info trust nd
d. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[Device] user-group pre
New user group added.
[Device-ugroup-pre] quit
e. 配置用于认证前域用户的ACL规则
# 为IPv4高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[Device] acl advanced name web_permit
[Device-acl-ipv4-adv-web_permit] rule 0 permit ip destination 4.4.4.5 0 user-group pre
[Device-acl-ipv4-adv-web_permit] quit
# 为IPv4高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[Device] acl advanced name neiwang
[Device-acl-ipv4-adv-neiwang] rule 0 permit ip destination 4.4.4.6 0 user-group pre
[Device-acl-ipv4-adv-neiwang] quit
# 为IPv4高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[Device] acl advanced name web_http
[Device-acl-ipv4-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[Device-acl-ipv4-adv-web_http] quit
# 为IPv4高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[Device] acl advanced name web_https
[Device-acl-ipv4-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[Device-acl-ipv4-adv-web_https] quit
# 为IPv4高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[Device] acl advanced name ip
[Device-acl-ipv4-adv-ip] rule 0 permit ip user-group pre
[Device-acl-ipv4-adv-ip] quit
# 为IPv4高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[Device] acl advanced name neiwang_out
[Device-acl-ipv4-adv-neiwang_out] rule 0 permit ip source 4.4.4.6 0 user-group pre
[Device-acl-ipv4-adv-neiwang_out] quit
# 为IPv4高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[Device] acl advanced name web_out
[Device-acl-ipv4-adv-web_out] rule 0 permit ip source 4.4.4.5 0 user-group pre
[Device-acl-ipv4-adv-web_out] quit
f. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[Device] traffic classifier web_permit operator and
[Device-classifier-web_permit] if-match acl name web_permit
[Device-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[Device] traffic classifier neiwang operator and
[Device-classifier-neiwang] if-match acl name neiwang
[Device-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[Device] traffic classifier web_http operator and
[Device-classifier-web_http] if-match acl name web_http
[Device-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[Device] traffic classifier web_https operator and
[Device-classifier-web_https] if-match acl name web_https
[Device-classifier-web_https] quit
# 配置类web_deny,匹配ACL ip。
[Device] traffic classifier web_deny operator and
[Device-classifier-web_deny] if-match acl name ip
[Device-classifier-web_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[Device] traffic classifier neiwang_out operator and
[Device-classifier-neiwang_out] if-match acl name neiwang_out
[Device-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[Device] traffic classifier web_out operator and
[Device-classifier-web_out] if-match acl name web_out
[Device-classifier-web_out] quit
g. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_permit
[Device-behavior-web_permit] filter permit
[Device-behavior-web_permit] free account
[Device-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang
[Device-behavior-neiwang] filter permit
[Device-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[Device] traffic behavior web_http
[Device-behavior-web_http] redirect http-to-cpu
[Device-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[Device] traffic behavior web_https
[Device-behavior-web_https] redirect https-to-cpu
[Device-behavior-web_https] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[Device] traffic behavior web_deny
[Device-behavior-web_deny] filter deny
[Device-behavior-web_deny] free account
[Device-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang_out
[Device-behavior-neiwang_out] filter permit
[Device-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_out
[Device-behavior-web_out] filter permit
[Device-behavior-web_out] free account
[Device-behavior-web_out] quit
h. 配置QoS策略
# 配置入方向QoS策略web
[Device] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过。
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU。
除上述报文之外,其余报文均禁止通过。
[Device-qospolicy-web] classifier web_permit behavior web_permit
[Device-qospolicy-web] classifier neiwang behavior neiwang
[Device-qospolicy-web] classifier web_http behavior web_http
[Device-qospolicy-web] classifier web_https behavior web_https
[Device-qospolicy-web] classifier web_deny behavior web_deny
[Device-qospolicy-web] quit
# 配置出方向QoS策略out
[Device] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文禁止通过。
[Device-qospolicy-out] classifier web_out behavior web_out
[Device-qospolicy-out] classifier neiwang_out behavior neiwang_out
[Device-qospolicy-out] classifier web_deny behavior web_deny
[Device-qospolicy-out] quit
i. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[Device] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[Device] qos apply policy out global outbound
j. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.5
[Device-radius-rs1] primary accounting 4.4.4.5
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
# (可选)开启RADIUS session control功能(使用iMC作为RADIUS服务器时建议配置该功能)。
[Device] radius session-control enable
k. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[Device] domain name dm1
[Device-isp-dm1] authentication ipoe none
[Device-isp-dm1] authorization ipoe none
[Device-isp-dm1] accounting ipoe none
# 配置授权用户组。
[Device-isp-dm1] authorization-attribute user-group pre
# 配置Web认证页面URL和Web认证服务器IP地址。
[Device-isp-dm1] web-server url http://4.4.4.5:8080/portal/
[Device-isp-dm1] web-server ip 4.4.4.5
[Device-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[Device] domain name dm2
[Device-isp-dm2] authentication ipoe radius-scheme rs1
[Device-isp-dm2] authorization ipoe radius-scheme rs1
[Device-isp-dm2] accounting ipoe radius-scheme rs1
[Device-isp-dm2] quit
l. 配置DHCP服务器
# 全局开启DHCP。
[Device] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[Device] dhcp server request-ip-address check
# 创建本地BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,并指定地址池禁止分配地址192.168.0.2,该地址必须和IPoE静态会话中指定的用户地址相同。
[Device] ip pool pool1 bas local
[Device-ip-pool-pool1] gateway 192.168.0.1 24
[Device-ip-pool-pool1] forbidden-ip 192.168.0.2
[Device-ip-pool-pool1] quit
m. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 开启未知源IP报文触发方式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber initiator unclassified-ip enable matching-user
# 配置IPoE静态用户地址为192.168.0.2,该地址必须是已在IP地址池中配置的禁止分配地址。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber session static ip 192.168.0.2
# 配置IPoE用户采用Web认证方式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber authentication-method web
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber pre-auth domain dm1
[Device–Ten-GigabitEthernet3/1/2] ip subscriber web-auth domain dm2
[Device–Ten-GigabitEthernet3/1/2] quit
(2) 配置RADIUS服务器
# 配置接入设备
登录进入iMC管理平台,选择“用户”页签,单击导航树中的[接入策略管理/接入设备管理/接入设备配置]菜单项,进入接入设备配置页面,在该页面中单击<增加>按钮,进入如图1-31所示增加接入设备页面。
¡ 输入共享密钥为:radius。
¡ 其他采用缺省配置。
在该页面中设备列表下方单击<手工增加>,在如图1-32所示页面输入接入设备地址4.4.4.2并单击<确定>。
# 增加接入策略
单击导航树中的[接入策略管理/接入策略管理]菜单项,进入接入策略管理页面,在该页面中单击<增加>按钮,进入如图1-33所示增加接入策略页面。
¡ 输入接入策略名为:AccessPolicy。
¡ 其他采用缺省配置。
# 增加接入服务
单击导航树中的[接入策略管理/接入服务管理]菜单项,进入接入服务管
理页面,在该页面中单击<增加>按钮,进入如图1-34所示增加接入服务页面。
¡ 输入服务名为:IPoE_Server
¡ 缺省接入策略选择已创建的策略“AccessPolicy”。
¡ 其他采用缺省配置。
# 在IMC界面增加用户
单击导航树中的[用户管理/增加用户]菜单项,进入如图1-35所示增加用户页面,填写用户姓名和证件号码为:IPoE_Web001和001。
单击<确定>按钮后完成用户的添加。
# 增加接入用户
单击导航树中的[接入用户管理/接入用户]菜单项,进入接入用户页面,在该页面中单击<增加>按钮,进入如图1-36所示增加接入用户页面。
¡ 用户姓名选择:IPoE_Web001
¡ 帐号名填写为:user1
¡ 密码为:pass1
¡ 接入服务选择之前已创建的IPoE_Server
(3) 配置Portal服务器
# 配置Portal主页。
单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如图1-37所示。
图1-37 Portal服务器配置页面
# 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如图1-38所示。
¡ 输入IP地址组名为“IPoE_Web_User”。
¡ 输入起始地址为“192.168.0.1”、终止地址为“192.168.0.255”。用户主机IP地址必须包含在该IP地址组范围内。
¡ 其他采用缺省配置。
¡ 单击<确定>按钮完成操作。
图1-38 增加IP地址组配置页面
# 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面,如图1-39所示。
¡ 输入设备名为“NAS”。
¡ 输入IP地址为“4.4.4.2”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/1的IP地址;
¡ 输入密钥为“123456”。
¡ 选择组网方式为“直连”。
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 配置端口组信息
如图1-40所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如图1-41所示。
¡ 输入端口组名为“group”。
¡ 选择IP地址组为“IPoE_Web_User”,用户接入网络时使用的IP地址必须属于所选的IP地址组。
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IP地址为192.168.0.2。
[Device] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
192.168.0.2 L2 IPoE static
-
# 用户认证前域认证通过之后,登录Web页面,如图1-42所示。
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[Device] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
user1@dm2 Web auth
-
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备作为DHCP中继向远端DHCP服务器申请IP地址。
· 由一台安装了H3C iMC的服务器同时承担RADIUS服务器、Portal认证服务器和Portal Web服务器的职责。
· FTP server是一台内网服务器。
图1-43 IPoE DHCPv4用户普通Web认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置DHCP服务器
# 全局开启DHCP。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段192.168.0.0/24,分配的网关地址192.168.0.1和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool1] network 192.168.0.0 24
[DHCP-server-ip-pool-pool1] gateway-list 192.168.0.1
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
# 将192.168.0.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 192.168.0.1
[DHCP-server-ip-pool-pool1] quit
# 配置缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 4.4.4.2
(2) 配置Device
a. 配置DHCP relay
# 全局开启DHCP。
<Device> system-view
[Device] dhcp enable
# 进入接口Ten-GigabitEthernet3/1/2视图。
[Device] interface ten-gigabitethernet 3/1/2
# 配置接口工作在中继模式。
[Device–Ten-GigabitEthernet3/1/2] dhcp select relay
[Device–Ten-GigabitEthernet3/1/2] quit
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将192.168.0.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址。
[Device] ip pool pool1 bas remote
[Device-ip-pool-pool1] gateway 192.168.0.1 24
[Device-ip-pool-pool1] forbidden-ip 192.168.0.1
[Device-ip-pool-pool1] remote-server 4.4.4.3
[Device-ip-pool-pool1] quit
b. 配置Portal认证服务器
# 配置Portal认证服务器:名称为newpt,IP地址为4.4.4.5,密钥为明文123456。
[Device] portal server newpt
[Device-portal-server-newpt] ip 4.4.4.5 key simple 123456
[Device-portal-server-newpt] quit
c. 配置对HTTPS报文进行重定向的内部侦听端口号
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[Device] http-redirect https-port 11111
d. 配置通过查询ARP/ND表项来获取用户信息
[Device] portal access-info trust arp
[Device] portal access-info trust nd
e. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[Device] user-group pre
New user group added.
[Device-ugroup-pre] quit
f. 配置用于认证前域用户的ACL规则
# 为IPv4高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[Device] acl advanced name web_permit
[Device-acl-ipv4-adv-web_permit] rule 0 permit ip destination 4.4.4.5 0 user-group pre
[Device-acl-ipv4-adv-web_permit] quit
# 为IPv4高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[Device] acl advanced name neiwang
[Device-acl-ipv4-adv-neiwang] rule 0 permit ip destination 4.4.4.6 0 user-group pre
[Device-acl-ipv4-adv-neiwang] quit
# 为IPv4高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[Device] acl advanced name web_http
[Device-acl-ipv4-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[Device-acl-ipv4-adv-web_http] quit
# 为IPv4高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[Device] acl advanced name web_https
[Device-acl-ipv4-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[Device-acl-ipv4-adv-web_https] quit
# 为IPv4高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[Device] acl advanced name ip
[Device-acl-ipv4-adv-ip] rule 0 permit ip user-group pre
[Device-acl-ipv4-adv-ip] quit
# 为IPv4高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[Device] acl advanced name neiwang_out
[Device-acl-ipv4-adv-neiwang_out] rule 0 permit ip source 4.4.4.6 0 user-group pre
[Device-acl-ipv4-adv-neiwang_out] quit
# 为IPv4高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[Device] acl advanced name web_out
[Device-acl-ipv4-adv-web_out] rule 0 permit ip source 4.4.4.5 0 user-group pre
[Device-acl-ipv4-adv-web_out] quit
g. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[Device] traffic classifier web_permit operator and
[Device-classifier-web_permit] if-match acl name web_permit
[Device-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[Device] traffic classifier neiwang operator and
[Device-classifier-neiwang] if-match acl name neiwang
[Device-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[Device] traffic classifier web_http operator and
[Device-classifier-web_http] if-match acl name web_http
[Device-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[Device] traffic classifier web_https operator and
[Device-classifier-web_https] if-match acl name web_https
[Device-classifier-web_https] quit
# 配置类web_deny,匹配ACL ip。
[Device] traffic classifier web_deny operator and
[Device-classifier-web_deny] if-match acl name ip
[Device-classifier-web_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[Device] traffic classifier neiwang_out operator and
[Device-classifier-neiwang_out] if-match acl name neiwang_out
[Device-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[Device] traffic classifier web_out operator and
[Device-classifier-web_out] if-match acl name web_out
[Device-classifier-web_out] quit
h. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_permit
[Device-behavior-web_permit] filter permit
[Device-behavior-web_permit] free account
[Device-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang
[Device-behavior-neiwang] filter permit
[Device-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[Device] traffic behavior web_http
[Device-behavior-web_http] redirect http-to-cpu
[Device-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[Device] traffic behavior web_https
[Device-behavior-web_https] redirect https-to-cpu
[Device-behavior-web_https] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[Device] traffic behavior web_deny
[Device-behavior-web_deny] filter deny
[Device-behavior-web_deny] free account
[Device-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang_out
[Device-behavior-neiwang_out] filter permit
[Device-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_out
[Device-behavior-web_out] filter permit
[Device-behavior-web_out] free account
[Device-behavior-web_out] quit
i. 配置QoS策略
# 配置入方向QoS策略web
[Device] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过。
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU。
除上述报文外,其余报文均禁止通过。
[Device-qospolicy-web] classifier web_permit behavior web_permit
[Device-qospolicy-web] classifier neiwang behavior neiwang
[Device-qospolicy-web] classifier web_http behavior web_http
[Device-qospolicy-web] classifier web_https behavior web_https
[Device-qospolicy-web] classifier web_deny behavior web_deny
[Device-qospolicy-web] quit
# 配置出方向QoS策略out
[Device] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文均禁止通过。
[Device-qospolicy-out] classifier web_out behavior web_out
[Device-qospolicy-out] classifier neiwang_out behavior neiwang_out
[Device-qospolicy-out] classifier web_deny behavior web_deny
[Device-qospolicy-out] quit
j. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[Device] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[Device] qos apply policy out global outbound
k. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.5
[Device-radius-rs1] primary accounting 4.4.4.5
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
# (可选)开启RADIUS session control功能(使用iMC作为RADIUS服务器时建议配置该功能)。
[Device] radius session-control enable
l. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[Device] domain name dm1
[Device-isp-dm1] authentication ipoe none
[Device-isp-dm1] authorization ipoe none
[Device-isp-dm1] accounting ipoe none
# 配置前域授权地址池以及用户组。
[Device-isp-dm1] authorization-attribute user-group pre
[Device-isp-dm1] authorization-attribute ip-pool pool1
# 配置Web认证页面URL和Web认证服务器IP地址。
[Device-isp-dm1] web-server url http://4.4.4.5:8080/portal/
[Device-isp-dm1] web-server ip 4.4.4.5
[Device-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[Device] domain name dm2
[Device-isp-dm2] authentication ipoe radius-scheme rs1
[Device-isp-dm2] authorization ipoe radius-scheme rs1
[Device-isp-dm2] accounting ipoe radius-scheme rs1
[Device-isp-dm2] quit
m. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 配置IPoE用户采用Web认证方式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber authentication-method web
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber pre-auth domain dm1
[Device–Ten-GigabitEthernet3/1/2] ip subscriber web-auth domain dm2
[Device–Ten-GigabitEthernet3/1/2] quit
(3) 配置RADIUS服务器
# 配置接入设备
登录进入iMC管理平台,选择“用户”页签,单击导航树中的[接入策略管理/接入设备管理/接入设备配置]菜单项,进入接入设备配置页面,在该页面中单击<增加>按钮,进入如图1-44所示增加接入设备页面。
¡ 输入共享密钥为:radius。
¡ 其他采用缺省配置。
在该页面中设备列表下方单击<手工增加>,在如图1-45所示页面输入接入设备地址4.4.4.2并单击<确定>。
# 增加接入策略
单击导航树中的[接入策略管理/接入策略管理]菜单项,进入接入策略管理页面,在该页面中单击<增加>按钮,进入如图1-46所示增加接入策略页面。
¡ 输入接入策略名为:AccessPolicy。
¡ 其他采用缺省配置。
# 增加接入服务
单击导航树中的[接入策略管理/接入服务管理]菜单项,进入接入服务管
理页面,在该页面中单击<增加>按钮,进入如图1-47所示增加接入服务页面。
¡ 输入服务名为:IPoE_Server
¡ 缺省接入策略选择已创建的策略“AccessPolicy”。
¡ 其他采用缺省配置。
# 在IMC界面增加用户
单击导航树中的[用户管理/增加用户]菜单项,进入如图1-48所示增加用户页面,填写用户姓名和证件号码为:IPoE_Web001和001。
单击<确定>按钮后完成用户的添加。
# 增加接入用户
单击导航树中的[接入用户管理/接入用户]菜单项,进入接入用户页面,在该页面中单击<增加>按钮,进入如图1-49所示增加接入用户页面。
¡ 用户姓名选择:IPoE_Web001
¡ 帐号名填写为:user1
¡ 密码为:pass1
¡ 接入服务选择之前已创建的IPoE_Server
(4) 配置Portal服务器
# 配置Portal主页。
单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如图1-50所示。
图1-50 Portal服务器配置页面
# 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如图1-51所示。
¡ 输入IP地址组名为“IPoE_Web_User”。
¡ 输入起始地址为“192.168.0.1”、终止地址为“192.168.0.255”。用户主机IP地址必须包含在该IP地址组范围内。
¡ 其他采用缺省配置。
¡ 单击<确定>按钮完成操作。
图1-51 增加IP地址组配置页面
# 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面,如图1-52所示。
¡ 输入设备名为“NAS”。
¡ 输入IP地址为“4.4.4.2”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/1的IP地址;
¡ 输入密钥为“123456”。
¡ 选择组网方式为“直连”。
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 配置端口组信息
如图1-53所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如图1-54所示。
¡ 输入端口组名为“group”。
¡ 选择IP地址组为“IPoE_Web_User”,用户接入网络时使用的IP地址必须属于所选的IP地址组。
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IP地址为192.168.0.2。
[Device] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
-
# 用户认证前域认证通过之后,登录Web页面,如图1-55所示。
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[Device] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
user1@dm2 Web auth
-
· Host A属于VLAN 100,网段为192.168.100.0/24,并通过BRAS上的Ten-GigabitEthernet3/1/2.100接口上线。
· Host B属于VLAN 200,网段为192.168.200.0/24,并通过BRAS上的Ten-GigabitEthernet3/1/2.200接口上线。
· Host A和Host B均作为DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备作为DHCP中继向远端DHCP服务器申请IP地址。
· 由一台安装了H3C iMC的服务器同时承担RADIUS服务器、Portal认证服务器和Portal Web服务器的职责。
· FTP server是一台内网服务器。
图1-56 IPoE DHCPv4多网段用户普通Web认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置DHCP服务器
# 全局开启DHCP。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段192.168.100.0/24,分配的网关地址192.168.100.1和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool1] network 192.168.100.0 24
[DHCP-server-ip-pool-pool1] gateway-list 192.168.100.1
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
# 将192.168.100.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 192.168.100.1
[DHCP-server-ip-pool-pool1] quit
# 创建名称为pool2地址池并进入其视图。
[DHCP-server] ip pool pool2
# 配置地址池动态分配的IP地址网段192.168.200.0/24,分配的网关地址192.168.200.1和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool2] network 192.168.200.0 24
[DHCP-server-ip-pool-pool2] gateway-list 192.168.200.1
[DHCP-server-ip-pool-pool2] dns-list 8.8.8.8
# 将192.168.200.1设置为禁止地址。
[DHCP-server-ip-pool-pool2] forbidden-ip 192.168.200.1
[DHCP-server-ip-pool-pool2] quit
# 配置缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 4.4.4.2
(2) 配置Device
a. 配置DHCP relay
DHCP中继地址池既可以使用远端BAS IP地址池也可以使用普通IP地址池。本例中,Host A所属的192.168.100.0/24网段使用远端BAS IP地址池pool1作为中继地址池,Host B所属的192.168.200.0/24网段使用普通IP地址池pool2作为中继地址池。
# 全局开启DHCP。
<Device> system-view
[Device] dhcp enable
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将192.168.100.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址。
[Device] ip pool pool1 bas remote
[Device-ip-pool-pool1] gateway 192.168.100.1 24
[Device-ip-pool-pool1] forbidden-ip 192.168.100.1
[Device-ip-pool-pool1] remote-server 4.4.4.3
[Device-ip-pool-pool1] quit
# 创建普通IP地址池pool2,配置地址池动态分配的IP地址网段192.168.200.0/24,指定匹配该地址池的DHCPv4客户端所在的网段地址,将192.168.200.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址。
[Device] ip pool pool2
[Device-ip-pool-pool2] network 192.168.200.1 24 export-route
[Device-ip-pool-pool2] gateway-list 192.168.200.1 export-route
[Device-ip-pool-pool2] forbidden-ip 192.168.200.1
[Device-ip-pool-pool2] remote-server 4.4.4.3
[Device-ip-pool-pool2] quit
# 配置接口Ten-GigabitEthernet3/1/2.100的IP地址为192.168.100.1,配置接口工作在DHCP中继模式,并指定DHCP服务器地址为4.4.4.3。
[Device] interface ten-gigabitethernet 3/1/2.100
[Device–Ten-GigabitEthernet3/1/2.100] ip address 192.168.100.1 24
[Device–Ten-GigabitEthernet3/1/2.100] dhcp select relay
[Device–Ten-GigabitEthernet3/1/2.100] dhcp relay server-address 4.4.4.3
[Device–Ten-GigabitEthernet3/1/2.100] quit
# 配置接口Ten-GigabitEthernet3/1/2.200的IP地址为192.168.200.1,配置接口工作在DHCP中继模式,并指定DHCP服务器地址为4.4.4.3。
[Device] interface ten-gigabitethernet 3/1/2.200
[Device–Ten-GigabitEthernet3/1/2.200] ip address 192.168.200.1 24
[Device–Ten-GigabitEthernet3/1/2.200] dhcp select relay
[Device–Ten-GigabitEthernet3/1/2.200] dhcp relay server-address 4.4.4.3
[Device–Ten-GigabitEthernet3/1/2.200] quit
b. 配置VLAN终结
# 配置子接口Ten-GigabitEthernet3/1/2.100和子接口Ten-GigabitEthernet3/1/2.200开启VLAN终结的用户模式。(该配置是为了保持已上线用户的在线状态,避免修改子接口的VLAN终结配置时该子接口down/up。)
[Device] interface range ten-gigabitethernet 3/1/2.100 ten-gigabitethernet 3/1/2.200
[Device–if-range] vlan-termination user-mode
[Device–if-range] quit
# 配置子接口Ten-GigabitEthernet3/1/2.100能够终结最外层VLAN ID为100的VLAN报文。
[Device] interface ten-gigabitethernet 3/1/2.100
[Device–Ten-GigabitEthernet3/1/2.100] user-vlan dot1q vid 100
[Device–Ten-GigabitEthernet3/1/2.100] quit
# 配置子接口Ten-GigabitEthernet3/1/2.200能够终结最外层VLAN ID为200的VLAN报文。
[Device] interface ten-gigabitethernet 3/1/2.200
[Device–Ten-GigabitEthernet3/1/2.200] user-vlan dot1q vid 200
[Device–Ten-GigabitEthernet3/1/2.200] quit
c. 配置Portal认证服务器
# 配置Portal认证服务器:名称为newpt,IP地址为4.4.4.5,密钥为明文123456。
[Device] portal server newpt
[Device-portal-server-newpt] ip 4.4.4.5 key simple 123456
[Device-portal-server-newpt] quit
d. 配置对HTTPS报文进行重定向的内部侦听端口号
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[Device] http-redirect https-port 11111
e. 配置通过查询ARP/ND表项来获取用户信息
[Device] portal access-info trust arp
[Device] portal access-info trust nd
f. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[Device] user-group pre
New user group added.
[Device-ugroup-pre] quit
g. 配置用于认证前域用户的ACL规则
# 为IPv4高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[Device] acl advanced name web_permit
[Device-acl-ipv4-adv-web_permit] rule 0 permit ip destination 4.4.4.5 0 user-group pre
[Device-acl-ipv4-adv-web_permit] quit
# 为IPv4高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[Device] acl advanced name neiwang
[Device-acl-ipv4-adv-neiwang] rule 0 permit ip destination 4.4.4.6 0 user-group pre
[Device-acl-ipv4-adv-neiwang] quit
# 为IPv4高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[Device] acl advanced name web_http
[Device-acl-ipv4-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[Device-acl-ipv4-adv-web_http] quit
# 为IPv4高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[Device] acl advanced name web_https
[Device-acl-ipv4-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[Device-acl-ipv4-adv-web_https] quit
# 为IPv4高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[Device] acl advanced name ip
[Device-acl-ipv4-adv-ip] rule 0 permit ip user-group pre
[Device-acl-ipv4-adv-ip] quit
# 为IPv4高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[Device] acl advanced name neiwang_out
[Device-acl-ipv4-adv-neiwang_out] rule 0 permit ip source 4.4.4.6 0 user-group pre
[Device-acl-ipv4-adv-neiwang_out] quit
# 为IPv4高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[Device] acl advanced name web_out
[Device-acl-ipv4-adv-web_out] rule 0 permit ip source 4.4.4.5 0 user-group pre
[Device-acl-ipv4-adv-web_out] quit
h. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[Device] traffic classifier web_permit operator and
[Device-classifier-web_permit] if-match acl name web_permit
[Device-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[Device] traffic classifier neiwang operator and
[Device-classifier-neiwang] if-match acl name neiwang
[Device-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[Device] traffic classifier web_http operator and
[Device-classifier-web_http] if-match acl name web_http
[Device-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[Device] traffic classifier web_https operator and
[Device-classifier-web_https] if-match acl name web_https
[Device-classifier-web_https] quit
# 配置类web_deny,匹配ACL ip。
[Device] traffic classifier web_deny operator and
[Device-classifier-web_deny] if-match acl name ip
[Device-classifier-web_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[Device] traffic classifier neiwang_out operator and
[Device-classifier-neiwang_out] if-match acl name neiwang_out
[Device-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[Device] traffic classifier web_out operator and
[Device-classifier-web_out] if-match acl name web_out
[Device-classifier-web_out] quit
i. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_permit
[Device-behavior-web_permit] filter permit
[Device-behavior-web_permit] free account
[Device-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang
[Device-behavior-neiwang] filter permit
[Device-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[Device] traffic behavior web_http
[Device-behavior-web_http] redirect http-to-cpu
[Device-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[Device] traffic behavior web_https
[Device-behavior-web_https] redirect https-to-cpu
[Device-behavior-web_https] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[Device] traffic behavior web_deny
[Device-behavior-web_deny] filter deny
[Device-behavior-web_deny] free account
[Device-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang_out
[Device-behavior-neiwang_out] filter permit
[Device-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_out
[Device-behavior-web_out] filter permit
[Device-behavior-web_out] free account
[Device-behavior-web_out] quit
j. 配置QoS策略
# 配置入方向QoS策略web
[Device] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过;
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU;
除上述报文外,其余报文均禁止通过。
[Device-qospolicy-web] classifier web_permit behavior web_permit
[Device-qospolicy-web] classifier neiwang behavior neiwang
[Device-qospolicy-web] classifier web_http behavior web_http
[Device-qospolicy-web] classifier web_https behavior web_https
[Device-qospolicy-web] classifier web_deny behavior web_deny
[Device-qospolicy-web] quit
# 配置出方向QoS策略out
[Device] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文均禁止通过。
[Device-qospolicy-out] classifier web_out behavior web_out
[Device-qospolicy-out] classifier neiwang_out behavior neiwang_out
[Device-qospolicy-out] classifier web_deny behavior web_deny
[Device-qospolicy-out] quit
k. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[Device] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[Device] qos apply policy out global outbound
l. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.5
[Device-radius-rs1] primary accounting 4.4.4.5
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
# (可选)开启RADIUS session control功能(使用iMC作为RADIUS服务器时建议配置该功能)。
[Device] radius session-control enable
m. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[Device] domain name dm1
[Device-isp-dm1] authentication ipoe none
[Device-isp-dm1] authorization ipoe none
[Device-isp-dm1] accounting ipoe none
# 配置认证前域授权用户组。
[Device-isp-dm1] authorization-attribute user-group pre
# 配置Web认证页面URL和Web认证服务器IP地址。
[Device-isp-dm1] web-server url http://4.4.4.5:8080/portal/
[Device-isp-dm1] web-server ip 4.4.4.5
[Device-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[Device] domain name dm2
[Device-isp-dm2] authentication ipoe radius-scheme rs1
[Device-isp-dm2] authorization ipoe radius-scheme rs1
[Device-isp-dm2] accounting ipoe radius-scheme rs1
[Device-isp-dm2] quit
n. 配置IPoE
# 在子接口Ten-GigabitEthernet3/1/2.100和子接口Ten-GigabitEthernet3/1/2.200上开启IPoE功能,并配置二层接入模式。
[Device] interface range ten-gigabitethernet 3/1/2.100 ten-gigabitethernet 3/1/2.200
[Device–if-range] ip subscriber l2-connected enable
# 配置IPoE用户采用Web认证方式。
[Device–if-range] ip subscriber authentication-method web
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[Device–if-range] ip subscriber pre-auth domain dm1
[Device–if-range] ip subscriber web-auth domain dm2
[Device–if-range] quit
(3) 配置RADIUS服务器和Portal服务器
请参照“IPoE DHCPv4用户普通Web认证配置举例”中相关配置。
# Host A和Host B认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IP地址为192.168.100.2。
[Device] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x1 XGE3/1/2.100 192.168.100.2 0015-e947-f4d4 100/-
0015e947f4d4 L2 IPoE dynamic
-
0x2 XGE3/1/2.200 192.168.200.2 0015-e947-f4d5 200/-
0015e947f4d5 L2 IPoE dynamic
-
# 用户认证前域认证通过之后,登录Web页面,如图1-55所示。
图1-57 登录Web页面
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[Device] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x1 XGE3/1/2.100 192.168.100.2 0015-e947-f4d4 100/-
user1@dm2 Web auth
-
0x2 XGE3/1/2.200 192.168.200.2 0015-e947-f4d5 200/-
user1@dm2 Web auth
-
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备作为DHCP中继向远端DHCP服务器申请IP地址。
· 由一台安装了H3C iMC的服务器同时承担RADIUS服务器、Portal认证服务器和Portal Web服务器的职责。
· FTP server是一台内网服务器。
· Web认证通过后限速5Mbps。
图1-58 IPoE DHCPv6用户普通Web认证配置组网图
请正确设置DNS服务器,以便服务器可以根据Web认证页面http://www.ipv6.web.com解析出对应的IPv6 URL地址。
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置DHCP服务器
# 创建名称为pool1的IPv6地址池并进入其视图。
<DHCP-server> system-view
[DHCP-server] ipv6 pool pool1
# 配置地址池动态分配的IPv6地址网段192::/64和DNS服务器地址8::8。
[DHCP-server-ipv6-pool-pool1] network 192::/64
[DHCP-server-ipv6-pool-pool1] dns-server 8::8
[DHCP-server-ipv6-pool-pool1] quit
# 将192::1设置为禁止地址。
[DHCP-server] ipv6 dhcp server forbidden-address 192::1
# 配置接口Ten-GigabitEthernet3/1/1工作在DHCPv6服务器模式。
[DHCP-server] interface ten-gigabitethernet 3/1/1
[DHCP-server-Ten-GigabitEthernet3/1/1] ipv6 dhcp select server
[DHCP-server-Ten-GigabitEthernet3/1/1] quit
# 配置缺省路由。
[DHCP-server] ipv6 route-static :: 0 4::2
(2) 配置Device
a. 配置DHCP中继
# 创建中继地址池pool1,指定匹配该地址池的DHCPv6客户端所在的网段地址,并指定中继地址池对应的DHCP服务器地址。
<Device> system-view
[Device] ipv6 pool pool1
[Device-ipv6-pool-pool1] gateway-list 192::1
[Device-ipv6-pool-pool1] network 192::/64 export-route
[Device-ipv6-pool-pool1] remote-server 4::3
[Device-ipv6-pool-pool1] quit
# 配置接口自动生成IPv6链路本地地址,该IPv6链路本地地址作为用户的网关。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ipv6 address auto link-local
# 配置接口工作在DHCPv6中继模式。
[Device–Ten-GigabitEthernet3/1/2] ipv6 dhcp select relay
# 取消设备发布RA消息的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址。配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[Device–Ten-GigabitEthernet3/1/2] undo ipv6 nd ra halt
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd autoconfig managed-address-flag
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd autoconfig other-flag
# 为避免终端使用临时IPv6地址进行认证,从而导致认证失败,在用户上线接口配置前缀不在RA消息中发布,从而避免终端使用前缀生成临时IPv6地址。
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd ra prefix 192::/64 no-advertise
[Device–Ten-GigabitEthernet3/1/2] quit
b. 配置Portal认证服务器
# 配置IPv6 Portal认证服务器:名称为newpt1,IPv6地址为4::5,密钥为明文123456。
[Device] portal server newpt1
[Device-portal-server-newpt1] ipv6 4::5 key simple 123456
[Device-portal-server-newpt1] quit
c. 配置HTTPS的内部侦听端口
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[Device] http-redirect https-port 11111
d. 配置通过查询ARP/ND表项来获取用户信息
[Device] portal access-info trust arp
[Device] portal access-info trust nd
e. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[Device] user-group pre
New user group added.
[Device-ugroup-pre] quit
f. 配置用于认证前域用户的ACL规则
# 分别IPv6高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[Device] acl ipv6 advanced name web_permit
[Device-acl-ipv6-adv-web_permit] rule 0 permit ipv6 destination 4::5 128 user-group pre
[Device-acl-ipv6-adv-web_permit] quit
# 分别IPv6高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[Device] acl ipv6 advanced name neiwang
[Device-acl-ipv6-adv-neiwang] rule 0 permit ipv6 destination 4::1 128 user-group pre
[Device-acl-ipv6-adv-neiwang] quit
# 分别IPv6高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[Device] acl ipv6 advanced name web_http
[Device-acl-ipv6-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[Device-acl-ipv6-adv-web_http] quit
# 分别IPv6高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[Device] acl ipv6 advanced name web_https
[Device-acl-ipv6-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[Device-acl-ipv6-adv-web_https] quit
# 分别IPv6高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[Device] acl ipv6 advanced name ip
[Device-acl-ipv6-adv-ip] rule 0 permit ipv6 user-group pre
[Device-acl-ipv6-adv-ip] quit
# 分别IPv6高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[Device] acl ipv6 advanced name neiwang_out
[Device-acl-ipv6-adv-neiwang_out] rule 0 permit ipv6 source 4::1 128 user-group pre
[Device-acl-ipv6-adv-neiwang_out] quit
# 分别IPv6高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[Device] acl ipv6 advanced name web_out
[Device-acl-ipv6-adv-web_out] rule 0 permit ipv6 source 4::5 128 user-group pre
[Device-acl-ipv6-adv-web_out] quit
g. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[Device] traffic classifier web_permit operator or
[Device-classifier-web_permit] if-match acl ipv6 name web_permit
[Device-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[Device] traffic classifier neiwang operator or
[Device-classifier-neiwang] if-match acl ipv6 name neiwang
[Device-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[Device] traffic classifier web_http operator or
[Device-classifier-web_http] if-match acl ipv6 name web_http
[Device-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[Device] traffic classifier web_https operator or
[Device-classifier-web_https] if-match acl ipv6 name web_https
[Device-classifier-web_https] quit
# 配置类web_deny,匹配ACL ip。
[Device] traffic classifier web_deny operator or
[Device-classifier-web_deny] if-match acl ipv6 name ip
[Device-classifier-web_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[Device] traffic classifier neiwang_out operator or
[Device-classifier-neiwang_out] if-match acl ipv6 name neiwang_out
[Device-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[Device] traffic classifier web_out operator or
[Device-classifier-web_out] if-match acl ipv6 name web_out
[Device-classifier-web_out] quit
h. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_permit
[Device-behavior-web_permit] filter permit
[Device-behavior-web_permit] free account
[Device-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang
[Device-behavior-neiwang] filter permit
[Device-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[Device] traffic behavior web_http
[Device-behavior-web_http] redirect http-to-cpu
[Device-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[Device] traffic behavior web_https
[Device-behavior-web_https] redirect https-to-cpu
[Device-behavior-web_https] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[Device] traffic behavior web_deny
[Device-behavior-web_deny] filter deny
[Device-behavior-web_deny] free account
[Device-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang_out
[Device-behavior-neiwang_out] filter permit
[Device-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_out
[Device-behavior-web_out] filter permit
[Device-behavior-web_out] free account
[Device-behavior-web_out] quit
i. 配置QoS策略
# 配置入方向QoS策略web
[Device] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过;
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU;
除上述报文外,其余报文均禁止通过。
[Device-qospolicy-web] classifier web_permit behavior web_permit
[Device-qospolicy-web] classifier neiwang behavior neiwang
[Device-qospolicy-web] classifier web_http behavior web_http
[Device-qospolicy-web] classifier web_https behavior web_https
[Device-qospolicy-web] classifier web_deny behavior web_deny
[Device-qospolicy-web] quit
# 配置出方向QoS策略out
[Device] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文均禁止通过。
[Device-qospolicy-out] classifier web_out behavior web_out
[Device-qospolicy-out] classifier neiwang_out behavior neiwang_out
[Device-qospolicy-out] classifier web_deny behavior web_deny
[Device-qospolicy-out] quit
j. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[Device] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[Device] qos apply policy out global outbound
k. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication ipv6 4::5
[Device-radius-rs1] primary accounting ipv6 4::5
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
# (可选)开启RADIUS session control功能(使用iMC作为RADIUS服务器时建议配置该功能)。
[Device] radius session-control enable
# 设置RADIUS DAE客户端的IP地址为4::5,与RADIUS DAE客户端交互DAE报文时使用的共享密钥为明文radius。
[Device] radius dynamic-author server
[Device-radius-da-server] client ipv6 4::5 key simple radius
[Device-radius-da-server] quit
l. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[Device] domain name dm1
[Device-isp-dm1] authentication ipoe none
[Device-isp-dm1] authorization ipoe none
[Device-isp-dm1] accounting ipoe none
# 配置前域授权用户组和地址池。
[Device-isp-dm1] authorization-attribute user-group pre
[Device-isp-dm1] authorization-attribute ipv6-pool pool1
# 配置Web认证页面URL。
[Device-isp-dm1] web-server ipv6-url http://www.ipv6.web.com
[Device-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[Device] domain name dm2
[Device-isp-dm2] authentication ipoe radius-scheme rs1
[Device-isp-dm2] authorization ipoe radius-scheme rs1
[Device-isp-dm2] accounting ipoe radius-scheme rs1
[Device-isp-dm2] authorization-attribute car inbound cir 5120 outbound cir 5120
[Device-isp-dm2] quit
m. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 配置IPoE用户采用Web认证方式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber authentication-method web
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber pre-auth domain dm1
[Device–Ten-GigabitEthernet3/1/2] ip subscriber web-auth domain dm2
[Device–Ten-GigabitEthernet3/1/2] quit
(3) 配置RADIUS服务器
a. 配置接入设备
登录进入iMC管理平台,选择“用户”页签,单击导航树中的[接入策略管理/接入设备管理/接入设备配置]菜单项,进入接入设备配置页面,在该页面中单击<增加>按钮,进入如图1-59所示增加接入设备页面。
- 输入共享密钥为:radius。
- 其他采用缺省配置。
在该页面中设备列表下方单击<增加IPv6设备>,在如图1-60所示页面输入接入设备地址4::2并单击<确定>。
b. 增加接入策略
单击导航树中的[接入策略管理/接入策略管理]菜单项,进入接入策略管理页面,在该页面中单击<增加>按钮,进入如图1-61所示增加接入策略页面。
- 输入接入策略名为:AccessPolicy。
- 其他采用缺省配置。
c. 增加接入服务
单击导航树中的[接入策略管理/接入服务管理]菜单项,进入接入服务管
理页面,在该页面中单击<增加>按钮,进入如图1-62所示增加接入服务页面。
- 输入服务名为:IPoE_Server
- 缺省接入策略选择已创建的策略“AccessPolicy”。
- 其他采用缺省配置。
d. 在IMC界面增加用户
单击导航树中的[用户管理/增加用户]菜单项,进入如图1-63所示增加用户页面,填写用户姓名和证件号码为:IPoE_Web001和001。
单击<确定>按钮后完成用户的添加。
e. 增加接入用户
单击导航树中的[接入用户管理/接入用户]菜单项,进入接入用户页面,在该页面中单击<增加>按钮,进入如图1-64所示增加接入用户页面。
- 用户姓名选择:IPoE_Web001
- 帐号名填写为:user1
- 密码为:pass1
- 接入服务选择之前已创建的IPoE_Server
(4) 配置Portal服务器
a. 配置Portal主页。
单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如图1-65所示。
图1-65 Portal服务器配置页面
b. 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如图1-66所示。
- 输入IP地址组名为“IPoE_Web_User-2”;
- IPv6选项框选择“是”;
- 输入起始地址为“192::1”、终止地址为“192::FFFF”。用户主机IPv6地址必须包含在该IP地址组范围内;
- 其他采用缺省配置;
- 单击<确定>按钮完成操作。
图1-66 增加IP地址组配置页面(IPv6)
c. 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面,如图1-67所示。
- 输入设备名为“NAS-2”;
- 版本选择“Portal 3.0”;
- 输入IP地址为“4::2”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/1的IP地址;
- 输入密钥为“123456”;
- 选择组网方式为“直连”;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
d. 配置端口组信息
如图1-68所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如图1-69所示。
- 输入端口组名为“group-2”;
- 选择IP地址组为“IPoE_Web_User-2”,用户接入网络时使用的IPv6地址必须属于所选的IPv6地址组;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IPv6地址为192::2。
[Device] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 - 001b-21a8-0949 -/-
001b21a80949 L2 IPoE dynamic
192::2
# 用户认证前域认证通过之后,登录Web页面,如图1-70所示。
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[Device] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 - 001b-21a8-0949 -/-
user1@dm2 Web auth
192::2
· 通过IPv6 ND RS报文触发上线的用户主机经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备可以发送IPv6 ND RA报文。
· 由一台安装了H3C iMC的服务器同时承担RADIUS服务器、Portal认证服务器和Portal Web服务器的职责。
图1-71 IPoE NDRS用户普通Web认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置IP地址及路由
按照图1-71配置各接口的IP地址,并确保BRAS设备和各服务器之间路由可达,具体配置过程略。
(2) 配置Device
a. 取消对接口Ten-GigabitEthernet3/1/2发布IPv6 ND RA消息的抑制。
<Device> system-view
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] undo ipv6 nd ra halt
b. 配置接口Ten-GigabitEthernet3/1/2自动生成IPv6链路本地地址。
[Device–Ten-GigabitEthernet3/1/2] ipv6 address auto link-local
[Device–Ten-GigabitEthernet3/1/2] quit
c. 配置ND前缀池
# 创建名称为1的前缀地址池,包含的前缀为10::/32,分配的前缀长度为64,即前缀池1包含10::/64~10:0:FFFF:FFFF::/64范围内的4294967296个前缀。
[Device] ipv6 dhcp prefix-pool 1 prefix 10::/32 assign-len 64
# 创建名称为pool1的IPv6地址池,并引用前缀池1。
[Device] ipv6 pool pool1
[Device-ipv6-pool-pool1] prefix-pool 1 export-route
[Device-ipv6-pool-pool1] quit
d. 配置Portal认证服务器
# 配置IPv6 Portal认证服务器:名称为newpt2,IPv6地址为4::5,密钥为明文123456。
[Device] portal server newpt2
[Device-portal-server-newpt2] ipv6 4::5 key simple 123456
[Device-portal-server-newpt2] quit
e. 配置对HTTPS报文进行重定向的内部侦听端口号
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[Device] http-redirect https-port 11111
f. 配置通过查询ARP/ND表项来获取用户信息
[Device] portal access-info trust arp
[Device] portal access-info trust nd
g. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[Device] user-group pre
New user group added.
[Device-ugroup-pre] quit
h. 配置用于认证前域用户的ACL规则
# 为IPv6高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[Device] acl ipv6 advanced name web_permit
[Device-acl-ipv6-adv-web_permit] rule 0 permit ipv6 destination 4::5 128 user-group pre
[Device-acl-ipv6-adv-web_permit] quit
#为IPv6高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[Device] acl ipv6 advanced name neiwang
[Device-acl-ipv6-adv-neiwang] rule 0 permit ipv6 destination 4::1 128 user-group pre
[Device-acl-ipv6-adv-neiwang] quit
# 为IPv6高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[Device] acl ipv6 advanced name web_http
[Device-acl-ipv6-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[Device-acl-ipv6-adv-web_http] quit
# 为IPv6高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[Device] acl ipv6 advanced name web_https
[Device-acl-ipv6-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[Device-acl-ipv6-adv-web_https] quit
# 为IPv6高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[Device] acl ipv6 advanced name ip
[Device-acl-ipv6-adv-ip] rule 0 permit ipv6 user-group pre
[Device-acl-ipv6-adv-ip] quit
# 为IPv6高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[Device] acl ipv6 advanced name neiwang_out
[Device-acl-ipv6-adv-neiwang_out] rule 0 permit ipv6 source 4::1 128 user-group pre
[Device-acl-ipv6-adv-neiwang_out] quit
# 为IPv6高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[Device] acl ipv6 advanced name web_out
[Device-acl-ipv6-adv-web_out] rule 0 permit ipv6 source 4::5 128 user-group pre
[Device-acl-ipv6-adv-web_out] quit
i. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[Device] traffic classifier web_permit operator or
[Device-classifier-web_permit] if-match acl ipv6 name web_permit
[Device-classifier-web_permit] quit
# 配置类web_http,匹配ACL web_http。
[Device] traffic classifier web_http operator or
[Device-classifier-web_http] if-match acl ipv6 name web_http
[Device-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[Device] traffic classifier web_https operator or
[Device-classifier-web_https] if-match acl ipv6 name web_https
[Device-classifier-web_https] quit
# 配置类web_deny,匹配ACL ip。
[Device] traffic classifier web_deny operator or
[Device-classifier-web_deny] if-match acl ipv6 name ip
[Device-classifier-web_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[Device] traffic classifier neiwang_out operator or
[Device-classifier-neiwang_out] if-match acl ipv6 name neiwang_out
[Device-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[Device] traffic classifier web_out operator or
[Device-classifier-web_out] if-match acl ipv6 name web_out
[Device-classifier-web_out] quit
j. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_permit
[Device-behavior-web_permit] filter permit
[Device-behavior-web_permit] free account
[Device-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang
[Device-behavior-neiwang] filter permit
[Device-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[Device] traffic behavior web_http
[Device-behavior-web_http] redirect http-to-cpu
[Device-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[Device] traffic behavior web_https
[Device-behavior-web_https] redirect https-to-cpu
[Device-behavior-web_https] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[Device] traffic behavior web_deny
[Device-behavior-web_deny] filter deny
[Device-behavior-web_deny] free account
[Device-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang_out
[Device-behavior-neiwang_out] filter permit
[Device-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_out
[Device-behavior-web_out] filter permit
[Device-behavior-web_out] free account
[Device-behavior-web_out] quit
k. 配置QoS策略
# 配置入方向QoS策略web
[Device] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器IP地址的报文通过;
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU;
除上述报文外,其余报文均禁止通过。
[Device-qospolicy-web] classifier web_permit behavior web_permit
[Device-qospolicy-web] classifier neiwang behavior neiwang
[Device-qospolicy-web] classifier web_http behavior web_http
[Device-qospolicy-web] classifier web_https behavior web_https
[Device-qospolicy-web] classifier web_deny behavior web_deny
[Device-qospolicy-web] quit
# 配置出方向QoS策略out
[Device] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器IP地址的报文通过,其余报文均禁止通过。
[Device-qospolicy-out] classifier web_out behavior web_out
[Device-qospolicy-out] classifier neiwang_out behavior neiwang_out
[Device-qospolicy-out] classifier web_deny behavior web_deny
[Device-qospolicy-out] quit
l. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[Device] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[Device] qos apply policy out global outbound
m. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication ipv6 4::5
[Device-radius-rs1] primary accounting ipv6 4::5
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
# (可选)开启RADIUS session control功能(使用iMC作为RADIUS服务器时建议配置该功能)。
[Device] radius session-control enable
n. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[Device] domain name dm1
[Device-isp-dm1] authentication ipoe none
[Device-isp-dm1] authorization ipoe none
[Device-isp-dm1] accounting ipoe none
# 配置前域授权用户组、授权ND前缀池及IPv6 DNS地址池信息。
[Device-isp-dm1] authorization-attribute user-group pre
[Device-isp-dm1] authorization-attribute ipv6-nd-prefix-pool pool1
[Device-isp-dm1] authorization-attribute primary-dns ipv6 8::8
# 配置Web认证页面URL。
[Device-isp-dm1] web-server ipv6-url http://[4::5]:8080/portal
[Device-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[Device] domain name dm2
[Device-isp-dm2] authentication ipoe radius-scheme rs1
[Device-isp-dm2] authorization ipoe radius-scheme rs1
[Device-isp-dm2] accounting ipoe radius-scheme rs1
[Device-isp-dm2] quit
o. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 配置IPoE用户采用Web认证方式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber authentication-method web
The operation may cut all users on this interface. Continue?[Y/N]:y
# 开启IPv6 ND RS报文触发方式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber initiator ndrs enable
# 配置Web认证前域为dm1,Web认证域为dm2。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber pre-auth domain dm1
[Device–Ten-GigabitEthernet3/1/2] ip subscriber web-auth domain dm2
[Device–Ten-GigabitEthernet3/1/2] quit
(3) 配置RADIUS服务器和Portal服务器
请参照“双栈IPoE用户普通Web认证配置举例”中相关配置。
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IPv6前缀为10::/64。
[Device] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0xc XGE3/1/2 - 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
10::20C:29FF:FEA6:B656
# 用户认证前域认证通过之后,登录Web页面,如图1-72所示。
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[Device] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0xc XGE3/1/2 - 000c-29a6-b656 -/-
user1@dm2 Web auth
10::20C:29FF:FEA6:B656
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备作为DHCP中继向远端DHCP服务器申请IP地址。
· 由一台安装了H3C iMC的服务器同时承担RADIUS服务器、Portal认证服务器、Portal Web服务器以及MAC绑定服务器的职责。本举例中使用的iMC版本为:iMC PLAT 7.1(E0303)、iMC UAM 7.1(E0305)、iMC EIP 7.1(E0305))。
· FTP server是一台内网服务器。
图1-73 IPoE MAC Trigger无感知认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置DHCP服务器
# 全局开启DHCP。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段192.168.0.0/24,分配的网关地址192.168.0.1和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool1] network 192.168.0.0 24
[DHCP-server-ip-pool-pool1] gateway-list 192.168.0.1
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
# 将192.168.0.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 192.168.0.1
[DHCP-server-ip-pool-pool1] quit
# 配置缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 4.4.4.2
(2) 配置Device
a. 配置DHCP relay
# 全局开启DHCP。
<Device> system-view
[Device] dhcp enable
# 进入接口Ten-GigabitEthernet3/1/2视图。
[Device] interface ten-gigabitethernet 3/1/2
# 配置接口工作在中继模式。
[Device–Ten-GigabitEthernet3/1/2] dhcp select relay
[Device–Ten-GigabitEthernet3/1/2] quit
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将192.168.0.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址。
[Device] ip pool pool1 bas remote
[Device-ip-pool-pool1] gateway 192.168.0.1 24
[Device-ip-pool-pool1] forbidden-ip 192.168.0.1
[Device-ip-pool-pool1] remote-server 4.4.4.3
[Device-ip-pool-pool1] quit
b. 配置Portal认证服务器
# 配置Portal认证服务器:名称为newpt,IP地址为4.4.4.5,密钥为明文123456。
[Device] portal server newpt
[Device-portal-server-newpt] ip 4.4.4.5 key simple 123456
[Device-portal-server-newpt] quit
c. 配置对HTTPS报文进行重定向的内部侦听端口号
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[Device] http-redirect https-port 11111
d. 配置通过查询ARP/ND表项来获取用户信息
[Device] portal access-info trust arp
[Device] portal access-info trust nd
e. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[Device] user-group pre
New user group added.
[Device-ugroup-pre] quit
f. 配置用于认证前域用户的ACL规则
# 为IPv4高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[Device] acl advanced name web_permit
[Device-acl-ipv4-adv-web_permit] rule 0 permit ip destination 4.4.4.5 0 user-group pre
[Device-acl-ipv4-adv-web_permit] quit
# 为IPv4高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[Device] acl advanced name neiwang
[Device-acl-ipv4-adv-neiwang] rule 0 permit ip destination 4.4.4.6 0 user-group pre
[Device-acl-ipv4-adv-neiwang] quit
# 为IPv4高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[Device] acl advanced name web_http
[Device-acl-ipv4-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[Device-acl-ipv4-adv-web_http] quit
# 为IPv4高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[Device] acl advanced name web_https
[Device-acl-ipv4-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[Device-acl-ipv4-adv-web_https] quit
# 为IPv4高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[Device] acl advanced name ip
[Device-acl-ipv4-adv-ip] rule 0 permit ip user-group pre
[Device-acl-ipv4-adv-ip] quit
# 为IPv4高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[Device] acl advanced name neiwang_out
[Device-acl-ipv4-adv-neiwang_out] rule 0 permit ip source 4.4.4.6 0 user-group pre
[Device-acl-ipv4-adv-neiwang_out] quit
# 为IPv4高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[Device] acl advanced name web_out
[Device-acl-ipv4-adv-web_out] rule 0 permit ip source 4.4.4.5 0 user-group pre
[Device-acl-ipv4-adv-web_out] quit
g. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[Device] traffic classifier web_permit operator and
[Device-classifier-web_permit] if-match acl name web_permit
[Device-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[Device] traffic classifier neiwang operator and
[Device-classifier-neiwang] if-match acl name neiwang
[Device-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[Device] traffic classifier web_http operator and
[Device-classifier-web_http] if-match acl name web_http
[Device-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[Device] traffic classifier web_https operator and
[Device-classifier-web_https] if-match acl name web_https
[Device-classifier-web_https] quit
# 配置类ip_cpu,匹配ACL ip。
[Device] traffic classifier ip_cpu operator and
[Device-classifier-ip_cpu] if-match acl name ip
[Device-classifier-ip_cpu] quit
# 配置类ip_deny,匹配ACL ip。
[Device] traffic classifier ip_deny operator and
[Device-classifier-ip_deny] if-match acl name ip
[Device-classifier-ip_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[Device] traffic classifier neiwang_out operator and
[Device-classifier-neiwang_out] if-match acl name neiwang_out
[Device-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[Device] traffic classifier web_out operator and
[Device-classifier-web_out] if-match acl name web_out
[Device-classifier-web_out] quit
h. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_permit
[Device-behavior-web_permit] filter permit
[Device-behavior-web_permit] free account
[Device-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang
[Device-behavior-neiwang] filter permit
[Device-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[Device] traffic behavior web_http
[Device-behavior-web_http] redirect http-to-cpu
[Device-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[Device] traffic behavior web_https
[Device-behavior-web_https] redirect https-to-cpu
[Device-behavior-web_https] quit
# 配置流行为web_cpu,对用户组pre中用户的所有IP报文都重定向到CPU。
[Device] traffic behavior web_cpu
[Device-behavior-web_cpu] redirect cpu
[Device-behavior-web_cpu] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[Device] traffic behavior web_deny
[Device-behavior-web_deny] filter deny
[Device-behavior-web_deny] free account
[Device-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang_out
[Device-behavior-neiwang_out] filter permit
[Device-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_out
[Device-behavior-web_out] filter permit
[Device-behavior-web_out] free account
[Device-behavior-web_out] quit
i. 配置QoS策略
# 配置入方向QoS策略web
[Device] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过;
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU;
除上述报文外,其余报文都重定向到CPU,如果重定向无感知认证失败,则丢弃报文。
[Device-qospolicy-web] classifier web_permit behavior web_permit
[Device-qospolicy-web] classifier neiwang behavior neiwang
[Device-qospolicy-web] classifier web_http behavior web_http
[Device-qospolicy-web] classifier web_https behavior web_https
[Device-qospolicy-web] classifier ip_cpu behavior web_cpu
[Device-qospolicy-web] classifier ip_deny behavior web_deny
[Device-qospolicy-web] quit
# 配置出方向QoS策略out
[Device] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文均禁止通过。
[Device-qospolicy-out] classifier web_out behavior web_out
[Device-qospolicy-out] classifier neiwang_out behavior neiwang_out
[Device-qospolicy-out] classifier ip_deny behavior web_deny
[Device-qospolicy-out] quit
j. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[Device] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[Device] qos apply policy out global outbound
k. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.5
[Device-radius-rs1] primary accounting 4.4.4.5
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
# (可选)开启RADIUS session control功能(使用iMC作为RADIUS服务器时建议配置该功能)。
[Device] radius session-control enable
l. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[Device] domain name dm1
[Device-isp-dm1] authentication ipoe none
[Device-isp-dm1] authorization ipoe none
[Device-isp-dm1] accounting ipoe none
# 配置授权地址池以及用户组。
[Device-isp-dm1] authorization-attribute user-group pre
[Device-isp-dm1] authorization-attribute ip-pool pool1
# 配置Web认证页面URL。
[Device-isp-dm1] web-server url http://4.4.4.5:8080/portal/
[Device-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[Device] domain name dm2
[Device-isp-dm2] authentication ipoe radius-scheme rs1
[Device-isp-dm2] authorization ipoe radius-scheme rs1
[Device-isp-dm2] accounting ipoe radius-scheme rs1
[Device-isp-dm2] quit
m. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 配置IPoE用户采用Web认证方式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber authentication-method web
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber pre-auth domain dm1
[Device–Ten-GigabitEthernet3/1/2] ip subscriber web-auth domain dm2
[Device–Ten-GigabitEthernet3/1/2] quit
n. 配置Portal基于MAC地址的快速认证
# 创建MAC绑定服务器mts。
[Device] portal mac-trigger-server mts
# 配置MAC绑定服务器的地址为4.4.4.5
[Device-portal-mac-trigger-server-mts] ip 4.4.4.5
[Device-portal-mac-trigger-server-mts] quit
# 在接口Ten-GigabitEthernet3/1/2上应用MAC绑定服务器mts。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] portal apply mac-trigger-server mts
[Device–Ten-GigabitEthernet3/1/2] quit
(3) 配置RADIUS服务器
# 配置接入设备
登录进入iMC管理平台,选择“用户”页签,单击导航树中的[接入策略管理/接入设备管理/接入设备配置]菜单项,进入接入设备配置页面,在该页面中单击<增加>按钮,进入如图1-74所示增加接入设备页面。
¡ 输入共享密钥为:radius。
¡ 其他采用缺省配置。
在该页面中设备列表下方单击<手工增加>,在如图1-75所示页面输入接入设备地址4.4.4.2并单击<确定>。
# 增加接入策略
单击导航树中的[接入策略管理/接入策略管理]菜单项,进入接入策略管理页面,在该页面中单击<增加>按钮,进入如图1-76所示增加接入策略页面。
¡ 输入接入策略名为:AccessPolicy。
¡ 其他采用缺省配置。
# 增加接入服务
单击导航树中的[接入策略管理/接入服务管理]菜单项,进入接入服务管
理页面,在该页面中单击<增加>按钮,进入如图1-77所示增加接入服务页面。
¡ 输入服务名为:IPoE_Server
¡ 缺省接入策略选择已创建的策略“AccessPolicy”。
¡ 其他采用缺省配置。
# 在IMC界面增加用户
单击导航树中的[用户管理/增加用户]菜单项,进入如图1-78所示增加用户页面,填写用户姓名和证件号码为:IPoE_Web001和001。
单击<确定>按钮后完成用户的添加。
# 增加接入用户
单击导航树中的[接入用户管理/接入用户]菜单项,进入接入用户页面,在该页面中单击<增加>按钮,进入如图1-79所示增加接入用户页面。
¡ 用户姓名选择:IPoE_Web001
¡ 帐号名填写为:user1
¡ 密码为:pass1
¡ 接入服务选择之前已创建的IPoE_Server
(4) 配置Portal服务器
# 配置Portal主页。
单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如图1-80所示。
图1-80 Portal服务器配置页面
# 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如图1-81所示。
¡ 输入IP地址组名为“IPoE_Web_User”;
¡ 输入起始地址为“192.168.0.1”、终止地址为“192.168.0.255”。用户主机IP地址必须包含在该IP地址组范围内;
¡ 其他采用缺省配置;
¡ 单击<确定>按钮完成操作。
图1-81 增加IP地址组配置页面
# 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面,如图1-82所示。
¡ 输入设备名为“NAS”;
¡ 输入IP地址为“4.4.4.2”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/1的IP地址;
¡ 输入密钥为“123456”;
¡ 选择组网方式为“直连”;
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 配置端口组信息
如图1-83所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如图1-84所示。
¡ 输入端口组名为“group”;
¡ 选择IP地址组为“IPoE_Web_User”,用户接入网络时使用的IP地址必须属于所选的IP地址组;
¡ 无感知认证选择“支持”。
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 最后单击导航树中的[接入策略管理/业务参数配置/系统配置手工生效]菜单项,使以上Portal认证服务器配置生效。
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IP地址为192.168.0.2。
[Device] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
-
# 用户认证前域认证通过之后,登录Web页面,如图1-85所示。
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[Device] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
user1@dm2 Web auth
-
# 点击<下线>按钮,通过显示命令查看,此时用户返回认证前域状态。
[Device] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
-
# 重新打开浏览器,任意输入访问地址http://63.1.1.240,通过显示命令查看,用户IPoE Web上线。
[Device] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 Web auth
-
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备作为DHCP中继向远端DHCP服务器申请IP地址。
· 由一台安装了H3C iMC的服务器同时承担Portal认证服务器和Portal Web服务器的职责。本举例中使用的iMC版本为:iMC PLAT 7.1(E0303)、iMC UAM 7.1(E0305)、iMC EIP 7.1(E0305))。
· 由一台支持MAC绑定功能的RADIUS服务器同时承担认证、授权和计费服务器以及MAC绑定服务器的职责。
· FTP server是一台内网服务器。
图1-86 IPoE普通MAC无感知认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置DHCP服务器
# 全局开启DHCP。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段192.168.0.0/24,分配的网关地址192.168.0.1和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool1] network 192.168.0.0 24
[DHCP-server-ip-pool-pool1] gateway-list 192.168.0.1
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
# 将192.168.0.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 192.168.0.1
[DHCP-server-ip-pool-pool1] quit
# 配置缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 4.4.4.2
(2) 配置Device
a. 配置DHCP relay
# 全局开启DHCP。
<Device> system-view
[Device] dhcp enable
# 进入接口Ten-GigabitEthernet3/1/2视图。
[Device] interface ten-gigabitethernet 3/1/2
# 配置接口工作在中继模式。
[Device–Ten-GigabitEthernet3/1/2] dhcp select relay
[Device–Ten-GigabitEthernet3/1/2] quit
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将192.168.0.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址。
[Device] ip pool pool1 bas remote
[Device-ip-pool-pool1] gateway 192.168.0.1 24
[Device-ip-pool-pool1] forbidden-ip 192.168.0.1
[Device-ip-pool-pool1] remote-server 4.4.4.3
[Device-ip-pool-pool1] quit
b. 配置Portal认证服务器
# 配置Portal认证服务器:名称为newpt,IP地址为4.4.4.5,密钥为明文123456。
[Device] portal server newpt
[Device-portal-server-newpt] ip 4.4.4.5 key simple 123456
[Device-portal-server-newpt] quit
c. 配置对HTTPS报文进行重定向的内部侦听端口号
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[Device] http-redirect https-port 11111
d. 配置通过查询ARP/ND表项来获取用户信息
[Device] portal access-info trust arp
[Device] portal access-info trust nd
e. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[Device] user-group pre
New user group added.
[Device-ugroup-pre] quit
f. 配置用于认证前域用户的ACL规则
# 为IPv4高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[Device] acl advanced name web_permit
[Device-acl-ipv4-adv-web_permit] rule 0 permit ip destination 4.4.4.5 0 user-group pre
[Device-acl-ipv4-adv-web_permit] quit
# 为IPv4高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[Device] acl advanced name neiwang
[Device-acl-ipv4-adv-neiwang] rule 0 permit ip destination 4.4.4.6 0 user-group pre
[Device-acl-ipv4-adv-neiwang] quit
# 为IPv4高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[Device] acl advanced name web_http
[Device-acl-ipv4-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[Device-acl-ipv4-adv-web_http] quit
# 为IPv4高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[Device] acl advanced name web_https
[Device-acl-ipv4-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[Device-acl-ipv4-adv-web_https] quit
# 为IPv4高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[Device] acl advanced name ip
[Device-acl-ipv4-adv-ip] rule 0 permit ip user-group pre
[Device-acl-ipv4-adv-ip] quit
# 为IPv4高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[Device] acl advanced name neiwang_out
[Device-acl-ipv4-adv-neiwang_out] rule 0 permit ip source 4.4.4.6 0 user-group pre
[Device-acl-ipv4-adv-neiwang_out] quit
# 为IPv4高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[Device] acl advanced name web_out
[Device-acl-ipv4-adv-web_out] rule 0 permit ip source 4.4.4.5 0 user-group pre
[Device-acl-ipv4-adv-web_out] quit
g. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[Device] traffic classifier web_permit operator and
[Device-classifier-web_permit] if-match acl name web_permit
[Device-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[Device] traffic classifier neiwang operator and
[Device-classifier-neiwang] if-match acl name neiwang
[Device-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[Device] traffic classifier web_http operator and
[Device-classifier-web_http] if-match acl name web_http
[Device-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[Device] traffic classifier web_https operator and
[Device-classifier-web_https] if-match acl name web_https
[Device-classifier-web_https] quit
# 配置类ip_cpu,匹配ACL ip。
[Device] traffic classifier ip_cpu operator and
[Device-classifier-ip_cpu] if-match acl name ip
[Device-classifier-ip_cpu] quit
# 配置类ip_deny,匹配ACL ip。
[Device] traffic classifier ip_deny operator and
[Device-classifier-ip_deny] if-match acl name ip
[Device-classifier-ip_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[Device] traffic classifier neiwang_out operator and
[Device-classifier-neiwang_out] if-match acl name neiwang_out
[Device-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[Device] traffic classifier web_out operator and
[Device-classifier-web_out] if-match acl name web_out
[Device-classifier-web_out] quit
h. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_permit
[Device-behavior-web_permit] filter permit
[Device-behavior-web_permit] free account
[Device-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang
[Device-behavior-neiwang] filter permit
[Device-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[Device] traffic behavior web_http
[Device-behavior-web_http] redirect http-to-cpu
[Device-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[Device] traffic behavior web_https
[Device-behavior-web_https] redirect https-to-cpu
[Device-behavior-web_https] quit
# 配置流行为web_cpu,对用户组pre中用户的所有IP报文都重定向到CPU。
[Device] traffic behavior web_cpu
[Device-behavior-web_cpu] redirect cpu
[Device-behavior-web_cpu] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[Device] traffic behavior web_deny
[Device-behavior-web_deny] filter deny
[Device-behavior-web_deny] free account
[Device-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang_out
[Device-behavior-neiwang_out] filter permit
[Device-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_out
[Device-behavior-web_out] filter permit
[Device-behavior-web_out] free account
[Device-behavior-web_out] quit
i. 配置QoS策略
# 配置入方向QoS策略web
[Device] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过;
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU;
除上述报文外,其余报文都重定向到CPU,如果重定向无感知认证失败,则丢弃报文。
[Device-qospolicy-web] classifier web_permit behavior web_permit
[Device-qospolicy-web] classifier neiwang behavior neiwang
[Device-qospolicy-web] classifier web_http behavior web_http
[Device-qospolicy-web] classifier web_https behavior web_https
[Device-qospolicy-web] classifier ip_cpu behavior web_cpu
[Device-qospolicy-web] classifier ip_deny behavior web_deny
[Device-qospolicy-web] quit
# 配置出方向QoS策略out
[Device] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文均禁止通过。
[Device-qospolicy-out] classifier web_out behavior web_out
[Device-qospolicy-out] classifier neiwang_out behavior neiwang_out
[Device-qospolicy-out] classifier ip_deny behavior web_deny
[Device-qospolicy-out] quit
j. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[Device] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[Device] qos apply policy out global outbound
k. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.1
[Device-radius-rs1] primary accounting 4.4.4.1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
# (可选)开启RADIUS session control功能(使用iMC作为RADIUS服务器时建议配置该功能)。
[Device] radius session-control enable
l. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[Device] domain name dm1
[Device-isp-dm1] authentication ipoe none
[Device-isp-dm1] authorization ipoe none
[Device-isp-dm1] accounting ipoe none
# 配置授权地址池以及用户组。
[Device-isp-dm1] authorization-attribute user-group pre
[Device-isp-dm1] authorization-attribute ip-pool pool1
# 配置Web认证页面URL。
[Device-isp-dm1] web-server url http://4.4.4.5:8080/portal/
[Device-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[Device] domain name dm2
[Device-isp-dm2] authentication ipoe radius-scheme rs1
[Device-isp-dm2] authorization ipoe radius-scheme rs1
[Device-isp-dm2] accounting ipoe radius-scheme rs1
[Device-isp-dm2] quit
m. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 配置IPoE用户采用Web MAC认证方式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber authentication-method web mac-auth
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber pre-auth domain dm1
[Device–Ten-GigabitEthernet3/1/2] ip subscriber web-auth domain dm2
[Device–Ten-GigabitEthernet3/1/2] quit
(3) 配置RADIUS服务器
对于RADIUS服务器上AAA和MAC绑定配置,具体需要参见RADIUS server的配置说明书。
(4) 配置Portal服务器
# 配置Portal主页。
登录进入iMC管理平台,选择“用户”页签,单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如图1-87所示。
图1-87 Portal服务器配置页面
# 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如图1-88所示。
¡ 输入IP地址组名为“IPoE_Web_User”;
¡ 输入起始地址为“192.168.0.1”、终止地址为“192.168.0.255”。用户主机IP地址必须包含在该IP地址组范围内;
¡ 其他采用缺省配置;
¡ 单击<确定>按钮完成操作。
图1-88 增加IP地址组配置页面
# 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面,如图1-89所示。
¡ 输入设备名为“NAS”;
¡ 输入IP地址为“4.4.4.2”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/1的IP地址;
¡ 输入密钥为“123456”;
¡ 选择组网方式为“直连”;
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 配置端口组信息
如图1-90所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如图1-91所示。
¡ 输入端口组名为“group”;
¡ 选择IP地址组为“IPoE_Web_User”,用户接入网络时使用的IP地址必须属于所选的IP地址组;
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IP地址为192.168.0.2。
[Device] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
-
# 用户认证前域认证通过之后,登录Web页面,如图1-92所示。
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[Device] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
user1@dm2 Web auth
-
# 点击<下线>按钮,通过显示命令查看,此时用户返回认证前域状态。
[Device] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
-
# 重新打开浏览器,任意输入访问地址http://63.1.1.240,通过显示命令查看,用户IPoE Web 上线。
[Device] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 Web auth
-
· DHCP client经由三层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备同时作为DHCP服务器。
· 由一台安装了H3C iMC的服务器同时承担RADIUS服务器、Portal认证服务器、Portal Web服务器以及MAC绑定服务器的职责。本举例中使用的iMC版本为:iMC PLAT 7.1(E0303)、iMC UAM 7.1(E0305)、iMC EIP 7.1(E0305))。
· FTP server是一台内网服务器。
图1-93 IPoE MAC Trigger无感知认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置DHCP中继
# 全局开启DHCP。
<RouterA> system-view
[RouterA] dhcp enable
# 启用DHCP中继的用户地址表项记录功能。
[RouterA] dhcp relay client-information record
# 关闭DHCP中继动态用户地址表项定时刷新功能。
[RouterA] undo dhcp relay client-information refresh enable
# 进入接口Ten-GigabitEthernet3/1/2视图。
[RouterA] interface ten-gigabitethernet 3/1/2
[RouterA–Ten-GigabitEthernet3/1/2] dhcp select relay
[RouterA–Ten-GigabitEthernet3/1/2] dhcp relay server-address 2.2.2.2
[RouterA–Ten-GigabitEthernet3/1/2] quit
# 配置DHCP中继到BRAS侧的缺省路由。
[RouterA] ip route-static 0.0.0.0 0 2.2.2.2
(2) 配置RouterB
a. 配置DHCP服务器
# 全局开启DHCP。
<RouterB> system-view
[RouterB] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[RouterB] dhcp server request-ip-address check
# 创建名称为pool1的普通IP地址池并进入其视图。
[RouterB] ip pool pool1
# 配置地址池动态分配的IP地址网段192.168.0.0/24和DNS服务器地址8.8.8.8。
[RouterB-ip-pool-pool1] network 192.168.0.0 24
[RouterB-ip-pool-pool1] gateway-list 192.168.0.1
[RouterB-ip-pool-pool1] dns-list 8.8.8.8
# 将192.168.0.1设置为禁止地址。
[RouterB-ip-pool-pool1] forbidden-ip 192.168.0.1
[RouterB-ip-pool-pool1] quit
# 配置到DHCP中继的路由。
[RouterB] ip route-static 192.168.0.0 24 2.2.2.1
b. 配置Portal认证服务器
# 配置Portal认证服务器:名称为newpt,IP地址为4.4.4.5,密钥为明文123456。
[RouterB] portal server newpt
[RouterB-portal-server-newpt] ip 4.4.4.5 key simple 123456
[RouterB-portal-server-newpt] quit
c. 配置对HTTPS报文进行重定向的内部侦听端口号
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[RouterB] http-redirect https-port 11111
d. 配置通过查询ARP/ND表项来获取用户信息
[Device] portal access-info trust arp
[Device] portal access-info trust nd
e. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[RouterB] user-group pre
New user group added.
[RouterB-ugroup-pre] quit
f. 配置用于认证前域用户的ACL规则
# 为IPv4高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[RouterB] acl advanced name web_permit
[RouterB-acl-ipv4-adv-web_permit] rule 0 permit ip destination 4.4.4.5 0 user-group pre
[RouterB-acl-ipv4-adv-web_permit] quit
# 为IPv4高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[RouterB] acl advanced name neiwang
[RouterB-acl-ipv4-adv-neiwang] rule 0 permit ip destination 4.4.4.6 0 user-group pre
[RouterB-acl-ipv4-adv-neiwang] quit
# 为IPv4高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[RouterB] acl advanced name web_http
[RouterB-acl-ipv4-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[RouterB-acl-ipv4-adv-web_http] quit
# 为IPv4高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[RouterB] acl advanced name web_https
[RouterB-acl-ipv4-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[RouterB-acl-ipv4-adv-web_https] quit
# 为IPv4高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[RouterB] acl advanced name ip
[RouterB-acl-ipv4-adv-ip] rule 0 permit ip user-group pre
[RouterB-acl-ipv4-adv-ip] quit
# 为IPv4高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[RouterB] acl advanced name neiwang_out
[RouterB-acl-ipv4-adv-neiwang_out] rule 0 permit ip source 4.4.4.6 0 user-group pre
[RouterB-acl-ipv4-adv-neiwang_out] quit
# 为IPv4高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[RouterB] acl advanced name web_out
[RouterB-acl-ipv4-adv-web_out] rule 0 permit ip source 4.4.4.5 0 user-group pre
[RouterB-acl-ipv4-adv-web_out] quit
g. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[RouterB] traffic classifier web_permit operator and
[RouterB-classifier-web_permit] if-match acl name web_permit
[RouterB-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[RouterB] traffic classifier neiwang operator and
[RouterB-classifier-neiwang] if-match acl name neiwang
[RouterB-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[RouterB] traffic classifier web_http operator and
[RouterB-classifier-web_http] if-match acl name web_http
[RouterB-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[RouterB] traffic classifier web_https operator and
[RouterB-classifier-web_https] if-match acl name web_https
[RouterB-classifier-web_https] quit
# 配置类ip_cpu,匹配ACL ip。
[RouterB] traffic classifier ip_cpu operator and
[RouterB-classifier-ip_cpu] if-match acl name ip
[RouterB-classifier-ip_cpu] quit
# 配置类ip_deny,匹配ACL ip。
[RouterB] traffic classifier ip_deny operator and
[RouterB-classifier-ip_deny] if-match acl name ip
[RouterB-classifier-ip_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[RouterB] traffic classifier neiwang_out operator and
[RouterB-classifier-neiwang_out] if-match acl name neiwang_out
[RouterB-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[RouterB] traffic classifier web_out operator and
[RouterB-classifier-web_out] if-match acl name web_out
[RouterB-classifier-web_out] quit
h. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[RouterB] traffic behavior web_permit
[RouterB-behavior-web_permit] filter permit
[RouterB-behavior-web_permit] free account
[RouterB-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[RouterB] traffic behavior neiwang
[RouterB-behavior-neiwang] filter permit
[RouterB-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[RouterB] traffic behavior web_http
[RouterB-behavior-web_http] redirect http-to-cpu
[RouterB-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[RouterB] traffic behavior web_https
[RouterB-behavior-web_https] redirect https-to-cpu
[RouterB-behavior-web_https] quit
# 配置流行为web_cpu,对用户组pre中用户的所有IP报文都重定向到CPU。
[RouterB] traffic behavior web_cpu
[RouterB-behavior-web_cpu] redirect cpu
[RouterB-behavior-web_cpu] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[RouterB] traffic behavior web_deny
[RouterB-behavior-web_deny] filter deny
[RouterB-behavior-web_deny] free account
[RouterB-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[RouterB] traffic behavior neiwang_out
[RouterB-behavior-neiwang_out] filter permit
[RouterB-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[RouterB] traffic behavior web_out
[RouterB-behavior-web_out] filter permit
[RouterB-behavior-web_out] free account
[RouterB-behavior-web_out] quit
i. 配置QoS策略
# 配置入方向QoS策略web
[RouterB] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过;
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU;
除上述报文外,其余报文都重定向到CPU,如果重定向无感知认证失败,则丢弃报文。
[RouterB-qospolicy-web] classifier web_permit behavior web_permit
[RouterB-qospolicy-web] classifier neiwang behavior neiwang
[RouterB-qospolicy-web] classifier web_http behavior web_http
[RouterB-qospolicy-web] classifier web_https behavior web_https
[RouterB-qospolicy-web] classifier ip_cpu behavior web_cpu
[RouterB-qospolicy-web] classifier ip_deny behavior web_deny
[RouterB-qospolicy-web] quit
# 配置出方向QoS策略out
[RouterB] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文均禁止通过。
[RouterB-qospolicy-out] classifier web_out behavior web_out
[RouterB-qospolicy-out] classifier neiwang_out behavior neiwang_out
[RouterB-qospolicy-out] classifier ip_deny behavior web_deny
[RouterB-qospolicy-out] quit
j. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[RouterB] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[RouterB] qos apply policy out global outbound
k. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[RouterB] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[RouterB-radius-rs1] primary authentication 4.4.4.5
[RouterB-radius-rs1] primary accounting 4.4.4.5
[RouterB-radius-rs1] key authentication simple radius
[RouterB-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[RouterB-radius-rs1] user-name-format without-domain
[RouterB-radius-rs1] quit
# (可选)开启RADIUS session control功能(使用iMC作为RADIUS服务器时建议配置该功能)。
[RouterB] radius session-control enable
l. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[RouterB] domain name dm1
[RouterB-isp-dm1] authentication ipoe none
[RouterB-isp-dm1] authorization ipoe none
[RouterB-isp-dm1] accounting ipoe none
# 配置授权地址池以及用户组。
[RouterB-isp-dm1] authorization-attribute user-group pre
[RouterB-isp-dm1] authorization-attribute ip-pool pool1
# 配置Web认证页面URL。
[RouterB-isp-dm1] web-server url http://4.4.4.5:8080/portal/
[RouterB-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[RouterB] domain name dm2
[RouterB-isp-dm2] authentication ipoe radius-scheme rs1
[RouterB-isp-dm2] authorization ipoe radius-scheme rs1
[RouterB-isp-dm2] accounting ipoe radius-scheme rs1
[RouterB-isp-dm2] quit
m. 配置IPoE
# 开启IPoE功能,并配置三层接入模式。
[RouterB] interface ten-gigabitethernet 3/1/2
[RouterB–Ten-GigabitEthernet3/1/2] ip subscriber routed enable
# 配置IPoE用户采用Web认证方式。
[RouterB–Ten-GigabitEthernet3/1/2] ip subscriber authentication-method web
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[RouterB–Ten-GigabitEthernet3/1/2] ip subscriber pre-auth domain dm1
[RouterB–Ten-GigabitEthernet3/1/2] ip subscriber web-auth domain dm2
# 关闭在线用户探测功能。
缺省为ARP探测方式,三层无感知时,建议关闭探测功能。
[RouterB–Ten-GigabitEthernet3/1/2] undo ip subscriber user-detect ip
[RouterB–Ten-GigabitEthernet3/1/2] quit
n. 配置Portal基于MAC地址的快速认证
# 创建MAC绑定服务器mts。
[RouterB] portal mac-trigger-server mts
# 配置MAC绑定服务器的地址为4.4.4.5
[RouterB-portal-mac-trigger-server-mts] ip 4.4.4.5
[RouterB-portal-mac-trigger-server-mts] quit
# 在接口Ten-GigabitEthernet3/1/2上应用MAC绑定服务器mts。
[RouterB] interface ten-gigabitethernet 3/1/2
[RouterB–Ten-GigabitEthernet3/1/2] portal apply mac-trigger-server mts
[RouterB–Ten-GigabitEthernet3/1/2] quit
(3) 配置RADIUS服务器
# 配置接入设备
登录进入iMC管理平台,选择“用户”页签,单击导航树中的[接入策略管理/接入设备管理/接入设备配置]菜单项,进入接入设备配置页面,在该页面中单击<增加>按钮,进入如图1-94所示增加接入设备页面。
¡ 输入共享密钥为:radius。
¡ 其他采用缺省配置。
在该页面中设备列表下方单击<手工增加>,在如图1-95所示页面输入接入设备地址4.4.4.2并单击<确定>。
# 增加接入策略
单击导航树中的[接入策略管理/接入策略管理]菜单项,进入接入策略管理页面,在该页面中单击<增加>按钮,进入如图1-96所示增加接入策略页面。
¡ 输入接入策略名为:AccessPolicy。
¡ 其他采用缺省配置。
# 增加接入服务
单击导航树中的[接入策略管理/接入服务管理]菜单项,进入接入服务管
理页面,在该页面中单击<增加>按钮,进入如图1-97所示增加接入服务页面。
¡ 输入服务名为:IPoE_Server
¡ 缺省接入策略选择已创建的策略“AccessPolicy”。
¡ 其他采用缺省配置。
# 在IMC界面增加用户
单击导航树中的[用户管理/增加用户]菜单项,进入如图1-98所示增加用户页面,填写用户姓名和证件号码为:IPoE_Web001和001。
单击<确定>按钮后完成用户的添加。
# 增加接入用户
单击导航树中的[接入用户管理/接入用户]菜单项,进入接入用户页面,在该页面中单击<增加>按钮,进入如图1-99所示增加接入用户页面。
¡ 用户姓名选择:IPoE_Web001
¡ 帐号名填写为:user1
¡ 密码为:pass1
¡ 接入服务选择之前已创建的IPoE_Server
(4) 配置Portal服务器
# 配置Portal主页。
单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如图1-100所示。
图1-100 Portal服务器配置页面
# 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如图1-101所示。
¡ 输入IP地址组名为“IPoE_Web_User”;
¡ 输入起始地址为“192.168.0.1”、终止地址为“192.168.0.255”。用户主机IP地址必须包含在该IP地址组范围内;
¡ 其他采用缺省配置;
¡ 单击<确定>按钮完成操作。
图1-101 增加IP地址组配置页面
# 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面,如图1-102所示。
¡ 输入设备名为“NAS”;
¡ 输入IP地址为“4.4.4.2”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/1的IP地址;
¡ 输入密钥为“123456”;
¡ 选择组网方式为“直连”;
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 配置端口组信息
如图1-103所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如图1-104所示。
¡ 输入端口组名为“group”;
¡ 选择IP地址组为“IPoE_Web_User”,用户接入网络时使用的IP地址必须属于所选的IP地址组;
¡ 无感知认证选择“支持”。
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 最后单击导航树中的[接入策略管理/业务参数配置/系统配置手工生效]菜单项,使以上Portal认证服务器配置生效。
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IP地址为192.168.0.2。
[RouterB] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L3 IPoE dynamic
-
# 用户认证前域认证通过之后,登录Web页面,如图1-105所示。
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[RouterB] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
user1@dm2 Web auth
-
# 点击<下线>按钮,通过显示命令查看,此时用户返回认证前域状态。
[RouterB] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L3 IPoE dynamic
-
# 重新打开浏览器,任意输入访问地址http://63.1.1.240,通过显示命令查看,用户IPoE Web上线。
[RouterB] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 Web auth
-
· DHCP client经由三层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备同时作为DHCP服务器。
· 由一台安装了H3C iMC的服务器同时承担Portal认证服务器和Portal Web服务器的职责。
· 由一台支持MAC绑定功能的RADIUS服务器同时承担认证、授权和计费服务器以及MAC绑定服务器的职责。本举例中使用的iMC版本为:iMC PLAT 7.1(E0303)、iMC UAM 7.1(E0305)、iMC EIP 7.1(E0305))。
· FTP server是一台内网服务器。
图1-106 IPoE MAC无感知认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置DHCP中继
# 全局开启DHCP。
<RouterA> system-view
[RouterA] dhcp enable
# 启用DHCP中继的用户地址表项记录功能。
[RouterA] dhcp relay client-information record
# 关闭DHCP中继动态用户地址表项定时刷新功能。
[RouterA] undo dhcp relay client-information refresh enable
# 进入接口Ten-GigabitEthernet3/1/2视图。
[RouterA] interface ten-gigabitethernet 3/1/2
[RouterA–Ten-GigabitEthernet3/1/2] dhcp select relay
[RouterA–Ten-GigabitEthernet3/1/2] dhcp relay server-address 2.2.2.2
[RouterA–Ten-GigabitEthernet3/1/2] quit
# 配置DHCP中继到BRAS侧的缺省路由。
[RouterA] ip route-static 0.0.0.0 0 2.2.2.2
(2) 配置RouterB
a. 配置DHCP服务器
# 全局开启DHCP。
<RouterB> system-view
[RouterB] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[RouterB] dhcp server request-ip-address check
# 创建名称为pool1的普通IP地址池并进入其视图。
[RouterB] ip pool pool1
# 配置地址池动态分配的IP地址网段192.168.0.0/24和DNS服务器地址8.8.8.8。
[RouterB-ip-pool-pool1] network 192.168.0.0 24
[RouterB-ip-pool-pool1] gateway-list 192.168.0.1
[RouterB-ip-pool-pool1] dns-list 8.8.8.8
# 将192.168.0.1设置为禁止地址。
[RouterB-ip-pool-pool1] forbidden-ip 192.168.0.1
[RouterB-ip-pool-pool1] quit
# 配置到DHCP中继的路由。
[RouterB] ip route-static 192.168.0.0 24 2.2.2.1
b. 配置Portal认证服务器
# 配置Portal认证服务器:名称为newpt,IP地址为4.4.4.5,密钥为明文123456。
[RouterB] portal server newpt
[RouterB-portal-server-newpt] ip 4.4.4.5 key simple 123456
[RouterB-portal-server-newpt] quit
c. 配置对HTTPS报文进行重定向的内部侦听端口号
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[RouterB] http-redirect https-port 11111
d. 配置通过查询ARP/ND表项来获取用户信息
[DeviceB] portal access-info trust arp
[DeviceB] portal access-info trust nd
e. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[RouterB] user-group pre
New user group added.
[RouterB-ugroup-pre] quit
f. 配置用于认证前域用户的ACL规则
# 为IPv4高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[RouterB] acl advanced name web_permit
[RouterB-acl-ipv4-adv-web_permit] rule 0 permit ip destination 4.4.4.5 0 user-group pre
[RouterB-acl-ipv4-adv-web_permit] quit
# 为IPv4高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[RouterB] acl advanced name neiwang
[RouterB-acl-ipv4-adv-neiwang] rule 0 permit ip destination 4.4.4.6 0 user-group pre
[RouterB-acl-ipv4-adv-neiwang] quit
# 为IPv4高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[RouterB] acl advanced name web_http
[RouterB-acl-ipv4-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[RouterB-acl-ipv4-adv-web_http] quit
# 为IPv4高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[RouterB] acl advanced name web_https
[RouterB-acl-ipv4-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[RouterB-acl-ipv4-adv-web_https] quit
# 为IPv4高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[RouterB] acl advanced name ip
[RouterB-acl-ipv4-adv-ip] rule 0 permit ip user-group pre
[RouterB-acl-ipv4-adv-ip] quit
# 为IPv4高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[RouterB] acl advanced name neiwang_out
[RouterB-acl-ipv4-adv-neiwang_out] rule 0 permit ip source 4.4.4.6 0 user-group pre
[RouterB-acl-ipv4-adv-neiwang_out] quit
# 为IPv4高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[RouterB] acl advanced name web_out
[RouterB-acl-ipv4-adv-web_out] rule 0 permit ip source 4.4.4.5 0 user-group pre
[RouterB-acl-ipv4-adv-web_out] quit
g. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[RouterB] traffic classifier web_permit operator and
[RouterB-classifier-web_permit] if-match acl name web_permit
[RouterB-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[RouterB] traffic classifier neiwang operator and
[RouterB-classifier-neiwang] if-match acl name neiwang
[RouterB-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[RouterB] traffic classifier web_http operator and
[RouterB-classifier-web_http] if-match acl name web_http
[RouterB-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[RouterB] traffic classifier web_https operator and
[RouterB-classifier-web_https] if-match acl name web_https
[RouterB-classifier-web_https] quit
# 配置类ip_cpu,匹配ACL ip。
[RouterB] traffic classifier ip_cpu operator and
[RouterB-classifier-ip_cpu] if-match acl name ip
[RouterB-classifier-ip_cpu] quit
# 配置类ip_deny,匹配ACL ip。
[RouterB] traffic classifier ip_deny operator and
[RouterB-classifier-ip_deny] if-match acl name ip
[RouterB-classifier-ip_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[RouterB] traffic classifier neiwang_out operator and
[RouterB-classifier-neiwang_out] if-match acl name neiwang_out
[RouterB-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[RouterB] traffic classifier web_out operator and
[RouterB-classifier-web_out] if-match acl name web_out
[RouterB-classifier-web_out] quit
h. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[RouterB] traffic behavior web_permit
[RouterB-behavior-web_permit] filter permit
[RouterB-behavior-web_permit] free account
[RouterB-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[RouterB] traffic behavior neiwang
[RouterB-behavior-neiwang] filter permit
[RouterB-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[RouterB] traffic behavior web_http
[RouterB-behavior-web_http] redirect http-to-cpu
[RouterB-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[RouterB] traffic behavior web_https
[RouterB-behavior-web_https] redirect https-to-cpu
[RouterB-behavior-web_https] quit
# 配置流行为web_cpu,对用户组pre中用户的所有IP报文都重定向到CPU。
[RouterB] traffic behavior web_cpu
[RouterB-behavior-web_cpu] redirect cpu
[RouterB-behavior-web_cpu] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[RouterB] traffic behavior web_deny
[RouterB-behavior-web_deny] filter deny
[RouterB-behavior-web_deny] free account
[RouterB-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[RouterB] traffic behavior neiwang_out
[RouterB-behavior-neiwang_out] filter permit
[RouterB-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[RouterB] traffic behavior web_out
[RouterB-behavior-web_out] filter permit
[RouterB-behavior-web_out] free account
[RouterB-behavior-web_out] quit
i. 配置QoS策略
# 配置入方向QoS策略web
[RouterB] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过;
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU;
除上述报文外,其余报文都重定向到CPU,如果重定向无感知认证失败,则丢弃报文。
[RouterB-qospolicy-web] classifier web_permit behavior web_permit
[RouterB-qospolicy-web] classifier neiwang behavior neiwang
[RouterB-qospolicy-web] classifier web_http behavior web_http
[RouterB-qospolicy-web] classifier web_https behavior web_https
[RouterB-qospolicy-web] classifier ip_cpu behavior web_cpu
[RouterB-qospolicy-web] classifier ip_deny behavior web_deny
[RouterB-qospolicy-web] quit
# 配置出方向QoS策略out
[RouterB] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文均禁止通过。
[RouterB-qospolicy-out] classifier web_out behavior web_out
[RouterB-qospolicy-out] classifier neiwang_out behavior neiwang_out
[RouterB-qospolicy-out] classifier ip_deny behavior web_deny
[RouterB-qospolicy-out] quit
j. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[RouterB] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[RouterB] qos apply policy out global outbound
k. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[RouterB] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[RouterB-radius-rs1] primary authentication 4.4.4.1
[RouterB-radius-rs1] primary accounting 4.4.4.1
[RouterB-radius-rs1] key authentication simple radius
[RouterB-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[RouterB-radius-rs1] user-name-format without-domain
[RouterB-radius-rs1] quit
# (可选)开启RADIUS session control功能(使用iMC作为RADIUS服务器时建议配置该功能)。
[RouterB] radius session-control enable
l. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[RouterB] domain name dm1
[RouterB-isp-dm1] authentication ipoe none
[RouterB-isp-dm1] authorization ipoe none
[RouterB-isp-dm1] accounting ipoe none
# 配置授权地址池以及用户组。
[RouterB-isp-dm1] authorization-attribute user-group pre
[RouterB-isp-dm1] authorization-attribute ip-pool pool1
# 配置Web认证页面URL。
[RouterB-isp-dm1] web-server url http://4.4.4.5:8080/portal/
[RouterB-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[RouterB] domain name dm2
[RouterB-isp-dm2] authentication ipoe radius-scheme rs1
[RouterB-isp-dm2] authorization ipoe radius-scheme rs1
[RouterB-isp-dm2] accounting ipoe radius-scheme rs1
[RouterB-isp-dm2] quit
m. 配置IPoE
# 开启IPoE功能,并配置三层接入模式。
[RouterB] interface ten-gigabitethernet 3/1/2
[RouterB–Ten-GigabitEthernet3/1/2] ip subscriber routed enable
# 配置IPoE用户采用Web MAC认证方式。
[RouterB–Ten-GigabitEthernet3/1/2] ip subscriber authentication-method web mac-auth
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[RouterB–Ten-GigabitEthernet3/1/2] ip subscriber pre-auth domain dm1
[RouterB–Ten-GigabitEthernet3/1/2] ip subscriber web-auth domain dm2
# 关闭在线用户探测功能。
缺省为ARP探测方式,三层无感知时,建议关闭探测功能。
[RouterB–Ten-GigabitEthernet3/1/2] undo ip subscriber user-detect ip
[RouterB–Ten-GigabitEthernet3/1/2] quit
(3) 配置RADIUS服务器
对于RADIUS服务器上AAA和MAC绑定配置,具体需要参见RADIUS server的配置说明书。
(4) 配置Portal服务器
# 配置Portal主页。
登录进入iMC管理平台,选择“用户”页签,单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如图1-107所示。
图1-107 Portal服务器配置页面
# 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如图1-108所示。
¡ 输入IP地址组名为“IPoE_Web_User”;
¡ 输入起始地址为“192.168.0.1”、终止地址为“192.168.0.255”。用户主机IP地址必须包含在该IP地址组范围内;
¡ 其他采用缺省配置;
¡ 单击<确定>按钮完成操作。
图1-108 增加IP地址组配置页面
# 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面,如图1-109所示。
¡ 输入设备名为“NAS”;
¡ 输入IP地址为“4.4.4.2”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/1的IP地址;
¡ 输入密钥为“123456”;
¡ 选择组网方式为“直连”;
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 配置端口组信息
如图1-110所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如图1-111所示。
¡ 输入端口组名为“group”;
¡ 选择IP地址组为“IPoE_Web_User”,用户接入网络时使用的IP地址必须属于所选的IP地址组;
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IP地址为192.168.0.2。
[RouterB] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L3 IPoE dynamic
-
# 用户认证前域认证通过之后,登录Web页面,如图1-112所示。
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[RouterB] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
user1@dm2 Web auth
-
# 点击<下线>按钮,通过显示命令查看,此时用户返回认证前域状态。
[RouterB] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L3 IPoE dynamic
-
# 重新打开浏览器,任意输入访问地址http://63.1.1.240,通过显示命令查看,用户IPoE Web 上线。
[RouterB] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 Web auth
-
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备作为DHCP中继向远端DHCP服务器申请IP地址。
· 由一台安装了H3C iMC的服务器同时承担RADIUS服务器、Portal认证服务器和Portal Web服务器的职责。本举例中使用的iMC版本为:iMC PLAT 7.1(E0303)、iMC UAM 7.1(E0305)、iMC EIP 7.1(E0305))。
图1-113 IPoE Web支持EAP认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置DHCP服务器
# 全局开启DHCP。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段192.168.0.0/24,分配的网关地址192.168.0.1
[DHCP-server-ip-pool-pool1] network 192.168.0.0 24
[DHCP-server-ip-pool-pool1] gateway-list 192.168.0.1
# 将192.168.0.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 192.168.0.1
[DHCP-server-ip-pool-pool1] quit
# 配置缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 4.4.4.2
(2) 配置Device
a. 配置DHCP relay
# 全局开启DHCP。
<Device> system-view
[Device] dhcp enable
# 进入接口Ten-GigabitEthernet3/1/2视图。
[Device] interface ten-gigabitethernet 3/1/2
# 配置接口工作在中继模式。
[Device–Ten-GigabitEthernet3/1/2] dhcp select relay
[Device–Ten-GigabitEthernet3/1/2] quit
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将192.168.0.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址。
[Device] ip pool pool1 bas remote
[Device-ip-pool-pool1] gateway 192.168.0.1 24
[Device-ip-pool-pool1] forbidden-ip 192.168.0.1
[Device-ip-pool-pool1] remote-server 4.4.4.3
[Device-ip-pool-pool1] quit
b. 配置Portal认证服务器
# 配置Portal认证服务器:名称为newpt,IP地址为4.4.4.1,密钥为明文123456。
[Device] portal server newpt
[Device-portal-server-newpt] ip 4.4.4.1 key simple 123456
[Device-portal-server-newpt] quit
c. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.1
[Device-radius-rs1] primary accounting 4.4.4.1
[Device-radius-rs1] key authentication simple 123456
[Device-radius-rs1] key accounting simple 123456
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
# (可选)开启RADIUS session control功能(使用iMC作为RADIUS服务器时建议配置该功能)。
[Device] radius session-control enable
d. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[Device] domain name dm1
[Device-isp-dm1] authentication ipoe none
[Device-isp-dm1] authorization ipoe none
[Device-isp-dm1] accounting ipoe none
# 配置授权地址池以及用户组。
[Device-isp-dm1] authorization-attribute ip-pool pool1
# 配置Web认证页面URL和Web认证服务器IP地址。
[Device-isp-dm1] web-server url http://4.4.4.1:8080/portal/
[Device-isp-dm1] web-server ip 4.4.4.1
[Device-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[Device] domain name dm2
[Device-isp-dm2] authentication ipoe radius-scheme rs1
[Device-isp-dm2] authorization ipoe radius-scheme rs1
[Device-isp-dm2] accounting ipoe radius-scheme rs1
[Device-isp-dm2] quit
e. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 配置IPoE用户采用Web认证方式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber authentication-method web
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber pre-auth domain dm1
[Device–Ten-GigabitEthernet3/1/2] ip subscriber web-auth domain dm2
[Device–Ten-GigabitEthernet3/1/2] quit
(3) 配置RADIUS服务器
# 配置接入设备
登录进入iMC管理平台,选择“用户”页签,单击导航树中的[接入策略管理/接入设备管理/接入设备配置]菜单项,进入接入设备配置页面,在该页面中单击<增加>按钮,进入如图1-114所示增加接入设备页面。
¡ 输入共享密钥为:radius。
¡ 其他采用缺省配置。
在该页面中设备列表下方单击<手工增加>,在如图1-115所示页面输入接入设备地址4.4.4.2并单击<确定>。
# 增加接入策略
单击导航树中的[接入策略管理/接入策略管理]菜单项,并点击<增加>按钮,进入“增加接入策略”页面。
¡ 填写接入策略名。
¡ 证书认证选择EAP证书认证,证书类型根据实际情况进行选择。
¡ 其它参数可采用缺省配置。
# 增加接入服务
单击导航树中的[接入策略管理/接入服务管理]菜单项,并点击<增加>按钮,进入“增加接入服务配置”页面。
¡ 填写服务名。
¡ 缺省接入策略选择已创建的策略“AccessPolicy”。
¡ 其它参数可采用缺省配置。
图1-116 增加接入服务配置
# 增加接入用户
单击导航树中的[接入用户管理/接入用户]菜单项,并点击<增加>按钮,进入增加接入用户页面。在接入信息部分:
¡ 选择可接入的用户。
¡ 设置密码。
图1-117 增加接入用户
# 最后单击导航树中的[接入策略管理/业务参数配置/系统配置手工生效]菜单项,使以上配置生效。
(4) 配置Portal服务器
# 配置Portal主页。
单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如图1-118所示。
图1-118 Portal服务器配置页面
# 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如图1-119所示。
¡ 输入IP地址组名为“IPoE_Web_User”。
¡ 输入起始地址为“192.168.0.1”、终止地址为“192.168.0.255”。用户主机IP地址必须包含在该IP地址组范围内。
¡ 其他采用缺省配置。
¡ 单击<确定>按钮完成操作。
图1-119 增加IP地址组配置页面
# 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面,如图1-120所示。
¡ 输入设备名为“NAS”。
¡ 输入IP地址为“4.4.4.2”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/1的IP地址;
¡ 输入密钥为“123456”。
¡ 选择组网方式为“直连”。
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 配置端口组信息
如图1-121所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如图1-122所示。
¡ 输入端口组名为“group”。
¡ 选择IP地址组为“IPoE_Web_User”,用户接入网络时使用的IP地址必须属于所选的IP地址组。
¡ 认证方式选择EAP认证。
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 最后单击导航树中的[接入策略管理/业务参数配置/系统配置手工生效]菜单项,使以上Portal认证服务器配置生效。
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IP地址为192.168.0.2。
[Device] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
-
# 用户认证前域认证通过之后,打开iNode的登录页面,输入服务器地址、和用户名和密码,如图1-123所示。
# 在iNode客户端属性设置里面选择证书认证,选择证书,并勾选<验证服务器证书>,如图1-124所示。
图1-124 设置iNode客户端属性
# iNode客户端属性设置完成后,单击<确定>按钮返回iNode客户端认证页面。
# 在iNode认证页面单击<连接>按钮进行EAP认证,认证成功后可以使用以下的显示命令查看IPoE用户在线信息。
[Device] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
client Web auth
-
# 点击<断开>按钮,通过显示命令查看,此时用户返回认证前域状态。
[Device] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
-
· 802.1X client经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备作为DHCP中继向远端DHCP服务器申请IP地址。
· FTP server是一台内网服务器。
图1-125 IPoE 802.1X认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。
(1) 配置RADIUS服务器
下面以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4.4.4.2/32 {
ipaddr = 4.4.4.2
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4.4.4.2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
user1 Cleartext-Password :="pass1"
以上信息表示:用户名为user1,用户密码为字符串pass1。
(2) 配置DHCP服务器
# 全局开启DHCP。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段192.168.0.0/24,分配的网关地址192.168.0.1和DNS服务器地址8.8.8.8
[DHCP-server-ip-pool-pool1] network 192.168.0.0 24
[DHCP-server-ip-pool-pool1] gateway-list 192.168.0.1
[DHCP-server-dhcp-pool-pool1] dns-list 8.8.8.8
# 将192.168.0.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 192.168.0.1
[DHCP-server-ip-pool-pool1] quit
# 配置缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 4.4.4.2
(3) 配置Device
a. 配置DHCP relay
# 全局开启DHCP。
<Device> system-view
[Device] dhcp enable
# 启用DHCP中继的用户地址表项记录功能。
[Device] dhcp relay client-information record
# 关闭DHCP中继动态用户地址表项定时刷新功能。
[Device] undo dhcp relay client-information refresh enable
# 进入接口Ten-GigabitEthernet3/1/2视图。
[Device] interface ten-gigabitethernet 3/1/2
# 配置接口工作在中继模式。
[Device–Ten-GigabitEthernet3/1/2] dhcp select relay
[Device–Ten-GigabitEthernet3/1/2] quit
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将192.168.0.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址。
[Device] ip pool pool1 bas remote
[Device-ip-pool-pool1] gateway 192.168.0.1 24
[Device-ip-pool-pool1] forbidden-ip 192.168.0.1
[Device-ip-pool-pool1] remote-server 4.4.4.3
[Device-ip-pool-pool1] quit
b. 创建本地用户组
# 创建认证前域用户组,名称为dot1x。
[Device] user-group dot1x
New user group added.
[Device-ugroup-dot1x] quit
c. 配置用于认证前域用户的ACL规则
# 为IPv4高级ACL neiwang创建规则如下:匹配用户组dot1x中用户的目的地址为内网服务器地址的报文。
[Device] acl advanced name neiwang
[Device-acl-ipv4-adv-neiwang] rule 0 permit ip destination 4.4.4.6 0 user-group dot1x
[Device-acl-ipv4-adv-neiwang] quit
# 为IPv4高级ACL ip创建规则如下:匹配用户组dot1x中用户的IP报文。
[Device] acl advanced name ip
[Device-acl-ipv4-adv-ip] rule 0 permit ip user-group dot1x
[Device-acl-ipv4-adv-ip] quit
# 为IPv4高级ACL neiwang_out创建规则如下:匹配用户组dot1x中源地址为内网服务器IP地址的报文。
[Device] acl advanced name neiwang_out
[Device-acl-ipv4-adv-neiwang_out] rule 0 permit ip source 4.4.4.6 0 user-group dot1x
[Device-acl-ipv4-adv-neiwang_out] quit
d. 配置用于认证前域用户的类
# 配置类neiwang,匹配ACL neiwang。
[Device] traffic classifier neiwang operator and
[Device-classifier-neiwang] if-match acl name neiwang
[Device-classifier-neiwang] quit
# 配置类dot1x_deny,匹配ACL ip。
[Device] traffic classifier dot1x_deny operator and
[Device-classifier-dot1x_deny] if-match acl name ip
[Device-classifier-dot1x_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[Device] traffic classifier neiwang_out operator and
[Device-classifier-neiwang_out] if-match acl name neiwang_out
[Device-classifier-neiwang_out] quit
e. 配置流行为
# 配置流行为neiwang,允许用户组dot1x中用户的目的地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang
[Device-behavior-neiwang] filter permit
[Device-behavior-neiwang] quit
# 配置流行为dot1x_deny,禁止用户组dot1x中用户的所有IP报文通过。
[Device] traffic behavior dot1x_deny
[Device-behavior-dot1x_deny] filter deny
[Device-behavior-dot1x_deny] free account
[Device-behavior-dot1x_deny] quit
# 配置流行为neiwang_out,允许用户组dot1x中源地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang_out
[Device-behavior-neiwang_out] filter permit
[Device-behavior-neiwang_out] quit
f. 配置QoS策略
# 配置入方向QoS策略dot1x
[Device] qos policy dot1x
# 为类指定对应的流行为,规则为对于用户组dot1x中的用户:
允许目的地址为内网服务器IP地址的报文通过;
除上述报文外,其余报文均禁止通过。
[Device-qospolicy-dot1x] classifier neiwang behavior neiwang
[Device-qospolicy-dot1x] classifier dot1x_deny behavior dot1x_deny
[Device-qospolicy-dot1x] quit
# 配置出方向QoS策略out
[Device] qos policy out
# 为类指定对应的流行为,规则为:允许用户组dot1x中源地址为内网服务器IP地址的报文通过,其余报文均禁止通过。
[Device-qospolicy-out] classifier neiwang_out behavior neiwang_out
[Device-qospolicy-out] classifier dot1x_deny behavior dot1x_deny
[Device-qospolicy-out] quit
g. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为dot1x。
[Device] qos apply policy dot1x global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out。
[Device] qos apply policy out global outbound
h. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.5
[Device-radius-rs1] primary accounting 4.4.4.5
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
i. 配置认证前域和802.1X认证域
# 配置IPoE用户认证前使用的认证域。
[Device] domain name dm1
[Device-isp-dm1] authentication ipoe none
[Device-isp-dm1] authorization ipoe none
[Device-isp-dm1] accounting ipoe none
# 配置认证前域授权地址池以及用户组。
[Device-isp-dm1] authorization-attribute user-group dot1x
[Device-isp-dm1] authorization-attribute ip-pool pool1
# 配置IPoE用户在802.1X认证阶段使用的认证域。
[Device] domain name dot1x
[Device-isp-dot1x] authentication lan-access radius-scheme rs1
[Device-isp-dot1x] authorization lan-access radius-scheme rs1
[Device-isp-dot1x] accounting lan-access radius-scheme rs1
# 配置授权地址池。(在配置了802.1X认证优先时该步骤必配,当前举例该步骤可选)
[Device-isp-dot1x] authorization-attribute ip-pool pool1
[Device-isp-dot1x] quit
j. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 配置IPoE用户采用802.1X认证方式。
当网络中存在使用IOS系统的终端用户,并且用户使用IOS系统自带的802.1X服务进行身份认证时,推荐配置802.1X认证优先,否则可能出现用户无法使用IOS系统自带的802.1X服务进行802.1X认证的情况。本节以未配置802.1X认证优先方式作为示例。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber authentication-method dot1x
The operation might cut all users on this interface. Continue?[Y/N]:y
# 配置认证前域为dm1,802.1X认证域为dot1x。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber pre-auth domain dm1
[Device–Ten-GigabitEthernet3/1/2] dot1x mandatory-domain dot1x
# (可选)配置当IPoE用户的IP地址被释放时设备强制该IPoE用户关联的802.1X用户下线。(当管理员希望在IPoE用户因IP地址租约期满、续约失败或设备收到用户发送的DHCP-RELEASE、DHCP-DECLINE和DHCP-NAK报文下线时,同时下线该用户的802.1X客户端,该步骤必配)
[Device–Ten-GigabitEthernet3/1/2] ip subscriber dhcp-release-ip dot1x-offline
# (可选)配置当IPoE用户的802.1X客户端下线时强制该IPoE用户下线。(如果管理员希望当IPoE用户的802.1X客户端发起下线时,同时下线该IPoE用户,即清除IPoE用户会话,该步骤必配)
[Device–Ten-GigabitEthernet3/1/2] ip subscriber dot1x-offline user-offline
# (可选)开启在线用户握手功能和握手成功后发送在线握手成功报文功能。(如果管理员希望对802.1X客户端进行在线探测,当探测失败时下线该802.1X客户端,该步骤必配,探测时间间隔可通过dot1x timer handshake-period命令设置,缺省为15秒;允许探测失败的最大次数可以通过dot1x retry命令设置,缺省为2次)
[Device–Ten-GigabitEthernet3/1/2] dot1x handshake
[Device–Ten-GigabitEthernet3/1/2] dot1x handshake reply enable
# (可选)开启在线用户握手安全功能。(在iNode客户端和iMC服务器配合使用的组网环境,该步骤必配)
[Device–Ten-GigabitEthernet3/1/2] dot1x handshake secure
[Device–Ten-GigabitEthernet3/1/2] quit
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IP地址为192.168.0.2。
[Device] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x5c XGE3/1/2 192.168.0.2 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
-
# 802.1X客户端使用用户名user1,密码pass1,进行802.1X认证,可以使用以下的显示命令查看IPoE用户在线信息。
[Device] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x5c XGE3/1/2 192.168.0.2 000c-29a6-b656 -/-
user1 L2 IPoE dynamic
-
如图1-126所示:Device为某学校的一台BRAS设备,为学校用户提供IPoE接入服务。要求:
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备作为DHCP中继向远端DHCP服务器申请IP地址。
· 由一台安装了H3C iMC的服务器同时承担RADIUS服务器、Portal认证服务器和Portal Web服务器的职责。本举例中使用的iMC版本为:iMC PLAT 7.1(E0303)、iMC UAM 7.1(E0305)、iMC EIP 7.1(E0305))。
· FTP server是一台内网服务器。
· Web认证通过后限速5Mbps。
· 当学生未通过IPoE Web认证、或通过IPoE Web认证但已欠费时,依旧允许学生继续访问校内网站,从而保证学生的正常学习和交流不受影响。
· 当学生欠费时,学生仍可访问运营商缴费页面或通过运营商推送的缴费页面来补缴欠费,从而保证学生能够快速恢复对Internet网络的访问。
图1-126 双栈IPoE用户普通Web认证配置组网图
为了确保在用户未认证或欠费的情况依旧能够访问校园网及主动完成缴费,可通过对象组配置URL白名单功能,将校内网站地址(这里以FTP服务器、iMC服务器地址为例)、缴费页面地址(这里以https://www.alipay.com/xxx为例)加入URL白名单中。
为了便于对用户进行QoS策略控制,按用户所处的状态不同,分别做不同的用户组授权处理:
· 前域阶段用户:该阶段用户尚未通过IPoE Web认证,需要做访问控制,为这类用户授权名称为pre的用户组(为便于描述称该用户组为前域用户组)。
· 欠费用户:需要做访问控制,为这类用户授权名称为qianfei的用户组(为便于描述称该用户组为欠费用户组)。
· 正常缴费用户:不对这类用户做访问限制,为其授权名称为web的用户组(为便于描述称该用户组为web用户组)。
为前域用户组和欠费用户组中的用户分别做如下QoS策略控制:
· 前域用户组中的用户
¡ 可以访问URL白名单中的地址。
¡ 访问非URL白名单中的地址时,如果是HTTP/HTTPS访问请求,则全部重定向到Web认证页面(本例为http://www.ipv4.web.com和http://www.ipv6.web.com),其余流量全部丢弃。
· 欠费用户组中的用户
¡ 可以访问URL白名单中的地址。
¡ 访问非URL白名单中的地址时,如果是HTTP/HTTPS访问请求,则全部重定向到缴费页面(本例为https://www.alipay.com/xxx),其余流量全部丢弃。
请正确设置DNS服务器,以便服务器可以根据双栈IPoE用户先上线的协议栈类型,解析出Web认证页面http://www.ipv4.web.com(或http://www.ipv6.web.com)对应的IPv4 URL地址(或IPv6 URL地址)。DNS服务器具体设置过程略。
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
本功能需要与AAA配合使用,进行本特性配置前,请确保使用的AAA服务器支持H3C的246号(H3C-Auth-Detail-Result)和250号(H3c-WEB-URL)私有属性,并且可以在用户欠费时下发此属性。
246号属性(H3C-Auth-Detail-Result),用于指示用户上线结果明细,各取值含义如下:
· 0:正常缴费用户。该情况下,服务器会取消授权的250号属性,允许用户访问任意网络资源。
· 1:用户处于欠费状态。该情况下,服务器同时会下发250号属性,允许用户访问白名单中的网络资源。若用户访问其它网络资源,将被重定向到250号属性指定的重定向URL
· 2:用户宽带使用到期。该情况下,服务器同时会下发250号属性。用户的首次Web访问请求将被重定向到250号属性指定的重定向URL
250号属性(H3c-WEB-URL),用于携带用户Web重定向URL,与246号属性配合使用。
(1) 配置DHCP服务器
a. 配置IP地址池
# 开启DHCP服务。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1的IP地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段192.168.0.0/24和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool1] network 192.168.0.0 24
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
# 配置为用户分配的网关地址为192.168.0.1。
[DHCP-server-ip-pool-pool1] gateway-list 192.168.0.1
# 将192.168.0.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 192.168.0.1
[DHCP-server-ip-pool-pool1] quit
# 配置缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 4.4.4.2
b. 配置IPv6地址池
# 创建名称为pool2的IPv6地址池并进入其视图。
[DHCP-server] ipv6 pool pool2
# 配置地址池动态分配的IPv6地址网段192::/64和DNS服务器地址8::8。
[DHCP-server-ipv6-pool-pool2] network 192::/64
[DHCP-server-ipv6-pool-pool2] dns-server 8::8
[DHCP-server-ipv6-pool-pool2] quit
# 将192::1设置为禁止地址。
[DHCP-server] ipv6 dhcp server forbidden-address 192::1
# 配置接口Ten-GigabitEthernet3/1/1工作在DHCPv6服务器模式。
[DHCP-server] interface ten-gigabitethernet 3/1/1
[DHCP-server-Ten-GigabitEthernet3/1/1] ipv6 dhcp select server
[DHCP-server-Ten-GigabitEthernet3/1/1] quit
# 配置缺省路由。
[DHCP-server] ipv6 route-static :: 0 4::2
a. 配置DHCP中继
# 全局开启DHCP。
[Device] dhcp enable
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将192.168.0.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址。
[Device] ip pool pool1 bas remote
[Device-ip-pool-pool1] gateway 192.168.0.1 24
[Device-ip-pool-pool1] forbidden-ip 192.168.0.1
[Device-ip-pool-pool1] remote-server 4.4.4.3
[Device-ip-pool-pool1] quit
# 创建IPv6远端地址池pool2,指定匹配该地址池的DHCPv6客户端所在的网段地址,并指定IPv6远端地址池对应的DHCP服务器地址。
[Device] ipv6 pool pool2
[Device-ipv6-pool-pool2] gateway-list 192::1
[Device-ipv6-pool-pool2] network 192::/64 export-route
[Device-ipv6-pool-pool2] remote-server 4::3
[Device-ipv6-pool-pool2] quit
# 配置接口工作在DHCPv4中继模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] dhcp select relay
# 配置自动生成IPv6链路本地地址,该IPv6链路本地地址作为用户的网关。
[Device–Ten-GigabitEthernet3/1/2] ipv6 address auto link-local
# 配置接口工作在DHCPv6中继模式。
[Device–Ten-GigabitEthernet3/1/2] ipv6 dhcp select relay
# 取消设备发布RA消息的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址。配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[Device–Ten-GigabitEthernet3/1/2] undo ipv6 nd ra halt
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd autoconfig managed-address-flag
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd autoconfig other-flag
# 为避免终端使用临时IPv6地址进行认证,从而导致认证失败,在用户上线接口配置前缀不在RA消息中发布,从而避免终端使用前缀生成临时IPv6地址。
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd ra prefix 192::/64 no-advertise
[Device–Ten-GigabitEthernet3/1/2] quit
b. 配置Portal认证服务器
# 配置IPv4 Portal认证服务器:名称为newpt1,IP地址为4.4.4.5,密钥为明文123456。
[Device] portal server newpt1
[Device-portal-server-newpt1] ip 4.4.4.5 key simple 123456
[Device-portal-server-newpt1] quit
# 配置IPv6 Portal认证服务器:名称为newpt2,IPv6地址为4::5,密钥为明文123456。
[Device] portal server newpt2
[Device-portal-server-newpt2] ipv6 4::5 key simple 123456
[Device-portal-server-newpt2] quit
c. 配置HTTPS的内部侦听端口
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[Device] http-redirect https-port 11111
d. 配置通过查询ARP/ND表项来获取用户信息
[Device] portal access-info trust arp
[Device] portal access-info trust nd
e. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[Device] user-group pre
New user group added.
[Device-ugroup-pre] quit
# 创建欠费用户组,名称为qianfei。
[Device] user-group qianfei
New user group added.
[Device-ugroup-qianfei] quit
# 创建web用户组,名称为web。
[Device] user-group web
New user group added.
[Device-ugroup-web] quit
f. 配置URL白名单
# 创建名称为freeurl_ipv4的IP地址对象组(即URL白名单),并将校内网站地址、缴费页面地址加入URL白名单中。
[Device] object-group ip address freeurl_ipv4
[Device-obj-grp-ip-freeurl_ipv4] network host address 4.4.4.1 //FTP服务器地址
[Device-obj-grp-ip-freeurl_ipv4] network host address 4.4.4.5 //iMC服务器地址
[Device-obj-grp-ip-freeurl-ipv4] network host name https://www.alipay.com/xxx //缴费页面地址
[Device-obj-grp-ip-freeurlipv4] quit
# 创建名称为freeurl_ipv6的IPv6地址对象组(即URL白名单),并将校内网站地址、缴费页面地址加入URL白名单中。
[Device] object-group ipv6 address freeurl_ipv6
[Device-obj-grp-ipv6-freeurl_ipv6] network host address 4::1 //FTP服务器地址
[Device-obj-grp-ipv6-freeurl_ipv6] network host address 4::5 //iMC服务器地址
[Device-obj-grp-ipv6-freeurl_ipv6] network host name https://www.alipay.com/xxx //缴费页面地址
[Device-obj-grp-ipv6-freeurl_ipv6] quit
g. 配置URL白名单的公共ACL规则(同时适用于认证前域用户和欠费用户)
# 分别为IPv4和IPv6高级ACL freeurl_permit_in创建规则如下:允许匹配pre用户组和qianfei用户组中用户访问白名单中地址的报文。
[Device] acl advanced name freeurl_permit_in
[Device-acl-ipv4-adv-freeurl_permit_in] rule 10 permit ip destination object-group freeurl_ipv4 user-group pre
[Device-acl-ipv4-adv-freeurl_permit_in] rule 20 permit ip destination object-group freeurl_ipv4 user-group qianfei
[Device-acl-ipv4-adv-freeurl_permit_in] quit
[Device] acl ipv6 advanced name freeurl_permit_in
[Device-acl-ipv6-adv-freeurl_permit_in] rule 10 permit ipv6 destination object-group freeurl_ipv6 user-group pre
[Device-acl-ipv6-adv-freeurl_permit_in] rule 20 permit ipv6 destination object-group freeurl_ipv6 user-group qianfei
[Device-acl-ipv6-adv-freeurl_permit_in] quit
# 分别为IPv4和IPv6高级ACL freeurl_permit_out创建规则如下:匹配pre用户组和qianfei用户组中来自白名单中地址的报文。
[Device] acl advanced name freeurl_permit_out
[Device-acl-ipv4-adv-freeurl_permit_out] rule 10 permit ip source object-group freeurl_ipv4 user-group pre
[Device-acl-ipv4-adv-freeurl_permit_out] rule 20 permit ip source object-group freeurl_ipv4 user-group qianfei
[Device-acl-ipv4-adv-freeurl_permit_out] quit
[Device] acl ipv6 advanced name freeurl_permit_out
[Device-acl-ipv6-adv-freeurl_permit_out] rule 10 permit ipv6 source object-group freeurl_ipv6 user-group pre
[Device-acl-ipv6-adv-freeurl_permit_out] rule 20 permit ipv6 source object-group freeurl_ipv6 user-group qianfei
[Device-acl-ipv6-adv-freeurl_permit_out] quit
h. 配置用于认证前域用户的ACL规则
# 分别为IPv4和IPv6高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[Device] acl advanced name web_http
[Device-acl-ipv4-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[Device-acl-ipv4-adv-web_http] quit
[Device] acl ipv6 advanced name web_http
[Device-acl-ipv6-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[Device-acl-ipv6-adv-web_http] quit
# 分别为IPv4和IPv6高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[Device] acl advanced name web_https
[Device-acl-ipv4-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[Device-acl-ipv4-adv-web_https] quit
[Device] acl ipv6 advanced name web_https
[Device-acl-ipv6-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[Device-acl-ipv6-adv-web_https] quit
# 分别为IPv4和IPv6高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[Device] acl advanced name ip
[Device-acl-ipv4-adv-ip] rule 0 permit ip user-group pre
[Device-acl-ipv4-adv-ip] quit
[Device] acl ipv6 advanced name ip
[Device-acl-ipv6-adv-ip] rule 0 permit ipv6 user-group pre
[Device-acl-ipv6-adv-ip] quit
i. 配置用于欠费用户的ACL规则
# 分别为IPv4和IPv6高级ACL qianfei_web_http创建规则如下:匹配qianfei用户组中用户访问80端口的TCP报文(即HTTP报文)。
[Device] acl advanced name qianfei_web_http
[Device-acl-ipv4-adv-qianfei_web_http] rule 0 permit tcp destination-port eq www user-group qianfei
[Device-acl-ipv4-adv-qianfei_web_http] quit
[Device] acl ipv6 advanced name qianfei_web_http
[Device-acl-ipv6-adv-qianfei_web_http] rule 0 permit tcp destination-port eq www user-group qianfei
[Device-acl-ipv6-adv-qianfei_web_http] quit
# 分别为IPv4和IPv6高级ACL qianfei_web_https创建规则如下:匹配qianfei用户组中用户访问443端口的TCP报文(即HTTPS报文)。
[Device] acl advanced name qianfei_web_https
[Device-acl-ipv4-adv-qianfei_web_https] rule 0 permit tcp destination-port eq 443 user-group qianfei
[Device-acl-ipv4-adv-qianfei_web_https] quit
[Device] acl ipv6 advanced name qianfei_web_https
[Device-acl-ipv6-adv-qianfei_web_https] rule 0 permit tcp destination-port eq 443 user-group qianfei
[Device-acl-ipv6-adv-qianfei_web_https] quit
# 分别为IPv4和IPv6高级ACL qianfei_ip创建规则如下:匹配qianfei用户组中用户的IP报文。
[Device] acl advanced name qianfei_ip
[Device-acl-ipv4-adv-qianfei_ip] rule 0 permit ip user-group qianfei
[Device-acl-ipv4-adv-qianfei_ip] quit
[Device] acl ipv6 advanced name qianfei_ip
[Device-acl-ipv6-adv-qianfei_ip] rule 0 permit ipv6 user-group qianfei
[Device-acl-ipv6-adv-qianfei_ip] quit
j. 配置URL白名单的公共类(同时适用于认证前域用户和欠费用户)
# 配置类freeurl_permit_in,匹配ACL freeurl_permit_in。
[Device] traffic classifier freeurl_permit_in operator or
[Device-classifier-freeurl_permit_in] if-match acl name freeurl_permit_in
[Device-classifier-freeurl_permit_in] if-match acl ipv6 name freeurl_permit_in
[Device-classifier-freeurl_permit_in] quit
# 配置类freeurl_permit_out,匹配ACL freeurl_permit_out。
[Device] traffic classifier freeurl_permit_out operator or
[Device-classifier-freeurl_permit_out] if-match acl name freeurl_permit_out
[Device-classifier-freeurl_permit_out] if-match acl ipv6 name freeurl_permit_out
[Device-classifier-freeurl_permit_out] quit
k. 配置用于认证前域用户的类
# 配置类web_http,匹配ACL web_http。
[Device] traffic classifier web_http operator or
[Device-classifier-web_http] if-match acl name web_http
[Device-classifier-web_http] if-match acl ipv6 name web_http
[Device-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[Device] traffic classifier web_https operator or
[Device-classifier-web_https] if-match acl name web_https
[Device-classifier-web_https] if-match acl ipv6 name web_https
[Device-classifier-web_https] quit
# 配置类web_deny,匹配ACL ip。
[Device] traffic classifier web_deny operator or
[Device-classifier-web_deny] if-match acl name ip
[Device-classifier-web_deny] if-match acl ipv6 name ip
[Device-classifier-web_deny] quit
l. 配置用于欠费用户的类
# 配置类qianfei_web_http,匹配ACL qianfei_web_http。
[Device] traffic classifier qianfei_web_http operator or
[Device-classifier-qianfei_web_http] if-match acl name qianfei_web_http
[Device-classifier-qianfei_web_http] if-match acl ipv6 name qianfei_web_http
[Device-classifier-qianfei_web_http] quit
# 配置类qianfei_web_https,匹配ACL qianfei_web_https。
[Device] traffic classifier qianfei_web_https operator or
[Device-classifier-qianfei_web_https] if-match acl name qianfei_web_https
[Device-classifier-qianfei_web_https] if-match acl ipv6 name qianfei_web_https
[Device-classifier-qianfei_web_https] quit
# 配置类qianfei_web_deny,匹配ACL qianfei_ip。
[Device] traffic classifier qianfei_web_deny operator or
[Device-classifier-qianfei_web_deny] if-match acl name qianfei_ip
[Device-classifier-qianfei_web_deny] if-match acl ipv6 name qianfei_ip
[Device-classifier-qianfei_web_deny] quit
m. 配置URL白名单的公共流行为(同时适用于认证前域用户和欠费用户)
# 配置流行为freeurl_permit_in,允许pre用户组和qianfei用户组中用户访问URL白名单中的地址。
[Device] traffic behavior freeurl_permit_in
[Device-behavior-freeurl_permit_in] filter permit
[Device-behavior-freeurl_permit_in] free account
[Device-behavior-freeurl_permit_in] quit
# 配置流行为freeurl_permit_out,允许pre用户组和qianfei用户组中源地址为URL白名单中地址的报文通过。
[Device] traffic behavior freeurl_permit_out
[Device-behavior-freeurl_permit_out] filter permit
[Device-behavior-freeurl_permit_out] free account
[Device-behavior-freeurl_permit_out] quit
n. 配置前域用户流行为
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[Device] traffic behavior web_http
[Device-behavior-web_http] redirect http-to-cpu
[Device-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[Device] traffic behavior web_https
[Device-behavior-web_https] redirect https-to-cpu
[Device-behavior-web_https] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[Device] traffic behavior web_deny
[Device-behavior-web_deny] filter deny
[Device-behavior-web_deny] free account
[Device-behavior-web_deny] quit
o. 配置欠费用户流行为
# 配置流行为qianfei_web_http,将qianfei用户组中用户访问80端口的TCP报文(即HTTP报文)重定向到CPU。
[Device] traffic behavior qianfei_web_http
[Device-behavior-qianfei_web_http] redirect http-to-cpu
[Device-behavior-qianfei_web_http] quit
# 配置流行为qianfei_web_https,将qianfei用户组中用户访问443端口的TCP报文(即HTTPS报文)重定向到CPU。
[Device] traffic behavior qianfei_web_https
[Device-behavior-qianfei_web_https] redirect https-to-cpu
[Device-behavior-qianfei_web_https] quit
# 配置流行为qianfei_web_deny,禁止qianfei用户组中用户的所有IP报文通过。
[Device] traffic behavior qianfei_web_deny
[Device-behavior-qianfei_web_deny] filter deny
[Device-behavior-qianfei_web_deny] free account
[Device-behavior-qianfei_web_deny] quit
p. 配置QoS策略
# 配置入方向QoS策略web
[Device] qos policy web
# 放行前域用户组和欠费用户组到白名单中地址的流量。即在学生未通过IPoE Web认证、或通过IPoE Web认证但已欠费时,依旧允许学生继续访问校内网站,从而保证学生的正常学习和交流不受影响,以及允许学生主动访问缴费页面完成缴费。
[Device-qospolicy-web] classifier freeurl_permit_in behavior freeurl_permit_in
# 将前域用户组HTTP重定向到Web认证页面。
[Device-qospolicy-web] classifier web_http behavior web_http
# 将前域用户组HTTPS重定向到Web认证页面。
[Device-qospolicy-web] classifier web_https behavior web_https
# 将欠费用户组HTTP重定向缴费页面。
[Device-qospolicy-web] classifier qianfei_web_http behavior qianfei_web_http
# 将欠费用户组HTTPS重定向到缴费页面。
[Device-qospolicy-web] classifier qianfei_web_https behavior qianfei_web_https
# 将前域用户组其余流量都丢弃。
[Device-qospolicy-web] classifier web_deny behavior web_deny
# 将欠费用户组其余流量都丢弃。
[Device-qospolicy-web] classifier qianfei_web_deny behavior qianfei_web_deny
[Device-qospolicy-web] quit
# 配置出方向QoS策略out。
[Device] qos policy out
# 允许前域用户组和欠费用户组源地址为URL白名单中地址的报文通过。
[Device-qospolicy-out] classifier freeurl_permit_out behavior freeurl_permit_out
# 将前域用户组其余流量都丢弃。
[Device-qospolicy-out] classifier web_deny behavior web_deny
# 将欠费用户组其余流量都丢弃。
[Device-qospolicy-out] classifier qianfei_web_deny behavior qianfei_web_deny
[Device-qospolicy-out] quit
q. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[Device] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[Device] qos apply policy out global outbound
r. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.5
[Device-radius-rs1] primary accounting 4.4.4.5
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
# (可选)开启RADIUS session control功能(使用iMC作为RADIUS服务器时建议配置该功能)。
[Device] radius session-control enable
# 设置RADIUS DAE客户端的IP地址为4.4.4.5,与RADIUS DAE客户端交互DAE报文时使用的共享密钥为明文radius。
[Device] radius dynamic-author server
[Device-radius-da-server] client ip 4.4.4.5 key simple radius
[Device-radius-da-server] quit
s. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[Device] domain name dm1
[Device-isp-dm1] authentication ipoe none
[Device-isp-dm1] authorization ipoe none
[Device-isp-dm1] accounting ipoe none
# 配置前域授权用户组和地址池。
[Device-isp-dm1] authorization-attribute user-group pre
[Device-isp-dm1] authorization-attribute ip-pool pool1
[Device-isp-dm1] authorization-attribute ipv6-pool pool2
# 配置Web认证页面URL。
[Device-isp-dm1] web-server url http://www.ipv4.web.com
[Device-isp-dm1] web-server ipv6-url http://www.ipv6.web.com
[Device-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域,并授权CAR和用户组。
[Device] domain name dm2
[Device-isp-dm2] authentication ipoe radius-scheme rs1
[Device-isp-dm2] authorization ipoe radius-scheme rs1
[Device-isp-dm2] accounting ipoe radius-scheme rs1
[Device-isp-dm2] authorization-attribute car inbound cir 5120 outbound cir 5120
[Device-isp-dm2] authorization-attribute user-group web
[Device-isp-dm2] quit
t. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 配置IPoE用户采用Web认证方式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber authentication-method web
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber pre-auth domain dm1
[Device–Ten-GigabitEthernet3/1/2] ip subscriber web-auth domain dm2
[Device–Ten-GigabitEthernet3/1/2] quit
(3) 配置RADIUS服务器
a. 配置接入设备
登录进入iMC管理平台,选择“用户”页签,单击导航树中的[接入策略管理/接入设备管理/接入设备配置]菜单项,进入接入设备配置页面,在该页面中单击<增加>按钮,进入如图1-44所示增加接入设备页面。
- 输入共享密钥为:radius。
- 其他采用缺省配置。
图1-127 增加接入设备
在该页面中设备列表下方单击<手工增加>,在如图1-45所示页面输入接入设备地址4.4.4.2并单击<确定>。
图1-128 手动增加接入设备
b. 增加接入策略
单击导航树中的[接入策略管理/接入策略管理]菜单项,进入接入策略管理页面,在该页面中单击<增加>按钮,进入如图1-46所示增加接入策略页面。
- 输入接入策略名为:AccessPolicy。
- 其他采用缺省配置。
图1-129 增加接入策略
c. 增加接入服务
单击导航树中的[接入策略管理/接入服务管理]菜单项,进入接入服务管
理页面,在该页面中单击<增加>按钮,进入如图1-47所示增加接入服务页面。
- 输入服务名为:IPoE_Server
- 缺省接入策略选择已创建的策略“AccessPolicy”。
- 其他采用缺省配置。
图1-130 增加接入服务
d. 在IMC界面增加用户
单击导航树中的[用户管理/增加用户]菜单项,进入如图1-48所示增加用户页面,填写用户姓名和证件号码为:IPoE_Web001和001。
图1-131 增加用户
单击<确定>按钮后完成用户的添加。
e. 增加接入用户
单击导航树中的[接入用户管理/接入用户]菜单项,进入接入用户页面,在该页面中单击<增加>按钮,进入如图1-49所示增加接入用户页面。
- 用户姓名选择:IPoE_Web001
- 帐号名填写为:user1
- 密码为:pass1
- 接入服务选择之前已创建的IPoE_Server
图1-132 增加接入用户
(4) 配置Portal服务器
a. 配置Portal主页。
单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如图1-50所示。
图1-133 Portal服务器配置页面
b. 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如图1-51所示。
- 输入IP地址组名为“IPoE_Web_User”;
- 输入起始地址为“192.168.0.1”、终止地址为“192.168.0.255”。用户主机IP地址必须包含在该IP地址组范围内;
- 其他采用缺省配置;
- 单击<确定>按钮完成操作。
图1-134 增加IP地址组配置页面(IPv4)
如图1-135所示,继续上述操作添加IPv6地址组。
- 输入IP地址组名为“IPoE_Web_User-2”;
- IPv6选项框选择“是”;
- 输入起始地址为“192::1”、终止地址为“192::FFFF”。用户主机IPv6地址必须包含在该IP地址组范围内;
- 其他采用缺省配置;
- 单击<确定>按钮完成操作。
图1-135 增加IP地址组配置页面(IPv6)
c. 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面,如图1-52所示。
- 输入设备名为“NAS”;
- 输入IP地址为“4.4.4.2”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/1的IP地址;
- 输入密钥为“123456”;
- 选择组网方式为“直连”;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-136 增加设备信息配置页面(IPv4)
如图1-137所示,继续上述操作添加设备的IPv6信息。
- 输入设备名为“NAS-2”;
- 版本选择“Portal 3.0”;
- 输入IP地址为“4::2”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/1的IP地址;
- 输入密钥为“123456”;
- 选择组网方式为“直连”;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
d. 配置端口组信息
如图1-53所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
图1-138 设备信息列表
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如图1-54所示。
- 输入端口组名为“group”;
- 选择IP地址组为“IPoE_Web_User”,用户接入网络时使用的IP地址必须属于所选的IP地址组;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-139 增加端口组信息配置页面(IPv4)
如图1-140所示,继续上述操作添加端口组的IPv6信息。
- 输入端口组名为“group-2”;
- 选择IP地址组为“IPoE_Web_User-2”,用户接入网络时使用的IPv6地址必须属于所选的IPv6地址组;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IPv4地址为192.168.0.2,IPv6地址为192::2。
[Device] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
192::2
# 用户认证前域认证通过之后,登录Web页面,如图1-55所示。
图1-141 登录Web页面
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[Device] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
user1@dm2 Web auth
192::2
# 当用户欠费时,由AAA服务器向用户下发如下属性:
user-name =user1@dm2 , H3C-User-Group = qianfei,h3c-web-url = "www.alipay.com/xxx",H3C-Auth_Detail_Result = 1
其中,各属性含义如下:
· user-name =user1@dm2 //欠费用户的用户名为user1@dm2。
· H3C-User-Group = qianfei //为欠费用户授权名称为名称为qianfei的用户组。
· H3C-Auth-Detail-Result=1 //为1时代表欠费,用户只能访问白名单内的地址,其它地址都被禁止,访问非白名单的HTTP/HTTPS时,会被重定向到H3c-WEB-URL中的网址。
· H3c-WEB-URL="https://www.alipay.com/xxx" //此处为欠费用户被重定向的网址
此时用户只能访问白名单中的地址,其它非HTTP的流量都不能访问,当访问非白名单的HTTP流量时,会被强制重定向到https://www.alipay.com/xxx。例如在浏览器中输入http://www.163.com/之后,被重定向至缴费页面,如图1-142所示。
# 当用户完成缴费后,由AAA服务器向用户下发如下属性:
user-name =user1@dm2 , H3C-User-Group =web ,H3C-Auth_Detail_Result = 0
其中,各属性含义如下:
· user-name =user1@dm2 //缴费用户的用户名为user1@dm2。
· H3C-User-Group =web //为缴费用户授权名称为web的用户组,即取消为该用户授权的欠费用户组。
· H3C-Auth-Detail-Result=0 //为0时取消授权的重定向。
此时用户能访问任意网络资源,例如在浏览器中输入http://www.baidu.com/之后,可正常弹出所访问页面。
如图1-143所示:Device为某学校的一台BRAS设备,为学校用户提供IPoE接入服务。要求:
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备作为DHCP中继向远端DHCP服务器申请IP地址。
· 由一台安装了H3C iMC的服务器同时承担RADIUS服务器、Portal认证服务器和Portal Web服务器的职责。本举例中使用的iMC版本为:iMC PLAT 7.1(E0303)、iMC UAM 7.1(E0305)、iMC EIP 7.1(E0305))。
· FTP server是一台内网服务器。
· Web认证通过后限速5Mbps。
· 仅在用户IPv4协议栈通过Web认证上线的情况下才允许该用户IPv6协议栈上线,并且根据IPv4协议栈授权属性自动为IPv6协议栈分配相应的地址。
图1-143 双栈IPoE用户IPv6智能多出口Web认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 设置DNS服务器
请正确设置DNS服务器,以便服务器可以根据双栈IPoE用户先上线的协议栈类型,解析出Web认证页面http://www.ipv4.web.com(或http://www.ipv6.web.com)对应的IPv4 URL地址(或IPv6 URL地址)。DNS服务器具体设置过程略。
(2) 配置DHCP服务器
a. 配置IP地址池
# 开启DHCP服务。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1的IP地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段192.168.0.0/24和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool1] network 192.168.0.0 24
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
# 配置为用户分配的网关地址为192.168.0.1。
[DHCP-server-ip-pool-pool1] gateway-list 192.168.0.1
# 将192.168.0.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 192.168.0.1
[DHCP-server-ip-pool-pool1] quit
# 配置缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 4.4.4.2
b. 配置IPv6地址池
# 创建名称为pool2的IPv6地址池并进入其视图。
[DHCP-server] ipv6 pool pool2
# 配置地址池动态分配的IPv6地址网段192::/64和DNS服务器地址8::8。
[DHCP-server-ipv6-pool-pool2] network 192::/64
[DHCP-server-ipv6-pool-pool2] dns-server 8::8
[DHCP-server-ipv6-pool-pool2] quit
# 将192::1设置为禁止地址。
[DHCP-server] ipv6 dhcp server forbidden-address 192::1
# 配置接口Ten-GigabitEthernet3/1/1工作在DHCPv6服务器模式。
[DHCP-server] interface ten-gigabitethernet 3/1/1
[DHCP-server-Ten-GigabitEthernet3/1/1] ipv6 dhcp select server
[DHCP-server-Ten-GigabitEthernet3/1/1] quit
# 配置缺省路由。
[DHCP-server] ipv6 route-static :: 0 4::2
(3) 配置Device
a. 配置DHCP中继
# 全局开启DHCP。
[Device] dhcp enable
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将192.168.0.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址。
[Device] ip pool pool1 bas remote
[Device-ip-pool-pool1] gateway 192.168.0.1 24
[Device-ip-pool-pool1] forbidden-ip 192.168.0.1
[Device-ip-pool-pool1] remote-server 4.4.4.3
[Device-ip-pool-pool1] quit
# 创建IPv6远端地址池pool2,指定匹配该地址池的DHCPv6客户端所在的网段地址,并指定IPv6远端地址池对应的DHCP服务器地址。
[Device] ipv6 pool pool2
[Device-ipv6-pool-pool2] gateway-list 192::1
[Device-ipv6-pool-pool2] network 192::/64 export-route
[Device-ipv6-pool-pool2] remote-server 4::3
[Device-ipv6-pool-pool2] quit
# 配置接口工作在DHCPv4中继模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] dhcp select relay
# 配置自动生成IPv6链路本地地址,该IPv6链路本地地址作为用户的网关。
[Device–Ten-GigabitEthernet3/1/2] ipv6 address auto link-local
# 配置接口工作在DHCPv6中继模式。
[Device–Ten-GigabitEthernet3/1/2] ipv6 dhcp select relay
# 取消设备发布RA消息的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址。配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[Device–Ten-GigabitEthernet3/1/2] undo ipv6 nd ra halt
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd autoconfig managed-address-flag
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd autoconfig other-flag
# 为避免终端使用临时IPv6地址进行认证,从而导致认证失败,在用户上线接口配置前缀不在RA消息中发布,从而避免终端使用前缀生成临时IPv6地址。
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd ra prefix 192::/64 no-advertise
[Device–Ten-GigabitEthernet3/1/2] quit
b. 配置Portal认证服务器
# 配置IPv4 Portal认证服务器:名称为newpt1,IP地址为4.4.4.5,密钥为明文123456。
[Device] portal server newpt1
[Device-portal-server-newpt1] ip 4.4.4.5 key simple 123456
[Device-portal-server-newpt1] quit
# 配置IPv6 Portal认证服务器:名称为newpt2,IPv6地址为4::5,密钥为明文123456。
[Device] portal server newpt2
[Device-portal-server-newpt2] ipv6 4::5 key simple 123456
[Device-portal-server-newpt2] quit
c. 配置HTTPS的内部侦听端口
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[Device] http-redirect https-port 11111
d. 配置通过查询ARP/ND表项来获取用户信息
[Device] portal access-info trust arp
[Device] portal access-info trust nd
e. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[Device] user-group pre
New user group added.
[Device-ugroup-pre] quit
f. 配置用于认证前域用户的ACL规则
# 分别为IPv4和IPv6高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[Device] acl advanced name web_permit
[Device-acl-ipv4-adv-web_permit] rule 0 permit ip destination 4.4.4.5 0 user-group pre
[Device-acl-ipv4-adv-web_permit] quit
[Device] acl ipv6 advanced name web_permit
[Device-acl-ipv6-adv-web_permit] rule 0 permit ipv6 destination 4::5 128 user-group pre
[Device-acl-ipv6-adv-web_permit] quit
# 分别为IPv4和IPv6高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[Device] acl advanced name neiwang
[Device-acl-ipv4-adv-neiwang] rule 0 permit ip destination 4.4.4.1 0 user-group pre
[Device-acl-ipv4-adv-neiwang] quit
[Device] acl ipv6 advanced name neiwang
[Device-acl-ipv6-adv-neiwang] rule 0 permit ipv6 destination 4::1 128 user-group pre
[Device-acl-ipv6-adv-neiwang] quit
# 分别为IPv4和IPv6高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[Device] acl advanced name web_http
[Device-acl-ipv4-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[Device-acl-ipv4-adv-web_http] quit
[Device] acl ipv6 advanced name web_http
[Device-acl-ipv6-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[Device-acl-ipv6-adv-web_http] quit
# 分别为IPv4和IPv6高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[Device] acl advanced name web_https
[Device-acl-ipv4-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[Device-acl-ipv4-adv-web_https] quit
[Device] acl ipv6 advanced name web_https
[Device-acl-ipv6-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[Device-acl-ipv6-adv-web_https] quit
# 分别为IPv4和IPv6高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[Device] acl advanced name ip
[Device-acl-ipv4-adv-ip] rule 0 permit ip user-group pre
[Device-acl-ipv4-adv-ip] quit
[Device] acl ipv6 advanced name ip
[Device-acl-ipv6-adv-ip] rule 0 permit ipv6 user-group pre
[Device-acl-ipv6-adv-ip] quit
# 分别为IPv4和IPv6高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[Device] acl advanced name neiwang_out
[Device-acl-ipv4-adv-neiwang_out] rule 0 permit ip source 4.4.4.1 0 user-group pre
[Device-acl-ipv4-adv-neiwang_out] quit
[Device] acl ipv6 advanced name neiwang_out
[Device-acl-ipv6-adv-neiwang_out] rule 0 permit ipv6 source 4::1 128 user-group pre
[Device-acl-ipv6-adv-neiwang_out] quit
# 分别为IPv4和IPv6高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[Device] acl advanced name web_out
[Device-acl-ipv4-adv-web_out] rule 0 permit ip source 4.4.4.5 0 user-group pre
[Device-acl-ipv4-adv-web_out] quit
[Device] acl ipv6 advanced name web_out
[Device-acl-ipv6-adv-web_out] rule 0 permit ipv6 source 4::5 128 user-group pre
[Device-acl-ipv6-adv-web_out] quit
g. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[Device] traffic classifier web_permit operator or
[Device-classifier-web_permit] if-match acl name web_permit
[Device-classifier-web_permit] if-match acl ipv6 name web_permit
[Device-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[Device] traffic classifier neiwang operator or
[Device-classifier-neiwang] if-match acl name neiwang
[Device-classifier-neiwang] if-match acl ipv6 name neiwang
[Device-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[Device] traffic classifier web_http operator or
[Device-classifier-web_http] if-match acl name web_http
[Device-classifier-web_http] if-match acl ipv6 name web_http
[Device-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[Device] traffic classifier web_https operator or
[Device-classifier-web_https] if-match acl name web_https
[Device-classifier-web_https] if-match acl ipv6 name web_https
[Device-classifier-web_https] quit
# 配置类web_deny,匹配ACL ip。
[Device] traffic classifier web_deny operator or
[Device-classifier-web_deny] if-match acl name ip
[Device-classifier-web_deny] if-match acl ipv6 name ip
[Device-classifier-web_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[Device] traffic classifier neiwang_out operator or
[Device-classifier-neiwang_out] if-match acl name neiwang_out
[Device-classifier-neiwang_out] if-match acl ipv6 name neiwang_out
[Device-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[Device] traffic classifier web_out operator or
[Device-classifier-web_out] if-match acl name web_out
[Device-classifier-web_out] if-match acl ipv6 name web_out
[Device-classifier-web_out] quit
h. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_permit
[Device-behavior-web_permit] filter permit
[Device-behavior-web_permit] free account
[Device-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang
[Device-behavior-neiwang] filter permit
[Device-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[Device] traffic behavior web_http
[Device-behavior-web_http] redirect http-to-cpu
[Device-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[Device] traffic behavior web_https
[Device-behavior-web_https] redirect https-to-cpu
[Device-behavior-web_https] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[Device] traffic behavior web_deny
[Device-behavior-web_deny] filter deny
[Device-behavior-web_deny] free account
[Device-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang_out
[Device-behavior-neiwang_out] filter permit
[Device-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_out
[Device-behavior-web_out] filter permit
[Device-behavior-web_out] free account
[Device-behavior-web_out] quit
i. 配置QoS策略
# 配置入方向QoS策略web
[Device] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过;
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU;
除上述报文外,其余报文均禁止通过。
[Device-qospolicy-web] classifier web_permit behavior web_permit
[Device-qospolicy-web] classifier neiwang behavior neiwang
[Device-qospolicy-web] classifier web_http behavior web_http
[Device-qospolicy-web] classifier web_https behavior web_https
[Device-qospolicy-web] classifier web_deny behavior web_deny
[Device-qospolicy-web] quit
# 配置出方向QoS策略out
[Device] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文均禁止通过。
[Device-qospolicy-out] classifier web_out behavior web_out
[Device-qospolicy-out] classifier neiwang_out behavior neiwang_out
[Device-qospolicy-out] classifier web_deny behavior web_deny
[Device-qospolicy-out] quit
j. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[Device] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[Device] qos apply policy out global outbound
k. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.5
[Device-radius-rs1] primary accounting 4.4.4.5
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
# (可选)开启RADIUS session control功能(使用iMC作为RADIUS服务器时建议配置该功能)。
[Device] radius session-control enable
# 设置RADIUS DAE客户端的IP地址为4.4.4.5,与RADIUS DAE客户端交互DAE报文时使用的共享密钥为明文radius。
[Device] radius dynamic-author server
[Device-radius-da-server] client ip 4.4.4.5 key simple radius
[Device-radius-da-server] quit
l. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[Device] domain name dm1
[Device-isp-dm1] authentication ipoe none
[Device-isp-dm1] authorization ipoe none
[Device-isp-dm1] accounting ipoe none
# 配置前域授权用户组和IPv4地址池。
[Device-isp-dm1] authorization-attribute user-group pre
[Device-isp-dm1] authorization-attribute ip-pool pool1
# 配置Web认证页面URL。
[Device-isp-dm1] web-server url http://www.ipv4.web.com
[Device-isp-dm1] web-server ipv6-url http://www.ipv6.web.com
[Device-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[Device] domain name dm2
[Device-isp-dm2] authentication ipoe radius-scheme rs1
[Device-isp-dm2] authorization ipoe radius-scheme rs1
[Device-isp-dm2] accounting ipoe radius-scheme rs1
# 配置Web认证阶段授权CAR和IPv6地址池。
[Device-isp-dm2] authorization-attribute car inbound cir 5120 outbound cir 5120
[Device-isp-dm2] authorization-attribute ipv6-pool pool2
[Device-isp-dm2] quit
m. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 配置IPoE用户采用Web认证方式,并指定IPv6协议栈依赖于IPv4协议栈上线。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber authentication-method web basic-service-ipv4
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber pre-auth domain dm1
[Device–Ten-GigabitEthernet3/1/2] ip subscriber web-auth domain dm2
[Device–Ten-GigabitEthernet3/1/2] quit
(4) 配置RADIUS服务器
a. 配置接入设备
登录进入iMC管理平台,选择“用户”页签,单击导航树中的[接入策略管理/接入设备管理/接入设备配置]菜单项,进入接入设备配置页面,在该页面中单击<增加>按钮,进入如图1-44所示增加接入设备页面。
- 输入共享密钥为:radius。
- 其他采用缺省配置。
图1-144 增加接入设备
在该页面中设备列表下方单击<手工增加>,在如图1-45所示页面输入接入设备地址4.4.4.2并单击<确定>。
图1-145 手动增加接入设备
b. 增加接入策略
单击导航树中的[接入策略管理/接入策略管理]菜单项,进入接入策略管理页面,在该页面中单击<增加>按钮,进入如图1-46所示增加接入策略页面。
- 输入接入策略名为:AccessPolicy。
- 其他采用缺省配置。
图1-146 增加接入策略
c. 增加接入服务
单击导航树中的[接入策略管理/接入服务管理]菜单项,进入接入服务管
理页面,在该页面中单击<增加>按钮,进入如图1-47所示增加接入服务页面。
- 输入服务名为:IPoE_Server
- 缺省接入策略选择已创建的策略“AccessPolicy”。
- 其他采用缺省配置。
图1-147 增加接入服务
d. 在IMC界面增加用户
单击导航树中的[用户管理/增加用户]菜单项,进入如图1-48所示增加用户页面,填写用户姓名和证件号码为:IPoE_Web001和001。
图1-148 增加用户
单击<确定>按钮后完成用户的添加。
e. 增加接入用户
单击导航树中的[接入用户管理/接入用户]菜单项,进入接入用户页面,在该页面中单击<增加>按钮,进入如图1-49所示增加接入用户页面。
- 用户姓名选择:IPoE_Web001
- 帐号名填写为:user1
- 密码为:pass1
- 接入服务选择之前已创建的IPoE_Server
图1-149 增加接入用户
(5) 配置Portal服务器
a. 配置Portal主页。
单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如图1-50所示。
图1-150 Portal服务器配置页面
b. 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如图1-51所示。
- 输入IP地址组名为“IPoE_Web_User”;
- 输入起始地址为“192.168.0.1”、终止地址为“192.168.0.255”。用户主机IP地址必须包含在该IP地址组范围内;
- 其他采用缺省配置;
- 单击<确定>按钮完成操作。
图1-151 增加IP地址组配置页面(IPv4)
如图1-135所示,继续上述操作添加IPv6地址组。
- 输入IP地址组名为“IPoE_Web_User-2”;
- IPv6选项框选择“是”;
- 输入起始地址为“192::1”、终止地址为“192::FFFF”。用户主机IPv6地址必须包含在该IP地址组范围内;
- 其他采用缺省配置;
- 单击<确定>按钮完成操作。
图1-152 增加IP地址组配置页面(IPv6)
c. 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面,如图1-52所示。
- 输入设备名为“NAS”;
- 输入IP地址为“4.4.4.2”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/1的IP地址;
- 输入密钥为“123456”;
- 选择组网方式为“直连”;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-153 增加设备信息配置页面(IPv4)
如图1-137所示,继续上述操作添加设备的IPv6信息。
- 输入设备名为“NAS-2”;
- 版本选择“Portal 3.0”;
- 输入IP地址为“4::2”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/1的IP地址;
- 输入密钥为“123456”;
- 选择组网方式为“直连”;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-154 增加设备信息配置页面(IPv6)
d. 配置端口组信息
如图1-53所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
图1-155 设备信息列表
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如图1-54所示。
- 输入端口组名为“group”;
- 选择IP地址组为“IPoE_Web_User”,用户接入网络时使用的IP地址必须属于所选的IP地址组;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-156 增加端口组信息配置页面(IPv4)
如图1-140所示,继续上述操作添加端口组的IPv6信息。
- 输入端口组名为“group-2”;
- 选择IP地址组为“IPoE_Web_User-2”,用户接入网络时使用的IPv6地址必须属于所选的IPv6地址组;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-157 增加端口组信息配置页面(IPv6)
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IPv4地址为192.168.0.2,IPv6地址还未获取。
[Device] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
-
# 用户认证前域认证通过之后,登录Web页面,如图1-55所示。
图1-158 登录Web页面
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[Device] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
user1@dm2 Web auth
-
已上信息表明,用户IPv4协议栈已通过Web认证上线。
# 用户IPv4协议栈通过Web认证上线后,当设备收到DHCPv6报文时,再次查看IPoE用户在线信息,此时用户IPv6协议栈已自动上线。
[Device] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
user1@dm2 Web auth
192::2
# 点击<下线>按钮,让用户由Web阶段返回前域阶段。使用以下的显示命令查看IPoE用户在线信息。
[Device] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
-
已上信息表明,当用户由Web阶段返回前域阶段时,会强制用户的IPv6协议栈下线。
如图1-159所示:Device为某学校的一台BRAS设备,为学校用户提供IPoE接入服务。要求:
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备作为DHCP中继向远端DHCP服务器申请IP地址。
· 由一台安装了H3C iMC的服务器同时承担Portal认证服务器和Portal Web服务器的职责。
· 由一台支持MAC绑定功能的RADIUS服务器同时承担认证、授权和计费服务器以及MAC绑定服务器的职责。本举例中使用的iMC版本为:iMC PLAT 7.1(E0303)、iMC UAM 7.1(E0305)、iMC EIP 7.1(E0305))。
· FTP server是一台内网服务器。
· Web认证通过后限速5Mbps。
图1-159 双栈IPoE用户普通MAC无感知认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
请正确设置DNS服务器,以便服务器可以根据双栈IPoE用户先上线的协议栈类型,解析出Web认证页面http://www.ipv4.web.com(或http://www.ipv6.web.com)对应的IPv4 URL地址(或IPv6 URL地址)。DNS服务器具体设置过程略。
(1) 配置DHCP服务器
a. 配置IP地址池
# 开启DHCP服务。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1的IP地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段192.168.0.0/24和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool1] network 192.168.0.0 24
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
# 配置为用户分配的网关地址为192.168.0.1。
[DHCP-server-ip-pool-pool1] gateway-list 192.168.0.1
# 将192.168.0.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 192.168.0.1
[DHCP-server-ip-pool-pool1] quit
# 配置缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 4.4.4.2
b. 配置IPv6地址池
# 创建名称为pool2的IPv6地址池并进入其视图。
[DHCP-server] ipv6 pool pool2
# 配置地址池动态分配的IPv6地址网段192::/64和DNS服务器地址8::8。
[DHCP-server-ipv6-pool-pool2] network 192::/64
[DHCP-server-ipv6-pool-pool2] dns-server 8::8
[DHCP-server-ipv6-pool-pool2] quit
# 将192::1设置为禁止地址。
[DHCP-server] ipv6 dhcp server forbidden-address 192::1
# 配置接口Ten-GigabitEthernet3/1/1工作在DHCPv6服务器模式。
[DHCP-server] interface ten-gigabitethernet 3/1/1
[DHCP-server-Ten-GigabitEthernet3/1/1] ipv6 dhcp select server
[DHCP-server-Ten-GigabitEthernet3/1/1] quit
# 配置缺省路由。
[DHCP-server] ipv6 route-static :: 0 4::2
a. 配置DHCP中继
# 全局开启DHCP。
[Device] dhcp enable
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将192.168.0.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址。
[Device] ip pool pool1 bas remote
[Device-ip-pool-pool1] gateway 192.168.0.1 24
[Device-ip-pool-pool1] forbidden-ip 192.168.0.1
[Device-ip-pool-pool1] remote-server 4.4.4.3
[Device-ip-pool-pool1] quit
# 创建IPv6远端地址池pool2,指定匹配该地址池的DHCPv6客户端所在的网段地址,并指定IPv6远端地址池对应的DHCP服务器地址。
[Device] ipv6 pool pool2
[Device-ipv6-pool-pool2] gateway-list 192::1
[Device-ipv6-pool-pool2] network 192::/64 export-route
[Device-ipv6-pool-pool2] remote-server 4::3
[Device-ipv6-pool-pool2] quit
# 配置接口工作在DHCPv4中继模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] dhcp select relay
# 配置自动生成IPv6链路本地地址,该IPv6链路本地地址作为用户的网关。
[Device–Ten-GigabitEthernet3/1/2] ipv6 address auto link-local
# 配置接口工作在DHCPv6中继模式。
[Device–Ten-GigabitEthernet3/1/2] ipv6 dhcp select relay
# 取消设备发布RA消息的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址。配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[Device–Ten-GigabitEthernet3/1/2] undo ipv6 nd ra halt
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd autoconfig managed-address-flag
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd autoconfig other-flag
# 为避免终端使用临时IPv6地址进行认证,从而导致认证失败,在用户上线接口配置前缀不在RA消息中发布,从而避免终端使用前缀生成临时IPv6地址。
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd ra prefix 192::/64 no-advertise
[Device–Ten-GigabitEthernet3/1/2] quit
b. 配置Portal认证服务器
# 配置IPv4 Portal认证服务器:名称为newpt1,IP地址为4.4.4.5,密钥为明文123456。
[Device] portal server newpt1
[Device-portal-server-newpt1] ip 4.4.4.5 key simple 123456
[Device-portal-server-newpt1] quit
# 配置IPv6 Portal认证服务器:名称为newpt2,IPv6地址为4::5,密钥为明文123456。
[Device] portal server newpt2
[Device-portal-server-newpt2] ipv6 4::5 key simple 123456
[Device-portal-server-newpt2] quit
c. 配置HTTPS的内部侦听端口
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[Device] http-redirect https-port 11111
d. 配置通过查询ARP/ND表项来获取用户信息
[Device] portal access-info trust arp
[Device] portal access-info trust nd
e. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[Device] user-group pre
New user group added.
[Device-ugroup-pre] quit
f. 配置用于认证前域用户的ACL规则
# 分别为IPv4和IPv6高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[Device] acl advanced name web_permit
[Device-acl-ipv4-adv-web_permit] rule 0 permit ip destination 4.4.4.5 0 user-group pre
[Device-acl-ipv4-adv-web_permit] quit
[Device] acl ipv6 advanced name web_permit
[Device-acl-ipv6-adv-web_permit] rule 0 permit ipv6 destination 4::5 128 user-group pre
[Device-acl-ipv6-adv-web_permit] quit
# 分别为IPv4和IPv6高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[Device] acl advanced name neiwang
[Device-acl-ipv4-adv-neiwang] rule 0 permit ip destination 4.4.4.6 0 user-group pre
[Device-acl-ipv4-adv-neiwang] quit
[Device] acl ipv6 advanced name neiwang
[Device-acl-ipv6-adv-neiwang] rule 0 permit ipv6 destination 4::6 128 user-group pre
[Device-acl-ipv6-adv-neiwang] quit
# 分别为IPv4和IPv6高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[Device] acl advanced name web_http
[Device-acl-ipv4-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[Device-acl-ipv4-adv-web_http] quit
[Device] acl ipv6 advanced name web_http
[Device-acl-ipv6-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[Device-acl-ipv6-adv-web_http] quit
# 分别为IPv4和IPv6高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[Device] acl advanced name web_https
[Device-acl-ipv4-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[Device-acl-ipv4-adv-web_https] quit
[Device] acl ipv6 advanced name web_https
[Device-acl-ipv6-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[Device-acl-ipv6-adv-web_https] quit
# 分别为IPv4和IPv6高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[Device] acl advanced name ip
[Device-acl-ipv4-adv-ip] rule 0 permit ip user-group pre
[Device-acl-ipv4-adv-ip] quit
[Device] acl ipv6 advanced name ip
[Device-acl-ipv6-adv-ip] rule 0 permit ipv6 user-group pre
[Device-acl-ipv6-adv-ip] quit
# 分别为IPv4和IPv6高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[Device] acl advanced name neiwang_out
[Device-acl-ipv4-adv-neiwang_out] rule 0 permit ip source 4.4.4.6 0 user-group pre
[Device-acl-ipv4-adv-neiwang_out] quit
[Device] acl ipv6 advanced name neiwang_out
[Device-acl-ipv6-adv-neiwang_out] rule 0 permit ipv6 source 4::6 128 user-group pre
[Device-acl-ipv6-adv-neiwang_out] quit
# 分别为IPv4和IPv6高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[Device] acl advanced name web_out
[Device-acl-ipv4-adv-web_out] rule 0 permit ip source 4.4.4.5 0 user-group pre
[Device-acl-ipv4-adv-web_out] quit
[Device] acl ipv6 advanced name web_out
[Device-acl-ipv6-adv-web_out] rule 0 permit ipv6 source 4::5 128 user-group pre
[Device-acl-ipv6-adv-web_out] quit
g. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[Device] traffic classifier web_permit operator or
[Device-classifier-web_permit] if-match acl name web_permit
[Device-classifier-web_permit] if-match acl ipv6 name web_permit
[Device-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[Device] traffic classifier neiwang operator or
[Device-classifier-neiwang] if-match acl name neiwang
[Device-classifier-neiwang] if-match acl ipv6 name neiwang
[Device-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[Device] traffic classifier web_http operator or
[Device-classifier-web_http] if-match acl name web_http
[Device-classifier-web_http] if-match acl ipv6 name web_http
[Device-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[Device] traffic classifier web_https operator or
[Device-classifier-web_https] if-match acl name web_https
[Device-classifier-web_https] if-match acl ipv6 name web_https
[Device-classifier-web_https] quit
# 配置类ip_cpu,匹配ACL ip。
[Device] traffic classifier ip_cpu operator or
[Device-classifier-ip_cpu] if-match acl name ip
[Device-classifier-ip_cpu] if-match acl ipv6 name ip
[Device-classifier-ip_cpu] quit
# 配置类ip_deny,匹配ACL ip。
[Device] traffic classifier ip_deny operator or
[Device-classifier-ip_deny] if-match acl name ip
[Device-classifier-ip_deny] if-match acl ipv6 name ip
[Device-classifier-ip_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[Device] traffic classifier neiwang_out operator or
[Device-classifier-neiwang_out] if-match acl name neiwang_out
[Device-classifier-neiwang_out] if-match acl ipv6 name neiwang_out
[Device-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[Device] traffic classifier web_out operator or
[Device-classifier-web_out] if-match acl name web_out
[Device-classifier-web_out] if-match acl ipv6 name web_out
[Device-classifier-web_out] quit
h. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_permit
[Device-behavior-web_permit] filter permit
[Device-behavior-web_permit] free account
[Device-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang
[Device-behavior-neiwang] filter permit
[Device-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[Device] traffic behavior web_http
[Device-behavior-web_http] redirect http-to-cpu
[Device-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[Device] traffic behavior web_https
[Device-behavior-web_https] redirect https-to-cpu
[Device-behavior-web_https] quit
# 配置流行为web_cpu,对用户组pre中用户的所有IP报文都重定向到CPU。
[Device] traffic behavior web_cpu
[Device-behavior-web_cpu] redirect cpu
[Device-behavior-web_cpu] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[Device] traffic behavior web_deny
[Device-behavior-web_deny] filter deny
[Device-behavior-web_deny] free account
[Device-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[Device] traffic behavior neiwang_out
[Device-behavior-neiwang_out] filter permit
[Device-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[Device] traffic behavior web_out
[Device-behavior-web_out] filter permit
[Device-behavior-web_out] free account
[Device-behavior-web_out] quit
i. 配置QoS策略
# 配置入方向QoS策略web
[Device] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过;
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU;
除上述报文外,其余报文都重定向到CPU,如果重定向无感知认证失败,则丢弃报文。
[Device-qospolicy-web] classifier web_permit behavior web_permit
[Device-qospolicy-web] classifier neiwang behavior neiwang
[Device-qospolicy-web] classifier web_http behavior web_http
[Device-qospolicy-web] classifier web_https behavior web_https
[Device-qospolicy-web] classifier ip_cpu behavior web_cpu
[Device-qospolicy-web] classifier ip_deny behavior web_deny
[Device-qospolicy-web] quit
# 配置出方向QoS策略out
[Device] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文均禁止通过。
[Device-qospolicy-out] classifier web_out behavior web_out
[Device-qospolicy-out] classifier neiwang_out behavior neiwang_out
[Device-qospolicy-out] classifier ip_deny behavior web_deny
[Device-qospolicy-out] quit
j. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[Device] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[Device] qos apply policy out global outbound
k. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.1
[Device-radius-rs1] primary accounting 4.4.4.1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
# (可选)开启RADIUS session control功能(使用iMC作为RADIUS服务器时建议配置该功能)。
[Device] radius session-control enable
# 设置RADIUS DAE客户端的IP地址为4.4.4.1,与RADIUS DAE客户端交互DAE报文时使用的共享密钥为明文radius。
[Device] radius dynamic-author server
[Device-radius-da-server] client ip 4.4.4.1 key simple radius
[Device-radius-da-server] quit
l. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[Device] domain name dm1
[Device-isp-dm1] authentication ipoe none
[Device-isp-dm1] authorization ipoe none
[Device-isp-dm1] accounting ipoe none
# 配置前域授权用户组和地址池。
[Device-isp-dm1] authorization-attribute user-group pre
[Device-isp-dm1] authorization-attribute ip-pool pool1
[Device-isp-dm1] authorization-attribute ipv6-pool pool2
# 配置Web认证页面URL。
[Device-isp-dm1] web-server url http://www.ipv4.web.com
[Device-isp-dm1] web-server ipv6-url http://www.ipv6.web.com
[Device-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[Device] domain name dm2
[Device-isp-dm2] authentication ipoe radius-scheme rs1
[Device-isp-dm2] authorization ipoe radius-scheme rs1
[Device-isp-dm2] accounting ipoe radius-scheme rs1
[Device-isp-dm2] authorization-attribute car inbound cir 5120 outbound cir 5120
[Device-isp-dm2] quit
m. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 配置IPoE用户采用Web MAC认证方式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber authentication-method web mac-auth
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域和Web MAC认证域均为dm2。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber pre-auth domain dm1
[Device–Ten-GigabitEthernet3/1/2] ip subscriber web-auth domain dm2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber mac-auth domain dm2
[Device–Ten-GigabitEthernet3/1/2] quit
(3) 配置RADIUS服务器
对于RADIUS服务器上AAA和MAC绑定配置,具体需要参见RADIUS server的配置说明书。
(4) 配置Portal服务器
a. 配置Portal主页。
单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如图1-160所示。
图1-160 Portal服务器配置页面
b. 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如图1-161所示。
- 输入IP地址组名为“IPoE_Web_User”;
- 输入起始地址为“192.168.0.1”、终止地址为“192.168.0.255”。用户主机IP地址必须包含在该IP地址组范围内;
- 其他采用缺省配置;
- 单击<确定>按钮完成操作。
图1-161 增加IP地址组配置页面(IPv4)
如图1-162所示,继续上述操作添加IPv6地址组。
- 输入IP地址组名为“IPoE_Web_User-2”;
- IPv6选项框选择“是”;
- 输入起始地址为“192::1”、终止地址为“192::FFFF”。用户主机IPv6地址必须包含在该IP地址组范围内;
- 其他采用缺省配置;
- 单击<确定>按钮完成操作。
图1-162 增加IP地址组配置页面(IPv6)
c. 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面,如图1-163所示。
- 输入设备名为“NAS”;
- 输入IP地址为“4.4.4.2”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/1的IP地址;
- 输入密钥为“123456”;
- 选择组网方式为“直连”;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
如图1-164所示,继续上述操作添加设备的IPv6信息。
- 输入设备名为“NAS-2”;
- 版本选择“Portal 3.0”;
- 输入IP地址为“4::2”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/1的IP地址;
- 输入密钥为“123456”;
- 选择组网方式为“直连”;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
d. 配置端口组信息
如图1-165所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如图1-166所示。
- 输入端口组名为“group”;
- 选择IP地址组为“IPoE_Web_User”,用户接入网络时使用的IP地址必须属于所选的IP地址组;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
如图1-167所示,继续上述操作添加端口组的IPv6信息。
- 输入端口组名为“group-2”;
- 选择IP地址组为“IPoE_Web_User-2”,用户接入网络时使用的IPv6地址必须属于所选的IPv6地址组;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 最后单击导航树中的[接入策略管理/业务参数配置/系统配置手工生效]菜单项,使以上Portal认证服务器配置生效。
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IPv4地址为192.168.0.2,IPv6地址为192::2。
[Device] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
192::2
# 用户认证前域认证通过之后,登录Web页面,如图1-55所示。
图1-168 登录Web页面
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[Device] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
user1@dm2 Web auth
192::2
# 点击<下线>按钮,通过显示命令查看,此时用户返回认证前域状态。
[Device] display access-user auth-type pre-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
192::2
# 重新打开浏览器,任意输入访问地址http://63.1.1.240,通过显示命令查看,用户IPoE Web上线。
[Device] display access-user auth-type web-auth
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d XGE3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 Web auth
192::2
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· 采用DHCP服务器分别分配IPv4和IPv6地址。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-169 DHCP报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4.4.4.2/32 {
ipaddr = 4.4.4.2
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4.4.4.2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
以上信息表示:用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius。
(2) 配置DHCP服务器
¡ 配置IP地址池
# 开启DHCP服务。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1的IP地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段3.3.3.0/24和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool1] network 3.3.3.0 24
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
# 配置为用户分配的网关地址为3.3.3.1。
[DHCP-server-ip-pool-pool1] gateway-list 3.3.3.1
# 将3.3.3.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 3.3.3.1
[DHCP-server-ip-pool-pool1] quit
# 配置缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 4.4.4.2
¡ 配置IPv6地址池
# 创建名称为pool2的IPv6地址池并进入其视图。
[DHCP-server] ipv6 pool pool2
# 配置地址池动态分配的IPv6地址网段3::/64和DNS服务器地址8::8。
[DHCP-server-ipv6-pool-pool2] network 3::/64
[DHCP-server-ipv6-pool-pool2] dns-server 8::8
[DHCP-server-ipv6-pool-pool2] quit
# 将3::1设置为禁止地址。
[DHCP-server] ipv6 dhcp server forbidden-address 3::1
# 配置接口Ten-GigabitEthernet3/1/1工作在DHCPv6服务器模式。
[DHCP-server] interface ten-gigabitethernet 3/1/1
[DHCP-server-Ten-GigabitEthernet3/1/1] ipv6 dhcp select server
[DHCP-server-Ten-GigabitEthernet3/1/1] quit
# 配置缺省路由。
[DHCP-server] ipv6 route-static :: 0 4::2
(3) 配置Device
a. 配置DHCP relay
# 开启DHCP服务。
<Device> system-view
[Device] dhcp enable
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将3.3.3.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址。
[Device] ip pool pool1 bas remote
[Device-ip-pool-pool1] gateway 3.3.3.1 24
[Device-ip-pool-pool1] forbidden-ip 3.3.3.1
[Device-ip-pool-pool1] remote-server 4.4.4.3
[Device-ip-pool-pool1] quit
# 创建IPv6远端地址池pool2,指定匹配该地址池的DHCPv6客户端所在的网段地址,并指定IPv6远端地址池对应的DHCP服务器地址。
[Device] ipv6 pool pool2
[Device-ipv6-pool-pool2] gateway-list 3::1
[Device-ipv6-pool-pool2] network 3::/64 export-route
[Device-ipv6-pool-pool2] remote-server 4::3
[Device-ipv6-pool-pool2] quit
# 进入接口Ten-GigabitEthernet3/1/2视图。
[Device] interface ten-gigabitethernet 3/1/2
# 配置接口工作在中继模式。
[Device–Ten-GigabitEthernet3/1/2] dhcp select relay
[Device–Ten-GigabitEthernet3/1/2] ipv6 dhcp select relay
# 配置自动生成IPv6链路本地地址,该IPv6链路本地地址作为用户的网关。
[Device–Ten-GigabitEthernet3/1/2] ipv6 address auto link-local
# 取消设备发布RA消息的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址。配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[Device–Ten-GigabitEthernet3/1/2] undo ipv6 nd ra halt
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd autoconfig managed-address-flag
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd autoconfig other-flag
[Device–Ten-GigabitEthernet3/1/2] quit
b. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.1
[Device-radius-rs1] primary accounting 4.4.4.1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
c. 配置认证域
# 创建并进入名称为dm1的ISP域。
[Device] domain name dm1
# 配置ISP域使用的RADIUS方案rs1,并授权远端地址池。
[Device-isp-dm1] authentication ipoe radius-scheme rs1
[Device-isp-dm1] authorization ipoe radius-scheme rs1
[Device-isp-dm1] accounting ipoe radius-scheme rs1
[Device-isp-dm1] authorization-attribute ip-pool pool1
[Device-isp-dm1] authorization-attribute ipv6-pool pool2
[Device-isp-dm1] quit
d. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 设置DHCP报文触发方式使用的认证域为dm1。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber dhcp domain dm1
# 设置动态用户的认证密码为明文radius。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber password plaintext radius
[Device–Ten-GigabitEthernet3/1/2] quit
# 用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IPv4地址为3.3.3.2,IPv6地址为3::2。
[Device] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x2c2 XGE3/1/2 3.3.3.2 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
3::2
· 用户主机采用混合双栈方式上线。其中IPv4协议栈采用全局静态方式上线,IPv6协议栈采用DHCP动态方式上线。
· 用户主机的IPv4地址为3.3.3.2。
· 采用DHCP服务器分别分配IPv6地址。
· 采用RADIUS作为认证、授权和计费服务器。
图1-170 IPoE动静态混合双栈用户接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
此例假设用户通过DHCP方式申请时,DHCP报文中并未携带option60选项。
(1) 配置RADIUS服务器
下面以Linux下的Free Radius服务器为例,说明RADIUS server的基本配置。
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4.4.4.2/32 {
ipaddr = 4.4.4.2
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4.4.4.2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
以上信息表示:用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius。
(2) 配置DHCP服务器
# 创建名称为pool1的IPv6地址池并进入其视图。
<DHCP-server> system-view
[DHCP-server] ipv6 pool pool1
# 配置地址池动态分配的IPv6地址网段3::/64和DNS服务器地址8::8。
[DHCP-server-ipv6-pool-pool1] network 3::/64
[DHCP-server-ipv6-pool-pool1] dns-server 8::8
[DHCP-server-ipv6-pool-pool1] quit
# 将3::1设置为禁止地址。
[DHCP-server] ipv6 dhcp server forbidden-address 3::1
# 配置接口Ten-GigabitEthernet3/1/1工作在DHCPv6服务器模式。
[DHCP-server] interface ten-gigabitethernet 3/1/1
[DHCP-server-Ten-GigabitEthernet3/1/1] ipv6 dhcp select server
[DHCP-server-Ten-GigabitEthernet3/1/1] quit
# 配置缺省路由。
[DHCP-server] ipv6 route-static :: 0 4::2
(3) 配置Device
a. 配置DHCP relay
# 创建IPv6远端地址池pool1,指定匹配该地址池的DHCPv6客户端所在的网段地址,并指定IPv6远端地址池对应的DHCP服务器地址。
[Device] ipv6 pool pool1
[Device-ipv6-pool-pool1] gateway-list 3::1
[Device-ipv6-pool-pool1] network 3::/64 export-route
[Device-ipv6-pool-pool1] remote-server 4::3
[Device-ipv6-pool-pool1] quit
# 进入接口Ten-GigabitEthernet3/1/2视图。
[Device] interface ten-gigabitethernet 3/1/2
# 配置接口工作在中继模式。
[Device–Ten-GigabitEthernet3/1/2] ipv6 dhcp select relay
# 配置自动生成IPv6链路本地地址,该IPv6链路本地地址作为用户的网关。
[Device–Ten-GigabitEthernet3/1/2] ipv6 address auto link-local
# 取消设备发布RA消息的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址。配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[Device–Ten-GigabitEthernet3/1/2] undo ipv6 nd ra halt
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd autoconfig managed-address-flag
[Device–Ten-GigabitEthernet3/1/2] ipv6 nd autoconfig other-flag
[Device–Ten-GigabitEthernet3/1/2] quit
b. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.1
[Device-radius-rs1] primary accounting 4.4.4.1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
c. 配置认证域
# 创建并进入名称为dm1的ISP域。
[Device] domain name dm1
# 配置ISP域使用的RADIUS方案rs1,并授权中继地址池。
[Device-isp-dm1] authentication ipoe radius-scheme rs1
[Device-isp-dm1] authorization ipoe radius-scheme rs1
[Device-isp-dm1] accounting ipoe radius-scheme rs1
[Device-isp-dm1] authorization-attribute ipv6-pool pool1
[Device-isp-dm1] quit
d. 配置DHCP服务器
# 全局开启DHCP。
[Device] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[Device] dhcp server request-ip-address check
# 创建本地BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,并指定地址池禁止分配地址3.3.3.2,该地址必须和IPoE静态会话中指定的用户地址相同。
[Device] ip pool pool1 bas local
[Device-ip-pool-pool1] gateway 3.3.3.1 24
[Device-ip-pool-pool1] forbidden-ip 3.3.3.2
[Device-ip-pool-pool1] quit
e. 配置IPoE
# 设置IPv4协议栈的全局静态并支持与动态协议栈组成双栈,且认证域为dm1
[Device] ip subscriber session static ip 3.3.3.2 domain dm1 support-ds
# 开启IPoE功能,并配置二层接入模式。
[Device] interface ten-gigabitethernet 3/1/2
[Device–Ten-GigabitEthernet3/1/2] ip subscriber l2-connected enable
# 开启ARP报文触发方式。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber initiator arp enable
# 设置DHCP报文触发方式使用的认证域为dm1。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber dhcp domain dm1
# 配置动态和全局静态用户的认证用户名均为用户的MAC地址。
[Device-Ten-GigabitEthernet3/1/2] ip subscriber username mac-address
# 设置动态和全局静态用户的认证密码均为明文radius。
[Device–Ten-GigabitEthernet3/1/2] ip subscriber password plaintext radius
[Device–Ten-GigabitEthernet3/1/2] quit
# 用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户IPv4地址为3.3.3.2,IPv6地址为3::2。
[Device] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x2c2 XGE3/1/2 3.3.3.2 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
3::2
· 用户IPv4协议栈
¡ 通过DHCP报文触发上线的用户主机经由二层网络以IPoE方式接入到BRAS接入设备。
¡ 采用DHCP服务器分配IP地址。
· 用户IPv6协议栈
¡ 通过IPv6 ND RS报文触发上线的用户主机经由二层网络以IPoE方式接入到BRAS接入设备。
¡ BRAS接入设备可以发送IPv6 ND RA报文。
· 允许用户进行漫游。例如:当用户从区域A漫游到区域B时,始终保持用户在线状态。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-171 DHCP+IPv6 ND RS报文触发IPoE漫游接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 4.4.4.2/32 {
ipaddr = 4.4.4.2
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为4.4.4.2,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
Framed-IPv6-Prefix =10::10/64
以上信息表示:用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius,授权IPv6前缀为10::10/64。
(2) 配置DHCP服务器
# 全局开启DHCP。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段3.3.3.0/24。
[DHCP-server-ip-pool-pool1] network 3.3.3.0 24
# 配置为用户分配的网关地址为3.3.3.1。
[DHCP-server-ip-pool-pool1] gateway-list 3.3.3.1
# 将3.3.3.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 3.3.3.1
# 将DNS地址设置为8.8.8.8。
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
[DHCP-server-ip-pool-pool1] quit
# 配置缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 4.4.4.2
(3) 配置Device
a. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
<Device> system-view
[Device] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[Device-radius-rs1] primary authentication 4.4.4.1
[Device-radius-rs1] primary accounting 4.4.4.1
[Device-radius-rs1] key authentication simple radius
[Device-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[Device-radius-rs1] user-name-format without-domain
[Device-radius-rs1] quit
b. 配置认证域
# 创建并进入名称为dm1的ISP域。
[Device] domain name dm1
# 配置ISP域使用的RADIUS方案rs1,并授权远端BAS IP地址池。
[Device-isp-dm1] authentication ipoe radius-scheme rs1
[Device-isp-dm1] authorization ipoe radius-scheme rs1
[Device-isp-dm1] accounting ipoe radius-scheme rs1
[Device-isp-dm1] authorization-attribute ip-pool pool1
# 配置为用户授权IPv6 DNS地址池信息。
[Device-isp-dm1] authorization-attribute primary-dns ipv6 8::8
[Device-isp-dm1] quit
c. 配置DHCP relay
# 开启DHCP服务。
[Device] dhcp enable
# 进入接口Ten-GigabitEthernet3/1/1和Ten-GigabitEthernet3/1/2视图。
[Device] interface range ten-gigabitethernet 3/1/1 ten-gigabitethernet 3/1/2
# 配置接口工作在中继代理模式。(缺省配置,本步骤可跳过)
[Device–if-range] dhcp-proxy enable
# 配置DHCP设备收到物理位置发生变化、MAC地址不变的上线用户发送的DHCP请求报文后,使用对应MAC地址的地址租约应答DHCP请求,并刷新该地址租约的老化时间。
[Device–if-range] dhcp session-mismatch action roam
取消对接口发布IPv6 ND RA消息的抑制。
[Device–if-range] undo ipv6 nd ra halt
配置接口自动生成IPv6链路本地地址。
[Device–if-range] ipv6 address auto link-local
[Device–if-range] quit
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将3.3.3.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址。
[Device] ip pool pool1 bas remote
[Device-ip-pool-pool1] gateway 3.3.3.1 24
[Device-ip-pool-pool1] forbidden-ip 3.3.3.1
[Device-ip-pool-pool1] remote-server 4.4.4.3
[Device-ip-pool-pool1] quit
d. 配置IPoE
# 在Ten-GigabitEthernet3/1/1和Ten-GigabitEthernet3/1/2开启IPoE功能,并配置二层接入模式。
[Device] interface range ten-gigabitethernet 3/1/1 ten-gigabitethernet 3/1/2
[Device–if-range] ip subscriber l2-connected enable
# 开启IPv6 ND RS报文触发方式。
[Device–if-range] ip subscriber initiator ndrs enable
# 开启ARP报文触发用户上线功能。
[Device–if-range] ip subscriber initiator arp enable
# 开启NS/NA报文触发用户上线功能。
[Device–if-range] ip subscriber initiator nsna enable
# 开启未知源IPv4和IPv6报文触发方式。
[Device–if-range] ip subscriber initiator unclassified-ip enable matching-user
[Device–if-range] ip subscriber initiator unclassified-ipv6 enable matching-user
# 开启IPoE个人接入用户漫游功能。
[Device–if-range] ip subscriber roaming enable
# 设置DHCP报文触发方式使用的认证域为dm1。
[Device–if-range] ip subscriber dhcp domain dm1
# 设置IPv6 ND RS报文触发方式使用的认证域为dm1。
[Device–if-range] ip subscriber ndrs domain dm1
# 设置动态用户的认证密码为明文radius。
[Device–if-range] ip subscriber password plaintext radius
[Device–if-range] quit
# 用户在区域A认证通过之后,查看IPoE用户在线信息。
[Device] display access-user interface ten-gigabitethernet 3/1/1
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x5c XGE3/1/1 3.3.3.2 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
10::20C:29FF:FEA6:B656
# 然后当用户漫游到区域B时,再次查看IPoE用户在线信息。
[Device] display access-user interface ten-gigabitethernet 3/1/2
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x5c XGE3/1/2 3.3.3.2 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
10::20C:29FF:FEA6:B656
以上信息表明,用户上线接入接口已从Ten-GigabitEthernet3/1/1切换为Ten-GigabitEthernet3/1/2,即用户已从区域A漫游到区域B。
· 在转发与控制分离组网中,由CP和UP共同作为BRAS接入设备,对用户提供BRAS功能。
· 在转发与控制分离组网中,本设备仅支持作为UP,不支持作为CP。
· 担任CP角色的产品的不同版本的配置命令可能存在差异,本节CP上的配置仅供参考,有关CP上配置的详细介绍,请参见担任CP角色的设备的产品手册。
· 用户主机通过手工配置或DHCP获得IP地址,经由三层网络以IPoE方式接入到BRAS接入设备。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-172 未知源IP报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 12.1.1.1/32 {
ipaddr = 12.1.1.1
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为12.1.1.1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
2.2.2.2 Cleartext-Password :="radius"
以上信息表示:用户名为Host的IP地址2.2.2.2,用户密码为字符串radius。
(2) 配置UP
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
(3) 配置CP
a. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
<CP> system-view
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.1
[CP-radius-rs1] primary accounting 4.4.4.1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
b. 配置认证域
# 创建并进入名称为dm1的ISP域。
[CP] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[CP-isp-dm1] authentication ipoe radius-scheme rs1
[CP-isp-dm1] authorization ipoe radius-scheme rs1
[CP-isp-dm1] accounting ipoe radius-scheme rs1
[CP-isp-dm1] quit
c. 配置IPoE
# 进入接口Remote-XGE1024/3/1/2视图。
[CP] interface remote-xge 1024/3/1/2
# 开启IPoE功能,并指定三层接入模式。
[CP–Remote-XGE1024/3/1/2] ip subscriber routed enable
# 开启未知源IP报文触发方式。
[CP–Remote-XGE1024/3/1/2] ip subscriber initiator unclassified-ip enable
# 设置未知源IP报文触发方式使用的认证域为dm1。
[CP–Remote-XGE1024/3/1/2] ip subscriber unclassified-ip domain dm1
# 设置动态用户的认证密码为明文radius。
[CP–Remote-XGE1024/3/1/2] ip subscriber password plaintext radius
[CP–Remote-XGE1024/3/1/2] quit
# 用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息。
[CP] display access-user interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x50 R-XGE1024/3/1/2 2.2.2.2 000c-29a6-b656 -/-
2.2.2.2 L3 IPoE dynamic
-
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· 采用DHCP服务器分配IPv4地址。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
· BRAS设备需要支持IPoE的转发与控制分离,其中UP为用户接入相连的设备,CP为IPoE控制模块设备,在UP和CP之间有两条传输通道,其中,CUSP提供CP/UP间的表项下发通道,VXLAN隧道提供CP/UP间的协议报文通道,UP的接入模块同时需要识别上送CP的报文,CP需要把会话下发到UP上,UP需要对下发的会话进行恢复。
图1-173 DHCPv4报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 12.1.1.1/32 {
ipaddr = 12.1.1.1
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为12.1.1.1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
以上信息表示:用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius。
(2) 配置UP
# 配置BRAS设备工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
(3) 配置CP
a. 配置DHCP服务器
# 配置ODAP类型的IP地址池pool1。
<CP> system-view
[CP] ip pool pool1 odap
[CP-ip-pool-pool1] network 1.0.0.0 8 export-route
[CP-ip-pool-pool1] subnet mask-length 16
[CP-ip-pool-pool1] gateway 1.1.1.1 8
[CP-ip-pool-pool1] forbidden-ip 1.1.1.1
[CP-ip-pool-pool1] dns-list 8.8.8.8
[CP-ip-pool-pool1] quit
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[CP] dhcp server request-ip-address check
b. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.1
[CP-radius-rs1] primary accounting 4.4.4.1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
c. 配置CP上的认证域
#创建并进入名称为dm1的ISP域。
[CP] domain name dm1
# 配置ISP域使用的RADIUS方案rs1并授权IP地址池pool1。
[CP-isp-dm1] authentication ipoe radius-scheme rs1
[CP-isp-dm1] authorization ipoe radius-scheme rs1
[CP-isp-dm1] accounting ipoe radius-scheme rs1
[CP-isp-dm1] authorization-attribute ip-pool pool1
[CP-isp-dm1] quit
d. 配置IPoE
# 进入远端接口Remote-XGE1024/3/1/2。
[CP] interface remote-xge 1024/3/1/2
# 开启IPoE功能,并指定二层接入模式。
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 设置DHCP报文触发方式使用的认证域为dm1。
[CP–Remote-XGE1024/3/1/2] ip subscriber dhcp domain dm1
# 设置动态用户的认证密码为明文radius。
[CP–Remote-XGE1024/3/1/2] ip subscriber password plaintext radius
[CP–Remote-XGE1024/3/1/2] quit
# 查看CP上的IPoE用户在线信息。
[CP] display access-user interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x5c R-XGE1024/3/1/2 1.0.0.1 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
-
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· 采用DHCP服务器分配IPv4地址。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
· DHCP client异常下线后通过IPv4报文重新触发上线。
图1-174 DHCPv4报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 12.1.1.1/32 {
ipaddr = 12.1.1.1
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为12.1.1.1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
以上信息表示:用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius。
(2) 配置DHCP服务器
# 全局开启DHCP。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段3.3.3.0/24和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool1] network 3.3.3.0 24
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
# 配置为用户分配的网关地址为3.3.3.1。
[DHCP-server-ip-pool-pool1] gateway-list 3.3.3.1
# 将3.3.3.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 3.3.3.1
[DHCP-server-ip-pool-pool1] quit
# 配置到CP设备的缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 12.1.1.1
(3) 配置UP
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
(4) 配置CP
a. 配置DHCP relay
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将3.3.3.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址,绑定UP 1024。
<CP> system-view
[CP] ip pool pool1 bas remote
[CP-ip-pool-pool1] gateway 3.3.3.1 24
[CP-ip-pool-pool1] forbidden-ip 3.3.3.1
[CP-ip-pool-pool1] remote-server 4.4.4.3
[CP-ip-pool-pool1] binding up-id 1024
[CP-ip-pool-pool1] quit
b. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.1
[CP-radius-rs1] primary accounting 4.4.4.1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
c. 配置认证域
# 创建并进入名称为dm1的ISP域。
[CP] domain name dm1
# 配置ISP域使用的RADIUS方案rs1,并授权远端BAS IP地址池。
[CP-isp-dm1] authentication ipoe radius-scheme rs1
[CP-isp-dm1] authorization ipoe radius-scheme rs1
[CP-isp-dm1] accounting ipoe radius-scheme rs1
[CP-isp-dm1] authorization-attribute ip-pool pool1
[CP-isp-dm1] quit
d. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 开启未知源IP报文触发方式,允许DHCP client异常下线后通过IPv4报文重新触发上线。
[CP–Remote-XGE1024/3/1/2] ip subscriber initiator unclassified-ip enable matching-user
# 设置DHCP报文触发方式使用的认证域为dm1。
[CP–Remote-XGE1024/3/1/2] ip subscriber dhcp domain dm1
# 设置动态用户的认证密码为明文radius。
[CP–Remote-XGE1024/3/1/2] ip subscriber password plaintext radius
[CP–Remote-XGE1024/3/1/2] quit
# 用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IP地址为3.3.3.2。
[CP] display access-user interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x5c R-XGE1024/3/1/2 3.3.3.2 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
-
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· 采用IP地址池组下地址池为用户分配IPv4地址。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-175 DHCPv4报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 12.1.1.1/32 {
ipaddr = 12.1.1.1
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为12.1.1.1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
000c29a6b657 Cleartext-Password :="radius"
以上信息表示:添加用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius等多个用户。
(2) 配置DHCP服务器
# 全局开启DHCP。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool2地址池并进入其视图。
[DHCP-server] ip pool pool2
# 配置地址池动态分配的IP地址网段2.2.2.0/24和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool2] network 2.2.2.0 24
[DHCP-server-ip-pool-pool2] dns-list 8.8.8.8
# 配置为用户分配的网关地址为2.2.2.1。
[DHCP-server-ip-pool-pool2] gateway-list 2.2.2.1
# 将2.2.2.1设置为禁止地址。
[DHCP-server-ip-pool-pool2] forbidden-ip 2.2.2.1
[DHCP-server-ip-pool-pool2] quit
# 创建名称为pool3地址池并进入其视图。
[DHCP-server] ip pool pool3
# 配置地址池动态分配的IP地址网段3.3.3.0/24和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool3] network 3.3.3.0 24
[DHCP-server-ip-pool-pool3] dns-list 8.8.8.8
# 配置为用户分配的网关地址为3.3.3.1。
[DHCP-server-ip-pool-pool3] gateway-list 3.3.3.1
# 将3.3.3.1设置为禁止地址。
[DHCP-server-ip-pool-pool3] forbidden-ip 3.3.3.1
[DHCP-server-ip-pool-pool3] quit
# 配置到CP设备的缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 12.1.1.1
(3) 配置UP
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
(4) 配置CP
a. 配置DHCP server
# 配置本地BAS IP地址池pool1。
<CP> system-view
[CP] ip pool pool1 bas local
[CP-ip-pool-pool1] gateway 1.1.1.1 24
[CP-ip-pool-pool1] dns-list 8.8.8.8
[CP-ip-pool-pool1] forbidden-ip 1.1.1.1
[CP-ip-pool-pool1] binding up-id 1024
[CP-ip-pool-pool1] quit
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[CP] dhcp server request-ip-address check
b. 配置DHCP relay
# 配置远端BAS IP地址池pool2。
[CP] ip pool pool2 bas remote
[CP-ip-pool-pool2] gateway 2.2.2.1 24
[CP-ip-pool-pool2] forbidden-ip 2.2.2.1
[CP-ip-pool-pool2] remote-server 4.4.4.3
[CP-ip-pool-pool2] binding up-id 1024
[CP-ip-pool-pool2] quit
# 配置远端BAS IP地址池pool3。
[CP] ip pool pool3 bas remote
[CP-ip-pool-pool3] gateway 3.3.3.1 24
[CP-ip-pool-pool3] forbidden-ip 3.3.3.1
[CP-ip-pool-pool3] remote-server 4.4.4.3
[CP-ip-pool-pool3] binding up-id 1024
[CP-ip-pool-pool3] quit
# 创建IP地址池组poolgroup1,并将本地BAS IP地址池pool1、远端BAS IP地址池pool2和pool3加入到IP地址池组中。
[CP] ip pool-group poolgroup1
[CP-ip-pool-group-poolgroup1] pool pool1
[CP-ip-pool-group-poolgroup1] pool pool2
[CP-ip-pool-group-poolgroup1] pool pool3
[CP-ip-pool-group-poolgroup1] quit
c. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.1
[CP-radius-rs1] primary accounting 4.4.4.1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
d. 配置认证域
# 创建并进入名称为dm1的ISP域。
[CP] domain name dm1
# 配置ISP域使用的RADIUS方案rs1,并授权IP地址池组。
[CP-isp-dm1] authentication ipoe radius-scheme rs1
[CP-isp-dm1] authorization ipoe radius-scheme rs1
[CP-isp-dm1] accounting ipoe radius-scheme rs1
[CP-isp-dm1] authorization-attribute ip-pool-group poolgroup1
[CP-isp-dm1] quit
e. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 设置DHCP报文触发方式使用的认证域为dm1。
[CP–Remote-XGE1024/3/1/2] ip subscriber dhcp domain dm1
# 设置动态用户的认证密码为明文radius。
[CP–Remote-XGE1024/3/1/2] ip subscriber password plaintext radius
[CP–Remote-XGE1024/3/1/2] quit
# 先上线253个用户后,显示DHCP本地地址池pool1的统计信息。
[CP] display dhcp server statistics pool pool1
Total IP addresses: 254
Free IP addresses: 0
Used: 253
Pool utilization: 100.00%
Bindings:
Automatic: 253
Manual: 0
Expired: 0
Conflicts: 0
以上信息说明,DHCP本地地址池pool1的地址利用率为100%,已无可分配的IP地址。
如果再有新用户上线,设备将使用远端BAS IP地址池pool2关联的DHCP服务器上的地址资源为新上线用户分配地址。
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· 采用DHCP服务器分配IPv6地址。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
· BRAS设备需要支持IPoE的转发与控制分离,其中UP为用户接入相连的设备,CP为IPoE控制模块设备,在UP和CP之间有两条传输通道,其中,CUSP提供CP/UP间的表项下发通道,VXLAN隧道提供CP/UP间的协议报文通道,UP的接入模块同时需要识别上送CP的报文,CP需要把会话下发到UP上,UP需要对下发的会话进行恢复。
图1-176 DHCPv6报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 12::1/64 {
ipaddr6 = 12::1
netmask=64
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为12::1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
以上信息表示:用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius。
(2) 配置UP
# 配置BRAS设备工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
(3) 配置CP
a. 配置DHCP服务器
# 配置ODAP类型的IPv6地址池pool1。
<CP> system-view
[CP] ipv6 pool pool1 odap
[CP-ipv6-pool-pool1] network 1::/32 export-route
[CP-ipv6-pool-pool1] dynamic address assign-length 64
[CP-ipv6-pool-pool1] forbidden-address 1::1
[CP-ipv6-pool-pool1] dns-server 8::8
[CP-ipv6-pool-pool1] quit
# 配置远端接口Remote-XGE1024/3/1/2工作在DHCPv6服务器模式。
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] ipv6 dhcp select server
# 配置自动生成IPv6链路本地地址,该IPv6链路本地地址作为用户的网关。
[CP–Remote-XGE1024/3/1/2] ipv6 address auto link-local
# 取消设备发布RA消息的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址。配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[CP–Remote-XGE1024/3/1/2] undo ipv6 nd ra halt
[CP–Remote-XGE1024/3/1/2] ipv6 nd autoconfig managed-address-flag
[CP–Remote-XGE1024/3/1/2] ipv6 nd autoconfig other-flag
[CP–Remote-XGE1024/3/1/2] quit
b. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication ipv6 4::1
[CP-radius-rs1] primary accounting ipv6 4::1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
c. 配置CP上的认证域
#创建并进入名称为dm1的ISP域。
[CP] domain name dm1
# 配置ISP域使用的RADIUS方案rs1,并授权IPv6地址池pool1。
[CP-isp-dm1] authentication ipoe radius-scheme rs1
[CP-isp-dm1] authorization ipoe radius-scheme rs1
[CP-isp-dm1] accounting ipoe radius-scheme rs1
[CP-isp-dm1] authorization-attribute ipv6-pool pool1
[CP-isp-dm1] quit
d. 配置IPoE
# 进入远端接口Remote-XGE1024/3/1/2。
[CP] interface remote-xge 1024/3/1/2
# 开启IPoE功能,并指定二层接入模式。
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 设置未知源IP报文触发方式使用的认证域为dm1。
[CP–Remote-XGE1024/3/1/2] ip subscriber dhcp domain dm1
# 设置动态用户的认证密码为明文radius。
[CP–Remote-XGE1024/3/1/2] ip subscriber password plaintext radius
[CP–Remote-XGE1024/3/1/2] quit
# 查看CP上的IPoE用户在线信息。
[CP] display access-user interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x5c R-XGE1024/3/1/2 - 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
1::2
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· 采用DHCP服务器分配IPv6地址。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-177 DHCPv6报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 12::1/64 {
ipaddr6 = 12::1
netmask=64
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为12::1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
以上信息表示:用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius。
(2) 配置DHCP服务器
# 创建名称为pool1的IPv6地址池并进入其视图。
<DHCP-server> system-view
[DHCP-server] ipv6 pool pool1
# 配置地址池动态分配的IPv6地址网段3::/64,DNS服务器地址为8::8。
[DHCP-server-ipv6-pool-pool1] network 3::/64
[DHCP-server-ipv6-pool-pool1] dns-server 8::8
[DHCP-server-ipv6-pool-pool1] quit
# 配置接口Ten-GigabitEthernet3/1/1工作在DHCPv6服务器模式。
[DHCP-server] interface ten-gigabitethernet 3/1/1
[DHCP-server-Ten-GigabitEthernet3/1/1] ipv6 dhcp select server
[DHCP-server-Ten-GigabitEthernet3/1/1] quit
# 配置到CP设备的缺省路由。
[DHCP-server] ipv6 route-static :: 0 12::1
(3) 配置UP
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
(4) 配置CP
a. 配置DHCP relay
# 配置远端BAS IPv6地址池pool1。
<CP> system-view
[CP] ipv6 pool pool1 bas remote
[CP-ipv6-pool-pool1] gateway-list 3::1
[CP-ipv6-pool-pool1] network 3::/64 export-route
[CP-ipv6-pool-pool1] remote-server 4::3
[CP-ipv6-pool-pool1] dhcpv6-relay source-address interface loopback 0
[CP-ipv6-pool-pool1] binding up-id 1024
[CP-ipv6-pool-pool1] quit
# 进入接口Remote-XGE1024/3/1/2视图。
[CP] interface remote-xge 1024/3/1/2
# 配置接口工作在中继模式。
[CP–Remote-XGE1024/3/1/2] ipv6 dhcp select relay
# 配置自动生成IPv6链路本地地址,该IPv6链路本地地址作为用户的网关。
[CP–Remote-XGE1024/3/1/2] ipv6 address auto link-local
# 取消设备发布RA消息的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址。配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[CP–Remote-XGE1024/3/1/2] undo ipv6 nd ra halt
[CP–Remote-XGE1024/3/1/2] ipv6 nd autoconfig managed-address-flag
[CP–Remote-XGE1024/3/1/2] ipv6 nd autoconfig other-flag
[CP–Remote-XGE1024/3/1/2] quit
b. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication ipv6 4::1
[CP-radius-rs1] primary accounting ipv6 4::1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
c. 配置认证域
# 创建并进入名称为dm1的ISP域。
[CP] domain name dm1
# 配置ISP域使用的RADIUS方案rs1,并授权IPv6远端地址池。
[CP-isp-dm1] authentication ipoe radius-scheme rs1
[CP-isp-dm1] authorization ipoe radius-scheme rs1
[CP-isp-dm1] accounting ipoe radius-scheme rs1
[CP-isp-dm1] authorization-attribute ipv6-pool pool1
[CP-isp-dm1] quit
d. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 设置DHCP报文触发方式使用的认证域为dm1。
[CP–Remote-XGE1024/3/1/2] ip subscriber dhcp domain dm1
# 设置动态用户的认证密码为明文radius。
[CP–Remote-XGE1024/3/1/2] ip subscriber password plaintext radius
[CP–Remote-XGE1024/3/1/2] quit
# 用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IPv6地址为3::2。
[CP] display access-user interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x2c2 R-XGE1024/3/1/2 - 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
3::2
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· 采用DHCP服务器分别分配IPv4和IPv6地址。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-178 DHCP报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 12.1.1.1/32 {
ipaddr = 12.1.1.1
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为12.1.1.1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
以上信息表示:用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius。
(2) 配置DHCP服务器
¡ 配置IP地址池
# 开启DHCP服务。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1的IP地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段3.3.3.0/24和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool1] network 3.3.3.0 24
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
# 配置为用户分配的网关地址为3.3.3.1。
[DHCP-server-ip-pool-pool1] gateway-list 3.3.3.1
# 将3.3.3.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 3.3.3.1
[DHCP-server-ip-pool-pool1] quit
# 配置到CP设备的缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 12.1.1.1
¡ 配置IPv6地址池
# 创建名称为pool2的IPv6地址池并进入其视图。
[DHCP-server] ipv6 pool pool2
# 配置地址池动态分配的IPv6地址网段3::/64和DNS服务器地址8::8。
[DHCP-server-ipv6-pool-pool2] network 3::/64
[DHCP-server-ipv6-pool-pool2] dns-server 8::8
[DHCP-server-ipv6-pool-pool2] quit
# 将3::1设置为禁止地址。
[DHCP-server] ipv6 dhcp server forbidden-address 3::1
# 配置接口Ten-GigabitEthernet3/1/1工作在DHCPv6服务器模式。
[DHCP-server] interface ten-gigabitethernet 3/1/1
[DHCP-server-Ten-GigabitEthernet3/1/1] ipv6 dhcp select server
[DHCP-server-Ten-GigabitEthernet3/1/1] quit
# 配置到CP设备的缺省路由。
[DHCP-server] ipv6 route-static :: 0 12::1
(3) 配置UP
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
(4) 配置CP
a. 配置DHCP relay
# 配置远端BAS IP地址池pool1。
<CP> system-view
[CP] ip pool pool1 bas remote
[CP-ip-pool-pool1] gateway 3.3.3.1 24
[CP-ip-pool-pool1] forbidden-ip 3.3.3.1
[CP-ip-pool-pool1] remote-server 4.4.4.3
[CP-ip-pool-pool1] binding up-id 1024
[CP-ip-pool-pool1] quit
# 配置远端BAS IPv6地址池pool2。
[CP] ipv6 pool pool2 bas remote
[CP-ipv6-pool-pool2] gateway-list 3::1
[CP-ipv6-pool-pool2] network 3::/64 export-route
[CP-ipv6-pool-pool2] remote-server 4::3
[CP-ipv6-pool-pool2] dhcpv6-relay source-address interface loopback 0
[CP-ipv6-pool-pool2] binding up-id 1024
[CP-ipv6-pool-pool2] quit
# 进入接口Remote-XGE1024/3/1/2视图。
[CP] interface remote-xge 1024/3/1/2
# 配置接口工作在中继模式。
[CP–Remote-XGE1024/3/1/2] dhcp select relay
[CP–Remote-XGE1024/3/1/2] ipv6 dhcp select relay
# 配置自动生成IPv6链路本地地址,该IPv6链路本地地址作为用户的网关。
[CP–Remote-XGE1024/3/1/2] ipv6 address auto link-local
# 取消设备发布RA消息的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址。配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[CP–Remote-XGE1024/3/1/2] undo ipv6 nd ra halt
[CP–Remote-XGE1024/3/1/2] ipv6 nd autoconfig managed-address-flag
[CP–Remote-XGE1024/3/1/2] ipv6 nd autoconfig other-flag
[CP–Remote-XGE1024/3/1/2] quit
b. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.1
[CP-radius-rs1] primary accounting 4.4.4.1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
c. 配置认证域
# 创建并进入名称为dm1的ISP域。
[CP] domain name dm1
# 配置ISP域使用的RADIUS方案rs1,并授权远端地址池。
[CP-isp-dm1] authentication ipoe radius-scheme rs1
[CP-isp-dm1] authorization ipoe radius-scheme rs1
[CP-isp-dm1] accounting ipoe radius-scheme rs1
[CP-isp-dm1] authorization-attribute ip-pool pool1
[CP-isp-dm1] authorization-attribute ipv6-pool pool2
[CP-isp-dm1] quit
d. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 设置DHCP报文触发方式使用的认证域为dm1。
[CP–Remote-XGE1024/3/1/2] ip subscriber dhcp domain dm1
# 设置动态用户的认证密码为明文radius。
[CP–Remote-XGE1024/3/1/2] ip subscriber password plaintext radius
[CP–Remote-XGE1024/3/1/2] quit
# 用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IPv4地址为3.3.3.2,IPv6地址为3::2。
[CP] display access-user interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x2c2 R-XGE1024/3/1/2 3.3.3.2 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
3::2
· 通过IPv6 ND RS报文触发上线的用户主机经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备可以发送IPv6 ND RA报文。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-179 IPv6 ND RS报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 12.1.1.1/32 {
ipaddr = 12.1.1.1
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为12.1.1.1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
Framed-IPv6-Prefix =10::10/64
以上信息表示:用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius,授权IPv6前缀为10::10/64。
(2) 配置UP
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
(3) 配置CP
a. 取消对接口Remote-XGE1024/3/1/2发布IPv6 ND RA消息的抑制。
<CP> system-view
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] undo ipv6 nd ra halt
b. 配置接口Remote-XGE1024/3/1/2自动生成IPv6链路本地地址。
[CP–Remote-XGE1024/3/1/2] ipv6 address auto link-local
[CP–Remote-XGE1024/3/1/2] quit
c. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.1
[CP-radius-rs1] primary accounting 4.4.4.1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
d. 配置发布前缀网段路由
# (仅用于发布前缀网段路由)配置本地BAS IPv6地址池pool1,指定匹配该地址池的DHCPv6客户端所在的网段地址并发布网段路由。
[CP] ipv6 pool pool1 bas local
[CP-ipv6-pool-pool1] network 10::/64 export-route
[CP-ipv6-pool-pool1] quit
e. 配置认证域
# 创建并进入名称为dm1的ISP域。
[CP] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[CP-isp-dm1] authentication ipoe radius-scheme rs1
[CP-isp-dm1] authorization ipoe radius-scheme rs1
[CP-isp-dm1] accounting ipoe radius-scheme rs1
# 配置为用户授权IPv6 DNS地址池信息。
[CP-isp-dm1] authorization-attribute primary-dns ipv6 8::8
[CP-isp-dm1] quit
f. 配置IPoE
# 进入接口Remote-XGE1024/3/1/2视图。
[CP] interface remote-xge 1024/3/1/2
# 开启IPoE功能,并指定二层接入模式。
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 开启IPv6 ND RS报文触发方式。
[CP–Remote-XGE1024/3/1/2] ip subscriber initiator ndrs enable
# 设置IPv6 ND RS报文触发方式使用的认证域为dm1。
[CP–Remote-XGE1024/3/1/2] ip subscriber ndrs domain dm1
# 设置动态用户的认证密码为明文radius。
[CP–Remote-XGE1024/3/1/2] ip subscriber password plaintext radius
[CP–Remote-XGE1024/3/1/2] quit
# 用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IPv6地址为10::20C:29FF:FEA6:B656。
[CP] display access-user interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0xc R-XGE1024/3/1/2 - 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
10::20C:29FF:FEA6:B656
· 通过IPv6 ND RS报文触发上线的用户主机经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备可以发送IPv6 ND RA报文。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-180 IPv6 ND RS报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 12.1.1.1/32 {
ipaddr = 12.1.1.1
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为12.1.1.1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
000c29a6b656 Cleartext-Password :="radius"
以上信息表示:用户名为Host的MAC地址000c29a6b656,用户密码为字符串radius。
(2) 配置UP
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
(3) 配置CP
a. 取消对接口Remote-XGE1024/3/1/2发布IPv6 ND RA消息的抑制。
<CP> system-view
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] undo ipv6 nd ra halt
b. 配置接口Remote-XGE1024/3/1/2自动生成IPv6链路本地地址。
[CP–Remote-XGE1024/3/1/2] ipv6 address auto link-local
[CP–Remote-XGE1024/3/1/2] quit
c. 配置ND前缀池
# 配置前缀池1,包含的前缀为10::/16,分配的前缀长度为32,即前缀池1包含10::/32~10:FFFF::/32范围内的65536个前缀。
[CP] ipv6 dhcp prefix-pool 1 prefix 10::/16 assign-len 32
# 配置ODAP类型的IPv6地址池pool1,并引用前缀池1,指定分配的IPv6前缀段的前缀长度为64。
[CP] ipv6 pool pool1 odap
[CP-ipv6-pool-pool1] prefix-pool 1
[CP-ipv6-pool-pool1] dynamic prefix assign-length 64
[CP-ipv6-pool-pool1] quit
d. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.1
[CP-radius-rs1] primary accounting 4.4.4.1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
e. 配置认证域
# 创建并进入名称为dm1的ISP域。
[CP] domain name dm1
# 配置ISP域使用的RADIUS方案rs1,为用户授权ND前缀池及IPv6 DNS地址池信息。
[CP-isp-dm1] authentication ipoe radius-scheme rs1
[CP-isp-dm1] authorization ipoe radius-scheme rs1
[CP-isp-dm1] accounting ipoe radius-scheme rs1
[CP-isp-dm1] authorization-attribute ipv6-nd-prefix-pool pool1
[CP-isp-dm1] authorization-attribute primary-dns ipv6 8::8
[CP-isp-dm1] quit
f. 配置IPoE
# 进入接口Remote-XGE1024/3/1/2视图。
[CP] interface remote-xge 1024/3/1/2
# 开启IPoE功能,并指定二层接入模式。
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 开启IPv6 ND RS报文触发方式。
[CP–Remote-XGE1024/3/1/2] ip subscriber initiator ndrs enable
# 设置IPv6 ND RS报文触发方式使用的认证域为dm1。
[CP–Remote-XGE1024/3/1/2] ip subscriber ndrs domain dm1
# 设置动态用户的认证密码为明文radius。
[CP–Remote-XGE1024/3/1/2] ip subscriber password plaintext radius
[CP–Remote-XGE1024/3/1/2] quit
# 用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IPv6前缀为10::/64。
[CP] display access-user interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0xc R-XGE1024/3/1/2 - 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
10::20C:29FF:FEA6:B656
CPE支持通过NDRA和IA_PD两种方式分别向BRAS申请ND前缀和PD前缀。其中:
· NDRA:CPE主动向BRAS发送ND RS报文,BRAS通过ND RA报文给CPE的Ten-GigabitEthernet3/1/1接口分配ND前缀,用于CPE的Ten-GigabitEthernet3/1/1接口生成IPv6全球单播地址,该地址可被用于远程管理CPE设备。
· IA_PD:CPE主动向BRAS发送DHCPv6请求报文,BRAS通过DHCPv6(IA_PD)协议给CPE分配PD前缀;CPE将获取到PD前缀通过无状态方式分配给下连的主机,用于主机生成IPv6全球单播地址。
· 采用RADIUS作为认证、授权和计费服务器。
图1-181 IPv6 ND RS+DHCPv6(IA_PD)报文触发IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置RADIUS服务器
下面以Linux下的Free Radius服务器为例,说明RADIUS server的基本配置。
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 12.1.1.1/32 {
ipaddr = 12.1.1.1
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为12.1.1.1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
6a4c310a0207 Cleartext-Password :="radius"
以上信息表示:用户名为Host的MAC地址6a4c310a0207,用户密码为字符串radius。
(2) 配置UP
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
(3) 配置CP
a. 配置各接口的IP地址(略)。
b. 取消对接口Remote-XGE1024/3/1/2发布IPv6 ND RA消息的抑制。
<CP> system-view
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] undo ipv6 nd ra halt
c. 配置接口Remote-XGE1024/3/1/2自动生成IPv6链路本地地址。
[CP–Remote-XGE1024/3/1/2] ipv6 address auto link-local
d. # 配置接口Remote-XGE1024/3/1/2工作在DHCPv6服务器模式。
[CP–Remote-XGE1024/3/1/2] ipv6 dhcp select server
[CP–Remote-XGE1024/3/1/2] quit
e. 配置ND前缀池和PD前缀池
# (NDRS使用)配置前缀池1,包含的前缀为10::/16,分配的前缀长度为32,即前缀池1包含10::/32~10:FFFF::/32范围内的65536个前缀。
[CP] ipv6 dhcp prefix-pool 1 prefix 10::/16 assign-len 32
# 配置ODAP类型的IPv6地址池nd,并引用前缀池1,指定分配的IPv6前缀段的前缀长度为64。
[CP] ipv6 pool nd odap
[CP-ipv6-pool-nd] prefix-pool 1
[CP-ipv6-pool-nd] dynamic prefix assign-length 64
[CP-ipv6-pool-nd] quit
# (IA_PD使用)配置前缀池6,包含的前缀为20::/16,分配的前缀长度为32,即前缀池6包含20::/32~20:FFFF::/32范围内的65536个前缀。
[CP] ipv6 dhcp prefix-pool 6 prefix 20::/16 assign-len 32
# 配置ODAP类型的IPv6地址池pd,并引用前缀池6,指定分配的IPv6前缀段的前缀长度为64。
[CP] ipv6 pool pd odap
[CP-ipv6-pool-pd] prefix-pool 6
[CP-ipv6-pool-pd] dynamic prefix assign-length 64
[CP-ipv6-pool-pd] quit
f. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.1
[CP-radius-rs1] primary accounting 4.4.4.1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
g. 配置认证域
# 创建并进入名称为dm1的ISP域。
[CP] domain name dm1
# 配置ISP域使用的RADIUS方案rs1,为用户授权PD前缀池为pd,ND前缀池为nd。
[CP-isp-dm1] authentication ipoe radius-scheme rs1
[CP-isp-dm1] authorization ipoe radius-scheme rs1
[CP-isp-dm1] accounting ipoe radius-scheme rs1
[CP-isp-dm1] authorization-attribute ipv6-pool pd
[CP-isp-dm1] authorization-attribute ipv6-nd-prefix-pool nd
[CP-isp-dm1] quit
h. 配置IPoE
# 进入接口Remote-XGE1024/3/1/2视图。
[CP] interface remote-xge 1024/3/1/2
# 开启IPoE功能,并指定二层接入模式。
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 开启IPv6 NDRS报文触发方式。
[CP–Remote-XGE1024/3/1/2] ip subscriber initiator ndrs enable
# 设置IPv6 DHCP报文触发方式使用的认证域为dm1。
[CP–Remote-XGE1024/3/1/2] ip subscriber dhcp domain dm1
# 设置IPv6 NDRS报文触发方式使用的认证域为dm1。
[CP–Remote-XGE1024/3/1/2] ip subscriber ndrs domain dm1
# 设置动态用户的认证密码为明文radius。
[CP–Remote-XGE1024/3/1/2] ip subscriber password plaintext radius
[CP–Remote-XGE1024/3/1/2] quit
(4) 配置RouterA
a. 配置接口Ten-GigabitEthernet3/1/1的开启无状态地址自动配置功能,使接口通过无状态自动配置方式生成全球单播地址
[RouterA] interface ten-gigabitethernet 3/1/1
[RouterA–Ten-GigabitEthernet3/1/1] ipv6 address auto
b. # 配置接口Ten-GigabitEthernet3/1/1作为DHCPv6客户端,通过DHCPv6方式获取IPv6前缀和其他网络配置参数;指定获取到IPv6前缀后,创建编号为1的IPv6前缀,该前缀编号1对应的IPv6前缀为DHCPv6客户端获取到的前缀。
[RouterA–Ten-GigabitEthernet3/1/1] ipv6 dhcp client pd 1
[RouterA–Ten-GigabitEthernet3/1/1] quit
c. # 配置缺省路由。
[RouterA] ipv6 route-static :: 0 10::1
d. # 在接口Ten-GigabitEthernet3/1/2上取消对RA消息发布的抑制。
[RouterA] interface ten-gigabitethernet 3/1/2
[RouterA-Ten-GigabitEthernet3/1/2] undo ipv6 nd ra halt
e. # 在接口Ten-GigabitEthernet3/1/2上配置动态获取IPv6前缀的编号为1,即该接口将使用编号为1的前缀生成自己的IPv6地址20::123:1:1(CPE下连用户需要将该地址设置为自己的网关地址),并将编号为1的IPv6前缀通过RA报文分配给终端设备。
[RouterA-Ten-GigabitEthernet3/1/2] ipv6 address 1 123::123:1:1/64
[RouterA-Ten-GigabitEthernet3/1/2] quit
# 客户端触发NDRS+IAPD报文,用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的nd前缀为10::,pd前缀为20::/64。
[CP] display access-user interface remote-xge 1024/3/1/2 verbose
Slot 97:
Basic:
Description: N/A
User ID: 0x1d
Username: 6a4c310a0207
Authorization domain : dm1
Authentication domain: dm1
Interface: R-XGE1024/3/1/2
Service-VLAN/Customer-VLAN: -/-
VXLAN ID: -
MAC address: 6a4c-310a-0207
IP address: -
IP pool: -
Primary DNS server: -
Secondary DNS server: -
IPv6 address: 10::684C:31FF:FE0A:207
IPv6 pool: pd
Primary IPv6 DNS server: -
Secondary IPv6 DNS server: -
IPv6 PD prefix: 20::/64
IPv6 ND prefix: 10::/64
……
以上信息表示,Router B通过DHCPv6协议为Router A分配一个代理前缀。
# 显示Router A上创建的IPv6前缀信息。
[RouterA] display ipv6 prefix
Number Prefix Type
1 20::/64 Dynamic
以上信息表示,Router A从Router B获取到代理前缀后,已根据ipv6 dhcp client pd 1配置创建了编号为1的IPv6前缀。
· 通过ARP报文触发上线的IPoE静态个人接入用户主机经由二层网络以IPoE方式接入到BRAS接入设备。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
· 为静态用户分配的网关地址为3.3.3.1。
图1-182 ARP报文触发静态IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 12.1.1.1/32 {
ipaddr = 12.1.1.1
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为12.1.1.1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
3.3.3.2 Cleartext-Password :="radius"
以上信息表示:用户名为Host的IP地址3.3.3.2,用户密码为字符串radius。
(2) 配置UP
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
(3) 配置CP
a. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
<CP> system-view
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.1
[CP-radius-rs1] primary accounting 4.4.4.1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
b. 配置认证域
# 创建并进入名称为dm1的ISP域。
[CP] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[CP-isp-dm1] authentication ipoe radius-scheme rs1
[CP-isp-dm1] authorization ipoe radius-scheme rs1
[CP-isp-dm1] accounting ipoe radius-scheme rs1
[CP-isp-dm1] quit
c. 配置DHCP服务器
# 创建本地BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,并指定地址池禁止分配地址3.3.3.2,该地址必须和IPoE静态会话中指定的用户地址相同,绑定UP 1024。
[CP] ip pool pool1 bas local
[CP-ip-pool-pool1] gateway 3.3.3.1 24
[CP-ip-pool-pool1] forbidden-ip 3.3.3.2
[CP-ip-pool-pool1] binding up-id 1024
[CP-ip-pool-pool1] quit
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[CP] dhcp server request-ip-address check
d. 配置IPoE
# 配置IP地址为3.3.3.2,该地址必须是已在IP地址池中配置的禁止分配地址,认证域为dm1的全局静态会话。
[CP] ip subscriber session static ip 3.3.3.2 domain dm1 interface remote-xge 1024/3/1/2
# 进入接口Remote-XGE1024/3/1/2视图。
[CP] interface remote-xge 1024/3/1/2
# 开启IPoE功能,并指定二层接入模式。
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# IPoE静态个人接入用户通过ARP报文触发上线功能。
[CP–Remote-XGE1024/3/1/2] ip subscriber initiator arp enable
# 配置IPoE静态个人接入用户的认证密码为radius。
[CP–Remote-XGE1024/3/1/2] ip subscriber password plaintext radius
[CP–Remote-XGE1024/3/1/2] quit
# 用户认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息。
[CP] display access-user interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x10 R-XGE1024/3/1/2 3.3.3.2 147b-1924-0206 -/-
3.3.3.2 L2 IPoE static
-
· 通过NS/NA报文触发上线的IPoE静态个人接入用户主机经由二层网络以IPoE方式接入到BRAS接入设备。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-183 NS/NA报文触发静态IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 12::1/64 {
ipaddr6 = 12::1
netmask=64
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为12::1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
3::1 Cleartext-Password :="radius"
以上信息表示:用户名为Host的IP地址3::1,用户密码为字符串radius。
(2) 配置UP
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
(3) 配置CP
a. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
<CP> system-view
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication ipv6 4::1
[CP-radius-rs1] primary accounting ipv6 4::1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
b. 配置认证域
# 创建并进入名称为dm1的ISP域。
[CP] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[CP-isp-dm1] authentication ipoe radius-scheme rs1
[CP-isp-dm1] authorization ipoe radius-scheme rs1
[CP-isp-dm1] accounting ipoe radius-scheme rs1
[CP-isp-dm1] quit
c. 配置DHCP服务器
# 创建本地BAS IPv6地址池pool1,指定匹配该地址池的DHCPv6客户端所在的网段地址,并指定地址池禁止分配地址3::1,该地址必须和IPoE静态会话中指定的用户地址相同。
[CP] ipv6 pool pool1 bas local
[CP-ipv6-pool-pool1] network 3::/64 export-route
[CP-ipv6-pool-pool1] forbidden-address 3::1
[CP-ipv6-pool-pool1] quit
d. 配置IPoE
# 配置IPv6地址为3::1,认证域为dm1的全局静态会话。
[CP] ip subscriber session static ipv6 3::1 domain dm1 interface remote-xge 1024/3/1/2
# 进入接口Remote-XGE1024/3/1/2视图。
[CP] interface remote-xge 1024/3/1/2
# 配置自动生成IPv6链路本地地址,该IPv6链路本地地址作为用户的网关。
[CP–Remote-XGE1024/3/1/2] ipv6 address auto link-local
# 开启IPoE功能,并指定二层接入模式。
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# IPoE静态个人接入用户通过NS/NA报文触发上线功能。
[CP–Remote-XGE1024/3/1/2] ip subscriber initiator nsna enable
# 配置IPoE静态个人接入用户的认证密码为radius。
[CP–Remote-XGE1024/3/1/2] ip subscriber password plaintext radius
[CP–Remote-XGE1024/3/1/2] quit
# NS/NA报文认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息。
[CP] display access-user interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x4 R-XGE1024/3/1/2 - 0010-9400-0002 -/-
3::1 L2 IPoE static
3::1
· 三层设备CP下挂的Host A和Host B均使用相同的IPv6地址前缀(20::/64)且通过无状态自动配置方式获取IPv6地址。
· BRAS设备上采用IPoE静态用户上线方式实现下挂的主机都可以通过IPv6报文触发上线,并对这些使用相同IPv6地址前缀的用户报文进行统一认证、计费、限速和管理。
· 采用RADIUS作为认证、授权和计费服务器。
图1-184 IPv6 PD前缀用户通过未知源IP报文触发静态IPoE接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置RADIUS服务器
下面以Linux下的Free Radius服务器为例,说明RADIUS server的基本配置。
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 12::1/64 {
ipaddr6 = 12::1
netmask=64
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为12::1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
10::2 Cleartext-Password :="radius"
以上信息表示:静态用户的用户名为10::2,用户密码为字符串radius。
(2) 配置UP
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
(3) 配置CP
a. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
<CP> system-view
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication ipv6 4::1
[CP-radius-rs1] primary accounting ipv6 4::1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
b. 配置认证域
# 创建并进入名称为dm1的ISP域。
[CP] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[CP-isp-dm1] authentication ipoe radius-scheme rs1
[CP-isp-dm1] authorization ipoe radius-scheme rs1
[CP-isp-dm1] accounting ipoe radius-scheme rs1
[CP-isp-dm1] quit
c. 配置DHCP服务器
# 创建本地BAS IPv6地址池pool1,指定匹配该地址池的DHCPv6客户端所在的网段地址,并指定地址池禁止分配地址10::2,该地址必须和IPoE静态会话中指定的用户地址相同。
[Device] ipv6 pool pool1 bas local
[Device-ipv6-pool-pool1] network 10::/64 export-route
[Device-ipv6-pool-pool1] forbidden-address 10::2
[Device-ipv6-pool-pool1] quit
d. 配置IPoE
# 配置IPoE全局静态会话,允许IPv6地址为10::2和属于前缀网段20::/64的用户触发静态用户上线,并配置BRAS设备主动请求用户上线。
[CP] ip subscriber session static ipv6 10::2 delegation-prefix 20:: 64 domain dm1 interface remote-xge 1024/3/1/2 request-online
# 进入接口Remote-XGE1024/3/1/2视图。
[CP] interface remote-xge 1024/3/1/2
# 开启IPoE功能,并指定二层接入模式。
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 开启未知源IPv6报文和NS/NA报文触发生成IPoE会话功能。
[CP–Remote-XGE1024/3/1/2] ip subscriber initiator unclassified-ipv6 enable matching-user
[CP–Remote-XGE1024/3/1/2] ip subscriber initiator nsna enable
# 配置IPoE静态个人接入用户的认证密码为radius。
[CP–Remote-XGE1024/3/1/2] ip subscriber password plaintext radius
[CP–Remote-XGE1024/3/1/2] quit
(4) 配置Router A
# 配置引用前缀生成接口上的IPv6地址,并将此前缀分配给终端设备。
<RouterA> system-view
[RouterA] ipv6 prefix 1 20::/64
[RouterA] interface ten-gigabitethernet 3/1/2
[RouterA–Ten-GigabitEthernet3/1/2] ipv6 address 1 ::1/64
# 取消对RA消息发布的抑制。
[RouterA–Ten-GigabitEthernet3/1/2] undo ipv6 nd ra halt
[RouterA–Ten-GigabitEthernet3/1/2] quit
# HostA发送的IPv6报文认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息。
[CP] display access-user interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x4 R-XGE1024/3/1/2 - 0010-9400-0002 -/-
10::2 L2 IPoE static
10::2
· 子网5.5.5.0/24、6.6.6.0/24、7.7.7.0/24的所有用户经由二层网络以IPoE方式接入到BRAS 接入设备。
· 子网专线用户认证时使用的用户名和密码分别为:5.5.5.0/24网段用户名us1、密码pw1;6.6.6.0/24网段用户名us2、密码pw2;7.7.7.0/24网段用户名us3、密码pw3。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-185 IPoE子网专线用户接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 12.1.1.1/32 {
ipaddr = 12.1.1.1
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为12.1.1.1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
us1 Cleartext-Password :="pw1"
us2 Cleartext-Password :="pw2"
us3 Cleartext-Password :="pw3"
以上信息表示:三个子网专线用户的用户名分别为us1、us2、us3,相应的用户密码分别为字符串pw1、pw2、pw3。
(2) 配置UP
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
(3) 配置CP
a. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
<CP> system-view
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.1
[CP-radius-rs1] primary accounting 4.4.4.1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
b. 配置认证域
# 创建并进入名称为dm1的ISP域。
[CP] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[CP-isp-dm1] authentication ipoe radius-scheme rs1
[CP-isp-dm1] authorization ipoe radius-scheme rs1
[CP-isp-dm1] accounting ipoe radius-scheme rs1
[CP-isp-dm1] quit
c. 配置IPoE认证
# 进入接口Remote-XGE1024/3/1/2视图。
[CP] interface remote-xge 1024/3/1/2
# 开启IPoE功能,并指定三层接入模式。
[CP–Remote-XGE1024/3/1/2] ip subscriber routed enable
# 配置三个子网专线用户。
[CP–Remote-XGE1024/3/1/2] ip subscriber subnet-leased ip 5.5.5.0 24 username us1 password plaintext pw1 domain dm1
[CP–Remote-XGE1024/3/1/2] ip subscriber subnet-leased ip 6.6.6.0 24 username us2 password plaintext pw2 domain dm1
[CP–Remote-XGE1024/3/1/2] ip subscriber subnet-leased ip 7.7.7.0 24 username us3 password plaintext pw3 domain dm1
[CP–Remote-XGE1024/3/1/2] quit
# 子网专线用户认证通过之后,各子网网段的用户流量能正常转发,可以使用以下的显示命令查看到IPoE用户在线信息。
[CP] display access-user interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x16 R-XGE1024/3/1/2 5.5.5.0 - -/-
us1 L3 IPoE subnet leased
-
0x17 R-XGE1024/3/1/2 6.6.6.0 - -/-
us2 L3 IPoE subnet leased
-
0x18 R-XGE1024/3/1/2 7.7.7.0 - -/-
us3 L3 IPoE subnet leased
-
· 2.2.2.0/24网段内的所有用户经由网关设备以IPoE方式接入到BRAS接入设备。
· 接口专线用户认证时使用的用户名为us1、密码为pw1。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
图1-186 IPoE接口专线用户接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 12.1.1.1/32 {
ipaddr = 12.1.1.1
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为12.1.1.1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
us1 Cleartext-Password :="pw1"
以上信息表示:接口专线用户的用户名为us1,用户密码为字符串pw1。
(2) 配置UP
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
(3) 配置CP
a. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
<CP> system-view
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.1
[CP-radius-rs1] primary accounting 4.4.4.1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
b. 配置认证域
# 创建并进入名称为dm1的ISP域。
[CP] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[CP-isp-dm1] authentication ipoe radius-scheme rs1
[CP-isp-dm1] authorization ipoe radius-scheme rs1
[CP-isp-dm1] accounting ipoe radius-scheme rs1
[CP-isp-dm1] quit
c. 配置IPoE认证
# 进入接口Remote-XGE1024/3/1/2视图。
[CP] interface remote-xge 1024/3/1/2
# 开启IPoE功能,并指定三层接入模式。
[CP–Remote-XGE1024/3/1/2] ip subscriber routed enable
# 配置接口专线用户,认证使用的用户名为us1,认证使用的密码为明文pw1,使用的认证域为dm1。
[CP–Remote-XGE1024/3/1/2] ip subscriber interface-leased username us1 password plaintext pw1 domain dm1
[CP–Remote-XGE1024/3/1/2] quit
# 接口专线用户认证通过之后,后续经由此接口的用户流量都能正常转发,可以使用以下的显示命令查看到IPoE用户在线信息。
[CP] display access-user interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0xec R-XGE1024/3/1/2 - - -/-
us1 L3 IPoE interface leased
-
· 用户主机经由二层网络以IPoE方式接入到BRAS接入设备。
· 由一台安装了H3C iMC的服务器同时承担RADIUS服务器、Portal认证服务器和Portal Web服务器的职责。本举例中使用的iMC版本为:iMC PLAT 7.1(E0303)、iMC UAM 7.1(E0305)、iMC EIP 7.1(E0305))。
· FTP server是一台内网服务器。
图1-187 IPoE静态用户普通Web认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置UP
a. 配置UP工作在转发模式。
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
b. 配置对HTTPS报文进行重定向的内部侦听端口号
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[UP] http-redirect https-port 11111
c. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[UP] user-group pre
New user group added.
[UP-ugroup-pre] quit
d. 配置用于认证前域用户的ACL规则
# 为IPv4高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[UP] acl advanced name web_permit
[UP-acl-ipv4-adv-web_permit] rule 0 permit ip destination 4.4.4.5 0 user-group pre
[UP-acl-ipv4-adv-web_permit] quit
# 为IPv4高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[UP] acl advanced name neiwang
[UP-acl-ipv4-adv-neiwang] rule 0 permit ip destination 4.4.4.6 0 user-group pre
[UP-acl-ipv4-adv-neiwang] quit
# 为IPv4高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[UP] acl advanced name web_http
[UP-acl-ipv4-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[UP-acl-ipv4-adv-web_http] quit
# 为IPv4高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[UP] acl advanced name web_https
[UP-acl-ipv4-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[UP-acl-ipv4-adv-web_https] quit
# 为IPv4高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[UP] acl advanced name ip
[UP-acl-ipv4-adv-ip] rule 0 permit ip user-group pre
[UP-acl-ipv4-adv-ip] quit
# 为IPv4高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[UP] acl advanced name neiwang_out
[UP-acl-ipv4-adv-neiwang_out] rule 0 permit ip source 4.4.4.6 0 user-group pre
[UP-acl-ipv4-adv-neiwang_out] quit
# 为IPv4高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[UP] acl advanced name web_out
[UP-acl-ipv4-adv-web_out] rule 0 permit ip source 4.4.4.5 0 user-group pre
[UP-acl-ipv4-adv-web_out] quit
e. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[UP] traffic classifier web_permit operator and
[UP-classifier-web_permit] if-match acl name web_permit
[UP-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[UP] traffic classifier neiwang operator and
[UP-classifier-neiwang] if-match acl name neiwang
[UP-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[UP] traffic classifier web_http operator and
[UP-classifier-web_http] if-match acl name web_http
[UP-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[UP] traffic classifier web_https operator and
[UP-classifier-web_https] if-match acl name web_https
[UP-classifier-web_https] quit
# 配置类web_deny,匹配ACL ip。
[UP] traffic classifier web_deny operator and
[UP-classifier-web_deny] if-match acl name ip
[UP-classifier-web_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[UP] traffic classifier neiwang_out operator and
[UP-classifier-neiwang_out] if-match acl name neiwang_out
[UP-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[UP] traffic classifier web_out operator and
[UP-classifier-web_out] if-match acl name web_out
[UP-classifier-web_out] quit
f. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[UP] traffic behavior web_permit
[UP-behavior-web_permit] filter permit
[UP-behavior-web_permit] free account
[UP-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[UP] traffic behavior neiwang
[UP-behavior-neiwang] filter permit
[UP-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[UP] traffic behavior web_http
[UP-behavior-web_http] redirect http-to-cpu
[UP-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[UP] traffic behavior web_https
[UP-behavior-web_https] redirect https-to-cpu
[UP-behavior-web_https] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[UP] traffic behavior web_deny
[UP-behavior-web_deny] filter deny
[UP-behavior-web_deny] free account
[UP-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[UP] traffic behavior neiwang_out
[UP-behavior-neiwang_out] filter permit
[UP-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[UP] traffic behavior web_out
[UP-behavior-web_out] filter permit
[UP-behavior-web_out] free account
[UP-behavior-web_out] quit
g. 配置QoS策略
# 配置入方向QoS策略web
[UP] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过。
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU。
除上述报文之外,其余报文均禁止通过。
[UP-qospolicy-web] classifier web_permit behavior web_permit
[UP-qospolicy-web] classifier neiwang behavior neiwang
[UP-qospolicy-web] classifier web_http behavior web_http
[UP-qospolicy-web] classifier web_https behavior web_https
[UP-qospolicy-web] classifier web_deny behavior web_deny
[UP-qospolicy-web] quit
# 配置出方向QoS策略out
[UP] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文禁止通过。
[UP-qospolicy-out] classifier web_out behavior web_out
[UP-qospolicy-out] classifier neiwang_out behavior neiwang_out
[UP-qospolicy-out] classifier web_deny behavior web_deny
[UP-qospolicy-out] quit
h. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[UP] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[UP] qos apply policy out global outbound
(2) 配置CP
a. 配置Portal认证服务器
# 配置Portal认证服务器:名称为newpt,IP地址为4.4.4.5,密钥为明文123456。
[CP] portal server newpt
[CP-portal-server-newpt] ip 4.4.4.5 key simple 123456
[CP-portal-server-newpt] quit
b. 配置通过查询ARP/ND表项来获取用户信息
[CP] portal access-info trust arp
[CP] portal access-info trust nd
c. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[CP] user-group pre
New user group added.
[CP-ugroup-pre] quit
d. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[CP] user-group pre
New user group added.
[CP-ugroup-pre] quit
e. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.5
[CP-radius-rs1] primary accounting 4.4.4.5
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
f. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[CP] domain name dm1
[CP-isp-dm1] authentication ipoe none
[CP-isp-dm1] authorization ipoe none
[CP-isp-dm1] accounting ipoe none
# 配置授权用户组。
[CP-isp-dm1] authorization-attribute user-group pre
# 配置Web认证页面URL和Web认证服务器IP地址。
[CP-isp-dm1] web-server url http://4.4.4.5:8080/portal/
[CP-isp-dm1] web-server ip 4.4.4.5
[CP-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[CP] domain name dm2
[CP-isp-dm2] authentication ipoe radius-scheme rs1
[CP-isp-dm2] authorization ipoe radius-scheme rs1
[CP-isp-dm2] accounting ipoe radius-scheme rs1
[CP-isp-dm2] quit
g. 配置DHCP服务器
# 创建本地BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,并指定地址池禁止分配地址192.168.0.2,该地址必须和IPoE静态会话中指定的用户地址相同,绑定UP 1024。
[CP] ip pool pool1 bas local
[CP-ip-pool-pool1] gateway 192.168.0.1 24
[CP-ip-pool-pool1] forbidden-ip 192.168.0.2
[CP-ip-pool-pool1] binding up-id 1024
[CP-ip-pool-pool1] quit
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[CP] dhcp server request-ip-address check
h. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 开启未知源IP报文触发方式。
[CP–Remote-XGE1024/3/1/2] ip subscriber initiator unclassified-ip enable matching-user
# 配置IPoE静态用户地址为192.168.0.2,该地址必须是已在IP地址池中配置的禁止分配地址。
[CP–Remote-XGE1024/3/1/2] ip subscriber session static ip 192.168.0.2
# 配置IPoE用户采用Web认证方式。
[CP–Remote-XGE1024/3/1/2] ip subscriber authentication-method web
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[CP–Remote-XGE1024/3/1/2] ip subscriber pre-auth domain dm1
[CP–Remote-XGE1024/3/1/2] ip subscriber web-auth domain dm2
[CP–Remote-XGE1024/3/1/2] quit
(3) 配置RADIUS服务器
# 配置接入设备
登录进入iMC管理平台,选择“用户”页签,单击导航树中的[接入策略管理/接入设备管理/接入设备配置]菜单项,进入接入设备配置页面,在该页面中单击<增加>按钮,进入如下图所示增加接入设备页面。
¡ 输入共享密钥为:radius。
¡ 其他采用缺省配置。
图1-188 增加接入设备
在该页面中设备列表下方单击<手工增加>,在弹出页面输入接入设备地址12.1.1.1并单击<确定>。
# 增加接入策略
单击导航树中的[接入策略管理/接入策略管理]菜单项,进入接入策略管理页面,在该页面中单击<增加>按钮,进入如下图所示增加接入策略页面。
¡ 输入接入策略名为:AccessPolicy。
¡ 其他采用缺省配置。
图1-189 增加接入策略
# 增加接入服务
单击导航树中的[接入策略管理/接入服务管理]菜单项,进入接入服务管
理页面,在该页面中单击<增加>按钮,进入如下图所示增加接入服务页面。
¡ 输入服务名为:IPoE_Server
¡ 缺省接入策略选择已创建的策略“AccessPolicy”。
¡ 其他采用缺省配置。
图1-190 增加接入服务
# 在IMC界面增加用户
单击导航树中的[用户管理/增加用户]菜单项,进入如下图所示增加用户页面,填写用户姓名和证件号码为:IPoE_Web001和001。
图1-191 增加用户
单击<确定>按钮后完成用户的添加。
# 增加接入用户
单击导航树中的[接入用户管理/接入用户]菜单项,进入接入用户页面,在该页面中单击<增加>按钮,进入如下图所示增加接入用户页面。
¡ 用户姓名选择:IPoE_Web001
¡ 帐号名填写为:user1
¡ 密码为:pass1
¡ 接入服务选择之前已创建的IPoE_Server
图1-192 增加接入用户
(4) 配置Portal服务器
# 配置Portal主页。
单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如下图所示。
图1-193 Portal服务器配置页面
# 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如下图所示。
¡ 输入IP地址组名为“IPoE_Web_User”。
¡ 输入起始地址为“192.168.0.1”、终止地址为“192.168.0.255”。用户主机IP地址必须包含在该IP地址组范围内。
¡ 其他采用缺省配置。
¡ 单击<确定>按钮完成操作。
图1-194 增加IP地址组配置页面
# 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面。
¡ 输入设备名为“NAS”。
¡ 输入IP地址为“12.1.1.1”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/2的IP地址;
¡ 输入密钥为“123456”。
¡ 选择组网方式为“直连”。
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 配置端口组信息
如下图所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
图1-195 设备信息列表
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如下图所示。
¡ 输入端口组名为“group”。
¡ 选择IP地址组为“IPoE_Web_User”,用户接入网络时使用的IP地址必须属于所选的IP地址组。
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-196 增加端口组信息配置页面
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IP地址为192.168.0.2。
[CP] display access-user auth-type pre-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 192.168.0.2 0015-e947-f4d4 -/-
192.168.0.2 L2 IPoE static
-
# 用户认证前域认证通过之后,登录Web页面,如下图所示。
图1-197 登录Web页面
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[CP] display access-user auth-type web-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 192.168.0.2 0015-e947-f4d4 -/-
user1@dm2 Web auth
-
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备作为DHCP中继向远端DHCP服务器申请IP地址。
· 由一台安装了H3C iMC的服务器同时承担RADIUS服务器、Portal认证服务器和Portal Web服务器的职责。
· FTP server是一台内网服务器。
图1-198 IPoE DHCPv4用户普通Web认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置DHCP服务器
# 全局开启DHCP。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段192.168.0.0/24,分配的网关地址192.168.0.1和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool1] network 192.168.0.0 24
[DHCP-server-ip-pool-pool1] gateway-list 192.168.0.1
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
# 将192.168.0.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 192.168.0.1
[DHCP-server-ip-pool-pool1] quit
# 配置到CP设备的缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 12.1.1.1
(2) 配置UP
a. 配置UP工作在转发模式。
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
b. 配置对HTTPS报文进行重定向的内部侦听端口号
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[UP] http-redirect https-port 11111
c. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[UP] user-group pre
New user group added.
[UP-ugroup-pre] quit
d. 配置用于认证前域用户的ACL规则
# 为IPv4高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[UP] acl advanced name web_permit
[UP-acl-ipv4-adv-web_permit] rule 0 permit ip destination 4.4.4.5 0 user-group pre
[UP-acl-ipv4-adv-web_permit] quit
# 为IPv4高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[UP] acl advanced name neiwang
[UP-acl-ipv4-adv-neiwang] rule 0 permit ip destination 4.4.4.6 0 user-group pre
[UP-acl-ipv4-adv-neiwang] quit
# 为IPv4高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[UP] acl advanced name web_http
[UP-acl-ipv4-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[UP-acl-ipv4-adv-web_http] quit
# 为IPv4高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[UP] acl advanced name web_https
[UP-acl-ipv4-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[UP-acl-ipv4-adv-web_https] quit
# 为IPv4高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[UP] acl advanced name ip
[UP-acl-ipv4-adv-ip] rule 0 permit ip user-group pre
[UP-acl-ipv4-adv-ip] quit
# 为IPv4高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[UP] acl advanced name neiwang_out
[UP-acl-ipv4-adv-neiwang_out] rule 0 permit ip source 4.4.4.6 0 user-group pre
[UP-acl-ipv4-adv-neiwang_out] quit
# 为IPv4高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[UP] acl advanced name web_out
[UP-acl-ipv4-adv-web_out] rule 0 permit ip source 4.4.4.5 0 user-group pre
[UP-acl-ipv4-adv-web_out] quit
e. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[UP] traffic classifier web_permit operator and
[UP-classifier-web_permit] if-match acl name web_permit
[UP-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[UP] traffic classifier neiwang operator and
[UP-classifier-neiwang] if-match acl name neiwang
[UP-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[UP] traffic classifier web_http operator and
[UP-classifier-web_http] if-match acl name web_http
[UP-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[UP] traffic classifier web_https operator and
[UP-classifier-web_https] if-match acl name web_https
[UP-classifier-web_https] quit
# 配置类web_deny,匹配ACL ip。
[UP] traffic classifier web_deny operator and
[UP-classifier-web_deny] if-match acl name ip
[UP-classifier-web_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[UP] traffic classifier neiwang_out operator and
[UP-classifier-neiwang_out] if-match acl name neiwang_out
[UP-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[UP] traffic classifier web_out operator and
[UP-classifier-web_out] if-match acl name web_out
[UP-classifier-web_out] quit
f. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[UP] traffic behavior web_permit
[UP-behavior-web_permit] filter permit
[UP-behavior-web_permit] free account
[UP-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[UP] traffic behavior neiwang
[UP-behavior-neiwang] filter permit
[UP-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[UP] traffic behavior web_http
[UP-behavior-web_http] redirect http-to-cpu
[UP-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[UP] traffic behavior web_https
[UP-behavior-web_https] redirect https-to-cpu
[UP-behavior-web_https] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[UP] traffic behavior web_deny
[UP-behavior-web_deny] filter deny
[UP-behavior-web_deny] free account
[UP-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[UP] traffic behavior neiwang_out
[UP-behavior-neiwang_out] filter permit
[UP-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[UP] traffic behavior web_out
[UP-behavior-web_out] filter permit
[UP-behavior-web_out] free account
[UP-behavior-web_out] quit
g. 配置QoS策略
# 配置入方向QoS策略web
[UP] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过。
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU。
除上述报文外,其余报文均禁止通过。
[UP-qospolicy-web] classifier web_permit behavior web_permit
[UP-qospolicy-web] classifier neiwang behavior neiwang
[UP-qospolicy-web] classifier web_http behavior web_http
[UP-qospolicy-web] classifier web_https behavior web_https
[UP-qospolicy-web] classifier web_deny behavior web_deny
[UP-qospolicy-web] quit
# 配置出方向QoS策略out
[UP] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文均禁止通过。
[UP-qospolicy-out] classifier web_out behavior web_out
[UP-qospolicy-out] classifier neiwang_out behavior neiwang_out
[UP-qospolicy-out] classifier web_deny behavior web_deny
[UP-qospolicy-out] quit
h. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[UP] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[UP] qos apply policy out global outbound
(3) 配置CP
a. 配置DHCP relay
# 进入接口Remote-XGE1024/3/1/2视图。
<CP> system-view
[CP] interface remote-xge 1024/3/1/2
# 配置接口工作在中继模式。
[CP–Remote-XGE1024/3/1/2] dhcp select relay
[CP–Remote-XGE1024/3/1/2] quit
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将192.168.0.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址,绑定UP 1024。
[CP] ip pool pool1 bas remote
[CP-ip-pool-pool1] gateway 192.168.0.1 24
[CP-ip-pool-pool1] forbidden-ip 192.168.0.1
[CP-ip-pool-pool1] remote-server 4.4.4.3
[CP-ip-pool-pool1] binding up-id 1024
[CP-ip-pool-pool1] quit
b. 配置Portal认证服务器
# 配置Portal认证服务器:名称为newpt,IP地址为4.4.4.5,密钥为明文123456。
[CP] portal server newpt
[CP-portal-server-newpt] ip 4.4.4.5 key simple 123456
[CP-portal-server-newpt] quit
c. 配置通过查询ARP/ND表项来获取用户信息
[CP] portal access-info trust arp
[CP] portal access-info trust nd
d. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[CP] user-group pre
New user group added.
[CP-ugroup-pre] quit
e. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.5
[CP-radius-rs1] primary accounting 4.4.4.5
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
f. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[CP] domain name dm1
[CP-isp-dm1] authentication ipoe none
[CP-isp-dm1] authorization ipoe none
[CP-isp-dm1] accounting ipoe none
# 配置前域授权地址池以及用户组。
[CP-isp-dm1] authorization-attribute user-group pre
[CP-isp-dm1] authorization-attribute ip-pool pool1
# 配置Web认证页面URL和Web认证服务器IP地址。
[CP-isp-dm1] web-server url http://4.4.4.5:8080/portal/
[CP-isp-dm1] web-server ip 4.4.4.5
[CP-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[CP] domain name dm2
[CP-isp-dm2] authentication ipoe radius-scheme rs1
[CP-isp-dm2] authorization ipoe radius-scheme rs1
[CP-isp-dm2] accounting ipoe radius-scheme rs1
[CP-isp-dm2] quit
g. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 配置IPoE用户采用Web认证方式。
[CP–Remote-XGE1024/3/1/2] ip subscriber authentication-method web
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[CP–Remote-XGE1024/3/1/2] ip subscriber pre-auth domain dm1
[CP–Remote-XGE1024/3/1/2] ip subscriber web-auth domain dm2
[CP–Remote-XGE1024/3/1/2] quit
(4) 配置RADIUS服务器
# 配置接入设备
登录进入iMC管理平台,选择“用户”页签,单击导航树中的[接入策略管理/接入设备管理/接入设备配置]菜单项,进入接入设备配置页面,在该页面中单击<增加>按钮,进入如下图所示增加接入设备页面。
¡ 输入共享密钥为:radius。
¡ 其他采用缺省配置。
图1-199 增加接入设备
在该页面中设备列表下方单击<手工增加>,在弹出页面输入接入设备地址12.1.1.1并单击<确定>。
# 增加接入策略
单击导航树中的[接入策略管理/接入策略管理]菜单项,进入接入策略管理页面,在该页面中单击<增加>按钮,进入如下图所示增加接入策略页面。
¡ 输入接入策略名为:AccessPolicy。
¡ 其他采用缺省配置。
图1-200 增加接入策略
# 增加接入服务
单击导航树中的[接入策略管理/接入服务管理]菜单项,进入接入服务管
理页面,在该页面中单击<增加>按钮,进入如下图所示增加接入服务页面。
¡ 输入服务名为:IPoE_Server
¡ 缺省接入策略选择已创建的策略“AccessPolicy”。
¡ 其他采用缺省配置。
图1-201 增加接入服务
# 在IMC界面增加用户
单击导航树中的[用户管理/增加用户]菜单项,进入如下图所示增加用户页面,填写用户姓名和证件号码为:IPoE_Web001和001。
图1-202 增加用户
单击<确定>按钮后完成用户的添加。
# 增加接入用户
单击导航树中的[接入用户管理/接入用户]菜单项,进入接入用户页面,在该页面中单击<增加>按钮,进入如下图所示增加接入用户页面。
¡ 用户姓名选择:IPoE_Web001
¡ 帐号名填写为:user1
¡ 密码为:pass1
¡ 接入服务选择之前已创建的IPoE_Server
图1-203 增加接入用户
(5) 配置Portal服务器
# 配置Portal主页。
单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如下图所示。
图1-204 Portal服务器配置页面
# 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如下图所示。
¡ 输入IP地址组名为“IPoE_Web_User”。
¡ 输入起始地址为“192.168.0.1”、终止地址为“192.168.0.255”。用户主机IP地址必须包含在该IP地址组范围内。
¡ 其他采用缺省配置。
¡ 单击<确定>按钮完成操作。
图1-205 增加IP地址组配置页面
# 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面。
¡ 输入设备名为“NAS”。
¡ 输入IP地址为“12.1.1.1”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/2的IP地址;
¡ 输入密钥为“123456”。
¡ 选择组网方式为“直连”。
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 配置端口组信息
如下图所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
图1-206 设备信息列表
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如下图所示。
¡ 输入端口组名为“group”。
¡ 选择IP地址组为“IPoE_Web_User”,用户接入网络时使用的IP地址必须属于所选的IP地址组。
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-207 增加端口组信息配置页面
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IP地址为192.168.0.2。
[CP] display access-user auth-type pre-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
-
# 用户认证前域认证通过之后,登录Web页面,如下图所示。
图1-208 登录Web页面
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[CP] display access-user auth-type web-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 192.168.0.2 0015-e947-f4d4 -/-
user1@dm2 Web auth
-
· Host A属于VLAN 1,网段为192.168.1.0/24,并通过BRAS上的Remote-XGE1024/3/1/2.1接口上线。
· Host B属于VLAN 2,网段为192.168.2.0/24,并通过BRAS上的Remote-XGE1024/3/1/2.2接口上线。
· Host A和Host B均作为DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备作为DHCP中继向远端DHCP服务器申请IP地址。
· 由一台安装了H3C iMC的服务器同时承担RADIUS服务器、Portal认证服务器和Portal Web服务器的职责。
· FTP server是一台内网服务器。
图1-209 IPoE DHCPv4多网段用户普通Web认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置DHCP服务器
# 全局开启DHCP。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段192.168.1.0/24,分配的网关地址192.168.1.1和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool1] network 192.168.1.0 24
[DHCP-server-ip-pool-pool1] gateway-list 192.168.1.1
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
# 将192.168.1.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 192.168.1.1
[DHCP-server-ip-pool-pool1] quit
# 创建名称为pool2地址池并进入其视图。
[DHCP-server] ip pool pool2
# 配置地址池动态分配的IP地址网段192.168.2.0/24,分配的网关地址192.168.2.1和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool2] network 192.168.2.0 24
[DHCP-server-ip-pool-pool2] gateway-list 192.168.2.1
[DHCP-server-ip-pool-pool2] dns-list 8.8.8.8
# 将192.168.2.1设置为禁止地址。
[DHCP-server-ip-pool-pool2] forbidden-ip 192.168.2.1
[DHCP-server-ip-pool-pool2] quit
# 配置到CP设备的缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 12.1.1.1
(2) 配置UP
a. 配置UP工作在转发模式。
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
b. 配置对HTTPS报文进行重定向的内部侦听端口号
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[UP] http-redirect https-port 11111
c. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[UP] user-group pre
New user group added.
[UP-ugroup-pre] quit
d. 配置用于认证前域用户的ACL规则
# 为IPv4高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[UP] acl advanced name web_permit
[UP-acl-ipv4-adv-web_permit] rule 0 permit ip destination 4.4.4.5 0 user-group pre
[UP-acl-ipv4-adv-web_permit] quit
# 为IPv4高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[UP] acl advanced name neiwang
[UP-acl-ipv4-adv-neiwang] rule 0 permit ip destination 4.4.4.6 0 user-group pre
[UP-acl-ipv4-adv-neiwang] quit
# 为IPv4高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[UP] acl advanced name web_http
[UP-acl-ipv4-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[UP-acl-ipv4-adv-web_http] quit
# 为IPv4高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[UP] acl advanced name web_https
[UP-acl-ipv4-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[UP-acl-ipv4-adv-web_https] quit
# 为IPv4高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[UP] acl advanced name ip
[UP-acl-ipv4-adv-ip] rule 0 permit ip user-group pre
[UP-acl-ipv4-adv-ip] quit
# 为IPv4高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[UP] acl advanced name neiwang_out
[UP-acl-ipv4-adv-neiwang_out] rule 0 permit ip source 4.4.4.6 0 user-group pre
[UP-acl-ipv4-adv-neiwang_out] quit
# 为IPv4高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[UP] acl advanced name web_out
[UP-acl-ipv4-adv-web_out] rule 0 permit ip source 4.4.4.5 0 user-group pre
[UP-acl-ipv4-adv-web_out] quit
e. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[UP] traffic classifier web_permit operator and
[UP-classifier-web_permit] if-match acl name web_permit
[UP-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[UP] traffic classifier neiwang operator and
[UP-classifier-neiwang] if-match acl name neiwang
[UP-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[UP] traffic classifier web_http operator and
[UP-classifier-web_http] if-match acl name web_http
[UP-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[UP] traffic classifier web_https operator and
[UP-classifier-web_https] if-match acl name web_https
[UP-classifier-web_https] quit
# 配置类web_deny,匹配ACL ip。
[UP] traffic classifier web_deny operator and
[UP-classifier-web_deny] if-match acl name ip
[UP-classifier-web_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[UP] traffic classifier neiwang_out operator and
[UP-classifier-neiwang_out] if-match acl name neiwang_out
[UP-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[UP] traffic classifier web_out operator and
[UP-classifier-web_out] if-match acl name web_out
[UP-classifier-web_out] quit
f. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[UP] traffic behavior web_permit
[UP-behavior-web_permit] filter permit
[UP-behavior-web_permit] free account
[UP-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[UP] traffic behavior neiwang
[UP-behavior-neiwang] filter permit
[UP-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[UP] traffic behavior web_http
[UP-behavior-web_http] redirect http-to-cpu
[UP-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[UP] traffic behavior web_https
[UP-behavior-web_https] redirect https-to-cpu
[UP-behavior-web_https] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[UP] traffic behavior web_deny
[UP-behavior-web_deny] filter deny
[UP-behavior-web_deny] free account
[UP-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[UP] traffic behavior neiwang_out
[UP-behavior-neiwang_out] filter permit
[UP-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[UP] traffic behavior web_out
[UP-behavior-web_out] filter permit
[UP-behavior-web_out] free account
[UP-behavior-web_out] quit
g. 配置QoS策略
# 配置入方向QoS策略web
[UP] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过;
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU;
除上述报文外,其余报文均禁止通过。
[UP-qospolicy-web] classifier web_permit behavior web_permit
[UP-qospolicy-web] classifier neiwang behavior neiwang
[UP-qospolicy-web] classifier web_http behavior web_http
[UP-qospolicy-web] classifier web_https behavior web_https
[UP-qospolicy-web] classifier web_deny behavior web_deny
[UP-qospolicy-web] quit
# 配置出方向QoS策略out
[UP] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文均禁止通过。
[UP-qospolicy-out] classifier web_out behavior web_out
[UP-qospolicy-out] classifier neiwang_out behavior neiwang_out
[UP-qospolicy-out] classifier web_deny behavior web_deny
[UP-qospolicy-out] quit
h. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[UP] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[UP] qos apply policy out global outbound
(3) 配置CP
a. 配置DHCP relay
# 配置远端BAS IP地址池pool1。
<CP> system-view
[CP] ip pool pool1 bas remote
[CP-ip-pool-pool1] gateway 192.168.1.1 24
[CP-ip-pool-pool1] forbidden-ip 192.168.1.1
[CP-ip-pool-pool1] remote-server 4.4.4.3
[CP-ip-pool-pool1] binding up-id 1024
[CP-ip-pool-pool1] quit
# 配置远端BAS IP地址池pool2。
[CP] ip pool pool2 bas remote
[CP-ip-pool-pool2] gateway-list 192.168.2.1 24
[CP-ip-pool-pool2] forbidden-ip 192.168.2.1
[CP-ip-pool-pool2] remote-server 4.4.4.3
[CP-ip-pool-pool2] binding up-id 1024
[CP-ip-pool-pool2] quit
# 配置接口Remote-XGE1024/3/1/2.1的IP地址为192.168.1.1,配置接口工作在DHCP中继模式,并指定DHCP服务器地址为4.4.4.3。
[CP] interface remote-xge 1024/3/1/2.1
[CP–Remote-XGE1024/3/1/2.1] ip address 192.168.1.1 24
[CP–Remote-XGE1024/3/1/2.1] dhcp select relay
[CP–Remote-XGE1024/3/1/2.1] dhcp relay server-address 4.4.4.3
[CP–Remote-XGE1024/3/1/2.1] quit
# 配置接口Remote-XGE1024/3/1/2.2的IP地址为192.168.2.1,配置接口工作在DHCP中继模式,并指定DHCP服务器地址为4.4.4.3。
[CP] interface remote-xge 1024/3/1/2.2
[CP–Remote-XGE1024/3/1/2.2] ip address 192.168.2.1 24
[CP–Remote-XGE1024/3/1/2.2] dhcp select relay
[CP–Remote-XGE1024/3/1/2.2] dhcp relay server-address 4.4.4.3
[CP–Remote-XGE1024/3/1/2.2] quit
b. 配置VLAN终结
# 配置子接口Remote-XGE1024/3/1/2.1和子接口Remote-XGE1024/3/1/2.2开启VLAN终结的用户模式。(该配置是为了保持已上线用户的在线状态,避免修改子接口的VLAN终结配置时该子接口down/up。)
[CP] interface range remote-xge 1024/3/1/2.1 remote-xge 1024/3/1/2.2
[CP–if-range] vlan-termination user-mode
[CP–if-range] quit
# 配置子接口Remote-XGE1024/3/1/2.1能够终结最外层VLAN ID为1的VLAN报文。
[CP] interface remote-xge 1024/3/1/2.1
[CP–Remote-XGE1024/3/1/2.1] user-vlan dot1q vid 1
[CP–Remote-XGE1024/3/1/2.1] quit
# 配置子接口Remote-XGE1024/3/1/2.2能够终结最外层VLAN ID为2的VLAN报文。
[CP] interface remote-xge 1024/3/1/2.2
[CP–Remote-XGE1024/3/1/2.2] user-vlan dot1q vid 2
[CP–Remote-XGE1024/3/1/2.2] quit
c. 配置Portal认证服务器
# 配置Portal认证服务器:名称为newpt,IP地址为4.4.4.5,密钥为明文123456。
[CP] portal server newpt
[CP-portal-server-newpt] ip 4.4.4.5 key simple 123456
[CP-portal-server-newpt] quit
d. 配置通过查询ARP/ND表项来获取用户信息
[CP] portal access-info trust arp
[CP] portal access-info trust nd
e. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[CP] user-group pre
New user group added.
[CP-ugroup-pre] quit
f. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.5
[CP-radius-rs1] primary accounting 4.4.4.5
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
g. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[CP] domain name dm1
[CP-isp-dm1] authentication ipoe none
[CP-isp-dm1] authorization ipoe none
[CP-isp-dm1] accounting ipoe none
# 配置认证前域授权用户组。
[CP-isp-dm1] authorization-attribute user-group pre
# 配置Web认证页面URL和Web认证服务器IP地址。
[CP-isp-dm1] web-server url http://4.4.4.5:8080/portal/
[CP-isp-dm1] web-server ip 4.4.4.5
[CP-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[CP] domain name dm2
[CP-isp-dm2] authentication ipoe radius-scheme rs1
[CP-isp-dm2] authorization ipoe radius-scheme rs1
[CP-isp-dm2] accounting ipoe radius-scheme rs1
[CP-isp-dm2] quit
h. 配置IPoE
# 在子接口Remote-XGE1024/3/1/2.1和子接口Remote-XGE1024/3/1/2.2上开启IPoE功能,并配置二层接入模式。
[CP] interface range remote-xge 1024/3/1/2.1 remote-xge 1024/3/1/2.2
[CP–if-range] ip subscriber l2-connected enable
# 配置IPoE用户采用Web认证方式。
[CP–if-range] ip subscriber authentication-method web
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[CP–if-range] ip subscriber pre-auth domain dm1
[CP–if-range] ip subscriber web-auth domain dm2
[CP–if-range] quit
(4) 配置RADIUS服务器和Portal服务器
请参照“IPoE DHCPv4用户普通Web认证配置举例”中相关配置。
# Host A和Host B认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IP地址为192.168.1.2。
[CP] display access-user auth-type pre-auth
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x1 R-XGE1024/3/1/2.1 192.168.1.2 0015-e947-f4d4 1/-
0015e947f4d4 L2 IPoE dynamic
-
0x2 R-XGE1024/3/1/2.2 192.168.2.2 0015-e947-f4d5 2/-
0015e947f4d5 L2 IPoE dynamic
-
# 用户认证前域认证通过之后,登录Web页面,如下图所示。
图1-210 登录Web页面
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[CP] display access-user auth-type web-auth
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x1 R-XGE1024/3/1/2.1 192.168.1.2 0015-e947-f4d4 1/-
user1@dm2 Web auth
-
0x2 R-XGE1024/3/1/2.2 192.168.2.2 0015-e947-f4d5 2/-
user1@dm2 Web auth
-
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备作为DHCP中继向远端DHCP服务器申请IP地址。
· 由一台安装了H3C iMC的服务器同时承担RADIUS服务器、Portal认证服务器和Portal Web服务器的职责。
· FTP server是一台内网服务器。
· Web认证通过后限速5Mbps。
图1-211 IPoE DHCPv6用户普通Web认证配置组网图
请正确设置DNS服务器,以便服务器可以根据Web认证页面http://www.ipv6.web.com解析出对应的IPv6 URL地址。
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置DHCP服务器
# 创建名称为pool1的IPv6地址池并进入其视图。
<DHCP-server> system-view
[DHCP-server] ipv6 pool pool1
# 配置地址池动态分配的IPv6地址网段192::/64和DNS服务器地址8::8。
[DHCP-server-ipv6-pool-pool1] network 192::/64
[DHCP-server-ipv6-pool-pool1] dns-server 8::8
[DHCP-server-ipv6-pool-pool1] quit
# 将192::1设置为禁止地址。
[DHCP-server] ipv6 dhcp server forbidden-address 192::1
# 配置接口Ten-GigabitEthernet3/1/1工作在DHCPv6服务器模式。
[DHCP-server] interface ten-gigabitethernet 3/1/1
[DHCP-server-Ten-GigabitEthernet3/1/1] ipv6 dhcp select server
[DHCP-server-Ten-GigabitEthernet3/1/1] quit
# 配置到CP设备的缺省路由。
[DHCP-server] ipv6 route-static :: 0 12::1
(2) 配置UP
a. 配置UP工作在转发模式。
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
b. 配置HTTPS的内部侦听端口
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[UP] http-redirect https-port 11111
c. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[UP] user-group pre
New user group added.
[UP-ugroup-pre] quit
d. 配置用于认证前域用户的ACL规则
# 分别IPv6高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[UP] acl ipv6 advanced name web_permit
[UP-acl-ipv6-adv-web_permit] rule 0 permit ipv6 destination 4::5 128 user-group pre
[UP-acl-ipv6-adv-web_permit] quit
# 分别IPv6高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[UP] acl ipv6 advanced name neiwang
[UP-acl-ipv6-adv-neiwang] rule 0 permit ipv6 destination 4::1 128 user-group pre
[UP-acl-ipv6-adv-neiwang] quit
# 分别IPv6高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[UP] acl ipv6 advanced name web_http
[UP-acl-ipv6-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[UP-acl-ipv6-adv-web_http] quit
# 分别IPv6高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[UP] acl ipv6 advanced name web_https
[UP-acl-ipv6-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[UP-acl-ipv6-adv-web_https] quit
# 分别IPv6高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[UP] acl ipv6 advanced name ip
[UP-acl-ipv6-adv-ip] rule 0 permit ipv6 user-group pre
[UP-acl-ipv6-adv-ip] quit
# 分别IPv6高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[UP] acl ipv6 advanced name neiwang_out
[UP-acl-ipv6-adv-neiwang_out] rule 0 permit ipv6 source 4::1 128 user-group pre
[UP-acl-ipv6-adv-neiwang_out] quit
# 分别IPv6高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[UP] acl ipv6 advanced name web_out
[UP-acl-ipv6-adv-web_out] rule 0 permit ipv6 source 4::5 128 user-group pre
[UP-acl-ipv6-adv-web_out] quit
e. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[UP] traffic classifier web_permit operator or
[UP-classifier-web_permit] if-match acl ipv6 name web_permit
[UP-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[UP] traffic classifier neiwang operator or
[UP-classifier-neiwang] if-match acl ipv6 name neiwang
[UP-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[UP] traffic classifier web_http operator or
[UP-classifier-web_http] if-match acl ipv6 name web_http
[UP-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[UP] traffic classifier web_https operator or
[UP-classifier-web_https] if-match acl ipv6 name web_https
[UP-classifier-web_https] quit
# 配置类web_deny,匹配ACL ip。
[UP] traffic classifier web_deny operator or
[UP-classifier-web_deny] if-match acl ipv6 name ip
[UP-classifier-web_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[UP] traffic classifier neiwang_out operator or
[UP-classifier-neiwang_out] if-match acl ipv6 name neiwang_out
[UP-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[UP] traffic classifier web_out operator or
[UP-classifier-web_out] if-match acl ipv6 name web_out
[UP-classifier-web_out] quit
f. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[UP] traffic behavior web_permit
[UP-behavior-web_permit] filter permit
[UP-behavior-web_permit] free account
[UP-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[UP] traffic behavior neiwang
[UP-behavior-neiwang] filter permit
[UP-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[UP] traffic behavior web_http
[UP-behavior-web_http] redirect http-to-cpu
[UP-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[UP] traffic behavior web_https
[UP-behavior-web_https] redirect https-to-cpu
[UP-behavior-web_https] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[UP] traffic behavior web_deny
[UP-behavior-web_deny] filter deny
[UP-behavior-web_deny] free account
[UP-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[UP] traffic behavior neiwang_out
[UP-behavior-neiwang_out] filter permit
[UP-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[UP] traffic behavior web_out
[UP-behavior-web_out] filter permit
[UP-behavior-web_out] free account
[UP-behavior-web_out] quit
g. 配置QoS策略
# 配置入方向QoS策略web
[UP] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过;
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU;
除上述报文外,其余报文均禁止通过。
[UP-qospolicy-web] classifier web_permit behavior web_permit
[UP-qospolicy-web] classifier neiwang behavior neiwang
[UP-qospolicy-web] classifier web_http behavior web_http
[UP-qospolicy-web] classifier web_https behavior web_https
[UP-qospolicy-web] classifier web_deny behavior web_deny
[UP-qospolicy-web] quit
# 配置出方向QoS策略out
[UP] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文均禁止通过。
[UP-qospolicy-out] classifier web_out behavior web_out
[UP-qospolicy-out] classifier neiwang_out behavior neiwang_out
[UP-qospolicy-out] classifier web_deny behavior web_deny
[UP-qospolicy-out] quit
h. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[UP] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[UP] qos apply policy out global outbound
(3) 配置CP
a. 配置DHCP中继
# 远端BAS IPv6地址池pool1。
<CP> system-view
[CP] ipv6 pool pool1 bas remote
[CP-ipv6-pool-pool1] gateway-list 192::1
[CP-ipv6-pool-pool1] network 192::/64 export-route
[CP-ipv6-pool-pool1] remote-server 4::3
[CP-ipv6-pool-pool1] dhcpv6-relay source-address interface loopback 0
[CP-ipv6-pool-pool1] binding up-id 1024
[CP-ipv6-pool-pool1] quit
# 配置接口自动生成IPv6链路本地地址,该IPv6链路本地地址作为用户的网关。
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] ipv6 address auto link-local
# 配置接口工作在DHCPv6中继模式。
[CP–Remote-XGE1024/3/1/2] ipv6 dhcp select relay
# 取消设备发布RA消息的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址。配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[CP–Remote-XGE1024/3/1/2] undo ipv6 nd ra halt
[CP–Remote-XGE1024/3/1/2] ipv6 nd autoconfig managed-address-flag
[CP–Remote-XGE1024/3/1/2] ipv6 nd autoconfig other-flag
# 为避免终端使用临时IPv6地址进行认证,从而导致认证失败,在用户上线接口配置前缀不在RA消息中发布,从而避免终端使用前缀生成临时IPv6地址。
[CP–Remote-XGE1024/3/1/2] ipv6 nd ra prefix 192::/64 no-advertise
[CP–Remote-XGE1024/3/1/2] quit
b. 配置Portal认证服务器
# 配置IPv6 Portal认证服务器:名称为newpt1,IPv6地址为4::5,密钥为明文123456。
[CP] portal server newpt1
[CP-portal-server-newpt1] ipv6 4::5 key simple 123456
[CP-portal-server-newpt1] quit
c. 配置通过查询ARP/ND表项来获取用户信息
[CP] portal access-info trust arp
[CP] portal access-info trust nd
d. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[CP] user-group pre
New user group added.
[CP-ugroup-pre] quit
e. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication ipv6 4::5
[CP-radius-rs1] primary accounting ipv6 4::5
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
# 设置RADIUS DAE客户端的IP地址为4::5,与RADIUS DAE客户端交互DAE报文时使用的共享密钥为明文radius。
[CP] radius dynamic-author server
[CP-radius-da-server] client ipv6 4::5 key simple radius
[CP-radius-da-server] quit
f. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[CP] domain name dm1
[CP-isp-dm1] authentication ipoe none
[CP-isp-dm1] authorization ipoe none
[CP-isp-dm1] accounting ipoe none
# 配置前域授权用户组和地址池。
[CP-isp-dm1] authorization-attribute user-group pre
[CP-isp-dm1] authorization-attribute ipv6-pool pool1
# 配置Web认证页面URL。
[CP-isp-dm1] web-server ipv6-url http://www.ipv6.web.com
[CP-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[CP] domain name dm2
[CP-isp-dm2] authentication ipoe radius-scheme rs1
[CP-isp-dm2] authorization ipoe radius-scheme rs1
[CP-isp-dm2] accounting ipoe radius-scheme rs1
[CP-isp-dm2] authorization-attribute car inbound cir 5120 outbound cir 5120
[CP-isp-dm2] quit
g. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 配置IPoE用户采用Web认证方式。
[CP–Remote-XGE1024/3/1/2] ip subscriber authentication-method web
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[CP–Remote-XGE1024/3/1/2] ip subscriber pre-auth domain dm1
[CP–Remote-XGE1024/3/1/2] ip subscriber web-auth domain dm2
[CP–Remote-XGE1024/3/1/2] quit
(4) 配置RADIUS服务器
a. 配置接入设备
登录进入iMC管理平台,选择“用户”页签,单击导航树中的[接入策略管理/接入设备管理/接入设备配置]菜单项,进入接入设备配置页面,在该页面中单击<增加>按钮,进入如下图所示增加接入设备页面。
- 输入共享密钥为:radius。
- 其他采用缺省配置。
图1-212 增加接入设备
在该页面中设备列表下方单击<增加IPv6设备>,在弹出页面输入接入设备地址12::1并单击<确定>。
b. 增加接入策略
单击导航树中的[接入策略管理/接入策略管理]菜单项,进入接入策略管理页面,在该页面中单击<增加>按钮,进入如下图所示增加接入策略页面。
- 输入接入策略名为:AccessPolicy。
- 其他采用缺省配置。
图1-213 增加接入策略
c. 增加接入服务
单击导航树中的[接入策略管理/接入服务管理]菜单项,进入接入服务管
理页面,在该页面中单击<增加>按钮,进入如下图所示增加接入服务页面。
- 输入服务名为:IPoE_Server
- 缺省接入策略选择已创建的策略“AccessPolicy”。
- 其他采用缺省配置。
图1-214 增加接入服务
d. 在IMC界面增加用户
单击导航树中的[用户管理/增加用户]菜单项,进入如下图所示增加用户页面,填写用户姓名和证件号码为:IPoE_Web001和001。
图1-215 增加用户
单击<确定>按钮后完成用户的添加。
e. 增加接入用户
单击导航树中的[接入用户管理/接入用户]菜单项,进入接入用户页面,在该页面中单击<增加>按钮,进入如下图所示增加接入用户页面。
- 用户姓名选择:IPoE_Web001
- 帐号名填写为:user1
- 密码为:pass1
- 接入服务选择之前已创建的IPoE_Server
图1-216 增加接入用户
(5) 配置Portal服务器
a. 配置Portal主页。
单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如下图所示。
图1-217 Portal服务器配置页面
b. 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如下图所示。
- 输入IP地址组名为“IPoE_Web_User-2”;
- IPv6选项框选择“是”;
- 输入起始地址为“192::1”、终止地址为“192::FFFF”。用户主机IPv6地址必须包含在该IP地址组范围内;
- 其他采用缺省配置;
- 单击<确定>按钮完成操作。
图1-218 增加IP地址组配置页面(IPv6)
c. 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面。
- 输入设备名为“NAS-2”;
- 版本选择“Portal 3.0”;
- 输入IP地址为“12::1”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/2的IP地址;
- 输入密钥为“123456”;
- 选择组网方式为“直连”;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
d. 配置端口组信息
如下图所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
图1-219 设备信息列表
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如下图所示。
- 输入端口组名为“group-2”;
- 选择IP地址组为“IPoE_Web_User-2”,用户接入网络时使用的IPv6地址必须属于所选的IPv6地址组;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-220 增加端口组信息配置页面(IPv6)
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IPv6地址为192::2。
[CP] display access-user auth-type pre-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 - 001b-21a8-0949 -/-
001b21a80949 L2 IPoE dynamic
192::2
# 用户认证前域认证通过之后,登录Web页面,如下图所示。
图1-221 登录Web页面
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[CP] display access-user auth-type web-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 - 001b-21a8-0949 -/-
user1@dm2 Web auth
192::2
· 通过IPv6 ND RS报文触发上线的用户主机经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备可以发送IPv6 ND RA报文。
· 由一台安装了H3C iMC的服务器同时承担RADIUS服务器、Portal认证服务器和Portal Web服务器的职责。
图1-222 IPoE NDRS用户普通Web认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置UP
a. 配置UP工作在转发模式。
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
b. 配置对HTTPS报文进行重定向的内部侦听端口号
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[UP] http-redirect https-port 11111
c. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[UP] user-group pre
New user group added.
[UP-ugroup-pre] quit
d. 配置用于认证前域用户的ACL规则
# 为IPv6高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[UP] acl ipv6 advanced name web_permit
[UP-acl-ipv6-adv-web_permit] rule 0 permit ipv6 destination 4::5 128 user-group pre
[UP-acl-ipv6-adv-web_permit] quit
#为IPv6高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[UP] acl ipv6 advanced name neiwang
[UP-acl-ipv6-adv-neiwang] rule 0 permit ipv6 destination 4::1 128 user-group pre
[UP-acl-ipv6-adv-neiwang] quit
# 为IPv6高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[UP] acl ipv6 advanced name web_http
[UP-acl-ipv6-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[UP-acl-ipv6-adv-web_http] quit
# 为IPv6高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[UP] acl ipv6 advanced name web_https
[UP-acl-ipv6-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[UP-acl-ipv6-adv-web_https] quit
# 为IPv6高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[UP] acl ipv6 advanced name ip
[UP-acl-ipv6-adv-ip] rule 0 permit ipv6 user-group pre
[UP-acl-ipv6-adv-ip] quit
# 为IPv6高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[UP] acl ipv6 advanced name neiwang_out
[UP-acl-ipv6-adv-neiwang_out] rule 0 permit ipv6 source 4::1 128 user-group pre
[UP-acl-ipv6-adv-neiwang_out] quit
# 为IPv6高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[UP] acl ipv6 advanced name web_out
[UP-acl-ipv6-adv-web_out] rule 0 permit ipv6 source 4::5 128 user-group pre
[UP-acl-ipv6-adv-web_out] quit
e. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[UP] traffic classifier web_permit operator or
[UP-classifier-web_permit] if-match acl ipv6 name web_permit
[UP-classifier-web_permit] quit
# 配置类web_http,匹配ACL web_http。
[UP] traffic classifier web_http operator or
[UP-classifier-web_http] if-match acl ipv6 name web_http
[UP-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[UP] traffic classifier web_https operator or
[UP-classifier-web_https] if-match acl ipv6 name web_https
[UP-classifier-web_https] quit
# 配置类web_deny,匹配ACL ip。
[UP] traffic classifier web_deny operator or
[UP-classifier-web_deny] if-match acl ipv6 name ip
[UP-classifier-web_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[UP] traffic classifier neiwang_out operator or
[UP-classifier-neiwang_out] if-match acl ipv6 name neiwang_out
[UP-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[UP] traffic classifier web_out operator or
[UP-classifier-web_out] if-match acl ipv6 name web_out
[UP-classifier-web_out] quit
f. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[UP] traffic behavior web_permit
[UP-behavior-web_permit] filter permit
[UP-behavior-web_permit] free account
[UP-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[UP] traffic behavior neiwang
[UP-behavior-neiwang] filter permit
[UP-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[UP] traffic behavior web_http
[UP-behavior-web_http] redirect http-to-cpu
[UP-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[UP] traffic behavior web_https
[UP-behavior-web_https] redirect https-to-cpu
[UP-behavior-web_https] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[UP] traffic behavior web_deny
[UP-behavior-web_deny] filter deny
[UP-behavior-web_deny] free account
[UP-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[UP] traffic behavior neiwang_out
[UP-behavior-neiwang_out] filter permit
[UP-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[UP] traffic behavior web_out
[UP-behavior-web_out] filter permit
[UP-behavior-web_out] free account
[UP-behavior-web_out] quit
g. 配置QoS策略
# 配置入方向QoS策略web
[UP] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器IP地址的报文通过;
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU;
除上述报文外,其余报文均禁止通过。
[UP-qospolicy-web] classifier web_permit behavior web_permit
[UP-qospolicy-web] classifier neiwang behavior neiwang
[UP-qospolicy-web] classifier web_http behavior web_http
[UP-qospolicy-web] classifier web_https behavior web_https
[UP-qospolicy-web] classifier web_deny behavior web_deny
[UP-qospolicy-web] quit
# 配置出方向QoS策略out
[UP] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器IP地址的报文通过,其余报文均禁止通过。
[UP-qospolicy-out] classifier web_out behavior web_out
[UP-qospolicy-out] classifier neiwang_out behavior neiwang_out
[UP-qospolicy-out] classifier web_deny behavior web_deny
[UP-qospolicy-out] quit
h. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[UP] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[UP] qos apply policy out global outbound
(2) 配置CP
a. 取消对接口Remote-XGE1024/3/1/2发布IPv6 ND RA消息的抑制。
<CP> system-view
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] undo ipv6 nd ra halt
b. 配置接口Remote-XGE1024/3/1/2自动生成IPv6链路本地地址。
[CP–Remote-XGE1024/3/1/2] ipv6 address auto link-local
[CP–Remote-XGE1024/3/1/2] quit
c. 配置ND前缀池
# 配置前缀池1,包含的前缀为10::/16,分配的前缀长度为32,即前缀池1包含10::/32~10:FFFF::/32范围内的65536个前缀。
[CP] ipv6 dhcp prefix-pool 1 prefix 10::/16 assign-len 32
# 配置ODAP类型的IPv6地址池pool1,并引用前缀池1,指定分配的IPv6前缀段的前缀长度为64。
[CP] ipv6 pool pool1 odap
[CP-ipv6-pool-pool1] prefix-pool 1
[CP-ipv6-pool-pool1] dynamic prefix assign-length 64
[CP-ipv6-pool-pool1] quit
d. 配置Portal认证服务器
# 配置IPv6 Portal认证服务器:名称为newpt2,IPv6地址为4::5,密钥为明文123456。
[CP] portal server newpt2
[CP-portal-server-newpt2] ipv6 4::5 key simple 123456
[CP-portal-server-newpt2] quit
e. 配置通过查询ARP/ND表项来获取用户信息
[CP] portal access-info trust arp
[CP] portal access-info trust nd
f. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[CP] user-group pre
New user group added.
[CP-ugroup-pre] quit
g. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication ipv6 4::5
[CP-radius-rs1] primary accounting ipv6 4::5
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
h. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[CP] domain name dm1
[CP-isp-dm1] authentication ipoe none
[CP-isp-dm1] authorization ipoe none
[CP-isp-dm1] accounting ipoe none
# 配置前域授权用户组、授权ND前缀池及IPv6 DNS地址池信息。
[CP-isp-dm1] authorization-attribute user-group pre
[CP-isp-dm1] authorization-attribute ipv6-nd-prefix-pool pool1
[CP-isp-dm1] authorization-attribute primary-dns ipv6 8::8
# 配置Web认证页面URL。
[CP-isp-dm1] web-server ipv6-url http://[4::5]:8080/portal
[CP-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[CP] domain name dm2
[CP-isp-dm2] authentication ipoe radius-scheme rs1
[CP-isp-dm2] authorization ipoe radius-scheme rs1
[CP-isp-dm2] accounting ipoe radius-scheme rs1
[CP-isp-dm2] quit
i. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 配置IPoE用户采用Web认证方式。
[CP–Remote-XGE1024/3/1/2] ip subscriber authentication-method web
The operation may cut all users on this interface. Continue?[Y/N]:y
# 开启IPv6 ND RS报文触发方式。
[CP–Remote-XGE1024/3/1/2] ip subscriber initiator ndrs enable
# 配置Web认证前域为dm1,Web认证域为dm2。
[CP–Remote-XGE1024/3/1/2] ip subscriber pre-auth domain dm1
[CP–Remote-XGE1024/3/1/2] ip subscriber web-auth domain dm2
[CP–Remote-XGE1024/3/1/2] quit
(3) 配置RADIUS服务器和Portal服务器
请参照“双栈IPoE用户普通Web认证配置举例”中相关配置。
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IPv6前缀为10::/64。
[CP] display access-user auth-type pre-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0xc R-XGE1024/3/1/2 - 000c-29a6-b656 -/-
000c29a6b656 L2 IPoE dynamic
10::20C:29FF:FEA6:B656
# 用户认证前域认证通过之后,登录Web页面,如下图所示。
图1-223 登录Web页面
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[CP] display access-user auth-type web-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0xc R-XGE1024/3/1/2 - 000c-29a6-b656 -/-
user1@dm2 Web auth
10::20C:29FF:FEA6:B656
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备作为DHCP中继向远端DHCP服务器申请IP地址。
· 由一台安装了H3C iMC的服务器同时承担RADIUS服务器、Portal认证服务器、Portal Web服务器以及MAC绑定服务器的职责。本举例中使用的iMC版本为:iMC PLAT 7.1(E0303)、iMC UAM 7.1(E0305)、iMC EIP 7.1(E0305))。
· FTP server是一台内网服务器。
图1-224 IPoE MAC Trigger无感知认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置DHCP服务器
# 全局开启DHCP。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段192.168.0.0/24,分配的网关地址192.168.0.1和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool1] network 192.168.0.0 24
[DHCP-server-ip-pool-pool1] gateway-list 192.168.0.1
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
# 将192.168.0.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 192.168.0.1
[DHCP-server-ip-pool-pool1] quit
# 配置到CP设备的缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 12.1.1.1
(2) 配置UP
a. 配置UP工作在转发模式。
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
b. 配置对HTTPS报文进行重定向的内部侦听端口号
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[UP] http-redirect https-port 11111
c. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[UP] user-group pre
New user group added.
[UP-ugroup-pre] quit
d. 配置用于认证前域用户的ACL规则
# 为IPv4高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[UP] acl advanced name web_permit
[UP-acl-ipv4-adv-web_permit] rule 0 permit ip destination 4.4.4.5 0 user-group pre
[UP-acl-ipv4-adv-web_permit] quit
# 为IPv4高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[UP] acl advanced name neiwang
[UP-acl-ipv4-adv-neiwang] rule 0 permit ip destination 4.4.4.6 0 user-group pre
[UP-acl-ipv4-adv-neiwang] quit
# 为IPv4高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[UP] acl advanced name web_http
[UP-acl-ipv4-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[UP-acl-ipv4-adv-web_http] quit
# 为IPv4高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[UP] acl advanced name web_https
[UP-acl-ipv4-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[UP-acl-ipv4-adv-web_https] quit
# 为IPv4高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[UP] acl advanced name ip
[UP-acl-ipv4-adv-ip] rule 0 permit ip user-group pre
[UP-acl-ipv4-adv-ip] quit
# 为IPv4高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[UP] acl advanced name neiwang_out
[UP-acl-ipv4-adv-neiwang_out] rule 0 permit ip source 4.4.4.6 0 user-group pre
[UP-acl-ipv4-adv-neiwang_out] quit
# 为IPv4高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[UP] acl advanced name web_out
[UP-acl-ipv4-adv-web_out] rule 0 permit ip source 4.4.4.5 0 user-group pre
[UP-acl-ipv4-adv-web_out] quit
e. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[UP] traffic classifier web_permit operator and
[UP-classifier-web_permit] if-match acl name web_permit
[UP-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[UP] traffic classifier neiwang operator and
[UP-classifier-neiwang] if-match acl name neiwang
[UP-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[UP] traffic classifier web_http operator and
[UP-classifier-web_http] if-match acl name web_http
[UP-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[UP] traffic classifier web_https operator and
[UP-classifier-web_https] if-match acl name web_https
[UP-classifier-web_https] quit
# 配置类ip_cpu,匹配ACL ip。
[UP] traffic classifier ip_cpu operator and
[UP-classifier-ip_cpu] if-match acl name ip
[UP-classifier-ip_cpu] quit
# 配置类ip_deny,匹配ACL ip。
[UP] traffic classifier ip_deny operator and
[UP-classifier-ip_deny] if-match acl name ip
[UP-classifier-ip_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[UP] traffic classifier neiwang_out operator and
[UP-classifier-neiwang_out] if-match acl name neiwang_out
[UP-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[UP] traffic classifier web_out operator and
[UP-classifier-web_out] if-match acl name web_out
[UP-classifier-web_out] quit
f. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[UP] traffic behavior web_permit
[UP-behavior-web_permit] filter permit
[UP-behavior-web_permit] free account
[UP-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[UP] traffic behavior neiwang
[UP-behavior-neiwang] filter permit
[UP-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[UP] traffic behavior web_http
[UP-behavior-web_http] redirect http-to-cpu
[UP-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[UP] traffic behavior web_https
[UP-behavior-web_https] redirect https-to-cpu
[UP-behavior-web_https] quit
# 配置流行为web_cpu,对用户组pre中用户的所有IP报文都重定向到CPU。
[UP] traffic behavior web_cpu
[UP-behavior-web_cpu] redirect cpu
[UP-behavior-web_cpu] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[UP] traffic behavior web_deny
[UP-behavior-web_deny] filter deny
[UP-behavior-web_deny] free account
[UP-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[UP] traffic behavior neiwang_out
[UP-behavior-neiwang_out] filter permit
[UP-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[UP] traffic behavior web_out
[UP-behavior-web_out] filter permit
[UP-behavior-web_out] free account
[UP-behavior-web_out] quit
g. 配置QoS策略
# 配置入方向QoS策略web
[UP] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过;
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU;
除上述报文外,其余报文都重定向到CPU,如果重定向无感知认证失败,则丢弃报文。
[UP-qospolicy-web] classifier web_permit behavior web_permit
[UP-qospolicy-web] classifier neiwang behavior neiwang
[UP-qospolicy-web] classifier web_http behavior web_http
[UP-qospolicy-web] classifier web_https behavior web_https
[UP-qospolicy-web] classifier ip_cpu behavior web_cpu
[UP-qospolicy-web] classifier ip_deny behavior web_deny
[UP-qospolicy-web] quit
# 配置出方向QoS策略out
[UP] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文均禁止通过。
[UP-qospolicy-out] classifier web_out behavior web_out
[UP-qospolicy-out] classifier neiwang_out behavior neiwang_out
[UP-qospolicy-out] classifier ip_deny behavior web_deny
[UP-qospolicy-out] quit
h. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[UP] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[UP] qos apply policy out global outbound
(3) 配置CP
a. 配置DHCP relay
# 进入接口Remote-XGE1024/3/1/2视图。
<CP> system-view
[CP] interface remote-xge 1024/3/1/2
# 配置接口工作在中继模式。
[CP–Remote-XGE1024/3/1/2] dhcp select relay
[CP–Remote-XGE1024/3/1/2] quit
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将192.168.0.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址,绑定UP 1024。
[CP] ip pool pool1 bas remote
[CP-ip-pool-pool1] gateway 192.168.0.1 24
[CP-ip-pool-pool1] forbidden-ip 192.168.0.1
[CP-ip-pool-pool1] remote-server 4.4.4.3
[CP-ip-pool-pool1] binding up-id 1024
[CP-ip-pool-pool1] quit
b. 配置Portal认证服务器
# 配置Portal认证服务器:名称为newpt,IP地址为4.4.4.5,密钥为明文123456。
[CP] portal server newpt
[CP-portal-server-newpt] ip 4.4.4.5 key simple 123456
[CP-portal-server-newpt] quit
c. 配置通过查询ARP/ND表项来获取用户信息
[CP] portal access-info trust arp
[CP] portal access-info trust nd
d. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[CP] user-group pre
New user group added.
[CP-ugroup-pre] quit
e. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.5
[CP-radius-rs1] primary accounting 4.4.4.5
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
f. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[CP] domain name dm1
[CP-isp-dm1] authentication ipoe none
[CP-isp-dm1] authorization ipoe none
[CP-isp-dm1] accounting ipoe none
# 配置授权地址池以及用户组。
[CP-isp-dm1] authorization-attribute user-group pre
[CP-isp-dm1] authorization-attribute ip-pool pool1
# 配置Web认证页面URL。
[CP-isp-dm1] web-server url http://4.4.4.5:8080/portal/
[CP-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[CP] domain name dm2
[CP-isp-dm2] authentication ipoe radius-scheme rs1
[CP-isp-dm2] authorization ipoe radius-scheme rs1
[CP-isp-dm2] accounting ipoe radius-scheme rs1
[CP-isp-dm2] quit
g. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 配置IPoE用户采用Web认证方式。
[CP–Remote-XGE1024/3/1/2] ip subscriber authentication-method web
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[CP–Remote-XGE1024/3/1/2] ip subscriber pre-auth domain dm1
[CP–Remote-XGE1024/3/1/2] ip subscriber web-auth domain dm2
[CP–Remote-XGE1024/3/1/2] quit
h. 配置Portal基于MAC地址的快速认证
# 创建MAC绑定服务器mts。
[CP] portal mac-trigger-server mts
# 配置MAC绑定服务器的地址为4.4.4.5
[CP-portal-mac-trigger-server-mts] ip 4.4.4.5
[CP-portal-mac-trigger-server-mts] quit
# 在接口Remote-XGE1024/3/1/2上应用MAC绑定服务器mts。
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] portal apply mac-trigger-server mts
[CP–Remote-XGE1024/3/1/2] quit
(4) 配置RADIUS服务器
# 配置接入设备
登录进入iMC管理平台,选择“用户”页签,单击导航树中的[接入策略管理/接入设备管理/接入设备配置]菜单项,进入接入设备配置页面,在该页面中单击<增加>按钮,进入如下图所示增加接入设备页面。
¡ 输入共享密钥为:radius。
¡ 其他采用缺省配置。
图1-225 增加接入设备
在该页面中设备列表下方单击<手工增加>,在弹出页面输入接入设备地址12.1.1.1并单击<确定>。
# 增加接入策略
单击导航树中的[接入策略管理/接入策略管理]菜单项,进入接入策略管理页面,在该页面中单击<增加>按钮,进入如下图所示增加接入策略页面。
¡ 输入接入策略名为:AccessPolicy。
¡ 其他采用缺省配置。
图1-226 增加接入策略
# 增加接入服务
单击导航树中的[接入策略管理/接入服务管理]菜单项,进入接入服务管
理页面,在该页面中单击<增加>按钮,进入如下图所示增加接入服务页面。
¡ 输入服务名为:IPoE_Server
¡ 缺省接入策略选择已创建的策略“AccessPolicy”。
¡ 其他采用缺省配置。
图1-227 增加接入服务
# 在IMC界面增加用户
单击导航树中的[用户管理/增加用户]菜单项,进入如下图所示增加用户页面,填写用户姓名和证件号码为:IPoE_Web001和001。
图1-228 增加用户
单击<确定>按钮后完成用户的添加。
# 增加接入用户
单击导航树中的[接入用户管理/接入用户]菜单项,进入接入用户页面,在该页面中单击<增加>按钮,进入如下图所示增加接入用户页面。
¡ 用户姓名选择:IPoE_Web001
¡ 帐号名填写为:user1
¡ 密码为:pass1
¡ 接入服务选择之前已创建的IPoE_Server
图1-229 增加接入用户
(5) 配置Portal服务器
# 配置Portal主页。
单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如下图所示。
图1-230 Portal服务器配置页面
# 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如下图所示。
¡ 输入IP地址组名为“IPoE_Web_User”;
¡ 输入起始地址为“192.168.0.1”、终止地址为“192.168.0.255”。用户主机IP地址必须包含在该IP地址组范围内;
¡ 其他采用缺省配置;
¡ 单击<确定>按钮完成操作。
图1-231 增加IP地址组配置页面
# 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面。
¡ 输入设备名为“NAS”;
¡ 输入IP地址为“12.1.1.1”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/2的IP地址;
¡ 输入密钥为“123456”;
¡ 选择组网方式为“直连”;
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 配置端口组信息
如下图所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
图1-232 设备信息列表
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如下图所示。
¡ 输入端口组名为“group”;
¡ 选择IP地址组为“IPoE_Web_User”,用户接入网络时使用的IP地址必须属于所选的IP地址组;
¡ 无感知认证选择“支持”。
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-233 增加端口组信息配置页面
# 最后单击导航树中的[接入策略管理/业务参数配置/系统配置手工生效]菜单项,使以上Portal认证服务器配置生效。
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IP地址为192.168.0.2。
[CP] display access-user auth-type pre-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
-
# 用户认证前域认证通过之后,登录Web页面,如下图所示。
图1-234 登录Web页面
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[CP] display access-user auth-type web-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 192.168.0.2 0015-e947-f4d4 -/-
user1@dm2 Web auth
-
# 点击<下线>按钮,通过显示命令查看,此时用户返回认证前域状态。
[CP] display access-user auth-type pre-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
-
# 重新打开浏览器,任意输入访问地址http://63.1.1.240,通过显示命令查看,用户IPoE Web上线。
[CP] display access-user auth-type web-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 Web auth
-
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备作为DHCP中继向远端DHCP服务器申请IP地址。
· 由一台安装了H3C iMC的服务器同时承担Portal认证服务器和Portal Web服务器的职责。本举例中使用的iMC版本为:iMC PLAT 7.1(E0303)、iMC UAM 7.1(E0305)、iMC EIP 7.1(E0305))。
· 由一台支持MAC绑定功能的RADIUS服务器同时承担认证、授权和计费服务器以及MAC绑定服务器的职责。
· FTP server是一台内网服务器。
图1-235 IPoE普通MAC无感知认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置DHCP服务器
# 全局开启DHCP。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段192.168.0.0/24,分配的网关地址192.168.0.1和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool1] network 192.168.0.0 24
[DHCP-server-ip-pool-pool1] gateway-list 192.168.0.1
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
# 将192.168.0.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 192.168.0.1
[DHCP-server-ip-pool-pool1] quit
# 配置到CP设备的缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 12.1.1.1
(2) 配置UP
a. 配置UP工作在转发模式。
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
b. 配置对HTTPS报文进行重定向的内部侦听端口号
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[UP] http-redirect https-port 11111
c. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[UP] user-group pre
New user group added.
[UP-ugroup-pre] quit
d. 配置用于认证前域用户的ACL规则
# 为IPv4高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[UP] acl advanced name web_permit
[UP-acl-ipv4-adv-web_permit] rule 0 permit ip destination 4.4.4.5 0 user-group pre
[UP-acl-ipv4-adv-web_permit] quit
# 为IPv4高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[UP] acl advanced name neiwang
[UP-acl-ipv4-adv-neiwang] rule 0 permit ip destination 4.4.4.6 0 user-group pre
[UP-acl-ipv4-adv-neiwang] quit
# 为IPv4高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[UP] acl advanced name web_http
[UP-acl-ipv4-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[UP-acl-ipv4-adv-web_http] quit
# 为IPv4高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[UP] acl advanced name web_https
[UP-acl-ipv4-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[UP-acl-ipv4-adv-web_https] quit
# 为IPv4高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[UP] acl advanced name ip
[UP-acl-ipv4-adv-ip] rule 0 permit ip user-group pre
[UP-acl-ipv4-adv-ip] quit
# 为IPv4高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[UP] acl advanced name neiwang_out
[UP-acl-ipv4-adv-neiwang_out] rule 0 permit ip source 4.4.4.6 0 user-group pre
[UP-acl-ipv4-adv-neiwang_out] quit
# 为IPv4高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[UP] acl advanced name web_out
[UP-acl-ipv4-adv-web_out] rule 0 permit ip source 4.4.4.5 0 user-group pre
[UP-acl-ipv4-adv-web_out] quit
e. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[UP] traffic classifier web_permit operator and
[UP-classifier-web_permit] if-match acl name web_permit
[UP-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[UP] traffic classifier neiwang operator and
[UP-classifier-neiwang] if-match acl name neiwang
[UP-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[UP] traffic classifier web_http operator and
[UP-classifier-web_http] if-match acl name web_http
[UP-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[UP] traffic classifier web_https operator and
[UP-classifier-web_https] if-match acl name web_https
[UP-classifier-web_https] quit
# 配置类ip_cpu,匹配ACL ip。
[UP] traffic classifier ip_cpu operator and
[UP-classifier-ip_cpu] if-match acl name ip
[UP-classifier-ip_cpu] quit
# 配置类ip_deny,匹配ACL ip。
[UP] traffic classifier ip_deny operator and
[UP-classifier-ip_deny] if-match acl name ip
[UP-classifier-ip_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[UP] traffic classifier neiwang_out operator and
[UP-classifier-neiwang_out] if-match acl name neiwang_out
[UP-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[UP] traffic classifier web_out operator and
[UP-classifier-web_out] if-match acl name web_out
[UP-classifier-web_out] quit
f. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[UP] traffic behavior web_permit
[UP-behavior-web_permit] filter permit
[UP-behavior-web_permit] free account
[UP-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[UP] traffic behavior neiwang
[UP-behavior-neiwang] filter permit
[UP-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[UP] traffic behavior web_http
[UP-behavior-web_http] redirect http-to-cpu
[UP-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[UP] traffic behavior web_https
[UP-behavior-web_https] redirect https-to-cpu
[UP-behavior-web_https] quit
# 配置流行为web_cpu,对用户组pre中用户的所有IP报文都重定向到CPU。
[UP] traffic behavior web_cpu
[UP-behavior-web_cpu] redirect cpu
[UP-behavior-web_cpu] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[UP] traffic behavior web_deny
[UP-behavior-web_deny] filter deny
[UP-behavior-web_deny] free account
[UP-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[UP] traffic behavior neiwang_out
[UP-behavior-neiwang_out] filter permit
[UP-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[UP] traffic behavior web_out
[UP-behavior-web_out] filter permit
[UP-behavior-web_out] free account
[UP-behavior-web_out] quit
g. 配置QoS策略
# 配置入方向QoS策略web
[UP] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过;
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU;
除上述报文外,其余报文都重定向到CPU,如果重定向无感知认证失败,则丢弃报文。
[UP-qospolicy-web] classifier web_permit behavior web_permit
[UP-qospolicy-web] classifier neiwang behavior neiwang
[UP-qospolicy-web] classifier web_http behavior web_http
[UP-qospolicy-web] classifier web_https behavior web_https
[UP-qospolicy-web] classifier ip_cpu behavior web_cpu
[UP-qospolicy-web] classifier ip_deny behavior web_deny
[UP-qospolicy-web] quit
# 配置出方向QoS策略out
[UP] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文均禁止通过。
[UP-qospolicy-out] classifier web_out behavior web_out
[UP-qospolicy-out] classifier neiwang_out behavior neiwang_out
[UP-qospolicy-out] classifier ip_deny behavior web_deny
[UP-qospolicy-out] quit
h. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[UP] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[UP] qos apply policy out global outbound
(3) 配置CP
a. 配置DHCP relay
# 进入接口Remote-XGE1024/3/1/2视图。
<CP> system-view
[CP] interface remote-xge 1024/3/1/2
# 配置接口工作在中继模式。
[CP–Remote-XGE1024/3/1/2] dhcp select relay
[CP–Remote-XGE1024/3/1/2] quit
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将192.168.0.1设置为禁止地址,并指定远端BAS IP地址池对应的DHCP服务器地址,绑定UP 1024。
[CP] ip pool pool1 bas remote
[CP-ip-pool-pool1] gateway 192.168.0.1 24
[CP-ip-pool-pool1] forbidden-ip 192.168.0.1
[CP-ip-pool-pool1] remote-server 4.4.4.3
[CP-ip-pool-pool1] binding up-id 1024
[CP-ip-pool-pool1] quit
b. 配置Portal认证服务器
# 配置Portal认证服务器:名称为newpt,IP地址为4.4.4.5,密钥为明文123456。
[CP] portal server newpt
[CP-portal-server-newpt] ip 4.4.4.5 key simple 123456
[CP-portal-server-newpt] quit
c. 配置通过查询ARP/ND表项来获取用户信息
[CP] portal access-info trust arp
[CP] portal access-info trust nd
d. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[CP] user-group pre
New user group added.
[CP-ugroup-pre] quit
e. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.1
[CP-radius-rs1] primary accounting 4.4.4.1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
f. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[CP] domain name dm1
[CP-isp-dm1] authentication ipoe none
[CP-isp-dm1] authorization ipoe none
[CP-isp-dm1] accounting ipoe none
# 配置授权地址池以及用户组。
[CP-isp-dm1] authorization-attribute user-group pre
[CP-isp-dm1] authorization-attribute ip-pool pool1
# 配置Web认证页面URL。
[CP-isp-dm1] web-server url http://4.4.4.5:8080/portal/
[CP-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[CP] domain name dm2
[CP-isp-dm2] authentication ipoe radius-scheme rs1
[CP-isp-dm2] authorization ipoe radius-scheme rs1
[CP-isp-dm2] accounting ipoe radius-scheme rs1
[CP-isp-dm2] quit
g. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 配置IPoE用户采用Web MAC认证方式。
[CP–Remote-XGE1024/3/1/2] ip subscriber authentication-method web mac-auth
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域为dm2。
[CP–Remote-XGE1024/3/1/2] ip subscriber pre-auth domain dm1
[CP–Remote-XGE1024/3/1/2] ip subscriber web-auth domain dm2
[CP–Remote-XGE1024/3/1/2] quit
(4) 配置RADIUS服务器
对于RADIUS服务器上AAA和MAC绑定配置,具体需要参见RADIUS server的配置说明书。
(5) 配置Portal服务器
# 配置Portal主页。
登录进入iMC管理平台,选择“用户”页签,单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如下图所示。
图1-236 Portal服务器配置页面
# 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如下图所示。
¡ 输入IP地址组名为“IPoE_Web_User”;
¡ 输入起始地址为“192.168.0.1”、终止地址为“192.168.0.255”。用户主机IP地址必须包含在该IP地址组范围内;
¡ 其他采用缺省配置;
¡ 单击<确定>按钮完成操作。
图1-237 增加IP地址组配置页面
# 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面。
¡ 输入设备名为“NAS”;
¡ 输入IP地址为“12.1.1.1”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/2的IP地址;
¡ 输入密钥为“123456”;
¡ 选择组网方式为“直连”;
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
# 配置端口组信息
如下图所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
图1-238 设备信息列表
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如下图所示。
¡ 输入端口组名为“group”;
¡ 选择IP地址组为“IPoE_Web_User”,用户接入网络时使用的IP地址必须属于所选的IP地址组;
¡ 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-239 增加端口组信息配置页面
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IP地址为192.168.0.2。
[CP] display access-user auth-type pre-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
-
# 用户认证前域认证通过之后,登录Web页面,如下图所示。
图1-240 登录Web页面
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[CP] display access-user auth-type web-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 192.168.0.2 0015-e947-f4d4 -/-
user1@dm2 Web auth
-
# 点击<下线>按钮,通过显示命令查看,此时用户返回认证前域状态。
[CP] display access-user auth-type pre-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
-
# 重新打开浏览器,任意输入访问地址http://63.1.1.240,通过显示命令查看,用户IPoE Web 上线。
[CP] display access-user auth-type web-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 Web auth
-
如下图所示:CP为某学校的一台BRAS设备,为学校用户提供IPoE接入服务。要求:
· DHCP client经由二层网络以IPoE方式接入到BRAS接入设备。
· BRAS接入设备作为DHCP中继向远端DHCP服务器申请IP地址。
· 由一台安装了H3C iMC的服务器同时承担Portal认证服务器和Portal Web服务器的职责。
· 由一台支持MAC绑定功能的RADIUS服务器同时承担认证、授权和计费服务器以及MAC绑定服务器的职责。本举例中使用的iMC版本为:iMC PLAT 7.1(E0303)、iMC UAM 7.1(E0305)、iMC EIP 7.1(E0305))。
· FTP server是一台内网服务器。
· Web认证通过后限速5Mbps。
图1-241 双栈IPoE用户普通MAC无感知认证配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
请正确设置DNS服务器,以便服务器可以根据双栈IPoE用户先上线的协议栈类型,解析出Web认证页面http://www.ipv4.web.com(或http://www.ipv6.web.com)对应的IPv4 URL地址(或IPv6 URL地址)。DNS服务器具体设置过程略。
(1) 配置DHCP服务器
a. 配置IP地址池
# 开启DHCP服务。
<DHCP-server> system-view
[DHCP-server] dhcp enable
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[DHCP-server] dhcp server request-ip-address check
# 创建名称为pool1的IP地址池并进入其视图。
[DHCP-server] ip pool pool1
# 配置地址池动态分配的IP地址网段192.168.0.0/24和DNS服务器地址8.8.8.8。
[DHCP-server-ip-pool-pool1] network 192.168.0.0 24
[DHCP-server-ip-pool-pool1] dns-list 8.8.8.8
# 配置为用户分配的网关地址为192.168.0.1。
[DHCP-server-ip-pool-pool1] gateway-list 192.168.0.1
# 将192.168.0.1设置为禁止地址。
[DHCP-server-ip-pool-pool1] forbidden-ip 192.168.0.1
[DHCP-server-ip-pool-pool1] quit
# 配置到CP设备的缺省路由。
[DHCP-server] ip route-static 0.0.0.0 0 12.1.1.1
b. 配置IPv6地址池
# 创建名称为pool2的IPv6地址池并进入其视图。
[DHCP-server] ipv6 pool pool2
# 配置地址池动态分配的IPv6地址网段192::/64和DNS服务器地址8::8。
[DHCP-server-ipv6-pool-pool2] network 192::/64
[DHCP-server-ipv6-pool-pool2] dns-server 8::8
[DHCP-server-ipv6-pool-pool2] quit
# 将192::1设置为禁止地址。
[DHCP-server] ipv6 dhcp server forbidden-address 192::1
# 配置接口Ten-GigabitEthernet3/1/1工作在DHCPv6服务器模式。
[DHCP-server] interface ten-gigabitethernet 3/1/1
[DHCP-server-Ten-GigabitEthernet3/1/1] ipv6 dhcp select server
[DHCP-server-Ten-GigabitEthernet3/1/1] quit
# 配置到CP设备的缺省路由。
[DHCP-server] ipv6 route-static :: 0 12::1
(2) 配置UP
a. 配置UP工作在转发模式。
# 配置UP工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
b. 配置HTTPS的内部侦听端口
# 配置HTTPS的内部侦听端口,端口不要跟已有端口冲突即可(已被其他服务占用的TCP端口号可以通过display tcp命令查看)。
[UP] http-redirect https-port 11111
c. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[UP] user-group pre
New user group added.
[UP-ugroup-pre] quit
d. 配置用于认证前域用户的ACL规则
# 分别为IPv4和IPv6高级ACL web_permit创建规则如下:匹配用户组pre中用户的目的地址为Portal服务器地址的报文。
[UP] acl advanced name web_permit
[UP-acl-ipv4-adv-web_permit] rule 0 permit ip destination 4.4.4.5 0 user-group pre
[UP-acl-ipv4-adv-web_permit] quit
[UP] acl ipv6 advanced name web_permit
[UP-acl-ipv6-adv-web_permit] rule 0 permit ipv6 destination 4::5 128 user-group pre
[UP-acl-ipv6-adv-web_permit] quit
# 分别为IPv4和IPv6高级ACL neiwang创建规则如下:匹配用户组pre中用户的目的地址为内网服务器地址的报文。
[UP] acl advanced name neiwang
[UP-acl-ipv4-adv-neiwang] rule 0 permit ip destination 4.4.4.6 0 user-group pre
[UP-acl-ipv4-adv-neiwang] quit
[UP] acl ipv6 advanced name neiwang
[UP-acl-ipv6-adv-neiwang] rule 0 permit ipv6 destination 4::6 128 user-group pre
[UP-acl-ipv6-adv-neiwang] quit
# 分别为IPv4和IPv6高级ACL web_http创建规则如下:匹配用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)。
[UP] acl advanced name web_http
[UP-acl-ipv4-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[UP-acl-ipv4-adv-web_http] quit
[UP] acl ipv6 advanced name web_http
[UP-acl-ipv6-adv-web_http] rule 0 permit tcp destination-port eq www user-group pre
[UP-acl-ipv6-adv-web_http] quit
# 分别为IPv4和IPv6高级ACL web_https创建规则如下:匹配用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)。
[UP] acl advanced name web_https
[UP-acl-ipv4-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[UP-acl-ipv4-adv-web_https] quit
[UP] acl ipv6 advanced name web_https
[UP-acl-ipv6-adv-web_https] rule 0 permit tcp destination-port eq 443 user-group pre
[UP-acl-ipv6-adv-web_https] quit
# 分别为IPv4和IPv6高级ACL ip创建规则如下:匹配用户组pre中用户的IP报文。
[UP] acl advanced name ip
[UP-acl-ipv4-adv-ip] rule 0 permit ip user-group pre
[UP-acl-ipv4-adv-ip] quit
[UP] acl ipv6 advanced name ip
[UP-acl-ipv6-adv-ip] rule 0 permit ipv6 user-group pre
[UP-acl-ipv6-adv-ip] quit
# 分别为IPv4和IPv6高级ACL neiwang_out创建规则如下:匹配用户组pre中源地址为内网服务器IP地址的报文。
[UP] acl advanced name neiwang_out
[UP-acl-ipv4-adv-neiwang_out] rule 0 permit ip source 4.4.4.6 0 user-group pre
[UP-acl-ipv4-adv-neiwang_out] quit
[UP] acl ipv6 advanced name neiwang_out
[UP-acl-ipv6-adv-neiwang_out] rule 0 permit ipv6 source 4::6 128 user-group pre
[UP-acl-ipv6-adv-neiwang_out] quit
# 分别为IPv4和IPv6高级ACL web_out创建规则如下:匹配用户组pre中源地址为Portal服务器IP地址的报文。
[UP] acl advanced name web_out
[UP-acl-ipv4-adv-web_out] rule 0 permit ip source 4.4.4.5 0 user-group pre
[UP-acl-ipv4-adv-web_out] quit
[UP] acl ipv6 advanced name web_out
[UP-acl-ipv6-adv-web_out] rule 0 permit ipv6 source 4::5 128 user-group pre
[UP-acl-ipv6-adv-web_out] quit
e. 配置用于认证前域用户的类
# 配置类web_permit,匹配ACL web_permit。
[UP] traffic classifier web_permit operator or
[UP-classifier-web_permit] if-match acl name web_permit
[UP-classifier-web_permit] if-match acl ipv6 name web_permit
[UP-classifier-web_permit] quit
# 配置类neiwang,匹配ACL neiwang。
[UP] traffic classifier neiwang operator or
[UP-classifier-neiwang] if-match acl name neiwang
[UP-classifier-neiwang] if-match acl ipv6 name neiwang
[UP-classifier-neiwang] quit
# 配置类web_http,匹配ACL web_http。
[UP] traffic classifier web_http operator or
[UP-classifier-web_http] if-match acl name web_http
[UP-classifier-web_http] if-match acl ipv6 name web_http
[UP-classifier-web_http] quit
# 配置类web_https,匹配ACL web_https。
[UP] traffic classifier web_https operator or
[UP-classifier-web_https] if-match acl name web_https
[UP-classifier-web_https] if-match acl ipv6 name web_https
[UP-classifier-web_https] quit
# 配置类ip_cpu,匹配ACL ip。
[UP] traffic classifier ip_cpu operator or
[UP-classifier-ip_cpu] if-match acl name ip
[UP-classifier-ip_cpu] if-match acl ipv6 name ip
[UP-classifier-ip_cpu] quit
# 配置类ip_deny,匹配ACL ip。
[UP] traffic classifier ip_deny operator or
[UP-classifier-ip_deny] if-match acl name ip
[UP-classifier-ip_deny] if-match acl ipv6 name ip
[UP-classifier-ip_deny] quit
# 配置类neiwang_out,匹配ACL neiwang_out。
[UP] traffic classifier neiwang_out operator or
[UP-classifier-neiwang_out] if-match acl name neiwang_out
[UP-classifier-neiwang_out] if-match acl ipv6 name neiwang_out
[UP-classifier-neiwang_out] quit
# 配置类web_out,匹配ACL web_out。
[UP] traffic classifier web_out operator or
[UP-classifier-web_out] if-match acl name web_out
[UP-classifier-web_out] if-match acl ipv6 name web_out
[UP-classifier-web_out] quit
f. 配置流行为
# 配置流行为web_permit,允许用户组pre中用户的目的地址为Portal服务器IP地址的报文通过。
[UP] traffic behavior web_permit
[UP-behavior-web_permit] filter permit
[UP-behavior-web_permit] free account
[UP-behavior-web_permit] quit
# 配置流行为neiwang,允许用户组pre中用户的目的地址为内网服务器IP地址的报文通过。
[UP] traffic behavior neiwang
[UP-behavior-neiwang] filter permit
[UP-behavior-neiwang] quit
# 配置流行为web_http,对用户组pre中用户的目的端口为80的TCP报文(即HTTP报文)重定向到CPU。
[UP] traffic behavior web_http
[UP-behavior-web_http] redirect http-to-cpu
[UP-behavior-web_http] quit
# 配置流行为web_https,对用户组pre中用户的目的端口为443的TCP报文(即HTTPS报文)重定向到CPU。
[UP] traffic behavior web_https
[UP-behavior-web_https] redirect https-to-cpu
[UP-behavior-web_https] quit
# 配置流行为web_cpu,对用户组pre中用户的所有IP报文都重定向到CPU。
[UP] traffic behavior web_cpu
[UP-behavior-web_cpu] redirect cpu
[UP-behavior-web_cpu] quit
# 配置流行为web_deny,禁止用户组pre中用户的所有IP报文通过。
[UP] traffic behavior web_deny
[UP-behavior-web_deny] filter deny
[UP-behavior-web_deny] free account
[UP-behavior-web_deny] quit
# 配置流行为neiwang_out,允许用户组pre中源地址为内网服务器IP地址的报文通过。
[UP] traffic behavior neiwang_out
[UP-behavior-neiwang_out] filter permit
[UP-behavior-neiwang_out] quit
# 配置流行为web_out,允许用户组pre中源地址为Portal服务器IP地址的报文通过。
[UP] traffic behavior web_out
[UP-behavior-web_out] filter permit
[UP-behavior-web_out] free account
[UP-behavior-web_out] quit
g. 配置QoS策略
# 配置入方向QoS策略web
[UP] qos policy web
# 为类指定对应的流行为,规则为对于用户组pre中的用户:
允许目的地址为Portal服务器和内网服务器IP地址的报文通过;
对于目的端口为80(HTTP报文)和443(HTTPS报文)的报文重定向到CPU;
除上述报文外,其余报文都重定向到CPU,如果重定向无感知认证失败,则丢弃报文。
[UP-qospolicy-web] classifier web_permit behavior web_permit
[UP-qospolicy-web] classifier neiwang behavior neiwang
[UP-qospolicy-web] classifier web_http behavior web_http
[UP-qospolicy-web] classifier web_https behavior web_https
[UP-qospolicy-web] classifier ip_cpu behavior web_cpu
[UP-qospolicy-web] classifier ip_deny behavior web_deny
[UP-qospolicy-web] quit
# 配置出方向QoS策略out
[UP] qos policy out
# 为类指定对应的流行为,规则为:允许用户组pre中源地址为Portal服务器和内网服务器IP地址的报文通过,其余报文均禁止通过。
[UP-qospolicy-out] classifier web_out behavior web_out
[UP-qospolicy-out] classifier neiwang_out behavior neiwang_out
[UP-qospolicy-out] classifier ip_deny behavior web_deny
[UP-qospolicy-out] quit
h. 配置应用策略
# 对接收的用户流量应用QoS策略,策略名为web(应用策略后可以执行display qos policy global inbound命令查看策略是否生效)。
[UP] qos apply policy web global inbound
# 对发送的上线用户流量应用QoS策略,策略名为out(应用策略后可以执行display qos policy global outbound命令查看策略是否生效)。
[UP] qos apply policy out global outbound
(3) 配置CP
a. 配置DHCP中继
# 配置远端BAS IP地址池pool1。
<CP> system-view
[CP] ip pool pool1 bas remote
[CP-ip-pool-pool1] gateway 192.168.0.1 24
[CP-ip-pool-pool1] forbidden-ip 192.168.0.1
[CP-ip-pool-pool1] remote-server 4.4.4.3
[CP-ip-pool-pool1] binding up-id 1024
[CP-ip-pool-pool1] quit
# 配置远端BAS IPv6地址池pool2。
[CP] ipv6 pool pool2 bas remote
[CP-ipv6-pool-pool2] gateway-list 192::1
[CP-ipv6-pool-pool2] network 192::/64 export-route
[CP-ipv6-pool-pool2] remote-server 4::3
[CP-ipv6-pool-pool2] dhcpv6-relay source-address interface loopback 0
[CP-ipv6-pool-pool2] binding up-id 1024
[CP-ipv6-pool-pool2] quit
# 配置接口工作在DHCPv4中继模式。
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] dhcp select relay
# 配置自动生成IPv6链路本地地址,该IPv6链路本地地址作为用户的网关。
[CP–Remote-XGE1024/3/1/2] ipv6 address auto link-local
# 配置接口工作在DHCPv6中继模式。
[CP–Remote-XGE1024/3/1/2] ipv6 dhcp select relay
# 取消设备发布RA消息的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址。配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[CP–Remote-XGE1024/3/1/2] undo ipv6 nd ra halt
[CP–Remote-XGE1024/3/1/2] ipv6 nd autoconfig managed-address-flag
[CP–Remote-XGE1024/3/1/2] ipv6 nd autoconfig other-flag
# 为避免终端使用临时IPv6地址进行认证,从而导致认证失败,在用户上线接口配置前缀不在RA消息中发布,从而避免终端使用前缀生成临时IPv6地址。
[CP–Remote-XGE1024/3/1/2] ipv6 nd ra prefix 192::/64 no-advertise
[CP–Remote-XGE1024/3/1/2] quit
b. 配置Portal认证服务器
# 配置IPv4 Portal认证服务器:名称为newpt1,IP地址为4.4.4.5,密钥为明文123456。
[CP] portal server newpt1
[CP-portal-server-newpt1] ip 4.4.4.5 key simple 123456
[CP-portal-server-newpt1] quit
# 配置IPv6 Portal认证服务器:名称为newpt2,IPv6地址为4::5,密钥为明文123456。
[CP] portal server newpt2
[CP-portal-server-newpt2] ipv6 4::5 key simple 123456
[CP-portal-server-newpt2] quit
c. 配置通过查询ARP/ND表项来获取用户信息
[CP] portal access-info trust arp
[CP] portal access-info trust nd
d. 创建本地用户组
# 创建认证前域用户组,名称为pre。
[CP] user-group pre
New user group added.
[CP-ugroup-pre] quit
e. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.1
[CP-radius-rs1] primary accounting 4.4.4.1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
# 设置RADIUS DAE客户端的IP地址为4.4.4.1,与RADIUS DAE客户端交互DAE报文时使用的共享密钥为明文radius。
[CP] radius dynamic-author server
[CP-radius-da-server] client ip 4.4.4.1 key simple radius
[CP-radius-da-server] quit
f. 配置认证前域和Web认证域
# 配置IPoE用户认证前使用的认证域。
[CP] domain name dm1
[CP-isp-dm1] authentication ipoe none
[CP-isp-dm1] authorization ipoe none
[CP-isp-dm1] accounting ipoe none
# 配置前域授权用户组和地址池。
[CP-isp-dm1] authorization-attribute user-group pre
[CP-isp-dm1] authorization-attribute ip-pool pool1
[CP-isp-dm1] authorization-attribute ipv6-pool pool2
# 配置Web认证页面URL。
[CP-isp-dm1] web-server url http://www.ipv4.web.com
[CP-isp-dm1] web-server ipv6-url http://www.ipv6.web.com
[CP-isp-dm1] quit
# 配置IPoE用户在Web认证阶段使用的认证域。
[CP] domain name dm2
[CP-isp-dm2] authentication ipoe radius-scheme rs1
[CP-isp-dm2] authorization ipoe radius-scheme rs1
[CP-isp-dm2] accounting ipoe radius-scheme rs1
[CP-isp-dm2] authorization-attribute car inbound cir 5120 outbound cir 5120
[CP-isp-dm2] quit
g. 配置IPoE
# 开启IPoE功能,并配置二层接入模式。
[CP] interface remote-xge 1024/3/1/2
[CP–Remote-XGE1024/3/1/2] ip subscriber l2-connected enable
# 配置IPoE用户采用Web MAC认证方式。
[CP–Remote-XGE1024/3/1/2] ip subscriber authentication-method web mac-auth
The operation may cut all users on this interface. Continue?[Y/N]:y
# 配置Web认证前域为dm1,Web认证域和Web MAC认证域均为dm2。
[CP–Remote-XGE1024/3/1/2] ip subscriber pre-auth domain dm1
[CP–Remote-XGE1024/3/1/2] ip subscriber web-auth domain dm2
[CP–Remote-XGE1024/3/1/2] ip subscriber mac-auth domain dm2
[CP–Remote-XGE1024/3/1/2] quit
(4) 配置RADIUS服务器
对于RADIUS服务器上AAA和MAC绑定配置,具体需要参见RADIUS server的配置说明书。
(5) 配置Portal服务器
a. 配置Portal主页。
单击导航树中的[接入策略管理/Portal服务管理/服务器配置]菜单项,进入服务器配置页面,配置Portal主页,采用缺省配置即可,并单击<确定>按钮完成操作,如下图所示。
图1-242 Portal服务器配置页面
b. 配置Portal认证的地址组范围
单击导航树中的[接入策略管理/Portal服务管理/IP地址组配置]菜单项,进入“IP地址组配置”页面,在该页面中单击<增加>按钮,进入“增加IP地址组配置”页面,如下图所示。
- 输入IP地址组名为“IPoE_Web_User”;
- 输入起始地址为“192.168.0.1”、终止地址为“192.168.0.255”。用户主机IP地址必须包含在该IP地址组范围内;
- 其他采用缺省配置;
- 单击<确定>按钮完成操作。
图1-243 增加IP地址组配置页面(IPv4)
如下图所示,继续上述操作添加IPv6地址组。
- 输入IP地址组名为“IPoE_Web_User-2”;
- IPv6选项框选择“是”;
- 输入起始地址为“192::1”、终止地址为“192::FFFF”。用户主机IPv6地址必须包含在该IP地址组范围内;
- 其他采用缺省配置;
- 单击<确定>按钮完成操作。
图1-244 增加IP地址组配置页面(IPv6)
c. 增加Portal接入设备信息
单击导航树中的[接入策略管理/Portal服务管理/设备配置]菜单项,进入“设备配置”页面,在该页面中单击<增加>按钮,进入“增加设备信息”页面。
- 输入设备名为“NAS”;
- 输入IP地址为“12.1.1.1”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/2的IP地址;
- 输入密钥为“123456”;
- 选择组网方式为“直连”;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
继续上述操作添加设备的IPv6信息。
- 输入设备名为“NAS-2”;
- 版本选择“Portal 3.0”;
- 输入IP地址为“12::1”,该地址为Portal报文出接口Ten-GigabitEthernet3/1/2的IP地址;
- 输入密钥为“123456”;
- 选择组网方式为“直连”;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
d. 配置端口组信息
如下图所示返回[接入策略管理/Portal服务管理/设备配置]菜单项,单击<端口组信息管理>按钮,进入“端口组信息配置”页面。
图1-245 设备信息列表
在“端口组信息配置”页面中单击<增加>按钮,进入“增加端口组信息”页面,如下图所示。
- 输入端口组名为“group”;
- 选择IP地址组为“IPoE_Web_User”,用户接入网络时使用的IP地址必须属于所选的IP地址组;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-246 增加端口组信息配置页面(IPv4)
如下图所示,继续上述操作添加端口组的IPv6信息。
- 输入端口组名为“group-2”;
- 选择IP地址组为“IPoE_Web_User-2”,用户接入网络时使用的IPv6地址必须属于所选的IPv6地址组;
- 其它参数采用缺省值,并单击<确定>按钮完成操作。
图1-247 增加端口组信息配置页面(IPv6)
# 最后单击导航树中的[接入策略管理/业务参数配置/系统配置手工生效]菜单项,使以上Portal认证服务器配置生效。
# 用户认证前域认证通过之后,可以使用以下的显示命令查看IPoE用户在线信息,其中,用户获得的IPv4地址为192.168.0.2,IPv6地址为192::2。
[CP] display access-user auth-type pre-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
192::2
# 用户认证前域认证通过之后,登录Web页面,如下图所示。
图1-248 登录Web页面
# 在认证页面输入用户名和密码单击<上线>按钮进行Web认证,可以使用以下的显示命令查看IPoE用户在线信息。
[CP] display access-user auth-type web-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 192.168.0.2 0015-e947-f4d4 -/-
user1@dm2 Web auth
192::2
# 点击<下线>按钮,通过显示命令查看,此时用户返回认证前域状态。
[CP] display access-user auth-type pre-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 L2 IPoE dynamic
192::2
# 重新打开浏览器,任意输入访问地址http://63.1.1.240,通过显示命令查看,用户IPoE Web上线。
[CP] display access-user auth-type web-auth interface remote-xge 1024/3/1/2
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x33d R-XGE1024/3/1/2 192.168.0.2 0015-e947-f4d4 -/-
0015e947f4d4 Web auth
192::2
· 用户主机通过手工配置或DHCP获得IP地址,经由三层网络以IPoE方式接入到BRAS接入设备。
· 采用RADIUS作为认证、授权和计费服务器。本举例以Linux系统下的Free Radius服务器为例,说明RADIUS server的基本配置。
· BRAS设备需要支持IPoE的转发与控制分离,其中UP为用户接入相连的设备,CP为IPoE控制模块设备。
· 正常情况下,UP 1作为主UP,UP 2作为备UP。当UP 1上的接口Ten-GigabitEthernet3/1/1发生故障时,自动将用户上线接口从UP 1上的接口Ten-GigabitEthernet3/1/1切换为UP 2上的接口Ten-GigabitEthernet3/1/1,尽可能减少业务进程中断时间。
图1-249 未知源IP报文触发静态IPoE用户接入配置组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。(具体配置过程略)
配置CP和UP间的管理通道、控制通道和协议隧道。(具体配置过程略)
(1) 配置RADIUS服务器
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 14.1.1.1/32 {
ipaddr = 14.1.1.1
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为14.1.1.1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
10.1.1.1 Cleartext-Password :="radius"
10.1.1.2 Cleartext-Password :="radius"
10.1.1.3 Cleartext-Password :="radius"
以上信息表示:用户名为Host的IP地址10.1.1.1、10.1.1.2、10.1.1.3,用户密码均为字符串radius。
(2) 配置UP1
# 配置设备工作在转发模式。
<UP1> system-view
[UP1] work-mode user-plane
(3) 配置UP2
UP2配置方式和UP1配置方式相同,具体配置过程略。
(4) 配置CP
a. 配置UP备份组
# 创建UP备份组g1,并将UP 1024和UP 1025加入到该UP备份组中。
[CP] up-backup-group g1
[CP-up-backup-group-g1] backup up-id 1024
This operation might lead to migration and cause the number of UP devices to exceed the upper limit. Continue? [Y/N]y
[CP-up-backup-group-g1] backup up-id 1025
This operation might lead to migration and cause the number of UP devices to exceed the upper limit. Continue? [Y/N]y
[CP-up-backup-group-g1] quit
# 创建UP备份策略模板1,设置模式为热备模式,并配置UP 1024为主UP、UP 1025为备UP。
[CP] up-backup-profile 1 hot-standby
[CP-up-backup-profile-1] backup-group master remote-xge 1024/3/1/1 backup remote-xge 1025/3/1/1 vrid 1 resource-id 1
[CP-up-backup-profile-1] quit
b. 配置DHCP服务器
# 配置本地BAS IP地址池pool1,绑定UP备份策略模板1,并指定静态用户的网关地址为10.1.1.254。
[CP] ip pool pool1 bas local
[CP-ip-pool-pool1] binding up-backup-profile 1
[CP-ip-pool-pool1] gateway 10.1.1.254 mask 255.255.255.0
[CP-ip-pool-pool1] forbidden-ip 10.1.1.254
[CP-ip-pool-pool1] quit
# 配置当DHCP客户端请求的新地址与之前使用的地址不同或该地址对应的租约不存在时,DHCP服务器直接回复NAK报文的功能。
[CP] dhcp server request-ip-address check
c. 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[CP] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP-radius-rs1] primary authentication 4.4.4.1
[CP-radius-rs1] primary accounting 4.4.4.1
[CP-radius-rs1] key authentication simple radius
[CP-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP-radius-rs1] user-name-format without-domain
[CP-radius-rs1] quit
d. 配置认证域
# 在ISP域dm1下,配置域用户使用本地AAA方案。
[CP] domain name dm1
[CP-isp-dm1] authentication ipoe local
[CP-isp-dm1] accounting ipoe local
[CP-isp-dm1] authorization ipoe local
[CP-isp-dm1] authorization-attribute ip-pool pool1
[CP-isp-dm1] quit
e. 配置IPoE
# 配置全局静态用户,并指定静态用户在UP备份中使用的接口。
[CP] ip subscriber session static ip 10.1.1.1 10.1.1.3 domain dm1 interface remote-xge 1024/3/1/1 up-backup-interface remote-xge 1025/3/1/1
# 进入远端接口Remote-XGE1024/3/1/1和远端接口Remote-XGE1025/3/1/1。
[CP] interface range remote-xge 1024/3/1/1 remote-xge 1025/3/1/1
# 开启IPoE功能,并指定三层接入模式。
[CP–if-range] ip subscriber routed enable
# 开启未知源IP报文触发方式。
[CP–if-range] ip subscriber initiator unclassified-ip enable
# 设置动态用户的认证密码为明文radius。
[CP–if-range] ip subscriber password plaintext radius
[CP–if-range] quit
# Host A上线后,查看CP上的IPoE用户在线信息。
[CP] display access-user auth-type bind
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x50 R-XGE1024/3/1/2 10.1.1.1 84eb-4fcb-0306 -/-
10.1.1.1 L3 IPoE static
-
以上信息表明,Host A已通过主UP 1024上线。
# 在主UP 1024的Ten-GigabitEthernet3/1/1接口上执行shutdown后,再次在CP上的IPoE用户在线信息。
[CP] display access-user auth-type bind
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username Access type
IPv6 address
0x50 R-XGE1024/3/1/2 10.1.1.1 84eb-4fcb-0306 -/-
10.1.1.1 L3 IPoE static
-
以上信息表明,Host A已通过自动切换到UP 1025上线,实现了UP备份功能。
本设备不支持Portal接入方式,本章介绍的功能配置仅用于IPoE Web认证场景。
Portal配置任务如下:
(1) 配置远程Portal服务
如果组网中架设远程Portal认证服务器,则进行该配置。
(2) 配置本地Portal服务
如果采用接入设备作为Portal服务器,则进行该配置。
(3) (可选)配置Portal探测功能
(4) (可选)配置Portal和RADIUS报文属性
可配置Portal报文的BAS-IP/BAS-IPv6属性。
当Portal认证服务器上指定的设备IP地址不是设备发送的通知类Portal报文出接口IP地址时,必须配置Portal报文的BAS-IP/BAS-IPv6属性。
指定设备发送的Portal协议报文中不携带Portal认证服务器不支持的属性字段,从而避免因设备和Portal认证服务器不通导致Portal认证失败。
(5) (可选)配置基于MAC地址的快速认证
a. 配置MAC绑定服务器
IPoE Web组网中,DHCP接入用户和Portal认证服务器属于不同的VPN时,必须配置。
设备收到Portal报文时,首先根据报文的源IP地址和VPN信息查找本地配置的Portal认证服务器,若查找到相应的Portal认证服务器配置,则认为报文合法,并向该Portal认证服务器回应认证响应报文;否则,认为报文非法,将其丢弃。
不要删除正在被用户使用的Portal认证服务器,否则会导致设备上的在线用户无法正常下线。
(1) 进入系统视图。
system-view
(2) 创建Portal认证服务器,并进入Portal认证服务器视图。
portal server server-name
设备支持配置多个Portal认证服务器。
(3) 指定Portal认证服务器的IP地址。
(IPv4网络)
ip ipv4-address [ vpn-instance vpn-instance-name ] [ key { cipher | simple } string ]
(IPv6网络)
ipv6 ipv6-address [ vpn-instance vpn-instance-name ] [ key { cipher | simple } string ]
缺省情况下,未指定Portal认证服务器的IP地址。
(4) (可选)配置接入设备主动向Portal认证服务器发送Portal报文时使用的UDP端口号。
port port-number
缺省情况下,接入设备主动向Portal认证服务器发送Portal报文时使用的UDP端口号为50100。
接入设备主动向Portal认证服务器发送Portal报文时使用的UDP端口号必须与远程Portal认证服务器实际使用的监听端口号保持一致。
在Portal代理组网下,必须保证配置的Portal代理侦听接入设备报文的UDP端口与本配置一致。
(5) 配置Portal认证服务器的类型。
server-type { cmcc | imc }
缺省情况下,Portal认证服务器类型为iMC服务器。
配置的Portal认证服务器类型必须与认证所使用的服务器类型保持一致。
(6) (可选)配置强制用户下线通知报文的重传时间间隔和最大重传次数。
logout-notify retry retries interval interval
缺省情况下,未配置强制用户下线通知报文的重传时间间隔和最大重传次数。
(7) (可选)配置设备定期向Portal认证服务器发送注册报文。
server-register [ interval interval-value ]
缺省情况下,设备不会向Portal认证服务器发送注册报文。
配置了本地Portal服务后,由设备作为Portal Web服务器和Portal认证服务器,对接入用户进行认证。Portal认证页面文件存储在设备的根目录下。
只有接口上引用的Portal Web服务器中的URL同时满足以下两个条件时,接口上才会使用本地Portal Web服务功能。条件如下:
· 该URL中的IP地址是设备上与客户端路由可达的三层接口IP地址(除127.0.0.1以外)。
· 该URL以/portal/结尾,例如:http://1.1.1.1/portal/。
认证页面的内容和样式需要用户自定义。
用户自定义的认证页面为HTML文件的形式,压缩后保存在设备的存储介质的根目录中。每套认证页面可包括六个主索引页面(登录页面、登录成功页面、登录失败页面、在线页面、系统忙碌页面、下线成功页面)及其页面元素(认证页面需要应用的各种文件,如Logon.htm页面中的back.jpg),每个主索引页面可以引用若干页面元素。
用户在自定义这些页面时需要遵循一定的规范,否则会影响本地Portal Web服务功能的正常使用和系统运行的稳定性。
主索引页面文件名不能自定义,必须使用表2-1中所列的固定文件名。
主索引页面 |
文件名 |
登录页面 |
logon.htm |
登录成功页面 |
logonSuccess.htm |
登录失败页面 |
logonFail.htm |
在线页面 用于提示用户已经在线 |
online.htm |
系统忙页面 用于提示系统忙或者该用户正在登录过程中 |
busy.htm |
下线成功页面 |
logoffSuccess.htm |
主索引页面文件之外的其他文件名可由用户自定义,但需注意文件名和文件目录名中不能含有中文且字符不区分大小写。
本地Portal Web服务只能接受Get请求和Post请求。
· Get请求用于获取认证页面中的静态文件,其内容不能为递归内容。例如,Logon.htm文件中包含了Get ca.htm文件的内容,但ca.htm文件中又包含了对Logon.htm的引用,这种递归引用是不允许的。
· Post请求用于用户提交用户名和密码以及用户执行登录、下线操作。
(1) 认证页面中表单(Form)的编辑必须符合以下原则:
¡ 认证页面可以含有多个Form,但是必须有且只有一个Form的action=logon.cgi,否则无法将用户信息送到本地Portal服务器。
¡ 用户名属性固定为”PtUser”,密码属性固定为”PtPwd”。
¡ 需要有用于标记用户登录还是下线的属性”PtButton”,取值为"Logon"表示登录,取值为"Logoff"表示下线。
¡ 登录Post请求必须包含”PtUser”,”PtPwd”和"PtButton"三个属性。
¡ 下线Post请求必须包含”PtButton”这个属性。
(2) 需要包含登录Post请求的页面有logon.htm和logonFail.htm。
logon.htm页面脚本内容的部分示例:
<form action=logon.cgi method = post >
<p>User name:<input type="text" name = "PtUser" style="width:160px;height:22px" maxlength=64>
<p>Password :<input type="password" name = "PtPwd" style="width:160px;height:22px" maxlength=32>
<p><input type=SUBMIT value="Logon" name = "PtButton" style="width:60px;" onclick="form.action=form.action+location.search;">
</form>
(3) 需要包含下线Post请求的页面有logonSuccess.htm和online.htm。
online.htm页面脚本内容的部分示例:
<form action=logon.cgi method = post >
<p><input type=SUBMIT value="Logoff" name="PtButton" style="width:60px;">
</form>
· 完成所有认证页面的编辑之后,必须按照标准Zip格式将其压缩到一个Zip文件中,该Zip文件的文件名只能包含字母、数字和下划线。
· 压缩后的Zip文件中必须直接包含认证页面,不允许存在间接目录。
· 压缩生成的Zip文件可以通过FTP或TFTP的二进制方式上传至设备,并保存在设备的根目录下。
Zip文件保存目录示例:
<Sysname> dir
Directory of flash:
1 -rw- 1405 Feb 28 2008 15:53:20 ssid1.zip
0 -rw- 1405 Feb 28 2008 15:53:31 ssid2.zip
2 -rw- 1405 Feb 28 2008 15:53:39 ssid3.zip
3 -rw- 1405 Feb 28 2008 15:53:44 ssid4.zip
2540 KB total (1319 KB free)
若要支持认证成功后认证页面的自动跳转功能,即认证页面会在用户认证成功后自动跳转到指定的网站页面,则需要在认证页面logon.htm和logonSuccess.htm的脚本文件中做如下改动。
(1) 将logon.htm文件中的Form的target值设置为“_blank”。
修改的脚本内容如下突出显示部分所示:
<form method=post action=logon.cgi target="_blank">
(2) logonSucceess.htm文件添加页面加载的初始化函数“pt_init()”。
增加的脚本内容如下突出显示部分所示:
<html>
<head>
<title>LogonSuccessed</title>
<script type="text/javascript" language="javascript" src="pt_private.js"></script>
</head>
<body onload="pt_init();" onbeforeunload="return pt_unload();">
... ...
</body>
</html>
若指定本地Portal Web服务支持的协议类型为HTTPS,则需要首先完成以下配置:
· 配置PKI策略,并成功申请本地证书和CA证书,具体配置请参见“安全配置指导”中的“PKI”。
· 配置SSL服务器端策略,并指定使用已配置的PKI域。为避免在用户浏览器和设备建立SSL连接过程中用户浏览器出现“使用的证书不安全”的告警,需要通过配置自定义名称为https_redirect的SSL服务器端策略,在设备上安装用户浏览器信任的证书。具体配置请参见“安全配置指导”中的“SSL”。
(1) 进入系统视图。
system-view
(2) 开启本地Portal服务,并进入基于HTTP/HTTPS协议的本地Portal Web服务视图。
portal local-web-server { http | https ssl-server-policy policy-name [ tcp-port port-number ] }
(3) 配置本地Portal Web服务提供的缺省认证页面文件。
default-logon-page filename
缺省情况下,本地Portal Web服务未提供缺省认证页面文件,必须使用该命令将用户自定义的一套认证页面文件设置为系统提供的缺省认证页面文件。
(4) (可选)配置本地Portal Web服务的HTTP/HTTPS服务侦听的TCP端口号。
tcp-port port-number
缺省情况下,HTTP服务侦听的TCP端口号为80,HTTPS服务侦听的TCP端口号为portal local-web-server命令指定的TCP端口号。
(5) (可选)配置根据设备名称,实现Portal用户认证页面的定制功能。
logon-page bind device-name device-name file file-name
缺省情况下,未配置终端设备名称与任何定制页面文件的绑定关系。
在Portal认证的过程中,如果接入设备与Portal认证服务器的通信中断,则会导致新用户无法上线,已经在线的Portal用户无法正常下线的问题。为解决这些问题,需要接入设备能够及时探测到Portal认证服务器可达状态的变化,并能触发执行相应的操作来应对这种变化带来的影响。
开启Portal认证服务器的可达性探测功能后,设备会定期检测Portal认证服务器发送的报文(例如,用户上线报文、用户下线报文、心跳报文)来判断服务器的可达状态:若设备在指定的探测超时时间(timeout timeout)内收到Portal报文,且验证其正确,则认为此次探测成功且服务器可达,否则认为此次探测失败,服务器不可达。
当接入设备检测到Portal认证服务器可达或不可达状态改变时,可执行以下一种或两种操作:
· 发送Trap信息:Portal认证服务器可达或者不可达的状态改变时,向网管服务器发送Trap信息。Trap信息中记录了Portal认证服务器名以及该服务器的当前状态。
· 发送日志:Portal认证服务器可达或者不可达的状态改变时,发送日志信息。日志信息中记录了Portal认证服务器名以及该服务器状态改变前后的状态。
目前,只有iMC的Portal认证服务器支持发送心跳报文,由于心跳报文是周期性发送的,所以iMC的Portal认证服务器可以更好得与设备配合,使其能够及时而准确地探测到它的可达性状态。如果要采用心跳报文探测Portal服务器的可达性,服务器上必须保证逃生心跳功能处于开启状态。
如果同时指定了多种操作,则Portal认证服务器可达状态改变时系统可并发执行多种操作。
设备配置的探测超时时间(timeout timeout)必须大于服务器上配置的逃生心跳间隔时间。
(1) 进入系统视图。
system-view
(2) 进入Portal认证服务器视图。
portal server server-name
(3) 开启Portal认证服务器的可达性探测功能。
server-detect [ timeout timeout ] { log | trap } *
缺省情况下,Portal服务器可达性探测功能处于关闭状态。
为了解决接入设备与Portal认证服务器通信中断后,两者的Portal用户信息不一致问题,设备提供了一种Portal用户信息同步功能。该功能利用了Portal同步报文的发送及检测机制,具体实现如下:
(1) 由Portal认证服务器周期性地(周期为Portal认证服务器上指定的用户心跳间隔值)将在线用户信息通过用户同步报文发送给接入设备;
(2) 接入设备在用户上线之后,即开启用户同步检测定时器(超时时间为timeout timeout),在收到用户同步报文后,将其中携带的用户列表信息与自己的用户列表信息进行对比,如果发现同步报文中有设备上不存在的用户信息,则将这些自己没有的用户信息反馈给Portal认证服务器,Portal认证服务器将删除这些用户信息;如果发现接入设备上的某用户信息在一个用户同步报文的检测超时时间内,都未在该Portal认证服务器发送过来的用户同步报文中出现过,则认为Portal认证服务器上已不存在该用户,设备将强制该用户下线。
只有在支持Portal用户心跳功能(目前仅iMC的Portal认证服务器支持)的Portal认证服务器的配合下,本功能才有效。为了实现该功能,还需要在Portal认证服务器上选择支持用户心跳功能,且服务器上配置的用户心跳间隔要小于等于设备上配置的检测超时时间。
在设备上删除Portal认证服务器时将会同时删除该服务器的用户信息同步功能配置。
(1) 进入系统视图。
system-view
(2) 进入Portal认证服务器视图。
portal server server-name
(3) 开启Portal用户信息同步功能。
user-sync timeout timeout
缺省情况下,Portal用户信息同步功能处于关闭状态。
当Portal认证服务器上指定的设备IP地址不是设备发送的通知类Portal报文出接口IP地址时,可能会导致以下问题:
· 二次地址分配认证方式下,Portal用户无法认证成功。
· Portal认证服务器上的用户无法成功下线。
为解决上述问题,必须在设备上设置通知类Portal报文中的BAS-IP或BAS-IPv6属性与Portal认证服务器上指定的设备IP地址一致,设备将以该属性值作为发送报文的源IP地址。
本功能仅对设备发送给Portal认证服务器的通知类报文生效,设备发送的响应类IPv4 Portal报文中的BAS-IP属性为报文的源IPv4地址,响应类IPv6 Portal报文中的BAS-IPv6属性为报文源IPv6地址。
系统视图下配置本功能对设备的所有接口生效,如果在系统视图和接口视图下同时配置本功能,接口视图下的配置优先生效。
(1) 进入系统视图。
system-view
(2) 配置BAS-IP或BAS-IPv6属性。
(IPv4网络)
portal bas-ip ipv4-address
缺省情况下,发送给Portal认证服务器的通知类IPv4 Portal报文中携带的BAS-IP属性为报文出接口的IPv4地址。
(IPv6网络)
portal bas-ipv6 ipv6-address
缺省情况下,发送给Portal认证服务器的通知类IPv6 Portal报文中携带的BAS-IPv6属性为报文出接口的IPv6地址。
(1) 进入系统视图。
system-view
(2) 进入三层接口视图。
interface interface-type interface-number
(3) 配置BAS-IP或BAS-IPv6属性。
(IPv4网络)
portal bas-ip ipv4-address
缺省情况下,发送给Portal认证服务器的响应类的IPv4 Portal报文中携带的BAS-IP属性为报文的源IPv4地址,通知类IPv4 Portal报文中携带的BAS-IP属性为报文出接口的IPv4地址。
(IPv6网络)
portal bas-ipv6 ipv6-address
缺省情况下,发送给Portal认证服务器的响应类的IPv6 Portal报文中携带的BAS-IPv6属性为报文的源IPv6地址,通知类IPv6 Portal报文中携带的BAS-IPv6属性为报文出接口的IPv6地址。
由于不同的Portal认证服务器对Portal协议报文中的属性字段支持情况不同,如果设备发送给Portal认证服务器的Portal协议报文中携带了服务器不支持的属性字段,会导致设备和Portal认证服务器不能通信。
通过配置本特性,可以指定设备发送的Portal协议报文中不携带Portal认证服务器不支持的属性字段,从而避免因设备和Portal认证服务器不通导致Portal认证失败。
(1) 进入系统视图。
system-view
(2) 进入Portal认证服务器视图。
portal server server-name
(3) 配置Portal协议报文中不携带的属性字段。
exclude-attribute number [ ack-auth | ack-challenge | ack-info | ack-logout | ack-ntf-user-heartbeat | ntf-challenge | ntf-logout | ntf-useripchange | ntf-user-notify ]
缺省情况下,未配置Portal协议报文中不携带的属性字段。
仅IPv4的直接认证方式支持基于MAC地址的快速认证。
基于MAC地址的快速认证组网中如果存在Portal代理,则接入设备需要通过Portal代理连接MAC绑定服务器和Portal服务器。接入设备上必须配置与MAC绑定服务器互连的Portal代理,否则基于MAC地址的Portal快速认证功能不生效。
设备支持配置多个MAC绑定服务器,每个MAC绑定服务器拥有独立的视图,可以用于配置MAC绑定服务器的相关参数,包括服务器的IP地址、服务器的端口号、服务器所在的VPN实例以及设备和服务器间通信的共享密钥等。
(1) 进入系统视图。
system-view
(2) 创建MAC绑定服务器并进入MAC绑定服务器视图。
portal mac-trigger-server server-name
(3) 配置MAC绑定服务器。
¡ 配置MAC绑定服务器的IP地址。
ip ipv4-address [ vpn-instance vpn-instance-name ] [ key { cipher | simple } string ]
缺省情况下,未配置MAC绑定服务器的IP地址。
¡ (可选)配置MAC绑定服务器监听查询报文的UDP端口号。
port port-number
缺省情况下,MAC绑定服务器监听查询报文的UDP端口号是50100。
在Portal代理组网下,必须保证配置的Portal代理侦听接入设备报文的UDP端口与本配置一致。
¡ (可选)配置设备向MAC绑定服务器发起MAC查询的最大次数和时间间隔。
binding-retry { retries | interval interval } *
缺省情况下,设备发起MAC查询的最大次数为3次,发起MAC查询的时间间隔为1秒。
¡ (可选)配置MAC绑定服务器的服务类型。
server-type { cmcc | imc }
缺省情况下,MAC绑定服务器的服务类型为iMC。
(4) (可选)配置用户免认证流量的阈值。
free-traffic threshold value
缺省情况下,用户免认证流量的阈值为0字节。
(5) (可选)配置设备发送的RADIUS请求报文中的NAS-Port-Type属性值。
nas-port-type value
缺省情况下,未配置设备发送的RADIUS请求报文中的NAS-Port-Type属性值。
(6) (可选)配置Portal协议报文的版本号。
version version-number
缺省情况下,Portal协议报文的版本号为1。
(7) (可选)配置设备收到MAC绑定服务器的查询响应消息后,等待Portal认证完成的超时时间。
authentication-timeout minutes
缺省情况下,设备收到MAC绑定服务器查询回复消息后,等待Portal认证完成的超时时间为3分钟。
(8) (可选)配置MAC-Trigger表项老化时间。
aging-time seconds
缺省情况下,MAC-Trigger表项老化时间为300秒。
在接口上应用MAC绑定服务器,可以为通过该接口接入网络的用户提供基于MAC地址的快速认证服务。
(1) 进入系统视图。
system-view
(2) 进入三层接口视图。
interface interface-type interface-number
(3) 在接口上应用MAC绑定服务器。
portal apply mac-trigger-server server-name
缺省情况下,未应用MAC绑定服务器。
在IPoE Web认证组网中,如果DHCP接入用户和Portal认证服务器属于不同的VPN,且用户接入接口未绑定VPN实例,设备收到Portal认证服务器发送的Portal协议报文时,无法通过查询Portal认证服务器所属VPN实例的FIB表项获取到用户的接入信息,从而导致用户无法在Web认证阶段上线。
上述应用场景中必须配置本功能,才能解决用户无法在Web认证阶段上线的问题。对于IPoE Web认证组网其他应用场景,建议也配置本功能。
配置本功能后,设备在用户的Web认证阶段先查询ARP/ND表项,如果未获取到用户的接入信息,则进一步查询UCM接入用户信息表项获取该信息。
请确保组网中不同的VPN内不存在相同的IP地址,否则配置本功能也无法保证用户正常上线。
(1) 进入系统视图。
system-view
(2) 指定通过查询ARP/ND表项来获取用户信息。
portal access-info trust { arp | nd }
缺省情况下,设备通过查询FIB表项来获取用户信息。
在完成上述配置后,在任意视图下执行display命令可以显示配置后Portal的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除Portal统计信息。
表2-2 Portal显示和维护
操作 |
命令 |
显示Portal与IPoE的交互报文统计信息 |
display portal ip-subscriber message statistics |
显示用户的MAC-Trigger表项信息 |
display portal mac-trigger entry [ ip ipv4-address ] |
显示MAC绑定服务器信息 |
display portal mac-trigger-server { all | name server-name } |
显示设备与MAC绑定服务器的交互报文统计信息 |
display portal mac-trigger-server packet statistics |
显示Portal认证服务器的报文统计信息 |
display portal packet statistics [ server server-name ] |
显示Portal认证服务器信息 |
display portal server [ server-name ] |
显示基于Portal协议的指定用户类型的会话信息 |
display portal session user-type { ipoe | portal } |
清除Portal与IPoE的交互消息统计信息 |
reset portal ip-subscriber message statistics |
清除设备与MAC绑定服务器的交互报文统计信息 |
reset portal mac-trigger-server packet statistics |
清除Portal认证服务器的报文统计信息 |
reset portal packet statistics [ server server-name ] |
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!