一、基本概念
1、全称:Point-to-Point Protocol over Ethernet,以太网上的点对点协议。
2、作用:在以太网(多路访问网络)中建立点对点通信链路,常用于宽带接入(如 ADSL、光纤到户)。
3、协议分层:数据链路层协议,结合 PPP 和以太网的特性。
二、PPPoE 工作原理
1、发现阶段:用于客户端(CPE)与服务器建立连接,确定 MAC 地址和会话 ID。
①PADI:客户端广播寻找服务器。
②PADO:服务器单播响应。
③PADR:客户端选择服务器并发起请求。
④PADS:服务器确认会话,分配 Session ID。
双方知道session ID和MAC地址,确定唯一的会话阶段。
2、会话阶段:基于 PPP 协议进行通信。
①LCP 协商:链路控制协议(协商最大传输单元 MTU 等)。
②认证:PAP 或 CHAP 协议(验证用户名 / 密码)。
③NCP 协商:如 IPCP(为客户端分配 IP 地址)。
3、终结阶段:
①触发条件:
客户端或服务器均可主动发起终止请求,常见场景包括:用户手动断开拨号连接、服务器检测到会话超时、计费结束或认证失效、网络异常(如物理链路中断)。
②报文交互:
- 发起方(客户端或服务器)向对方单播发送PADT 报文,报文中携带当前会话的Session ID。
- 收到 PADT 的一方无需确认,直接释放会话资源(如 IP 地址、Session ID 等)
三、PPPoE帧结构
DMAC 6Byte | SMAC 6Byte | Eth-Type 2Byte | PPPoE-Packet 6Byte | FCS 4Byte |
1、以太网帧头部:目标 MAC 地址、源 MAC 地址、类型字段(0x8863 为发现阶段,0x8864 为会话阶段、0x8863 为终结阶段)。
2、PPPoE 头部:版本、类型、代码、Session ID、长度。
3、PPP 载荷:包含 PPP 协议数据(如 IP 数据包)。
四、PPPoE和PPP对比
特性 | PPP | |
---|---|---|
适用场景 | 串行链路(如电话线) | 以太网多路访问网络 |
寻址方式 | 无 MAC 地址需求 | 需通过 MAC 地址建立会话 |
发现机制 | 无 | 需要 Discovery 阶段 |
典型应用 | 旧式拨号上网 | 宽带接入(ADSL / 光纤) |
四、PPPoE 的认证方式
1、PAP:明文传输用户名和密码,安全性低。
2、CHAP:加密认证,安全性高。
五、应用场景
1、家庭宽带接入:通过 PPPoE 拨号获取公网 IP(如中国电信 ADSL)。
2、企业网络:用于 VPN 或远程接入认证。
3、多用户共享:通过唯一 Session ID 区分不同用户会话。
六、常见问题
1、拨号失败:检查物理连接、MAC 地址绑定、认证信息是否正确。
2、MTU 问题:MTU 不匹配导致分片或丢包(建议客户端 MTU 设为 1492)。
3、Session 冲突:多设备使用同一账号可能导致会话冲突。
七、PPPoE 的优缺点
1、优点:灵活组网、提供认证和计费功能。
2、缺点:增加协议开销(降低有效载荷)、配置复杂度高于 DHCP 方式。