
PPP(Point-to-Point Protocol,点到点协议)
广域网设备角色:PE,CE,P
CE:用户端连接服务提供商的边缘设备。CE连接一个或多个PE,实现用户接入。
PE:服务提供商连接CE的边缘设备。PE同时连接CE和P设备,是重要的网络节点。
P:服务提供商不连接任何CE的设备。
PPP(Point-to-Point Protocol,点到点协议)是一种常见的广域网数据链路层协议,主要用于在全双工的链路上进行点到点的数据传输封装。
PPP三大组件:
①LCP(Link Control Protocol,链路控制协议)---用于各种链路层参数的协商,例如最大接收单元(MRU),认证模式(PAP,CHAP),魔术字(用于环路检测)等。
②认证(可选)---PAP,CHAP
③NCP((Network Control Protocol,网络控制协议),如IPCP(IP Control Protocol ,IP控制协议),用于各网络层参数(比如IP地址)的协商,更好地支持了网络层协议。
1、LCP协商
LCP报文:
①正常协商---协商由任意一方发送Configure-Request报文发起。如果对端接收此报文且参数匹配,则通过回复Configure-Ack响应协商成功。
②参数不匹配
③参数不识别
2、NCP协商
①静态IP地址协商
②动态IP地址协商 ---动态IP地址协商支持PPP链路一端为对端配置IP地址。
3、认证协商
①PAP(密码认证协议)---使用两次握手明文认证,安全性不高
设备关机状态添加板卡:
R1:
aaa
local-user huawei password cipher admin@123
local-user huawei service-type ppp
interface Serial1/0/0
link-protocol ppp ---------------------接口封装协议为PPP;默认华为使用PPP,思科默认使用HDLC(高级数据链路控制)
ppp authentication-mode pap ------指定认证方式为PAP
ip address 12.1.1.1 255.255.255.0
R2:
interface Serial1/0/0
link-protocol ppp
ppp pap local-user huawei password cipher admin@123 ----配置认证的用户名和密码
ip address 12.1.1.2 255.255.255.0
测试:将接口shutdown,然后undo shutdown;测试直连通信
认证失败抓包:被认证方尝试三次认证,认证失败后,断开链路认证协商
认证成功抓包:
②CHAP(挑战握手认证协议)---使用三次握手密文方式认证,安全性较高
两端设备通过HASH算法计算本地HASH值(ID,随机数,密码);通过HASH值一致或者不一致判断是否合法;
R1:
aaa
local-user huawei password cipher admin@123
local-user huawei service-type ppp
interface Serial1/0/0
link-protocol ppp
ppp authentication-mode chap
ip address 12.1.1.1 255.255.255.0
R2:
interface Serial1/0/0
link-protocol ppp
ppp chap user huawei
ppp chap password cipher admin@123
ip address 12.1.1.2 255.255.255.0
测试:将接口shutdown,然后undo shutdown;测试直连通信
认证失败抓包:被认证方尝试三次认证,认证失败后,断开链路认证协商
认证成功抓包:
PPPoE(PPP over Ethernet,以太网承载PPP协议)
PPPoE集中了PPP和Ethernet两个技术的优点。既有以太网的组网灵活优势,又可以利用PPP协议实现认证、计费等功能。
PPPoE的常见应用场景有家庭用户拨号上网、企业用户拨号上网等。
PPPoE会话建立:
PPPoE的会话建立有三个阶段,PPPoE发现阶段、PPPoE会话阶段和PPPoE终结阶段。
PPPoE报文:
-
PPPoE Client广播发送一个PADI(PPPoE Active Discovery Initial)报文,在此报文中包含PPPoE Client想要得到的服务类型信息。
-
所有的PPPoE Server收到PADI报文之后,将其中请求的服务与自己能够提供的服务进行比较,如果可以提供,则单播回复一个PADO(PPPoE Active Discovery Offer)报文。
-
根据网络的拓扑结构,PPPoE Client可能收到多个PPPoE Server发送的PADO报文,PPPoE Client选择最先收到的PADO报文对应的PPPoE Server做为自己的PPPoE Server,
并单播发送一个PADR(PPPoE Active Discovery
Request)报文,请求服务器分配Session ID。
- PPPoE Server产生一个唯一的会话ID(Session ID),标识和PPPoE Client的这个会话,通过单播发送一个PADS(PPPoE Active Discovery Session-confirmation)报文把会话ID发送给PPPoE Client,会话建立成功后便进入PPPoE Session阶段。
完成之后通信双方都会知道PPPoE的Session_ID以及对方的以太网地址,它们共同确定了唯一的PPPoE
Session。
R2:
ip pool PPPoE -------------------------------创建服务器地址池
network 10.1.1.0 mask 255.255.255.0
excluded-ip-address 10.1.1.2
aaa --------------------------------------------创建认证的用户名和密码
local-user huawei password cipher 123
local-user huawei service-type ppp
interface Virtual-Template0 ------------------创建虚拟模板接口
ppp authentication-mode chap -------------指定认证方式
remote address pool PPPoE -----------------调用地址池
ip address 10.1.1.2 255.255.255.0
interface
GigabitEthernet0/0/0
pppoe-server bind Virtual-Template 0 ------将物理接口和虚拟模板接口绑定
R1:
interface Dialer0 ------------------------------创建拨号接口
link-protocol ppp ----------------------------链路封装协议为PPP(默认)
ppp chap user huawei -----------------------创建CHAP认证用户名
ppp chap password cipher 123 -------------创建CHAP认证密码
ip address ppp-negotiate -------------------指定地址通过协商获得
dialer user hcia ------------------------------创建拨号用户
dialer bundle 1 ------------------------------创建绑定编号
interface
GigabitEthernet0/0/0
pppoe-client dial-bundle-number 1 -------将拨号接口与物理接口绑定
查看R1接口ip地址以及路由表: