目录
简介
PPP定义的一整套协议(3大部分)
PPP建立连接的五种状态(阶段)
Establish阶段
LCP简介
LCP报文类型---3大类报文
LCP协商报文交互过程
LCP协商状态—5种状态
Authenticate验证阶段(可选)
PAP认证报文交互过程
CHAP认证报文交互过程
Network网络层协商阶段
IPCP简介
IPCP报文类型
IPCP协商报文交互过程
IPCP协商状态
PPP报文
PPP头部
LCP报文格式
PAP报文格式
CHAP报文格式
IPCP报文格式
PPP排错
简介
PPP(点对点协议)为在点对点连接上传输多协议数据包提供了一个标准方法,是数据链路层封装协议的一种方法,支持同步和异步两种传输方式。(除了PPP还有HDLC等,不过HDLC只支持同步方式)
PPP优点:
1、支持同步传输和异步传输
2、具有良好的扩展性,当需要在以太网链路上承载PPP协议时,可扩展为PPPoE
3、提供了LCP(Link Control Protocol)协议,用于各种链路层参数协商
4、提供了各种NCP(Network Control Protocol),用于网络层参数协商(支持多种网络层协议,例如IP、IPX协议)
5、提供了认证:CHAP 、PAP
6、没有重传机制,网络开销小,速度快
PPP定义的一整套协议(3大部分)
LCP: 用于各种链路层协商参数(MTU、是否身份验证、CHAP还是PAP等),主要用来建立、监控和拆除数据链路
PAP/CHAP: 验证认证,保护网络安全性
各种NCP协议: 用于网络层参数协商,更好的支持了网络层协议(例如IP的NCP协议为IPCP、IPX的NCP协议为IPXCP等)
PPP建立连接的五种状态(阶段)
Dead 链路不可用阶段
Establish 链路建立阶段(链路层协商阶段)--进行LCP协商
Authenticate 验证阶段(可选阶段)-----进行PAP/CHAP认证
Network 网络层协议阶段-----------进行NCP协商
Terminate 网络终止阶段
Establish阶段(链路的建立和配置协商)
PPP协议最关键和最复杂的阶段,主要是LCP协商
LCP简介
链路控制协议,简称LCP(Link Control Protocol)。它是PPP协议的一个子集,在PPP通信中,发送端和接收端通过发送LCP包来确定那些在数据传输中的必要信息
主要的协商内容
工作方式----SP(Single-link PPP)单链路、MP(Multilink PPP)多链路
最大接受单元MRU
验证方式----不验证、PAP、CHAP
魔术字等----魔术字主要用于检查环路
在进行链路协商时,如果魔术字一样,会重新进行协商并更换魔术字
但是只要LCP链接建立成功,魔术字就不会改变
LCP报文类型---3大类报文
1.链路配置包—用来建立和配置链路
链路配置包的报文类型 功能描述 Configure-Request 包含发送者使用的、没有使用的默认值的参数列表 Configure-Ack 表示完全接受对端发送的Configuer-Request的参数取值 Configure-Nak 表示对端发送的Request在本端不合法 Configure-Reject 表示对端发送的Request在本端不能识别 2.链路结束包—用来结束一个链路
链路结束包的报文类型 功能描述 Terminate-Request 终止请求 Terminate-Ack 终止确认 3.链路维修包—用来管理和调试一个链路
链路维修包的报文类型 功能描述 Code-Reject 代码拒绝
当接收到的LCP报文的Code是一个不合法的值时发送
Code存在于LCP协议头部中Protocol-Reject 协议拒绝
当接收到的PPP数据帧的协议域Protocol是一个不合法的值时发送
发送端收到后将停止发送该协议类型的数据把我嗯
Protocol存在于PPP协议头中Echo-Request 回波请求--检测双向链路上的自环问题 Echo-Reply 回波应答-- 检测双向链路上的自环问题
只有LCP在Opened状态下才会回应回波请求
其它状态下丢弃回波请求Discard-Request 抛弃请求 LCP协商报文交互过程
LCP协商状态—5种状态
Authenticate验证阶段(可选)
主要进行PAP、CHAP认证
PAP认证报文交互过程
PAP验证协议为两次握手验证,密码为明文。被验证方发起认证,认证通过后不再认证
CHAP认证报文交互过程
CHAP验证协议为三次握手验证协议。它只在网络上传输用户名,而并不传输用户密码,因此安全性要比PAP高。验证方发起认证挑战,认证成功后,再次连接还需要认证。
认证方先发送一个随机数给请求方(可以选择是否携带用户名)
请求方收到之后用密码把随机数加密(hash),哈希完成之后把密文发送给认证方(携带用户名)
认证方同样把随机数通过密码进行hash,然后比较,如果一致则认证成功
Network网络层协商阶段
进行各种NCP协议协商,主要协商双方的IP地址(以下主要介绍IPCP)
IPCP简介
IPCP是一个网络控制协议,用来在点对点协议连接上建立和配置网际协议。 IPCP负责在点对点连接的两端配置、使能和去使能IP协议模块。
IPCP报文类型
IPCP的数据的报文同LCP的数据报文非常类似,不同之处有两点:
- 协议字段。IPCP是在网络层协议阶段协商配置参数选项,协议字段为0x8021
而LCP协议则是在链路建立阶段协商配置参数选项的,协议字段为0xC021
- code域字段。LCP共包括十几种报文,而IPCP只包括7种报文
但它的报文类型只是LCP数据报文的一个子集(只有LCP代码域从1到7这七种报文:Config-Request,Config-Ack,Config-Nak,Config-Reject,Terminate-Request,Terminate-Ack和Code-Reject),而且实际的数据报文交换过程中链路终止报文一般而言是不在网络协议阶段使用的
IPCP协商报文交互过程
静态IP地址协商
动态IP地址协商
IPCP协商状态
类似于LCP协商状态
PPP报文
PPP头部
Address:由于点对点链路无需知道对方数据链路层地址,所以没有意义。按照规定为0xff
Control:无实际意义,规定为0x03(该域与Address域一起标识了PPP报文,即PPP报文头为FF03)
Protocol:协议域,区分数据帧中信息域所承载的数据报文的内容
0021 IP报文 002b Novell IPX 002d Van Jacobson Compressed TCP/IP 002f Van Jacobson Uncompressed TCP/IP 0057 IPV6报文 8021 IPCP报文 802b Novell IPX Control Protocol 8031 Bridging NC 8057 IPv6 CP报文 c021 LCP报文 c023 Password Authentication Protocol c223 Challenge Handshake Authentication Protocol Information:信息域,最大长度1500字节
LCP报文格式
Code:代码域名,主要标识LCP数据报文的类型
0x01 Configure-Request 0x02 Configure-Ack 0x03 Configure-Nak 0x04 Configure-Reject 0x05 Terminate-Request 0x06 Terminate-Ack 0x07 Code-Reject 0x08 Protocol-Reject 0x09 Echo-Request 0x0a Echo-Replyt 0x0b Discard-Request 0x0c Reserved(保留) Identifier:标识域,标识进行协商报文的匹配关系(匹配请求报文和响应报文)。当连续发送多个配置请求报文时,这些报文数据域的值可能完全一样,但是标志域是不同的
Length:长度域,此协商报文的长度
Data(可变):数据域,携带的是协商报文的内容
PAP报文格式
CHAP报文格式
IPCP报文格式
PPP排错
PPP的协议一般排错故障:
a、线检查LCP协议是否为Opened状态
b、检查PPP协议是否配置Auth,并且配置的认证模式是什么
华为设备配置 debugging ppp pap all debugging ppp chap all
c、检查PPP的IPCP协议是否为Opened
华为设备配置 debugging ppp ipcp all 是否有大量的IPCP的报文,IPCP的状态是否为Req_Send或Ack_Rcvd
d、检查PPP的NCP;查看是否有路由通过该接口
PPP常见故障的解决措施::
1、LCP如果不是Opened 可能是物理线路的问题(debug ppp all或者打环测试)
2、当LCP协议发送了大量Confreq,收不到Ack_Recv可能是Link封装不匹配(检查对端路由器的协议封装)
3、当LCP状态为Opened,但是IPCP协议为Inital初始化,可能是PPP的认证出现问题(检查设备的认证配置)
4、当LCP状态为Opened,但是发送了大量的IPCP的报文,可能是IP地址Pool分配的问题(检查IPCP是否与认证结合使用)
5、当LCP状态为Opened,IPCP的状态为Opened,可能是由于路由的问题(检查是否有路由条目)
6、当配置单向认证的时候,被认证方是不需要配置[R1-Serial0/0]ppp authen pap
7、认证密码不对的时候,密码可能会被加入"空格"文章来源:https://www.toymoban.com/news/detail-456694.html
PPPoE---共享DCC实验配置_绑定物理接口_静下心来敲木鱼的博客-CSDN博客https://blog.csdn.net/m0_49864110/article/details/125010122文章来源地址https://www.toymoban.com/news/detail-456694.html
到了这里,关于PPP协议讲解(PPP连接状态、PPP报文)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!