PPP与PPPoE协议
作者:互联网
计算机网络实验2 - PPP与PPPoE协议
文章目录
实验一: PPP与PPPoE学习
背景知识
1. PPP
点到点协议( Point-to-Point Protocol, PPP)
点对点链路中应用最广的一种数据链路层协议。
PPP具有差错检测、支持多种网络层协议、允许动态协商IP地址、允许身份认证等功能。
PPP不提供可靠传输,不提供流量控制,不支持多点链路通信,因此,协议比较简单。
PPP主要由以下三部分组成:
① 封装成帧,PPP提供一种封装多协议数据报的方法;
② 链路控制协议(Link Control Protocol, LCP), 用来建立、配置、管理和测试数据链路连接,在建立连接过程中,通信双方可以协商一些选项;
③ 一组网络控制协议( Network Control Protocol, NCP),如IPCP和IPXCP等,每一个NCP支持不同的网络层协议。
PPP的帧格式
2. PPP认证方式
2.1 PAP
两次握手,发起端反复向认证端发送用户名/口令,知道认证端响应确认或拒绝。明文发送用户名和密码,且不限制尝试次数,安全性较差。
2.2 CHAP(Challenge Handshake AuthenticationProtocol)
三次握手方法周期性地认证对端节点。
原理
认证端向对端发送“挑战”信息,对端节点根据挑战信息和指定算法计算出应答信息,并回复给认证端,认证端通过验证应答信息判定认证是否成功。
与PAP相比,CHAP通过使用唯一且不可预测的可变询问消息值提供回送攻击防护功能。
认证端每隔一段时间就会发出-一个新的“挑战"信息,以确认对端连接是否经过授权。
2. PPPoE
基于以太网的点对点协议,简称PPPoE协议( Point-to-Point Protocol over
Ethernet)。提供方便的接入控制和计费。ADSL使用了PPPoE协议。
PPPoE的工作过程
分成两个阶段,即==发现阶段(Discorvery)和PPP会话(承载阶段)==阶段。
- 客户端的用广播的方式发出PADI (PPPOE Active Discovery Initiatio) 包,准备去获得所有可连接的服务端的MAC地址
- 服务端收到PADI包后,返回PADO (PPPOE Active Discovery Offer) 回应;
- 客户端从收到的多个PADO包中,根据其名称类型名或者服务名,选择一个合适的服务端,然后发送PADR (PPPOE Active Discovery Request) 包,另外如果一个客户端在发出PADI后在规定时间内没有收到PADO,会重发PADI;
- 客户端收到PADR包后,返回PAS (PPPOE Active Discovery Session-confirmation) 包,其中包含了一个唯一session ID,进入PPP会话阶段。
- 双方随时可以发送PADT包,停止PPP会话。
绘制示意图:
实验步骤
实验环境
1:拓扑图
ISP1已经配置为PPPoE服务器,ISP1 和ISP2之间的链路使用PPP协议,ISP2对ISP1的单向PAP认证; ISP2 和ISP3之间的链路也使用PPP协议,ISP3对ISP2的单向CHAP认证。
2:IP地址
PPPoE有类DHCP的功能,客户机可以通过拨号获取PPPoE地址池中的IP地址。
(ISP1的地址池是:220.10.0.1-220.10.0.100)
实验过程
准备阶段
交换机初始化:
交换机端口指示灯呈橙色,则单击主窗口右下角Realtime 和Simulation模式切换按钮数次,直至交换机指示灯呈绿色。这一操作可以使交换机快速完成初始化工作。
建立PPPoE链接
PPPoE拨号连接后:
此处有错误,子网掩码显示为255.255.255.255,显然不对,地址池是220.10.0.10-220.10.0.100,对应的子网掩码应该是是255.255.255.0。
任务一:观察PPPoE和PPP数据封装格式:
从PC1发送报文到PC2,查看帧结构。
根据上述帧结构并结合资料,绘制如下示意图:
Ethernet II帧:
Preamble:前导码:由0、1间隔代码组成,用来通知目标站作好接收准备。以太网帧使用8个字节的0、1间隔代码作为起始符。
Destination MAC:目的MAC地址,对于discovery数据包,是以太网的广播地址(0xffffffff),广播地址用于PPPoE Client寻找PPPoE Server。因为我们发送的是用户名和密码,所以应该是PAP认证,认证后发送的帧des段填写ISP的MAC地址。
Source MAC:源MAC地址。
Type:指定接收数据的高层协议类型。
0x8863:Discovery Stage
0x8864:PPP Session Stage
Data段:该数据段的长度最小应当不低于46个字节,最大应不超过1500字节。如果数据段长度过小,那么将会在数据段后自动填充(Trailer)字符。相反,如果数据段长度过大,那么将会把数据段分段后传输。
FCS:包含长度为4个字节的循环冗余校验值(CRC),由客户端计算产生,在服务端重新计算以确定帧在传送过程中是否被损坏。
PPPoE帧:
PPP帧:
任务二:观察PPP的PAP认证机制
标签:PAP,协议,认证,MAC,PPP,PPPoE 来源: https://blog.csdn.net/qq_52196579/article/details/115108836