12-PPPoE配置
本章节下载: 12-PPPoE配置 (728.42 KB)
1.3.3 转发与控制分离模式下PPPoE Server配置任务简介
1.3.10 配置PPPoE会话的NAS-PORT-ID属性相关参数
1.3.11 配置PPPoE接入用户的NAS-PORT-ID精绑
1.3.12 配置PPPoE Server的Service Name
1.3.13 配置设备每秒能够接收PADI报文的最大数目(一体化设备)
1.3.14 配置UP上每个slot每秒能够接收PADI报文的最大数目(UP设备)
1.5.1 PPPoE Server通过本地DHCP服务器为用户分配IPv4地址配置举例
1.5.2 PPPoE Server通过远端DHCP服务器为双栈用户分配IP地址配置举例
1.5.3 PPPoE Server通过IA_NA方式为用户分配IPv6地址配置举例(远端DHCP服务器)
1.5.4 PPPoE Server通过IA_PD方式为用户分配IPv6地址配置举例
1.5.5 PPPoE Server通过NDRA方式为用户分配IPv6地址配置举例(AAA授权前缀)
1.5.6 PPPoE Server通过NDRA方式为用户分配IPv6地址配置举例(ND前缀池授权前缀)
1.5.7 PPPoE Server通过IA_NA+IA_PD方式为用户分配IPv6地址配置举例
1.5.8 PPPoE Server通过远端DHCPv4服务器+(NDRA+IA_PD)方式为双栈用户分配IP地址配置举例
1.5.9 PPPoE Server通过本地DHCP服务器为双栈用户分配IP地址配置举例
1.5.10 PPPoE Server为接入用户授权地址池和VPN配置举例
1.5.11 PPPoE Server IPv4转发与控制分离配置举例
1.5.12 PPPoE Server IPv6转发与控制分离接入配置举例
PPPoE(Point-to-Point Protocol over Ethernet,在以太网上承载PPP协议)是对PPP协议的扩展,它在以太网上建立PPPoE会话,将PPP报文封装在以太网帧之内,在以太网上提供点对点的连接,解决了PPP无法应用于以太网的问题。PPPoE还可以通过远端接入设备对接入的每台主机实现控制、认证、计费功能。由于很好地结合了以太网的经济性及PPP良好的可扩展性与管理控制功能,PPPoE被广泛应用于小区接入组网等环境中。
PPPoE使用Client/Server模型。PPPoE Client向PPPoE Server发起连接请求,两者之间会话协商通过后,就建立PPPoE会话,此后PPPoE Server向PPPoE Client提供接入控制、认证、计费等功能。
根据PPPoE会话的起点所在位置的不同,PPPoE分为Router-Initiated和Host-Initiated两种组网结构。
如图1-1所示,Router-Initiated组网结构是在两台路由器之间建立PPPoE会话,所有主机通过同一个PPPoE会话传送数据,主机上不用安装PPPoE客户端拨号软件,一般是一个企业共用一个账号接入网络(图中PPPoE Client位于企业/公司内部,PPPoE Server是运营商的设备)。
如图1-2所示,Host-Initiated组网结构是将PPPoE会话建立在Host和运营商的路由器之间,为每一个Host建立一个PPPoE会话,每个Host都是PPPoE Client,每个Host使用一个帐号,方便运营商对用户进行计费和控制。Host上必须安装PPPoE客户端拨号软件。
图1-2 Host-Initiated组网结构图
与PPPoE相关的协议规范有:
RFC 2516:A Method for Transmitting PPP Over Ethernet (PPPoE)
目前设备仅支持作为PPPoE Server。
本特性仅在standard工作模式下支持。有关系统工作模式的介绍,请参见“基础配置指导”中的“设备管理”。
目前仅CSPEX类单板(除CSPEX-1104-E之外)/CEPC类单板支持配置本特性。
当采用DHCPv6(IA_NA)方式分配地址时,目前支持CPE方式的IA_NA接入和终端直接接入BRAS设备的IA_NA方式。需要注意的是,对于终端直接接入BRAS设备的IA_NA方式:
· 对于部分终端(例如部分Windows系统终端)必须满足如下条件才能正常使用:
¡ BRAS设备同时作为DHCP Server。
¡ 配置了address-alloc-mode interface-id命令。
当设备上需要配置PPPoE功能时,请确保接口统计报文信息的时间间隔为300秒。关于接口统计报文信息的时间间隔的介绍,请参见“接口管理”中的“以太网接口”。
当需要对PPPoE用户的IPv4和IPv6流量进行分开计费时,如果PPPoE用户是通过三层聚合接口或三层聚合子接口上线,请配置该接口绑定的虚拟模板接口的keepalive报文的发送周期不小于60秒。关于虚拟模板接口的keepalive报文的发送周期的介绍,请参见“BRAS业务配置指导”中的“PPP”。
在PPPoE应用中,广告推送功能仅对使用80和8080端口号的HTTP报文生效。
在PPPoE Server作为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”。
PPPoE Server目前支持以下接口类型:
· 三层以太网接口
· 三层以太网子接口
· 三层聚合接口
· 三层聚合子接口
· L3VE接口
· L3VE子接口
为了解决传统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之间协议报文交互的通道
在转发与控制分离的组网环境中,PPPoE Server有三种工作模式:普通模式、控制模式和转发模式。其中控制模式和转发模式又统称为转发与控制分离模式。
· 普通模式:本模式下,不区分CP和UP,BRAS模块的控制及数据转发业务均由同一台设备完成。工作在本模式的设备称作一体化设备。
· 控制模式:即session模式,该模式基于远端接口实现CP功能。当CP所连接的UP设备支持PPPoE功能时,可采用session模式,工作在session模式的CP将会向UP发送BRAS会话信息,UP根据从CP收到的BRAS会话信息指导数据报文转发。有关远端接口的介绍,请参见“BRAS业务配置指导”中的“CP-UP连接管理”。
· 转发模式:本模式下,设备仅完成数据转发业务。工作在本模式的设备称作UP。
· 除特殊说明外,本手册中的PPPoE Server均指工作在普通模式的情况。
· 转发与控制分离模式下,本设备仅支持作为UP,不支持作为CP。
在session模式下,UP会将接收到的认证报文通过VXLAN隧道上送给CP进行认证授权,认证通过之后CP上创建PPPoE会话并将PPPoE会话及授权信息等通过CUSP通道发送给UP,具体流程如图1-3所示。
图1-3 session模式下PPPoE用户接入流程图
(1) 用户主机向UP发送PPPoE discovery(发现阶段所有报文统称)报文。
(2) UP通过VXLAN隧道将报文上送CP处理。
(3) CP创建PPPoE会话,进行PPP协商,CP向AAA服务器发送认证请求,认证请求消息中包含用户名和密码等信息。
(4) AAA服务器返回认证结果,若用户认证通过,则发送认证接受报文,并携带授权信息;否则发送认证拒绝报文,CP获取用户认证和授权结果,若用户认证失败,用户下线,认证成功,则继续进行NCP协商。
(5) NCP协商成功后,CP将PPPoE会话通过CUSP通道发送给UP。
(6) CP向AAA服务器发送计费开始报文,开始对该用户计费。
(7) UP定时收集用户流量,并通过CUSP通道上送CP。
(8) CP将流量上送给AAA服务器进行计费处理。
普通模式下PPPoE Server配置任务如下:
(1) 配置PPPoE会话
(2) (可选)配置允许创建PPPoE会话的最大数目
(3) (可选)配置PPPoE日志功能
(4) (可选)配置限制用户创建PPPoE会话的速度
(5) (可选)配置PPPoE会话的NAS-PORT-ID属性相关参数
当需要根据NAS-PORT-ID精确获取PPPoE用户的接入接口的物理位置信息时需要配置本功能。
(7) (可选)配置PPPoE Server的Service Name
(8) (可选)配置设备每秒能够接收PADI报文的最大数目
(9) (可选)配置PPPoE用户静默功能
(10) (可选)配置PPPoE协议报文防攻击功能
(11) (可选)配置禁止PPPoE用户上线功能
· 转发与控制分离模式下,本设备仅支持作为UP,不支持作为CP。
· 本节仅介绍本设备作为UP时的相关配置。有关CP的相关配置,请参见担任CP角色的设备的产品手册。
当UP上联的CP工作在session模式时,UP配置任务如下:
(1) 配置设备工作在转发模式
(2) 配置CP-UP连接管理
在PPPoE Server转发与控制分离模式组网环境中,当UP上联的CP工作在session模式时,需要通过本节配置指定设备工作在转发模式。
(1) 进入系统视图。
system-view
(2) 配置设备工作在转发模式。
work-mode user-plane
缺省情况下,设备工作在普通模式。
本命令的详细介绍请参见“BRAS业务命令参考”中的“UCM”。
具体配置请参见“BRAS业务配置指导”中的“CP-UP连接管理”。
(1) 进入系统视图。
system-view
(2) 创建虚拟模板接口并进入指定的虚拟模板接口视图。
interface virtual-template number
(3) 配置PPP的工作参数
具体工作参数的配置请参见“BRAS业务配置指导”中的“PPP”。
当配置PPP认证时,需要配置PPPoE Server作为认证方。
(4) 退回系统视图。
quit
(5) 进入接口视图。
interface interface-type interface-number
(6) 在接口上启用PPPoE Server协议,将该接口与指定的虚拟模板接口绑定。
pppoe-server bind virtual-template number
缺省情况下,接口上的PPPoE Server协议处于关闭状态。
(7) (可选)配置PPPoE Server的AC Name(Access Concentrator Name,接入集中器名称)。
pppoe-server tag ac-name name
缺省情况下,PPPoE Server的AC Name为设备名称。
PPPoE Client可以根据AC Name来选择PPPoE Server。
(8) (可选)配置对PPP最大负载TAG的支持,并指定最大负载的范围。
pppoe-server tag ppp-max-payload [ minimum min-number maximum max-number ]
缺省情况下,不支持PPP最大负载TAG。
(9) (可选)配置用户接入响应延迟时间。
pppoe-server access-delay delay-time [ even-mac | odd-mac ]
缺省情况下,对用户接入响应不延迟。
(10) 退回系统视图。
quit
(11) 配置PPPoE Server对PPP用户进行认证、授权、计费。
相关内容请参见“BRAS业务配置指导”中的“AAA”。
系统创建PPPoE会话时,需同时满足如下限制,若其中任何一项不满足,则无法创建会话:
· 接口上每个用户所能创建PPPoE会话的最大数目限制。
· 接口上每个VLAN所能创建PPPoE会话的最大数目限制。
· 接口上所能创建PPPoE会话的最大数目限制。
· 单板所能创建PPPoE会话的最大数目限制。
如果本命令配置的最大会话数小于当前接口上已经在线的会话数,则该配置可以执行成功,且在线的会话不会受影响,但系统将不允许在该接口上再创建新的会话。
建议设备上配置的所有单板所能创建PPPoE会话的最大数目之和,不要超过整机PPPoE的最大会话数,否则会有部分PPPoE用户因为整机最大用户数已达到而无法上线。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
该接口为启用PPPoE Server协议的接口。
(3) 配置允许创建PPPoE会话的最大数目。
¡ 配置每个接口上所能创建PPPoE会话的最大数目。
pppoe-server session-limit number
缺省情况下,不限制接口上所能创建PPPoE会话的数目。
¡ 配置每个VLAN所能创建PPPoE会话的最大数目。
pppoe-server session-limit per-vlan number
缺省情况下,不限制每个VLAN所能创建PPPoE会话的数目。
¡ 配置每个用户所能创建PPPoE会话的最大数目。
pppoe-server session-limit per-mac number
缺省情况下,每个用户可创建1个PPPoE会话。
(1) 进入系统视图。
system-view
(2) 配置允许创建PPPoE会话的最大数目。
(独立运行模式)
pppoe-server session-limit slot slot-number [ cpu cpu-number ] total number
(IRF模式)
pppoe-server session-limit chassis chassis-number slot slot-number [ cpu cpu-number ] total number
缺省情况下,不限制允许创建的PPPoE会话数目。
PPPoE日志是为了满足网络管理员维护的需要,对PPPoE达到会话限制的信息进行记录,包括接口会话限制、MAC会话限制、VLAN会话限制、系统会话限制。
开启PPPoE日志功能后,当PPPoE会话数目达到每个接口、每个用户、每个VLAN或整个系统允许的最大会话数目时,如果再有新的用户请求上线,设备将生成日志信息。设备生成的PPPoE日志信息会交给信息中心模块处理,信息中心模块的配置将决定日志信息的发送规则和发送方向。关于信息中心的详细描述请参见“网络管理和监控配置指导”中的“信息中心”。
为了防止设备输出过多的PPPoE日志信息,一般情况下建议不要开启此功能。
(1) 进入系统视图。
system-view
(2) 开启PPPoE日志功能。
pppoe-server log enable
缺省情况下,PPPoE日志功能处于关闭状态。
设备可以限制特定接口下每个用户(每个用户通过MAC地址进行标识)创建会话的速度。如果用户建立会话的速度达到门限值,即在监视时间段内该用户的会话请求数目达到配置的允许数目,则扼制该用户新的会话请求,在监视时间段内该用户的超出允许数目的请求都会被丢弃,并输出对应的Log信息。如果扼制时间配置为0,表示不扼制会话请求,但仍然会输出Log信息。
· 监视表:监视各用户在监视时间周期内创建的会话数。监视表的规格为8K。当监视表达到规格时,对新用户的会话请求不进行监视和扼制,正常建立会话。监视表项的老化时间为配置的session-request-period值,老化后对用户重新监视。
· 扼制表:当某用户建立会话的速度超过门限值时,会将该用户的信息加入扼制表,扼制该用户的会话请求。扼制表规格为8K。当扼制表达到规格时,对新用户的会话请求只进行监视和发送Log信息,但不触发扼制。扼制表项的老化时间为配置的blocking-period值,老化后对用户重新监视。
修改本功能的配置后,系统将删除已记录的监视表和扼制表,重新开始监视每个用户的会话请求。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
该接口为启用PPPoE Server协议的接口。
(3) 配置接口允许每个用户创建会话的速度。
pppoe-server throttle per-mac session-requests session-request-period blocking-period
缺省情况下,不限制会话建立的速度。
在含有DSLAM的组网中,DSLAM通过接入线路ID(access-line-id)把用户的物理位置信息传送给BRAS设备(PPPoE Server功能部署在BRAS设备上),接入线路ID的内容包括circuit-id和remote-id两部分。BRAS设备采用一定的规则解析接入线路ID后,把解析后的内容通过RADIUS的NAS-PORT-ID属性发送给RADIUS服务器,RADIUS服务器通过收到的NAS-PORT-ID属性和数据库中已配置好的物理位置信息比较,验证用户的物理位置信息是否正确。
用户可以通过下面的配置控制BRAS设备上传给RADIUS服务器的NAS-PORT-ID属性的内容。
如果在RADIUS方案视图下配置了attribute 87 format命令,则发送给RADIUS服务器的NAS-Port-ID属性的格式完全由该命令决定,PPPoE模块定义的RADIUS NAS-Port-ID属性格式不再生效。有关attribute 87 format命令的详细介绍,请参见“BRAS业务命令参考”中的“AAA”。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
该接口为启用PPPoE Server协议的接口。
(3) 配置上传给RADIUS服务器的NAS-PORT-ID属性中包含的内容。
pppoe-server access-line-id content { all [ separator ] | circuit-id | remote-id }
缺省情况下,上传给RADIUS服务器的NAS-PORT-ID属性中仅包含circuit-id。
(4) 配置在NAS-PORT-ID属性中自动插入BAS信息。
pppoe-server access-line-id bas-info [ cn-163 | cn-163-redback ]
缺省情况下,在NAS-PORT-ID属性中不自动插入BAS信息。
(5) 配置设备信任接收到的报文中的接入线路ID的内容。
pppoe-server access-line-id trust
缺省情况下,设备不信任接收到的报文中的接入线路ID的内容。
(6) 配置接入线路ID中circuit-id的解析格式。
pppoe-server access-line-id circuit-id parse-mode { cn-telecom | tr-101 }
缺省情况下,接入线路ID中circuit-id的解析格式为TR-101格式。
(7) 配置接入线路ID中circuit-id的传输格式。
pppoe-server access-line-id circuit-id trans-format { ascii | hex }
缺省情况下,接入线路ID中circuit-id的传输格式为字符串格式。
(8) 配置接入线路ID中remote-id的传输格式。
pppoe-server access-line-id remote-id trans-format { ascii | hex }
缺省情况下,接入线路ID中remote-id的传输格式为字符串格式。
(9) 配置在NAS-PORT-ID属性中插入VXLAN信息
pppoe-server access-line-id vxlan-info enable
缺省情况下,在NAS-PORT-ID属性中不插入VXLAN信息。
缺省情况下,设备使用用户上线的接口信息填充NAS-PORT-ID属性上送RADIUS服务器。在某些特殊应用中,当需要手工指定用于填充NAS-PORT-ID属性的上线接口信息时,可配置本特性。例如,若RADIUS服务器上限制了用户A只能通过接口A上线,当用户A切换到一个新接口B上线时,若不想更改RADIUS服务器的配置,可通过本特性配置用户A仍使用接口A的信息填充NAS-PORT-ID属性上送RADIUS服务器。
当BAS信息采用中国电信163格式且配置了pppoe-server nas-port-id interface命令时:
· 若同时配置了access-user four-dimension-mode enable命令,将使用pppoe-server 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命令,将使用pppoe-server nas-port-id interface命令的配置填充NAS-PORT-ID属性中的如下接入接口信息字段:slot=NAS_slot;subslot=NAS_subslot;port=NAS_port。
当BAS信息采用中国电信格式且配置了pppoe-server nas-port-id interface命令时:
· 若同时配置了access-user four-dimension-mode enable命令,将使用pppoe-server nas-port-id interface命令的配置填充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命令,将使用pppoe-server nas-port-id interface命令的配置填充NAS-PORT-ID属性中的如下NAS信息字段:{eth|trunk|atm} NAS_slot/NAS_subslot/NAS_port。
如果在RADIUS方案视图下配置了attribute 87 format命令,则发送给RADIUS服务器的NAS-Port-ID属性的格式完全由该命令决定,PPPoE模块定义的RADIUS NAS-Port-ID属性格式不再生效。有关attribute 87 format命令的详细介绍,请参见“BRAS业务命令参考”中的“AAA”。
本特性仅在设备上通过pppoe-server access-line-id bas-info命令配置了在NAS-PORT-ID属性中自动插入BAS信息的情况下才生效。
若配置本特性,除使用本特性的配置填充NAS-PORT-ID属性外,还将填充NAS-PORT属性。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置使用指定的接口信息填充RADIUS的NAS-PORT-ID属性。
pppoe-server nas-port-id interface interface-type interface-number
缺省情况下,使用用户上线的接口信息填充NAS-PORT-ID。
在转发与控制分离组网环境中,本命令中指定的接口必须是UP上PPPoE用户的接入接口,接口编号形式为UP ID/UP上实际接入接口编号,例如用户通过UP 1024上的GigabitEthernet3/1/1接口接入,则本命令中指定的接口编号应为1024/3/1/1。
当PPPoE Server收到PPPoE Client的PADI/PADR报文时,需要检查报文中的Service Name TAG字段并和本机上配置的Service Name进行匹配,只有匹配成功,PPPoE Server才会接受PPPoE Client的会话建立请求。不同匹配模式下的匹配规则有所不同,具体请见表1-1。
匹配模式 |
PPPoE Client |
PPPoE Server |
匹配结果 |
精确匹配 |
未指定Service Name |
配置的Service Name数目小于8 |
成功 |
配置的Service Name数目等于8 |
失败 |
||
指定Service Name |
已配置和客户端相同的Service Name |
成功 |
|
不存在和客户端相同的Service Name |
失败 |
||
模糊匹配 |
未指定Service Name |
任何配置 |
成功 |
指定Service Name |
已配置和客户端相同的Service Name,或配置的Service Name数目小于8 |
成功 |
|
不存在和客户端相同的Service Name,且配置的Service Name数目等于8 |
失败 |
当组网环境中存在两个或者两个以上PPPoE Server提供不同的服务时,PPPoE Client可以根据自身的Service Name选择不同的服务器来建立连接,这时PPPoE Server将根据本机上的Service Name来进行匹配处理。
每接口下最多可配置8个Service Name。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置PPPoE Server的Service Name匹配模式为精确匹配。
pppoe-server service-name-tag exact-match
缺省情况下,Service Name的匹配模式为模糊匹配。
(4) 配置PPPoE Server的Service Name。
pppoe-server tag service-name name
缺省情况下,未配置PPPoE Server的Service Name。
在设备重启或者版本升级等情况下,为避免大量PPPoE用户的突发上线请求对设备性能造成影响,同时又确保PPPoE用户能够平稳上线,可以通过本命令调整设备接收PADI报文的速率。
需要注意的是,当前仅支持通过本命令调整CSPEX类单板(除CSPEX-1104-E之外)/CEPC类单板接收PADI报文的速率。
缺省情况下,根据设备运行的主控板类型不同,单板每秒能够接收PADI报文的最大数目也有所差异,具体请见表1-2。
表1-2 PADI缺省情况
设备运行主控板的型号 |
CSR05SRP1L1 CSR05SRP1L3 CSR05SRP1R3 CSR05SRP1R3A CSR05SRP1P3 |
其它主控板 |
单板每秒最多能够接收PADI报文的个数 |
500 |
200 |
(1) 进入系统视图。
system-view
(2) 配置设备每秒能够接收PADI报文的最大数目
(独立运行模式)
pppoe-server padi-limit slot slot-number [ cpu cpu-number ] number
(IRF模式)
pppoe-server padi-limit chassis chassis-number slot slot-number [ cpu cpu-number ] number
缺省情况下,根据设备运行的主控板类型不同,单板每秒能够接收PADI报文的最大数目也有所差异,具体请见表1-2。
在转发与控制分离环境下,当设备重启或者版本升级时,为避免大量PPPoE用户的突发上线请求对设备性能造成影响,同时又确保PPPoE用户能够平稳上线,可以通过本命令统一调整指定UP上所有单板接收PADI报文的速率。
(1) 进入系统视图。
system-view
(2) 配置UP上每个slot每秒能够接收PADI报文的最大数目
pppoe-server padi-limit per-slot number
缺省情况下,UP上每个slot每秒能够接收PADI报文的最大数目为2000。
在PPPoE链路建立过程的Discovery阶段,PPPoE Client会通过发送PADI/PADR报文寻找可为其提供接入服务的PPPoE Server,并可在PPPoE会话建立起来后的任意时间发送PADT报文终止PPPPoE会话。
为防止大量用户频繁上下线或非法用户通过协议报文发起攻击占用设备大量系统资源,可配置PPPoE用户静默功能。配置本功能后,当某PPPoE用户在检测周期内的上下线次数或请求连接次数达到指定次数时,将被静默一段时间。在静默周期内,设备直接丢弃来自此PPPoE用户的报文,同时设备会继续对处于静默周期内的PPPoE用户进行防攻击检测,如果在静默定时器超时前该PPPoE用户达到条件“(本次静默之后的丢包数×request-period)≥(requests×blocking-period)”,设备会将该PPPoE用户的静默时间延长一个静默周期。
静默定时器超时后,如果设备再次收到该PPPoE用户的报文,则依然可以对其进行认证处理。
设备目前支持基于MAC地址和基于Option 105两种方式的PPPoE用户静默功能。
您既可在系统视图下配置本命令也可在接口视图下配置本命令,前者对所有PPPoE用户生效,后者只对通过该接口接入的PPPoE用户生效。如果在两个视图下都配置本命令,则先达到静默条件的命令生效。
开启基于MAC地址的PPPoE静默功能后,设备将根据用户MAC地址、最外层VLAN ID和用户接入接口三个字段信息唯一标识一个静默用户。
开启基于Option 105地址的PPPoE静默功能后,设备将根据用户Circuit ID、Remote ID和用户接入接口三个字段信息唯一标识一个静默用户。
在一体化场景中,当满足静默条件时,仅在实际接收报文的接口所在slot上生成静默表项。例如,对于通过三层聚合接口接入的用户,当该用户满足静默条件时,仅会在该实际接入的三层聚合组中成员接口所在slot上生成静默表项。
在转发与控制分离场景中,当满足静默条件时,对于通过UP设备上的全局接口接入的用户,会在管理该UP的主BRAS-VM上以及该UP的所有slot上都生成静默表项。对于通过UP设备上的局部接口接入的用户,会在管理该UP的主BRAS-VM上以及该UP上局部接口所在slot上生成静默表项。
(1) 进入系统视图。
system-view
(2) 开启基于MAC地址的PPPoE静默功能。
pppoe-server connection chasten [ quickoffline ] [ multi-sessions-permac ] requests request-period blocking-period
缺省情况下, 基于MAC地址的PPPoE用户在60秒内连续请求连接次数达到6次时,将被静默300秒。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
该接口为启用PPPoE Server协议的接口。
(3) 开启基于MAC地址的PPPoE静默功能。
pppoe-server connection chasten [ quickoffline ] [ multi-sessions-permac ] requests request-period blocking-period
缺省情况下,基于MAC地址的PPPoE静默功能处于关闭状态。
(1) 进入系统视图。
system-view
(2) 开启基于Option 105的PPPoE静默功能。
pppoe-server connection chasten option105 [ quickoffline ] requests request-period blocking-period
缺省情况下,基于Option 105的PPPoE静默功能处于关闭状态。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
该接口为启用PPPoE Server协议的接口。
(3) 开启基于Option 105的PPPoE静默功能。
pppoe-server connection chasten option105 [ quickoffline ] requests request-period blocking-period
缺省情况下,基于Option 105的PPPoE静默功能处于关闭状态。
在PPPoE链路建立过程的Discovery阶段,PPPoE Client会通过发送PADI/PADR报文寻找可为其提供接入服务的PPPoE Server,并可在PPPoE会话建立起来后的任意时间发送PADT报文终止PPPoE会话。
为防止大量用户频繁上下线或非法用户通过协议报文发起攻击占用设备大量系统资源,可配置PPPoE协议报文防攻击功能。配置本功能后,当PPPoE Server在interval时间内从某接口接收到的PPPoE协议报文个数达到number时,将对后续从该接口接收的PPPoE协议报文进行限速,限速时长为rate-limit-period。在限速时长内,当接口收到超过限速值的PPPoE协议报文时,超速部分的报文将被丢弃,同时设备会继续对处于限速时长内的接口进行防攻击检测,如果在限速时长超时前,该接口收到的PPPoE协议报文数达到条件“(本次限速之后的丢包数×interval)≥(number×rate-limit-period)”,设备会将该接口的限速时间延长一个限速时长。限速时长超时后,将解除对该接口接收PPPoE协议报文的限速。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
该接口为启用PPPoE Server协议的接口。
(3) 开启PPPoE协议报文防攻击功能。
pppoe-server connection chasten per-interface number interval rate-limit-period
缺省情况下,PPPoE协议报文防攻击功能处于关闭状态。
配置本功能后,当接口收到PADI和PADR报文后会将直接丢弃,以阻止新的PPPoE用户从该接口上线。
本功能配置后仅对新接入的PPPoE用户生效,对当前已经存在用户无影响。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置禁止接口上的PPPoE用户上线。
pppoe-server block
缺省情况下,允许接口上的PPPoE用户上线。
在完成上述配置后,在任意视图下执行display命令可以显示PPPoE Server配置后的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令,可在PPPoE Server端清除PPPoE会话。
表1-3 PPPoE Server显示和维护
操作 |
命令 |
显示PPPoE静默功能的配置信息 |
display pppoe-server chasten configuration [ global | interface interface-type interface-number ] |
显示PPPoE协议报文防攻击表项的信息 |
(独立运行模式) display pppoe-server chasten per-interface [ interface interface-type interface-number ] [ slot slot-number [ cpu cpu-number ] ] (IRF模式) display pppoe-server chasten per-interface [ interface interface-type interface-number ] [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
显示PPPoE协议报文防攻击功能的配置信息 |
display pppoe-server chasten per-interface configuration [ interface interface-type interface-number ] |
显示静默功能检测到的PPPoE用户统计信息 |
(独立运行模式) display pppoe-server chasten statistics [ mac-address | option105 ] [ interface interface-type interface-number ] [ slot slot-number [ cpu cpu-number ] ] (IRF模式) display pppoe-server chasten statistics [ mac-address | option105 ] [ interface interface-type interface-number ] [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
显示被静默PPPoE用户的信息 |
(独立运行模式) display pppoe-server chasten user [ mac-address [ mac-address ] | option105 [ circuit-id circuit-id ] [ remote-id remote-id ] ] [ interface interface-type interface-number ] [ slot slot-number [ cpu cpu-number ] ] [ verbose ] (IRF模式) display pppoe-server chasten user [ mac-address [ mac-address ] | option105 [ circuit-id circuit-id ] [ remote-id remote-id ] ] [ interface interface-type interface-number ] [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] [ verbose ] |
显示PPPoE的协商报文统计信息 |
(独立运行模式) display pppoe-server packet statistics [ slot slot-number [ cpu cpu-number ] ] (IRF模式) display pppoe-server packet statistics [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
显示PPPoE会话的摘要信息 |
(独立运行模式) display pppoe-server session summary [ [ interface interface-type interface-number | slot slot-number [ cpu cpu-number ] ] | mac-address mac-address ] * (IRF模式) display pppoe-server session summary [ [ interface interface-type interface-number | chassis chassis-number slot slot-number [ cpu cpu-number ] ] | mac-address mac-address ] * |
显示被扼制的用户信息 |
(独立运行模式) display pppoe-server throttled-mac { slot slot-number [ cpu cpu-number ] | interface interface-type interface-number } (IRF模式) display pppoe-server throttled-mac { chassis chassis-number slot slot-number [ cpu cpu-number ] | interface interface-type interface-number } |
清除PPPoE会话 |
reset pppoe-server { all | [ interface interface-type interface-number | mac-address mac-address ] * | virtual-template number } |
清除PPPoE协议报文防攻击表项的相关信息 |
(独立运行模式) reset pppoe-server chasten per-interface [ packets ] [ interface interface-type interface-number ] [ slot slot-number [ cpu cpu-number ] ] (IRF模式) reset pppoe-server chasten per-interface [ packets ] [ interface interface-type interface-number ] [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
清除被静默PPPoE用户的相关信息 |
(独立运行模式) reset pppoe-server chasten user [ packets ] [ mac-address [ mac-address ] | option105 [ circuit-id circuit-id ] [ remote-id remote-id ] ] [ interface interface-type interface-number ] [ slot slot-number [ cpu cpu-number ] ] (IRF模式) reset pppoe-server chasten user [ packets ] [ mac-address [ mac-address ] | option105 [ circuit-id circuit-id ] [ remote-id remote-id ] ] [ interface interface-type interface-number ] [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
清除PPPoE的协商报文统计信息 |
(独立运行模式) reset pppoe-server packet statistics [ slot slot-number [ cpu cpu-number ] ] (IRF模式) reset pppoe-server packet statistics [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
Host和Router之间通过以太网接口相连,Host通过PPPoE接入Router,Router作为PPPoE Server通过DHCPv4协议为Host分配IP地址。
图1-4 配置PPPoE Server通过本地DHCP服务器为用户分配IPv4地址组网图
# 配置虚拟模板接口1的参数,采用CHAP认证对端。
<Router> system-view
[Router] interface virtual-template 1
[Router-Virtual-Template1] ppp authentication-mode chap domain dm1
[Router-Virtual-Template1] quit
# 在GigabitEthernet3/1/1接口上启用PPPoE Server协议,将该以太网接口与虚拟模板接口1绑定。
[Router] interface gigabitethernet 3/1/1
[Router-GigabitEthernet3/1/1] pppoe-server bind virtual-template 1
[Router-GigabitEthernet3/1/1] quit
# 启用DHCP服务。
[Router] dhcp enable
# 配置本地BAS IP地址池pool1。
[Router] ip pool pool1 bas local
[Router-ip-pool-pool1] gateway 1.1.1.1 24
[Router-ip-pool-pool1] dns-list 8.8.8.8
# 将IP地址1.1.1.1配置为禁用地址。
[Router-ip-pool-pool1] forbidden-ip 1.1.1.1
[Router-ip-pool-pool1] quit
# 配置PPPoE用户。
[Router] local-user user1 class network
[Router-luser-network-user1] password simple 123456TESTplat&!
[Router-luser-network-user1] service-type ppp
[Router-luser-network-user1] quit
# 在ISP域dm1下,配置域用户使用本地AAA方案,并授权地址池。
[Router] domain name dm1
[Router-isp-dm1] authentication ppp local
[Router-isp-dm1] accounting ppp local
[Router-isp-dm1] authorization ppp local
[Router-isp-dm1] authorization-attribute ip-pool pool1
[Router-isp-dm1] quit
配置完成后,当Host使用用户名user1、密码123456TESTplat&!,通过PPPoE接入Router后,Router通过DHCPv4协议为Host分配一个IP地址。
[Router] display access-user interface gigabitethernet 3/1/1
UserID Interface IP address MAC address S-/C-VLAN
Username IPv6 address Access type
0xc GE3/1/1 1.1.1.2 001b-21a8-0949 -/-
user1 - PPPoE
Host和Router A之间通过以太网接口相连,Router B为远端DHCP服务器。Host通过PPPoE接入Router A,Router A作为PPPoE Server、DHCP中继向远端DHCP服务器申请IPv4地址和IPv6地址。
图1-5 PPPoE Server通过远端DHCP服务器为双栈用户分配IP地址组网图
在进行下面的配置之前,请先配置各接口的IP地址,并确保各设备之间路由可达。
(1) 配置Router A(PPPoE Server)
# 配置虚拟模板接口1的参数,采用CHAP认证对端。
<RouterA> system-view
[RouterA] interface virtual-template 1
[RouterA-Virtual-Template1] ppp authentication-mode chap domain dm1
# 取消对RA消息发布的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址,配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[RouterA-Virtual-Template1] undo ipv6 nd ra halt
[RouterA-Virtual-Template1] ipv6 nd autoconfig managed-address-flag
[RouterA-Virtual-Template1] ipv6 nd autoconfig other-flag
[RouterA-Virtual-Template1] quit
# 在GigabitEthernet3/1/1接口上启用PPPoE Server协议,将该以太网接口与虚拟模板接口1绑定。
[RouterA] interface gigabitethernet 3/1/1
[RouterA-GigabitEthernet3/1/1] pppoe-server bind virtual-template 1
[RouterA-GigabitEthernet3/1/1] quit
# 启用DHCP服务。
[RouterA] dhcp enable
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将IP地址2.2.2.1配置为禁用地址,并指定中继地址池对应的DHCP服务器地址。
[RouterA] ip pool pool1 bas remote
[RouterA-ip-pool-pool1] gateway 2.2.2.1 24
[RouterA-ip-pool-pool1] forbidden-ip 2.2.2.1
[RouterA-ip-pool-pool1] remote-server 10.1.1.1
[RouterA-ip-pool-pool1] quit
# 创建IPv6远端地址池pool2,指定匹配该地址池的DHCPv6客户端所在的网段地址,将IPv6地址2::1配置为禁止地址,并指定IPv6远端地址池对应的DHCP服务器地址。
[RouterA] ipv6 pool pool2
[RouterA-ipv6-pool-pool2] gateway-list 2::1
[RouterA-ipv6-pool-pool2] network 2::0/64 export-route
[RouterA-ipv6-pool-pool2] forbidden-address 2::1
[RouterA-ipv6-pool-pool2] remote-server 10::1
[RouterA-ipv6-pool-pool2] quit
# 进入接口GigabitEthernet3/1/1视图。
[RouterA] interface gigabitethernet 3/1/1
# 配置接口工作在中继模式。
[RouterA–GigabitEthernet3/1/1] dhcp select relay
[RouterA–GigabitEthernet3/1/1] ipv6 dhcp select relay
# 配置自动生成IPv6链路本地地址,该IPv6链路本地地址作为用户的网关。
[RouterA–GigabitEthernet3/1/1] ipv6 address auto link-local
# 取消设备发布RA消息的抑制。
[RouterA–GigabitEthernet3/1/1] undo ipv6 nd ra halt
[RouterA–GigabitEthernet3/1/1] quit
# 配置PPPoE用户。
[RouterA] local-user user1 class network
[RouterA-luser-network-user1] password simple 123456TESTplat&!
[RouterA-luser-network-user1] service-type ppp
[RouterA-luser-network-user1] quit
# 在ISP域dm1下,配置域用户使用本地AAA方案,并授权地址池。
[RouterA] domain name dm1
[RouterA-isp-dm1] authentication ppp local
[RouterA-isp-dm1] accounting ppp local
[RouterA-isp-dm1] authorization ppp local
[RouterA-isp-dm1] authorization-attribute ip-pool pool1
[RouterA-isp-dm1] authorization-attribute ipv6-pool pool2
[RouterA-isp-dm1] quit
(2) 配置Router B(DHCP服务器)
¡ 配置IP地址池
# 启用DHCP服务。
<RouterB> system-view
[RouterB] dhcp enable
# 创建IP地址池pool1,配置为DHCP客户端分配的IP地址网段、网关地址和DNS服务器地址。
[RouterB] ip pool pool1
[RouterB-ip-pool-pool1] network 2.2.2.0 24
[RouterB-ip-pool-pool1] gateway-list 2.2.2.1
[RouterB-ip-pool-pool1] dns-list 8.8.8.8
# 将IP地址2.2.2.1配置为禁用地址。
[RouterB-ip-pool-pool1] forbidden-ip 2.2.2.1
[RouterB-ip-pool-pool1] quit
# 配置到PPPoE Server的静态路由。
[RouterB] ip route-static 2.2.2.0 24 10.1.1.2
¡ 配置IPv6地址池
# 创建名称为pool2的IPv6地址池,配置为DHCP客户端分配的IPv6地址网段和DNS服务器地址。
[RouterB] ipv6 pool pool2
[RouterB-ipv6-pool-pool2] network 2::0/64
[RouterB-ipv6-pool-pool2] dns-server 2001:2::3
# 将IPv6地址2::1配置为禁止地址。
[RouterB-ipv6-pool-pool2] forbidden-address 2::1
[RouterB-ipv6-pool-pool2] quit
# 配置接口GigabitEthernet3/1/1工作在DHCPv6服务器模式。
[RouterB] interface gigabitethernet 3/1/1
[RouterB-GigabitEthernet3/1/1] ipv6 dhcp select server
[RouterB-GigabitEthernet3/1/1] quit
# 配置到PPPoE Server的静态路由。
[RouterB] ipv6 route-static 2:: 64 10::2
配置完成后,当Host使用用户名user1、密码123456TESTplat&!,通过PPPoE接入RouterA后,Host分配一个IPv4地址和一个IPv6地址。
[RouterA] display access-user interface gigabitethernet 3/1/1
UserID Interface IP address MAC address S-/C-VLAN
Username IPv6 address Access type
0xc GE3/1/1 2.2.2.2 001b-21a8-0949 -/-
user1 2::2 PPPoE
Host和Router A之间通过以太网接口相连,Router B为远端DHCP服务器。Host通过PPPoE接入Router A,Router A作为PPPoE Server、DHCP中继向远端DHCP服务器申请IPv6地址。
图1-6 配置PPPoE Server通过IA_NA方式为用户分配IPv6地址组网图
(1) 配置Router A(PPPoE Server)
# 配置虚拟模板接口1的参数,采用CHAP认证对端。
<RouterA> system-view
[RouterA] interface virtual-template 1
[RouterA-Virtual-Template1] ppp authentication-mode chap domain dm1
# 取消对RA消息发布的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址,配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[Router-Virtual-Template1] undo ipv6 nd ra halt
[Router-Virtual-Template1] ipv6 nd autoconfig managed-address-flag
[Router-Virtual-Template1] ipv6 nd autoconfig other-flag
[RouterA-Virtual-Template1] quit
# 在GigabitEthernet3/1/1接口上配置本端自动生成IPv6链路本地地址。
[RouterA] interface gigabitethernet 3/1/1
[RouterA-GigabitEthernet3/1/1] ipv6 address auto link-local
# 取消对RA消息发布的抑制。
[RouterA-GigabitEthernet3/1/1] undo ipv6 nd ra halt
# 配置接口工作在DHCPv6中继模式。
[RouterA-GigabitEthernet3/1/1] ipv6 dhcp select relay
# 在GigabitEthernet3/1/1接口上启用PPPoE Server协议,将该以太网接口与虚拟模板接口1绑定。
[RouterA-GigabitEthernet3/1/1] pppoe-server bind virtual-template 1
[RouterA-GigabitEthernet3/1/1] quit
# 创建中继地址池pool1,指定匹配该地址池的DHCPv6客户端所在的网段地址,并指定中继地址池对应的DHCP服务器地址。
[RouterA] ipv6 pool pool1
[RouterA-ipv6-pool-pool1] gateway-list 3001::1
[RouterA-ipv6-pool-pool1] network 3001::/32 export-route
[RouterA-ipv6-pool-pool1] remote-server 10::1
[RouterA-ipv6-pool-pool1] quit
# 配置PPPoE用户。
[RouterA] local-user user1 class network
[RouterA-luser-network-user1] password simple 123456TESTplat&!
[RouterA-luser-network-user1] service-type ppp
[RouterA-luser-network-user1] quit
# 在ISP域下配置使用本地AAA方案,并为用户授权地址池属性。
[RouterA] domain name dm1
[RouterA-isp-dm1] authentication ppp local
[RouterA-isp-dm1] accounting ppp local
[RouterA-isp-dm1] authorization ppp local
[RouterA-isp-dm1] authorization-attribute ipv6-pool pool1
[RouterA-isp-dm1] quit
(2) 配置Router B(DHCP服务器)
# 创建名称为pool1的IPv6地址池,配置IPv6地址池动态分配的地址网段为3001::/32,分配的DNS服务器地址为2001:2::3。
<RouterB> system-view
[RouterB] ipv6 pool pool1
[RouterB-ipv6-pool-pool1] network 3001::/32
[RouterB-ipv6-pool-pool1] dns-server 2001:2::3
[RouterB-ipv6-pool-pool1] quit
# 将3001::1设置为禁止地址。
[RouterB] ipv6 dhcp server forbidden-address 3001::1
# 配置接口GigabitEthernet3/1/1工作在DHCPv6服务器模式。
[RouterB] interface gigabitethernet 3/1/1
[RouterB-GigabitEthernet3/1/1] ipv6 dhcp select server
[RouterB-GigabitEthernet3/1/1] quit
# 通过配置静态路由,将目的地址为3001::/32网段的DHCPv6应答报文的下一跳指定为连接DHCPv6客户端网络的接口IPv6地址10::2。
[RouterB] ipv6 route-static 3001:: 32 10::2
配置完成后,当Host使用用户名user1、密码123456TESTplat&!,通过PPPoE接入Router后,Router通过DHCPv6协议为Host分配一个IPv6全球单播地址。
[RouterA] display access-user interface gigabitethernet 3/1/1
UserID Interface IP address MAC address S-/C-VLAN
Username IPv6 address Access type
0x6 GE3/1/1 - 001b-21a8-0949 -/-
user1 3001::2 PPPoE
Router A和Router B之间通过以太网接口相连,Router A通过PPPoE接入Router B,Router B作为PPPoE Server通过DHCPv6协议给Router A分配代理前缀,Router A再通过代理前缀给下面的主机分配IPv6地址。
图1-7 配置PPPoE Server通过IA_PD方式为用户分配IPv6地址组网图
(1) 配置Router B(PPPoE Server)
# 配置虚拟模板接口1的参数,采用CHAP认证对端。
<RouterB> system-view
[RouterB] interface virtual-template 1
[RouterB-Virtual-Template1] ppp authentication-mode chap domain dm1
# 取消对RA消息发布的抑制。
[RouterB-Virtual-Template1] undo ipv6 nd ra halt
[RouterB-Virtual-Template1] quit
# 在GigabitEthernet3/1/1接口上配置本端自动生成IPv6链路本地地址。
[RouterB] interface gigabitethernet 3/1/1
[RouterB-GigabitEthernet3/1/1] ipv6 address auto link-local
# 取消对RA消息发布的抑制。
[RouterB-GigabitEthernet3/1/1] undo ipv6 nd ra halt
# 配置接口工作在DHCPv6服务器模式。
[RouterB-GigabitEthernet3/1/1] ipv6 dhcp select server
# 在GigabitEthernet3/1/1接口上启用PPPoE Server协议,将该以太网接口与虚拟模板接口1绑定。
[RouterB-GigabitEthernet3/1/1] pppoe-server bind virtual-template 1
[RouterB-GigabitEthernet3/1/1] quit
# 配置DHCPv6前缀池6,包含的前缀为4001::/32,分配的前缀长度为42。
[RouterB] ipv6 dhcp prefix-pool 6 prefix 4001::/32 assign-len 42
# 创建名称为pool1的IPv6地址池,在地址池下引用前缀池6。
[RouterB] ipv6 pool pool1
[RouterB-ipv6-pool-pool1] prefix-pool 6 export-route
[RouterB-ipv6-pool-pool1] quit
# 配置PPPoE用户。
[RouterB] local-user user1 class network
[RouterB-luser-network-user1] password simple 123456TESTplat&!
[RouterB-luser-network-user1] service-type ppp
[RouterB-luser-network-user1] quit
# 在ISP域下配置使用本地AAA方案,并为用户授权地址池属性。
[RouterB] domain name dm1
[RouterB-isp-dm1] authentication ppp local
[RouterB-isp-dm1] accounting ppp local
[RouterB-isp-dm1] authorization ppp local
[RouterB-isp-dm1] authorization-attribute ipv6-pool pool1
(2) 配置Router A(PPPoE Client)
· 本设备(本例中为Router B)仅支持作为PPPoE Server,不支持作为PPPoE Client。
· 担任PPPoE Client角色的产品的不同版本的配置命令可能存在差异,本节配置仅供参考,有关PPPoE Client上配置的详细介绍,请参见担任PPPoE Client角色的设备的产品手册。
# 在Dialer1接口上开启共享DDR。
<RouterA> system-view
[RouterA] interface dialer 1
[RouterA-Dialer1] dialer bundle enable
# 配置Router A被Router B以CHAP方式认证时Router A发送的CHAP用户名和密码。
[RouterA-Dialer1] ppp chap user user1
[RouterA-Dialer1] ppp chap password simple 123456TESTplat&!
# 配置PPPoE Client工作在永久在线模式。
[RouterA-Dialer1] dialer timer idle 0
# 配置DDR自动拨号的间隔时间为60秒。
[RouterA-Dialer1] dialer timer autodial 60
# 配置Dialer1接口作为DHCPv6客户端,通过DHCPv6方式获取IPv6地址和其他网络配置参数。
[RouterA-Dialer1] ipv6 address dhcp-alloc
# 配置Dialer1接口作为DHCPv6客户端,通过DHCPv6方式获取IPv6前缀和其他网络配置参数;指定获取到IPv6前缀后,创建编号为1的IPv6前缀,该前缀编号1对应的IPv6前缀为DHCPv6客户端获取到的前缀。
[RouterA-Dialer1] ipv6 dhcp client pd 1
[RouterA-Dialer1] quit
# 配置一个PPPoE会话,该会话对应Dialer bundle 1(Dialer bundle 1对应Dialer1接口)。
[RouterA] interface gigabitethernet 3/1/2
[RouterA-GigabitEthernet3/1/2] pppoe-client dial-bundle-number 1
[RouterA-GigabitEthernet3/1/2] quit
# 配置缺省路由。
[RouterA] ipv6 route-static :: 0 dialer 1
# 接口GigabitEthernet3/1/1上取消对RA消息发布的抑制。
[RouterA] interface gigabitethernet 3/1/1
[RouterA-GigabitEthernet3/1/1] undo ipv6 nd ra halt
# 在接口GigabitEthernet3/1/1上配置动态获取IPv6前缀的编号为1,即该接口将使用编号为1的前缀生成IPv6地址,并将编号为1的IPv6前缀通过RA报文分配给终端设备。
[RouterA-GigabitEthernet3/1/1] ipv6 address 1 123::123:1:1/64
[RouterA-GigabitEthernet3/1/1] quit
配置完成后,当Router A使用用户名user1、密码123456TESTplat&!,通过PPPoE接入Router B后,Router B通过DHCPv6协议为Router A分配一个代理前缀。
# 显示DHCPv6前缀绑定信息。
[RouterB] display ipv6 dhcp server pd-in-use
Pool: pool1
IPv6 prefix Type Lease expiration
4001::/42 Auto(C) Jul 10 19:45:01 2019
以上信息表示,Router B通过DHCPv6协议为Router A分配一个代理前缀。
# 显示Router A上创建的IPv6前缀信息。
[RouterA] display ipv6 prefix
Number Prefix Type
1 4001::/42 Dynamic
以上信息表示,Router A从Router B获取到代理前缀后,已根据ipv6 dhcp client pd 1配置创建了编号为1的IPv6前缀。
Router A把分配到的代理前缀4001::/42再分配给Host,Host用来生成IPv6全球单播地址。
Host和Router之间通过以太网接口相连,Host通过PPPoE接入Router,Router作为PPPoE Server通过ND协议为Host分配IPv6地址。
在该场景下,Host通过ND协议中的RA报文获得IPv6地址前缀,通过IPv6CP协商获取IPv6接口标识,二者组合生成IPv6全球单播地址。其中,RA报文中的IPv6地址前缀来源于授权前缀。
图1-8 配置PPPoE Server通过NDRA方式为用户分配IPv6地址组网图
# 配置虚拟模板接口1的参数,采用CHAP认证对端。
<Router> system-view
[Router] interface virtual-template 1
[Router-Virtual-Template1] ppp authentication-mode chap domain dm1
[Router-Virtual-Template1] quit
# 取消对RA消息发布的抑制。
[Router-Virtual-Template1] undo ipv6 nd ra halt
# 在GigabitEthernet3/1/1接口上配置本端自动生成IPv6链路本地地址。
[Router] interface gigabitethernet 3/1/1
[Router-GigabitEthernet3/1/1] ipv6 address auto link-local
# 取消对RA消息发布的抑制。
[Router-GigabitEthernet3/1/1] undo ipv6 nd ra halt
# 在GigabitEthernet3/1/1接口上启用PPPoE Server协议,将该以太网接口与虚拟模板接口1绑定。
[Router-GigabitEthernet3/1/1] pppoe-server bind virtual-template 1
[Router-GigabitEthernet3/1/1] quit
# (仅用于发布前缀网段路由)创建IPv6地址池并进入IPv6地址池视图,指定匹配该地址池的DHCPv6客户端所在的网段地址并发布网段路由。
[Router] ipv6 pool pool1
[Router-ipv6-pool-pool1] network 2003::/64 export-route
[Router-ipv6-pool-pool1] quit
# 配置PPPoE用户。
[Router] local-user user1 class network
[Router-luser-network-user1] password simple 123456TESTplat&!
[Router-luser-network-user1] service-type ppp
[Router-luser-network-user1] quit
# 在ISP域下配置域用户使用本地AAA方案,为用户授权IPv6前缀属性及DNS信息。
[Router] domain name dm1
[Router-isp-dm1] authentication ppp local
[Router-isp-dm1] accounting ppp local
[Router-isp-dm1] authorization ppp local
[Router-isp-dm1] authorization-attribute ipv6-prefix 2003:: 64
[Router-isp-dm1] authorization-attribute primary-dns ipv6 2:2::3
[Router-isp-dm1] quit
配置完成后,当Host使用用户名user1、密码123456TESTplat&!,通过PPPoE接入Router后,通过授权的IPv6前缀和IPv6CP协商获取的IPv6接口标识就自动生成一个IPv6全球单播地址。
[Router] display access-user interface gigabitethernet 3/1/1
UserID Interface IP address MAC address S-/C-VLAN
Username IPv6 address Access type
0x6 GE3/1/1 - 001b-21a8-0949 -/-
user1 2003::F85B:7EE1:1410 PPPoE
:74C9
Host和Router之间通过以太网接口相连,Host通过PPPoE接入Router,Router作为PPPoE Server通过ND协议为Host分配IPv6地址。
在该场景下,Host通过ND协议中的RA报文获得IPv6地址前缀,通过IPv6CP协商获取IPv6接口标识,二者组合生成IPv6全球单播地址。其中,RA报文中的IPv6地址前缀来源于ND前缀池。
图1-9 配置PPPoE Server通过NDRA方式为用户分配IPv6地址组网图
# 配置虚拟模板接口1的参数,采用CHAP认证对端。
<Router> system-view
[Router] interface virtual-template 1
[Router-Virtual-Template1] ppp authentication-mode chap domain dm1
# 取消对RA消息发布的抑制。
[Router-Virtual-Template1] undo ipv6 nd ra halt
[Router-Virtual-Template1] quit
# 在GigabitEthernet3/1/1接口上配置本端自动生成IPv6链路本地地址。
[Router] interface gigabitethernet 3/1/1
[Router-GigabitEthernet3/1/1] ipv6 address auto link-local
# 取消对RA消息发布的抑制。
[Router-GigabitEthernet3/1/1] undo ipv6 nd ra halt
# 在GigabitEthernet3/1/1接口上启用PPPoE Server协议,将该以太网接口与虚拟模板接口1绑定。
[Router-GigabitEthernet3/1/1] pppoe-server bind virtual-template 1
[Router-GigabitEthernet3/1/1] quit
# 配置前缀池1,包含的前缀为2003::/32,分配的前缀长度为64,即前缀池1包含2003::/64~2003:0:FFFF:FFFF::/64范围内的4294967296个前缀。
[Router] ipv6 dhcp prefix-pool 1 prefix 2003::/32 assign-len 64
# 创建名称为pool1的IPv6地址池,并引用前缀池1。
[Router] ipv6 pool pool1
[Router-ipv6-pool-pool1] prefix-pool 1 export-route
[Router-ipv6-pool-pool1] quit
# 配置PPPoE用户。
[Router] local-user user1 class network
[Router-luser-network-user1] password simple 123456TESTplat&!
[Router-luser-network-user1] service-type ppp
[Router-luser-network-user1] quit
# 在ISP域下配置域用户使用本地AAA方案,为用户授权ND前缀池及IPv6 DNS地址池信息。
[Router] domain name dm1
[Router-isp-dm1] authentication ppp local
[Router-isp-dm1] accounting ppp local
[Router-isp-dm1] authorization ppp local
[Router-isp-dm1] authorization-attribute ipv6-nd-prefix-pool pool1
[Router-isp-dm1] authorization-attribute primary-dns ipv6 2:2::3
[Router-isp-dm1] quit
配置完成后,当Host使用用户名user1、密码123456TESTplat&!,通过PPPoE接入Router后,通过授权的IPv6前缀和IPv6CP协商获取的IPv6接口标识就自动生成一个IPv6全球单播地址。
[Router] display access-user interface gigabitethernet 3/1/1
UserID Interface IP address MAC address S-/C-VLAN
Username IPv6 address Access type
0x6 GE3/1/1 - 001b-21a8-0949 -/-
user1 2003::F85B:7EE1:1410 PPPoE
:74C9
Router A和Router B之间通过以太网接口相连,Router A通过PPPoE接入Router B,Router B作为PPPoE Server,并:
· 通过IA_NA方式给CPE WAN口分配IPv6全球单播地址
· 通过IA_PD方式给Router A分配代理前缀,Router A再通过代理前缀给下面的主机分配IPv6地址。
图1-10 配置PPPoE Server通过IA_NA+IA_PD方式为用户分配IPv6地址组网图
(1) 配置Router B(PPPoE Server)
# 配置虚拟模板接口1的参数,采用CHAP认证对端。
<RouterB> system-view
[RouterB] interface virtual-template 1
[RouterB-Virtual-Template1] ppp authentication-mode chap domain dm1
# 取消对RA消息发布的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址,配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[Router-Virtual-Template1] undo ipv6 nd ra halt
[Router-Virtual-Template1] ipv6 nd autoconfig managed-address-flag
[RouterB-Virtual-Template1] ipv6 nd autoconfig other-flag
[RouterB-Virtual-Template1] quit
# 在GigabitEthernet3/1/1接口上,配置本端自动生成IPv6链路本地地址。
[RouterB] interface gigabitethernet 3/1/1
[RouterB-GigabitEthernet3/1/1] ipv6 address auto link-local
# 取消对RA消息发布的抑制。配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[RouterB-GigabitEthernet3/1/1] undo ipv6 nd ra halt
[RouterB-GigabitEthernet3/1/1] ipv6 nd autoconfig other-flag
# 开启DHCPv6 Server功能。
[RouterB-GigabitEthernet3/1/1] ipv6 dhcp select server
# 在GigabitEthernet3/1/1接口上启用PPPoE Server协议,将该以太网接口与虚拟模板接口1绑定。
[RouterB-GigabitEthernet3/1/1] pppoe-server bind virtual-template 1
[RouterB-GigabitEthernet3/1/1] quit
# (IA_PD使用)配置DHCPv6前缀池6,包含的前缀为4001::/32,分配的前缀长度为42。
[RouterB] ipv6 dhcp prefix-pool 6 prefix 4001::/32 assign-len 42
# 创建名称为pool1的IPv6地址池,配置IPv6地址池动态分配的地址网段为3001::/32,分配的DNS服务器地址为2001:2::3。
[RouterB] ipv6 pool pool1
[RouterB-ipv6-pool-pool1] network 3001::/32 export-route
[RouterB-ipv6-pool-pool1] dns-server 2001:2::3
# (IA_PD使用)在地址池下引用前缀池6
[RouterB-ipv6-pool-pool1] prefix-pool 6 export-route
[RouterB-ipv6-pool-pool1] quit
# 配置PPPoE用户。
[RouterB] local-user user1 class network
[RouterB-luser-network-user1] password simple 123456TESTplat&!
[RouterB-luser-network-user1] service-type ppp
[RouterB-luser-network-user1] quit
# 在ISP域下配置使用本地AAA方案,并为用户授权地址池属性。
[RouterB] domain name dm1
[RouterB-isp-dm1] authentication ppp local
[RouterB-isp-dm1] accounting ppp local
[RouterB-isp-dm1] authorization ppp local
[RouterB-isp-dm1] authorization-attribute ipv6-pool pool1
(2) 配置Router A(PPPoE Client)
· 本设备(本例中为Router B)仅支持作为PPPoE Server,不支持作为PPPoE Client。
· 担任PPPoE Client角色的产品的不同版本的配置命令可能存在差异,本节配置仅供参考,有关PPPoE Client上配置的详细介绍,请参见担任PPPoE Client角色的设备的产品手册。
# 在Dialer1接口上开启共享DDR。
<RouterA> system-view
[RouterA] interface dialer 1
[RouterA-Dialer1] dialer bundle enable
# 将Dialer1接口与拨号访问组1关联。
[RouterA-Dialer1] dialer-group 1
# 配置Router A被Router B以CHAP方式认证时Router A发送的CHAP用户名和密码。
[RouterA-Dialer1] ppp chap user user1
[RouterA-Dialer1] ppp chap password simple 123456TESTplat&!
# (IA_NA+IA_PD共用)配置Dialer1接口作为DHCPv6客户端,通过DHCPv6方式获取IPv6地址和其他网络配置参数。
[RouterA-Dialer1] ipv6 address dhcp-alloc
# (IA_PD使用)配置Dialer1接口作为DHCPv6客户端,通过DHCPv6方式获取IPv6前缀和其他网络配置参数;指定获取到IPv6前缀后,创建编号为1的IPv6前缀,该前缀编号1对应的IPv6前缀为DHCPv6客户端获取到的前缀。
[RouterA-Dialer1] ipv6 dhcp client pd 1
[RouterA-Dialer1] quit
# 配置一个PPPoE会话,该会话对应Dialer bundle 1(Dialer bundle 1对应Dialer1接口)。
[RouterA] interface gigabitethernet 3/1/2
[RouterA-GigabitEthernet3/1/2] pppoe-client dial-bundle-number 1
[RouterA-GigabitEthernet3/1/2] quit
# 配置缺省路由。
[RouterA] ipv6 route-static :: 0 dialer 1
# 配置PPPoE Client工作在永久在线模式。
[RouterA] interface dialer 1
[RouterA-Dialer1] dialer timer idle 0
# 配置DDR自动拨号的间隔时间为60秒。
[RouterA-Dialer1] dialer timer autodial 60
[RouterA-Dialer1] quit
# 接口GigabitEthernet3/1/1上取消对RA消息发布的抑制。
[RouterA] interface gigabitethernet 3/1/1
[RouterA-GigabitEthernet3/1/1] undo ipv6 nd ra halt
# 在接口GigabitEthernet3/1/1上配置动态获取IPv6前缀的编号为1,即该接口将使用编号为1的前缀生成IPv6地址,并将编号为1的IPv6前缀通过RA报文分配给终端设备。
[RouterA-GigabitEthernet3/1/1] ipv6 address 1 123::123:1:1/64
[RouterA-GigabitEthernet3/1/1] quit
配置完成后,当Router A使用用户名user1、密码123456TESTplat&!,通过PPPoE接入Router B后,Router B通过DHCPv6协议为Router A分配一个IPv6全球单播地址。
[Router] display access-user interface gigabitethernet 3/1/1
UserID Interface IP address MAC address S-/C-VLAN
Username IPv6 address Access type
0x9 GE3/1/1 - 001b-21a8-0949 -/-
user1 3001::1 PPPoE
# 显示DHCPv6前缀绑定信息。
[RouterB] display ipv6 dhcp server pd-in-use
Pool: pool1
IPv6 prefix Type Lease expiration
4001::/42 Auto(C) Jul 10 19:45:01 2019
Router A把分配到的代理前缀4001::1/42再分配给Host,Host用来生成IPv6全球单播地址。
以上信息表示,Router B通过DHCPv6协议为Router A分配一个代理前缀。
# 显示Router A上创建的IPv6前缀信息。
[RouterA] display ipv6 prefix
Number Prefix Type
1 4001::/42 Dynamic
以上信息表示,Router A从Router B获取到代理前缀后,已根据ipv6 dhcp client pd 1配置创建了编号为1的IPv6前缀。
Router A把分配到的代理前缀4001::/42再分配给Host,Host用来生成IPv6全球单播地址。
Router A和Router B之间通过以太网接口相连,Router A通过PPPoE接入Router B,Router B作为PPPoE Server,并:
· IPv4:
¡ Router C为远端DHCP服务器。Router A通过PPPoE接入Router B,Router B作为DHCP中继向远端DHCP服务器申请IPv4地址。
· IPv6:
¡ 通过NDRA方式给Router A上的WAN口(本例为Dialer1)分配IPv6地址前缀,IPv6地址前缀来源于ND前缀池。
¡ 通过IA_PD方式给Router A分配代理前缀,Router A再通过代理前缀给下面的主机分配IPv6地址。
图1-11 配置PPPoE Server通过远端DHCPv4服务器+(NDRA+IA_PD)方式为双栈用户分配IP地址组网图
(1) 配置Router C(DHCP服务器)
# 启用DHCP服务。
<RouterC> system-view
[RouterC] dhcp enable
# 创建IP地址池pool1,配置为DHCP客户端分配的IP地址网段、网关地址和DNS服务器地址。
[RouterC] ip pool pool1
[RouterC-ip-pool-pool1] network 2.2.2.0 24
[RouterC-ip-pool-pool1] gateway-list 2.2.2.1
[RouterC-ip-pool-pool1] dns-list 8.8.8.8
# 将IP地址2.2.2.1配置为禁用地址。
[RouterC-ip-pool-pool1] forbidden-ip 2.2.2.1
[RouterC-ip-pool-pool1] quit
# 配置到PPPoE Server的静态路由。
[RouterC] ip route-static 2.2.2.0 24 10.1.1.2
(2) 配置Router B(PPPoE Server)
# 配置虚拟模板接口1的参数,采用CHAP认证对端。
<RouterB> system-view
[RouterB] interface virtual-template 1
[RouterB-Virtual-Template1] ppp authentication-mode chap domain dm1
# 取消对RA消息发布的抑制。
[RouterB-Virtual-Template1] undo ipv6 nd ra halt
[RouterB-Virtual-Template1] quit
# 启用DHCP服务。
[RouterB] dhcp enable
# 创建远端BAS IP地址池pool1,指定匹配该地址池的DHCPv4客户端所在的网段地址,将IP地址2.2.2.1配置为禁用地址,并指定中继地址池对应的DHCP服务器地址。
[RouterB] ip pool pool1 bas remote
[RouterB-ip-pool-pool1] gateway 2.2.2.1 24
[RouterB-ip-pool-pool1] forbidden-ip 2.2.2.1
[RouterB-ip-pool-pool1] remote-server 10.1.1.1
[RouterB-ip-pool-pool1] quit
# 在GigabitEthernet3/1/1接口上配置本端自动生成IPv6链路本地地址。
[RouterB] interface gigabitethernet 3/1/1
[RouterB-GigabitEthernet3/1/1] ipv6 address auto link-local
# 取消对RA消息发布的抑制。
[RouterB-GigabitEthernet3/1/1] undo ipv6 nd ra halt
# 配置接口工作在DHCPv4中继模式。
[RouterB-GigabitEthernet3/1/1] dhcp select relay
# 配置接口工作在DHCPv6服务器模式。
[RouterB-GigabitEthernet3/1/1] ipv6 dhcp select server
# 在GigabitEthernet3/1/1接口上启用PPPoE Server协议,将该以太网接口与虚拟模板接口1绑定。
[RouterB-GigabitEthernet3/1/1] pppoe-server bind virtual-template 1
[RouterB-GigabitEthernet3/1/1] quit
# (NDRA使用)配置DHCPv6前缀池1,包含的前缀为2003::/32,分配的前缀长度为64,即前缀池1包含2003::/64~2003:0:FFFF:FFFF::/64范围内的4294967296个前缀。
[RouterB] ipv6 dhcp prefix-pool 1 prefix 2003::/32 assign-len 64
# 创建名称为ndra的IPv6地址池,并引用前缀池1。
[RouterB] ipv6 pool ndra
[RouterB-ipv6-pool-ndra] prefix-pool 1 export-route
[RouterB-ipv6-pool-ndra] quit
# (IA_PD使用)配置DHCPv6前缀池6,包含的前缀为4001::/32,分配的前缀长度为42。
[RouterB] ipv6 dhcp prefix-pool 6 prefix 4001::/32 assign-len 42
# 创建名称为iapd的IPv6地址池,在地址池下引用前缀池6。
[RouterB] ipv6 pool iapd
[RouterB-ipv6-pool-iapd] prefix-pool 6 export-route
[RouterB-ipv6-pool-iapd] quit
# 配置PPPoE用户。
[RouterB] local-user user1 class network
[RouterB-luser-network-user1] password simple 123456TESTplat&!
[RouterB-luser-network-user1] service-type ppp
[RouterB-luser-network-user1] quit
# 在ISP域下配置使用本地AAA方案,并为用户授权IP地址池、ND前缀池、IPv6 DNS地址和地址池属性。
[RouterB] domain name dm1
[RouterB-isp-dm1] authentication ppp local
[RouterB-isp-dm1] accounting ppp local
[RouterB-isp-dm1] authorization ppp local
[RouterB-isp-dm1] authorization-attribute ip-pool pool1
[RouterB-isp-dm1] authorization-attribute ipv6-nd-prefix-pool ndra
[RouterB-isp-dm1] authorization-attribute primary-dns ipv6 2:2::3
[RouterB-isp-dm1] authorization-attribute ipv6-pool iapd
(3) 配置Router A(PPPoE Client)
· 本设备(本例中为Router B)仅支持作为PPPoE Server,不支持作为PPPoE Client。
· 担任PPPoE Client角色的产品的不同版本的配置命令可能存在差异,本节配置仅供参考,有关PPPoE Client上配置的详细介绍,请参见担任PPPoE Client角色的设备的产品手册。
# 在Dialer1接口上开启共享DDR。
<RouterA> system-view
[RouterA] interface dialer 1
[RouterA-Dialer1] dialer bundle enable
# 配置Router A被Router B以CHAP方式认证时Router A发送的CHAP用户名和密码。
[RouterA-Dialer1] ppp chap user user1
[RouterA-Dialer1] ppp chap password simple 123456TESTplat&!
# 配置PPPoE Client工作在永久在线模式。
[RouterA-Dialer1] dialer timer idle 0
# 配置DDR自动拨号的间隔时间为60秒。
[RouterA-Dialer1] dialer timer autodial 60
# (IPv4使用)配置Dialer1接口通过协商获取IP地址,Dialer1接口主动向对端请求DNS服务器地址,以及Dialer1接口可以被动地接收对端指定的DNS服务器地址。
[RouterA-Dialer1] ip address ppp-negotiate
[RouterA-Dialer1] ppp ipcp dns request
[RouterA-Dialer1] ppp ipcp dns admit-any
# (IPv4使用)配置直接使用Dialer1接口的IP地址对内网访问外网的IP流量进行地址转换。
[RouterA-Dialer1] nat outbound
# (NDRA使用)在Dialer1接口上开启无状态地址自动配置功能,使接口通过无状态自动配置方式生成全球单播地址。
[RouterA-Dialer1] ipv6 address auto
# (IA_PD使用)配置Dialer1接口作为DHCPv6客户端,通过DHCPv6方式获取IPv6地址和其他网络配置参数。
[RouterA-Dialer1] ipv6 address dhcp-alloc
# (IA_PD使用)配置Dialer1接口作为DHCPv6客户端,通过DHCPv6方式获取IPv6前缀和其他网络配置参数;指定获取到IPv6前缀后,创建编号为1的IPv6前缀,该前缀编号1对应的IPv6前缀为DHCPv6客户端获取到的前缀。
[RouterA-Dialer1] ipv6 dhcp client pd 1
[RouterA-Dialer1] quit
# 配置一个PPPoE会话,该会话对应Dialer bundle 1(Dialer bundle 1对应Dialer1接口)。
[RouterA] interface gigabitethernet 3/1/2
[RouterA-GigabitEthernet3/1/2] pppoe-client dial-bundle-number 1
[RouterA-GigabitEthernet3/1/2] quit
# 配置缺省路由。
[RouterA] ip route-static 0.0.0.0 0 dialer 1
[RouterA] ipv6 route-static :: 0 dialer 1
# 启用DHCP服务。
[RouterA] dhcp enable
# 配置DHCP地址池pool1,以便为内网用户分配私网IPv4地址。
[RouterA] dhcp server ip-pool pool1
[RouterA-dhcp-pool-pool1] network 192.168.1.0 24
[RouterA-dhcp-pool-pool1] gateway-list 192.168.1.1
[RouterA-dhcp-pool-pool1] dns-list 8.8.8.8
# 将IP地址192.168.1.1配置为禁用地址。
[RouterA-dhcp-pool-pool1] forbidden-ip 192.168.1.1
[RouterA-dhcp-pool-pool1] quit
# 在接口GigabitEthernet3/1/1上配置内网用户的IPv4网关地址。
[RouterA] interface gigabitethernet 3/1/1
[RouterA-GigabitEthernet3/1/1] ip address 192.168.1.1 24
# 接口GigabitEthernet3/1/1上取消对RA消息发布的抑制。
[RouterA-GigabitEthernet3/1/1] undo ipv6 nd ra halt
# 在接口GigabitEthernet3/1/1上配置动态获取IPv6前缀的编号为1,即该接口将使用编号为1的前缀生成IPv6地址,并将编号为1的IPv6前缀通过RA报文分配给终端设备。
[RouterA-GigabitEthernet3/1/1] ipv6 address 1 123::123:1:1/64
[RouterA-GigabitEthernet3/1/1] quit
配置完成后,当Router A使用用户名user1、密码123456TESTplat&!,通过PPPoE接入Router B后,Router B通过DHCPv4获取到一个IPv4地址,以及通过授权的IPv6前缀和IPv6CP协商获取的IPv6接口标识就自动生成一个IPv6全球单播地址。
[RouterB] display access-user interface gigabitethernet 3/1/1
UserID Interface IP address MAC address S-/C-VLAN
Username IPv6 address Access type
0x6 GE3/1/1 2.2.2.2 001b-21a8-0949 -/-
user1 2003::F85B:7EE1:1410 PPPoE
:74C9
Router B通过DHCPv6协议为Router A分配一个代理前缀。
# 显示DHCPv6前缀绑定信息。
[RouterB] display ipv6 dhcp server pd-in-use
Pool: iapd
IPv6 prefix Type Lease expiration
4001::/42 Auto(C) Jul 10 19:45:01 2019
Pool: ndra
IPv6 prefix Type Lease expiration
2003::/64 Auto(C) Expires after 2100
以上信息表示,Router B通过DHCPv6协议为Router A分配一个代理前缀。
# 显示Router A上创建的IPv6前缀信息。
[RouterA] display ipv6 prefix
Number Prefix Type
1 4001::/42 Dynamic
以上信息表示,Router A从Router B获取到代理前缀后,已根据ipv6 dhcp client pd 1配置创建了编号为1的IPv6前缀。
Router A把分配到的代理前缀4001::/42再分配给Host,Host用来生成IPv6全球单播地址。
Host和Router之间通过以太网接口相连,Host通过PPPoE接入Router,Router作为PPPoE Server通过DHCPv4协议为Host分配IPv4地址,通过DHCPv6协议为Host分配IPv6地址。
图1-12 配置PPPoE Server通过本地DHCP服务器为双协议栈用户分配IP地址组网图
# 配置虚拟模板接口1的参数,采用CHAP认证对端。
<Router> system-view
[Router] interface virtual-template 1
[Router-Virtual-Template1] ppp authentication-mode chap domain dm1
# 取消对RA消息发布的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址,配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[Router-Virtual-Template1] undo ipv6 nd ra halt
[Router-Virtual-Template1] ipv6 nd autoconfig managed-address-flag
[Router-Virtual-Template1] ipv6 nd autoconfig other-flag
[Router-Virtual-Template1] quit
# 在GigabitEthernet3/1/1接口上配置本端自动生成IPv6链路本地地址。
[Router] interface gigabitethernet 3/1/1
[Router-GigabitEthernet3/1/1] ipv6 address auto link-local
# 取消对RA消息发布的抑制。
[Router-GigabitEthernet3/1/1] undo ipv6 nd ra halt
# 配置接口工作在DHCPv6服务器模式。
[Router-GigabitEthernet3/1/1] ipv6 dhcp select server
# 在GigabitEthernet3/1/1接口上启用PPPoE Server协议,将该以太网接口与虚拟模板接口1绑定。
[Router-GigabitEthernet3/1/1] pppoe-server bind virtual-template 1
[Router-GigabitEthernet3/1/1] quit
# 启用DHCPv4服务。
[Router] dhcp enable
# 配置本地BAS IP地址池pool1。
[Router] ip pool pool1 bas local
[Router-ip-pool-pool1] gateway 1.1.1.1 24
[Router-ip-pool-pool1] dns-list 8.8.8.8
# 将IP地址1.1.1.1配置为禁用地址。
[Router-ip-pool-pool1] forbidden-ip 1.1.1.1
[Router-ip-pool-pool1] quit
# 创建名称为pool1的IPv6地址池,配置IPv6地址池动态分配的地址网段为3001::/32,分配的DNS服务器地址为2001:2::3。
[Router] ipv6 pool pool1
[Router-ipv6-pool-pool1] network 3001::/32 export-route
[Router-ipv6-pool-pool1] dns-server 2001:2::3
[Router-ipv6-pool-pool1] quit
# 配置PPPoE用户。
[Router] local-user user1 class network
[Router-luser-network-user1] password simple 123456TESTplat&!
[Router-luser-network-user1] service-type ppp
[Router-luser-network-user1] quit
# 在ISP域dm1下,配置域用户使用本地AAA方案,并授权地址池。
[Router] domain name dm1
[Router-isp-dm1] authentication ppp local
[Router-isp-dm1] accounting ppp local
[Router-isp-dm1] authorization ppp local
[Router-isp-dm1] authorization-attribute ip-pool pool1
[Router-isp-dm1] authorization-attribute ipv6-pool pool1
[Router-isp-dm1] quit
配置完成后,当Host使用用户名user1、密码123456TESTplat&!,通过PPPoE接入Router后, Host分配一个IPv4地址和一个IPv6地址。
[Router] display access-user interface gigabitethernet 3/1/1
UserID Interface IP address MAC address S-/C-VLAN
Username IPv6 address Access type
0xc GE3/1/1 1.1.1.2 001b-21a8-0949 -/-
user1 3001::1 PPPoE
· 采用RADIUS作为认证、授权和计费服务器。
· RADIUS服务器为PPPoE接入用户授权的IP地址池和VPN实例分别为pool1、vpn1。
· vpn1中的用户在服务器授权的IP地址池pool1中获取IP地址。
图1-13 PPPoE Server为接入用户授权地址池和VPN配置组网图
启动PPPoE功能之前,需要首先配置MPLS L3VPN功能,通过为两端的VPN 1指定匹配的VPN Target,确保两端的VPN 1之间可以互通。本例仅介绍连接客户端的PE 1上接入认证的相关配置,其它配置请参考“MPLS配置指导”中的“MPLS L3VPN”。
(1) 配置RADIUS服务器
下面以Linux系统下的Free RADIUS服务器为例,说明RADIUS 服务器的基本配置。
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 10.1.1.1/24 {
secret = radius
}
以上信息表示:RADIUS客户端的IP地址为10.1.1.1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
user1 Auth-Type == CHAP,User-Password := 123456TESTplat&!
Service-Type = Framed-User,
Framed-Protocol = PPP,
Framed-Pool = "pool1",
H3C-VPN-Instance = "vpn1",
以上信息表示:用户名为user1,用户密码为字符串123456TESTplat&!,授权VPN实例名称为vpn1,授权IP地址池名称为pool1。
(2) 配置Router A
¡ 配置PPPoE Server
# 配置虚拟模板接口1的参数,采用CHAP认证对端,并使用ISP域dm1作为认证域。
<RouterA> system-view
[RouterA] interface virtual-template 1
[RouterA-Virtual-Template1] ppp authentication-mode chap domain dm1
[RouterA-Virtual-Template1] quit
# 启用DHCP服务。
[RouterA] dhcp enable
# 配置本地BAS IP地址池pool1。
[RouterA] ip pool pool1 bas local
[RouterA-ip-pool-pool1] vpn-instance vpn1
[RouterA-ip-pool-pool1] gateway 1.1.1.1 24
[RouterA-ip-pool-pool1] dns-list 8.8.8.8
# 将IP地址1.1.1.1配置为禁用地址。
[RouterA-ip-pool-pool1] forbidden-ip 1.1.1.1
[RouterA-ip-pool-pool1] quit
# 在接口GigabitEthernet3/1/1上启用PPPoE Server协议,并将该接口与虚拟模板接口1绑定。
[RouterA] interface gigabitethernet 3/1/1
[RouterA-GigabitEthernet3/1/1] pppoe-server bind virtual-template 1
[RouterA-GigabitEthernet3/1/1] quit
¡ 配置RADIUS方案
# 创建名称为rs1的RADIUS方案并进入该方案视图。
[RouterA] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[RouterA-radius-rs1] primary authentication 10.1.1.2
[RouterA-radius-rs1] primary accounting 10.1.1.2
[RouterA-radius-rs1] key authentication simple radius
[RouterA-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[RouterA-radius-rs1] user-name-format without-domain
[RouterA-radius-rs1] quit
¡ 配置认证域
# 创建并进入名称为dm1的ISP域。
[RouterA] domain name dm1
# 配置ISP域使用的RADIUS方案rs1。
[RouterA-isp-dm1] authentication ppp radius-scheme rs1
[RouterA-isp-dm1] authorization ppp radius-scheme rs1
[RouterA-isp-dm1] accounting ppp radius-scheme rs1
[RouterA-isp-dm1] quit
用户认证通过后,在Host A上可以Ping通对端VPN1中的CE。
# 显示VPN1中DHCP地址绑定信息。
[RouterA] display dhcp server ip-in-use vpn-instance vpn1
IP address Client identifier/ Lease expiration Type
Hardware address
1.1.1.2 3030-3030-2e30-3030- Unlimited Auto(C)
662e-3030-3033-2d45-
7468-6572-6e65-74
· 主机作为PPPoE Client,运行PPPoE客户端拨号软件。
· BRAS设备需要支持PPPoE Server的转发与控制分离,其中UP作为转发设备负责报文转发与流量控制等,CP作为控制设备负责用户识别与发起认证请求、身份认证、地址分配与管理和接入控制等。
图1-14 PPPoE Server IPv4转发与控制分离组网图
(1) 配置IP地址和路由协议
请按照图1-14配置各接口的IP地址和子网掩码,在CP和UP上配置OSPF协议。(具体配置过程略)
(2) 配置UP
a. 配置设备工作在转发模式
# 配置设备工作在转发模式。
<UP> system-view
[UP] work-mode user-plane
b. 配置管理通道(NETCONF服务端)
# 开启Stelnet服务器功能。
[UP] ssh server enable
# 开启NETCONF over SSH的接入方式。
[UP] netconf ssh server enable
# 开启edit-config:replace操作的全替换功能。
[UP] netconf edit-config full-replace enable
# 设置NETCONF over SSH客户端登录用户线的认证方式为AAA认证。
[UP] line vty 0 63
[UP-line-vty0-63] authentication-mode scheme
[UP-line-vty0-63] quit
# 创建设备管理类本地用户netconf,并设置密码为明文123456TESTplat&!,服务类型为SSH,用户角色为network-admin。
[UP] local-user netconf class manage
[UP-luser-manage-netconf] password simple 123456TESTplat&!
[UP-luser-manage-netconf] service-type ssh
[UP-luser-manage-netconf] authorization-attribute user-role network-admin
[UP-luser-manage-netconf] quit
# 配置SSH用户netconf的服务器类型为NETCONF,认证方式为password认证。
[UP] ssh user netconf service-type netconf authentication-type password
(3) 配置CP
担任CP角色的产品的不同版本的配置命令可能存在差异,本节配置仅供参考,有关CP上配置的详细介绍,请参见担任CP角色的设备的产品手册。
a. 配置管理通道(NETCONF客户端)
# 进入netconf client视图。
<CP> system-view
[CP] netconf-client
[CP-netconf-client]
# 配置NETCONF连接策略的源IP地址。
[CP-netconf-client] source-address 20.1.1.1
# 配置NETCONF连接策略abc,并进入NETCONF连接策略视图。
[CP-netconf-client] connection abc
[CP-netconf-client-connection-abc]
# 配置CP与UP建立NETCONF连接时使用的用户名netconf、明文密码123456TESTplat&!。
[CP-netconf-client-connection-abc] user-name netconf password simple 123456TESTplat&!
# 配置CP向IP地址为10.1.1.1的UP请求建立NETCONF连接。
[CP-netconf-client-connection-abc] destination-address 10.1.1.1
[CP-netconf-client-connection-abc] quit
[CP-netconf-client] quit
# 创建ID为1024的UP管理实例,并进入UP管理视图。
[CP] up-manage id 1024
[CP-up-manage-1024]
# 绑定NETCONF连接策略abc。
[CP-up-manage-1024] bind netconf-connection abc
b. 配置协议通道(CP侧)
# 配置CP和UP之间的协议通道,其VXLAN ID为10,源IP地址为20.1.1.1,目的IP地址为10.1.1.1。
[CP-up-manage-1024] protocol-tunnel vxlan 10 source 20.1.1.1 destination 10.1.1.1
c. 配置协议通道(UP侧)
# 创建并进入up-config视图。
[CP-up-manage-1024] up-config
[CP-up-manage-1024-up-config]
# 创建并进入cu-agent视图,配置UP和CP之间的协议通道,其VXLAN ID为10,源IP地址为10.1.1.1,目的IP地址为20.1.1.1。
[CP-up-manage-1024-up-config] cu-agent
[CP-up-manage-1024-up-config-cu-agent] protocol-tunnel vxlan 10 source 10.1.1.1 destination 20.1.1.1
[CP-up-manage-1024-up-config-cu-agent] quit
[CP-up-manage-1024-up-config] quit
[CP-up-manage-1024] quit
d. 配置控制通道(CP侧)
# 开启CUSP控制器功能,并进入CUSP控制器视图。
[CP] cusp controller
[CP-cusp-controller]
# 配置CUSP控制器的监听IP地址为20.1.1.1。
[CP-cusp-controller] listening-ip 20.1.1.1
# 创建CUSP代理up1,并进入CUSP代理视图。
[CP-cusp-controller] agent up1
# 配置CUSP代理up1的IP地址为10.1.1.1。
[CP-cusp-controller-agent-up1] agent-ip 10.1.1.1
[CP-cusp-controller-agent-up1] quit
[CP-cusp-controller] quit
# 配置UP管理实例1024使用CUSP代理up1建立控制通道。
[CP] up-manage id 1024
[CP-up-manage-1024] control-tunnel cusp-agent up1
e. 配置控制通道(UP侧)
# 进入up-config视图。
[CP-up-manage-1024] up-config
[CP-up-manage-1024-up-config]
# 创建名称为up1的cusp-agent,并进入cusp-agent视图。
[CP-up-manage-1024-up-config] cusp agent up1
# 配置UP使用源IP地址10.1.1.1和CP上IP地址20.1.1.1建立CUSP连接。
[CP-up-manage-1024-up-config-cusp-agent-up1] local-address 10.1.1.1
[CP-up-manage-1024-up-config-cusp-agent-up1] controller address 20.1.1.1
[CP-up-manage-1024-up-config-cusp-agent-up1] quit
[CP-up-manage-1024-up-config] quit
f. 创建远端UP接口
# 创建远端UP接口Remote-XGE3/1/1。
[CP-up-manage-1024] remote interface ten-gigabitethernet 3/1/1
[CP-up-manage-1024] quit
g. 配置DHCP服务器
# 配置ODAP类型的IP地址池pool1。
[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
h. 配置本地用户
# 创建一个PPPoE用户。
[CP] local-user user1 class network
[CP-luser-network-user1] password simple 123456TESTplat&!
[CP-luser-network-user1] service-type ppp
[CP-luser-network-user1] quit
i. 配置认证域
# 在ISP域dm1下,配置域用户使用本地AAA方案,并授权地址池。
[CP] domain name dm1
[CP-isp-dm1] authentication ppp local
[CP-isp-dm1] accounting ppp local
[CP-isp-dm1] authorization ppp local
[CP-isp-dm1] authorization-attribute ip-pool pool1
[CP-isp-dm1] quit
j. 配置PPPoE Server
# 配置虚拟模板接口1的参数,采用CHAP认证对端。
[CP] interface virtual-template 1
[CP-Virtual-Template1] ppp authentication-mode chap domain dm1
[CP-Virtual-Template1] quit
# 在远端接口Remote-XGE1024/3/1/1上启用PPPoE Server协议,并将该接口与虚拟模板接口1绑定。
[CP] interface remote-xge 1024/3/1/1
[CP-Remote-XGE1024/3/1/1] pppoe-server bind virtual-template 1
[CP-Remote-XGE1024/3/1/1] quit
配置完成后,当Host使用用户名user1、密码123456TESTplat&!,就能通过设备Router接入到Internet。Host的IP地址为CP所指定的地址。
# 显示CP上PPPoE接入用户的信息。
[CP] display access-user
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username IPv6 address Access type
0x6 R-XGE1024/3/1/1 1.0.0.1 0000-5e08-9d00 -/-
user1 - PPPoE
· 主机作为PPPoE Client,运行PPPoE客户端拨号软件。
· BRAS设备需要支持PPPoE Server的转发与控制分离,其中UP作为转发设备负责报文转发与流量控制等,CP作为控制设备负责用户识别与发起认证请求、身份认证、地址分配与管理和接入控制等。
图1-15 PPPoE Server IPv6转发与控制分离接入配置组网图
(1) 配置IP地址和路由协议
请按照图1-15配置各接口的IP地址和子网掩码,在CP和UP上配置OSPF协议。(具体配置过程略)
UP和CP之间的管理通道(NETCONF)、控制通道(CUSP)和协议通道(GPE VXLAN)已建立成功。(具体配置过程略)
(2) 配置UP
# 配置UP工作在转发模式。
<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
b. 配置本地用户
# 创建一个PPPoE用户。
[CP] local-user user1 class network
[CP-luser-network-user1] password simple 123456TESTplat&!
[CP-luser-network-user1] service-type ppp
[CP-luser-network-user1] quit
c. 配置认证域
# 在ISP域dm1下,配置域用户使用本地AAA方案,并授权地址池。
[CP] domain name dm1
[CP-isp-dm1] authentication ppp local
[CP-isp-dm1] accounting ppp local
[CP-isp-dm1] authorization ppp local
[CP-isp-dm1] authorization-attribute ipv6-pool pool1
[CP-isp-dm1] quit
d. 配置PPPoE Server
# 配置虚拟模板接口1的参数,采用CHAP认证对端。
[CP] interface virtual-template 1
[CP-Virtual-Template1] ppp authentication-mode chap domain dm1
# 取消对RA消息发布的抑制。配置被管理地址的配置标志位为1,即主机通过DHCPv6服务器获取IPv6地址,配置其他信息配置标志位为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。
[CP-Virtual-Template1] undo ipv6 nd ra halt
[CP-Virtual-Template1] ipv6 nd autoconfig managed-address-flag
[CP-Virtual-Template1] ipv6 nd autoconfig other-flag
[CP-Virtual-Template1] quit
# 配置远端接口Remote-XGE1024/3/1/1工作在DHCPv6服务器模式。
[CP] interface remote-xge 1024/3/1/1
[CP–Remote-XGE1024/3/1/1] ipv6 dhcp select server
# 配置自动生成IPv6链路本地地址,该IPv6链路本地地址作为用户的网关。
[CP–Remote-XGE1024/3/1/1] ipv6 address auto link-local
# 取消对RA消息发布的抑制。
[CP–Remote-XGE1024/3/1/1] undo ipv6 nd ra halt
[CP–Remote-XGE1024/3/1/1] quit
# 在远端接口Remote-XGE1024/3/1/1上启用PPPoE Server协议,并将该接口与虚拟模板接口1绑定。
[CP-Remote-XGE1024/3/1/1] pppoe-server bind virtual-template 1
[CP-Remote-XGE1024/3/1/1] quit
# 查看CP上的PPPoE用户在线信息。
[CP] display access-user
Slot 97:
UserID Interface IP address MAC address S-/C-VLAN
Username IPv6 address Access type
0x1 R-XGE1024/3/1/1 - 000c-29a6-b656 -/-
user1 1::2 PPPoE
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!