02-PPP配置
本章节下载: 02-PPP配置 (295.91 KB)
目 录
l 手册中标有请以设备实际情况为准的地方,请参见“用户手册”中的“特性差异化列表”部分的描述。
l 设备支持的接口类型和编号与设备的实际情况相关,本手册涉及以太网接口的配置举例统一使用Eth口举例说明。实际使用中请根据具体设备的接口类型和编号进行配置。
PPP(Point to Point Protocol)协议是在点到点链路上承载网络层数据包的一种链路层协议,由于它能够提供用户验证、易于扩充,并且支持同/异步通信,因而获得广泛应用。
PPP定义了一整套的协议,包括链路控制协议(LCP)、网络层控制协议(NCP)和验证协议(PAP和CHAP)。
l 链路控制协议(Link Control Protocol,LCP):主要用来建立、拆除和监控数据链路。
l 网络控制协议(Network Control Protocol,NCP):主要用来协商在该数据链路上所传输的数据包的格式与类型。
l 用于网络安全方面的验证协议族PAP和CHAP。
PAP(Password Authentication Protocol)验证为两次握手验证,密码为明文,PAP验证的过程如下:
(1) 被验证方发送用户名和密码到验证方;
(2) 验证方根据本端用户表查看是否有此用户以及密码是否正确,然后返回不同的响应(Acknowledge or Not Acknowledge)。
图1-1 PAP验证示意图
PAP不是一种安全的验证协议。当验证时,口令以明文方式在链路上发送,并且由于完成PPP链路建立后,被验证方会不停地在链路上反复发送用户名和口令,直到身份验证过程结束,所以不能防止攻击。
CHAP(Challenge-Handshake Authentication Protocol)验证为三次握手验证,密码为密文(密钥)。
CHAP单向验证是指一端作为验证方,另一端作为被验证方。双向验证是单向验证的简单叠加,即两端都是既作为验证方又作为被验证方。在实际应用中一般只采用单向验证。
CHAP单向验证过程分为两种情况:验证方配置了用户名和验证方没有配置用户名。推荐使用验证方配置用户名的方式,这样可以对验证方的身份进行确认。
l 验证方配置了用户名的CHAP验证过程如下:
(1) 验证方主动发起验证请求,验证方向被验证方发送一些随机产生的报文(Challenge),并同时将本端的用户名附带上一起发送给被验证方;
(2) 被验证方接到验证方的验证请求后,根据此报文中验证方的用户名在本端的用户表查找该用户对应的密码,如果在用户表找到了与验证方用户名相同的用户,便利用报文ID、此用户的密钥(密码)和MD5算法对该随机报文进行加密,将生成的密文和被验证方自己的用户名发回验证方(Response);
(3) 验证方用自己保存的被验证方密码和MD5算法对原随机报文加密,比较二者的密文,根据比较结果返回不同的响应(Acknowledge or Not Acknowledge)。
l 验证方没有配置用户名的CHAP验证过程如下:
(1) 验证方主动发起验证请求,验证方向被验证方发送一些随机产生的报文(Challenge);
(2) 被验证方接到验证方的验证请求后,利用报文ID、缺省的CHAP密码和MD5算法对该随机报文进行加密,将生成的密文和自己的用户名发回验证方(Response);
(3) 验证方用自己保存的被验证方密码和MD5算法对原随机报文加密,比较二者的密文,根据比较结果返回不同的响应(Acknowledge or Not Acknowledge)。
图1-2 CHAP验证示意图
PPP运行过程(参见下图)如下:
(1) 在开始建立PPP链路时,先进入到Establish阶段。
(2) 在Establish阶段PPP链路进行LCP协商,协商内容包括工作方式(是SP还是MP)、验证方式和最大传输单元等。LCP协商成功后进入Opened状态,表示底层链路已经建立。
(3) 如果配置了验证(远端验证本地或者本地验证远端)则进入Authenticate阶段,开始CHAP或PAP验证。
(4) 如果验证失败进入Terminate阶段,拆除链路,LCP状态转为Down;如果验证成功就进入Network协商阶段(NCP),此时LCP状态仍为Opened,而IPCP状态从Initial转到Request。
(5) NCP协商支持IPCP协商,IPCP协商主要包括双方的IP地址。通过NCP协商来选择和配置一个网络层协议。只有相应的网络层协议协商成功后,该网络层协议才可以通过这条PPP链路发送报文。
(6) PPP链路将一直保持通信,直至有明确的LCP或NCP帧关闭这条链路,或发生了某些外部事件(例如用户的干预)。
图1-3 PPP运行流程图
有关PPP的详细说明,请参考RFC 1661。
表1-1 配置PPP
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入指定接口的视图 |
interface interface-type interface-number |
- |
|
配置接口封装的链路层协议为PPP |
link-protocol ppp |
可选 缺省情况下,接口封装的链路层协议为PPP |
|
配置轮询时间间隔 |
timer hold seconds |
可选 缺省情况下,轮询时间间隔为10秒 |
|
配置PPP验证方式 |
配置PAP验证 |
可选 二者只能选其一 缺省情况下,PPP不进行验证 |
|
配置CHAP验证 |
|||
配置PPP协商参数 |
可选 |
||
配置PPP计费统计功能 |
可选 |
本章只介绍本地认证方案,远端AAA认证方案请参见“安全分册”中的“AAA配置”。
表1-2 配置PAP验证的验证方
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入指定接口的视图 |
interface interface-type interface-number |
- |
配置本地验证对端的方式为PAP |
ppp authentication-mode pap [ [ call-in ] domain isp-name ] |
必选 缺省情况下,PPP协议不进行验证 |
退回系统视图 |
quit |
- |
创建本地用户,并进入本地用户视图 |
local-user username |
必选 |
设置本地用户的密码 |
password { cipher | simple } password |
必选 |
设置本地用户的服务类型以及其他属性 |
service-type ppp [ callback-nocheck | callback-number callback-number | call-number call-number [ :subcall-number ] ] |
必选 |
退回系统视图 |
quit |
- |
创建一个ISP域,或者进入已创建ISP域的视图 |
domain isp-name |
可选 |
配置域用户使用本地认证方案 |
authentication ppp local |
可选 |
关于创建本地用户以及设置本地用户属性、创建域以及设置域的属性的详细说明,请参见“安全分册”中的“AAA配置”。
表1-3 配置PAP验证的被验证方
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入指定接口的视图 |
interface interface-type interface-number |
- |
配置本地被对端以PAP方式验证时本地发送的PAP用户名和密码 |
ppp pap local-user username password { cipher | simple } password |
必选 缺省情况下,被对端以PAP方式验证时,本地设备发送的用户名和密码均为空 |
CHAP验证分为两种:验证方配置了用户名和验证方没有配置用户名。
(1) 配置验证方
表1-4 配置验证方
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入指定接口的视图 |
interface interface-type interface-number |
- |
配置本地验证对端的方式为CHAP |
ppp authentication-mode chap [ [ call-in ] domain isp-name ] |
必选 缺省情况下,PPP协议不进行验证 |
配置采用CHAP认证时验证方的用户名 |
ppp chap user username |
必选 在被验证方上为验证方配置的本地用户的用户名必须跟此处配置的一致 |
退回系统视图 |
quit |
- |
为被验证方创建本地用户,并进入本地用户视图 |
local-user username |
必选 |
设置本地用户的密码 |
password { cipher | simple } password |
必选 |
设置本地用户的服务类型以及其他属性 |
service-type ppp [ callback-nocheck | callback-number callback-number | call-number call-number [ :subcall-number ] ] |
必选 |
退回系统视图 |
quit |
- |
创建一个ISP域,或者进入已创建ISP域的视图 |
domain isp-name |
可选 |
配置域用户使用本地认证方案 |
authentication ppp local |
可选 |
关于创建本地用户以及设置本地用户属性、创建域以及设置域的属性的详细说明,请参见“安全分册”中的“AAA配置”。
表1-5 配置被验证方
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入指定接口的视图 |
interface interface-type interface-number |
- |
|
配置采用CHAP认证时被验证方的本地名 |
ppp chap user username |
必选 在验证方上为被验证方配置的本地用户的用户名必须跟此处配置的一致 |
|
设置本地用户以及相应的密码(当选择验证方配置了用户名这种情况,必须配置;当选择验证方没有配置用户名这种情况,不用配置) |
退回系统视图 |
quit |
- |
创建本地用户,并进入本地用户视图 |
local-user username |
可选 |
|
设置本地用户的密码 |
password { cipher | simple } password |
可选 |
(1) 配置验证方
表1-6 配置验证方
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入指定接口的视图 |
interface interface-type interface-number |
- |
配置本地验证对端的方式为CHAP |
ppp authentication-mode chap [ [ call-in ] domain isp-name ] |
必选 缺省情况下,PPP协议不进行验证 |
退回系统视图 |
quit |
- |
为被验证方创建本地用户,并进入本地用户视图 |
local-user username |
必选 |
设置本地用户的密码 |
password { cipher | simple } password |
必选 |
设置本地用户的服务类型以及其他属性 |
service-type ppp [ callback-nocheck | callback-number callback-number | call-number call-number [ :subcall-number ] ] |
必选 |
退回系统视图 |
quit |
- |
创建一个ISP域,或者进入已创建ISP域的视图 |
domain isp-name |
可选 |
配置域用户使用本地认证方案 |
authentication ppp local |
可选 |
关于创建本地用户以及设置本地用户属性、创建域以及设置域的属性的详细说明,请参见“安全分册”中的“AAA配置”。
(2) 配置被验证方
表1-7 配置被验证方
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入指定接口的视图 |
interface interface-type interface-number |
- |
配置采用CHAP认证时被验证方的用户名 |
ppp chap user username |
必选 在验证方上为被验证方配置的本地用户的用户名必须跟此处配置的一致 |
设置缺省的CHAP验证密码 |
ppp chap password { cipher | simple } password |
必选 |
可以配置的PPP协商参数包括:协商超时时间间隔、协商IP地址以及协商DNS地址。
协商超时时间间隔:在PPP协商过程中,如果在这个时间间隔内没有收到对端的应答报文,则PPP将会重发前一次发送的报文。超时时间间隔可选范围为1秒到10秒。
协商IP地址的方式有两种:
l 配置设备作为Client端:若本端接口封装的链路层协议为PPP但还未配置IP地址,而对端已有IP地址时,可为本端接口配置IP地址可协商属性,使本端接口接受PPP协商产生的由对端分配的IP地址。该配置主要用于在通过ISP访问Internet时,得到由ISP分配的IP地址。
l 配置设备作为Server端:若是设备作为Server为对端设备分配IP地址,则应首先在域视图或系统视图下配置本地IP地址池,指明地址池的地址范围,然后在接口视图下指定该接口使用的地址池。
设备在进行PPP地址协商的过程中可以进行DNS地址协商,此时设备既可以配置为接收对端分配的DNS地址,也可以配置为向对方提供DNS地址。一般情况下,当PC与设备通过PPP协议相连时(通常为PC机拨号连接设备),设备应为对端设备指定DNS地址,这样PC就可以通过域名直接访问Internet;当设备通过PPP协议连接运营商的接入服务器时,设备应配置为被动接收或主动请求对端指定DNS地址,这样设备就可以使用接入服务器分配的DNS来解析域名。
目前,设备只支持作为Client端,暂不支持作为Server端。
表1-8 配置PPP协商参数
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入指定接口的视图 |
interface interface-type interface-number |
- |
配置协商超时时间间隔 |
ppp timer negotiate seconds |
可选 缺省情况下,协商超时时间间隔为3秒 |
配置PPP协商IP地址 |
ip address ppp-negotiate |
可选 |
PPP协议可以为每条PPP链路提供基于流量的计费统计功能,具体统计内容包括出入两个方向上流经本链路的报文数和字节数。AAA应用模块可以获取这些流量统计信息由于计费控制使用。
表1-9 配置PPP计费统计功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入指定接口的视图 |
interface interface-type interface-number |
- |
使能PPP计费统计功能 |
ppp account-statistics enable |
必选 缺省情况下,不启动计费统计功能 |
PPP验证失败,链路始终不能转为up状态。
可能是由于PPP验证参数配置不正确,导致PPP验证失败。
打开PPP的调试开关,会看到LCP协商成功并转为up状态后进行PAP或CHAP协商,然后LCP转为down状态,则需要修改PPP验证参数的配置,保证验证方可以通过被验证方的验证。
物理链路始终是down状态。
物理链路始终是down状态,可能有以下原因:
l 接口没有被激活;
l 接口被管理员down掉;
l 物理接口已通,但是链路协商没有通过。
可以执行display interface命令来查看接口当前状态,判断故障原因,从而采取相应的方法使物理链路up。
接口有五种状态:
serial number is administratively down, line protocol is down:表示该接口被管理员down。
serial number is down, line protocol is down:表示该接口没有被激活或物理层没有转为up状态。
serial number is up, line protocol is up:表示该接口链路协商即LCP协商已通过。
serial number is up, line protocol is down:表示该接口已激活,但链路协商仍没有通过。
l 目前,设备不支持PPPoE Server端功能。
l PPPoE Client的支持情况与设备的型号有关,请以设备的实际情况为准。
PPPoE是Point-to-Point Protocol over Ethernet的简称,它可以通过一个远端接入设备为以太网上的主机提供因特网接入服务,并对接入的每个主机实现控制、计费功能。由于很好地结合了以太网的经济性及PPP良好的可扩展性与管理控制功能,PPPoE被广泛应用于小区组网等环境中。
PPPoE协议采用Client/Server方式,它将PPP报文封装在以太网帧之内,在以太网上提供点对点的连接。
PPPoE有两个阶段:Discovery阶段和PPP Session阶段,具体如下:
l Discovery阶段
当一个主机开始PPPoE进程的时候,它必须先识别接入端的以太网MAC地址,建立PPPoE的Session ID。这就是Discovery阶段的目的。
Discovery阶段结束时服务器和主机之间就确定了PPPoE会话的Session ID,双方进入PPPoE Session阶段。
l PPP Session阶段
当PPPoE进入Session阶段后PPP报文就可以作为PPPoE帧的净荷封装在以太网帧发到对端,Session ID必须是Discovery阶段确定的ID,MAC地址必须是对端的MAC地址,PPP报文从Protocol ID开始。在Session阶段,主机或服务器任何一方都可发PADT(PPPoE Active Discovery Terminate)报文通知对方结束本Session。
关于PPPoE的详细介绍,可以参考RFC 2516。
PPPoE在ADSL宽带接入中被广泛使用。通常情况下,一台主机如果要通过ADSL接入Internet,必须在主机上安装PPPoE客户端拨号软件。设备实现了PPPoE Client功能(即PPPoE的客户端拨号功能),用户可以不用在Host上安装PPPoE客户端软件即可接入Internet,而且同一个局域网中的所有Host可以共享一个ADSL账号。
图2-1 PPPoE Client典型组网图
从图2-1可以看到:以太网内的计算机连接到设备上,在设备上运行PPPoE Client。上网的数据首先到达设备,再通过PPPoE协议对数据进行封装,经由设备挂接的ADSL Modem到达ADSL接入服务器,最终进入Internet。整个上网过程,不需要用户另外在计算机上安装PPPoE客户端拨号软件就可以实现。
PPPoE Client的配置包括配置拨号接口和配置PPPoE会话。
在配置PPPoE会话之前,需要先配置一个Dialer接口,并在接口上配置Dialer bundle。每个PPPoE会话唯一对应一个Dialer bundle,而每个Dialer bundle又唯一对应一个Dialer接口。这样就相当于通过一个Dialer接口可以创建一个PPPoE会话。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置Dialer Rule |
dialer-rule dialer-group { protocol-name { permit | deny } | acl acl-number } |
必选 |
创建一个Dialer接口 |
interface dialer number |
必选 |
新建一个Dialer用户 |
dialer user username |
必选 |
配置接口IP地址 |
ip address { address mask | ppp-negotiate } |
必选 |
配置接口的Dialer Bundle |
dialer bundle bundle-number |
必选 |
配置接口的Dialer Group |
dialer-group group-number |
必选 |
根据需要,可能还要在Dialer接口上配置PPP验证等相关参数。
PPPoE会话有三种工作方式:永久在线方式、报文触发方式、诊断方式。工作机制描述如下:
l 永久在线方式是指:当物理线路up后,设备会立即发起PPPoE呼叫,建立PPPoE会话。除非用户删除PPPoE会话,否则此PPPoE会话将一直存在。
l 报文触发方式是指:当物理线路up后,设备不会立即发起PPPoE呼叫,只有当有数据需要传送时,设备才会发起PPPoE呼叫,建立PPPoE会话。如果PPPoE链路的空闲时间超过用户的配置,设备会自动中止PPPoE会话。
l 诊断方式是指:设备在配置完成后立即发起PPPoE呼叫,建立PPPoE会话。每隔用户配置的重建时间间隔,设备会自动断开该会话、并重新发起呼叫建立会话。通过定期建立、删除PPPoE会话,可以监控PPPoE链路是否处于正常工作状态。
PPPoE会话可以配置在物理以太网接口上,也可以配置在由ADSL接口生成的虚拟以太网接口上。当设备通过ADSL接口连入Internet的时候,需要在虚拟以太网接口配置PPPoE会话;当设备通过以太网接口连接ADSL Modem再连入Internet的时候,需要在以太网接口配置PPPoE会话。
表2-2 配置PPPoE会话
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入以太网接口视图 |
interface vlan-interface interface-number |
- |
建立一个PPPoE会话,并且指定该会话所对应的Dialer Bundle |
pppoe-client dial-bundle-number number [ no-hostuniq ] [ diagnose [ interval seconds ] | idle-timeout seconds [ queue-length packets ] ] |
必选 |
在一个以太网接口上可以配置多个PPPoE会话,即一个以太网接口可以同时属于多个Dialer Bundle,但是一个Dialer Bundle中只能拥有一个以太网接口。PPPoE会话是和Dialer Bundle一一对应的。
表2-3 复位或删除PPPoE会话
操作 |
命令 |
说明 |
中止PPPoE Client端的会话,稍后再重新建立此会话 |
reset pppoe-client { all | dial-bundle-number number } |
请在用户视图下进行该操作 |
中止PPPoE Client端的会话,此会话不会再被重新建立 |
undo pppoe-client dial-bundle-number number |
请在VLAN接口视图下进行该操作 |
在完成上述配置后,在任意视图下执行display命令可以显示PPPoE配置后的运行情况,通过查看显示信息验证配置的效果。
表2-4 PPPoE显示和维护
配置 |
命令 |
显示PPPoE Client会话的状态和统计信息 |
display pppoe-client session { packet | summary } [ dial-bundle-number number ] |
Router A的Ethernet1/0/1和AP的Vlan-int1接口相连,要求Router A用PAP/CHAP方式验证AP。
图2-2 PPPoE Client典型配置举例组网图
方案一:PAP认证
(1) 配置Router A作为PPPoE Server
# 增加一个PPPoE用户。
<RouterA> system-view
[RouterA] local-user user2
[RouterA-luser-user2] password simple hello
[RouterA-luser-user2] service-type ppp
[RouterA-luser-user2] quit
# 配置虚拟模板参数。
[RouterA] interface virtual-template 1
[RouterA-Virtual-Template1] ppp authentication-mode pap
[RouterA-Virtual-Template1] ip address 1.1.1.1 255.0.0.0
[RouterA-Virtual-Template1] remote address 1.1.1.2
[RouterA-Virtual-Template1] quit
# 配置PPPoE Server。
[RouterA] interface ethernet 1/0/1
[RouterA-Ethernet1/0/1] pppoe-server bind virtual-template 1
(2) 配置AP作为PPPoE Client
<AP> system-view
[AP] dialer-rule 1 ip permit
[AP] interface dialer 1
[AP-Dialer1] dialer user user2
[AP-Dialer1] dialer-group 1
[AP-Dialer1] dialer bundle 1
[AP-Dialer1] ip address ppp-negotiate
[AP-Dialer1] ppp pap local-user user2 password simple hello
[AP-Dialer1] quit
# 配置PPPoE会话。
[AP] interface Vlan-interface 1
[AP-Vlan-interface1] pppoe-client dial-bundle-number 1
方案二:CHAP认证
(1) 配置Router A作为PPPoE Server
# 增加一个PPPoE用户。
<RouterA> system-view
[RouterA] local-user user2
[RouterA-luser-user2] password simple hello
[RouterA-luser-user2] service-type ppp
[RouterA-luser-user2] quit
# 配置虚拟模板参数。
[RouterA] interface virtual-template 1
[RouterA-Virtual-Template1] ppp authentication-mode chap
[RouterA-Virtual-Template1] ppp chap user user2
[RouterA-Virtual-Template1] ip address 1.1.1.1 255.0.0.0
[RouterA-Virtual-Template1] remote address 1.1.1.2
[RouterA-Virtual-Template1] quit
# 配置PPPoE Server。
[RouterA] interface ethernet 1/0/1
[RouterA-Ethernet1/0/1] pppoe-server bind virtual-template 1
(2) 配置AP作为PPPoE Client
<AP> system-view
[AP] dialer-rule 1 ip permit
[AP] interface dialer 1
[AP-Dialer1] dialer user user2
[AP-Dialer1] dialer-group 1
[AP-Dialer1] dialer bundle 1
[AP-Dialer1] ip address ppp-negotiate
[AP-Dialer1] ppp chap user user2
[AP-Dialer1] quit
[AP] local-user user2
[AP-luser-user1] password simple hello
[AP-luser-user1] quit
# 配置PPPoE会话。
[AP] interface Vlan-interface 1
[AP-Vlan-interface1] pppoe-client dial-bundle-number 1
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!