PPP协议讲解(PPP连接状态、CHAP/PAP认证、PPP报文)

PPP协议讲解(PPP连接状态、CHAP/PAP认证、PPP报文)PPP 点对点协议 为在点对点连接上传输多协议数据包提供了一个标准方法 是数据链路层封装协议的一种方法 支持同步和异步两种传输方式

大家好,欢迎来到IT知识分享网。

目录

简介

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优点:


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          网络终止阶段

PPP协议讲解(PPP连接状态、CHAP/PAP认证、PPP报文)

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协商报文交互过程

PPP协议讲解(PPP连接状态、CHAP/PAP认证、PPP报文)

LCP协商状态—5种状态

PPP协议讲解(PPP连接状态、CHAP/PAP认证、PPP报文)

Authenticate验证阶段(可选)

主要进行PAP、CHAP认证

PAP认证报文交互过程

PAP验证协议为两次握手验证,密码为明文。被验证方发起认证,认证通过后不再认证

PPP协议讲解(PPP连接状态、CHAP/PAP认证、PPP报文)

CHAP认证报文交互过程

CHAP验证协议为三次握手验证协议。它只在网络上传输用户名,而并不传输用户密码,因此安全性要比PAP高。验证方发起认证挑战,认证成功后,再次连接还需要认证。

认证方先发送一个随机数给请求方(可以选择是否携带用户名)

请求方收到之后用密码把随机数加密(hash),哈希完成之后把密文发送给认证方(携带用户名)
认证方同样把随机数通过密码进行hash,然后比较,如果一致则认证成功

PPP协议讲解(PPP连接状态、CHAP/PAP认证、PPP报文)

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地址协商

PPP协议讲解(PPP连接状态、CHAP/PAP认证、PPP报文)

动态IP地址协商

PPP协议讲解(PPP连接状态、CHAP/PAP认证、PPP报文)

IPCP协商状态

类似于LCP协商状态


PPP报文

PPP头部

PPP协议讲解(PPP连接状态、CHAP/PAP认证、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报文格式

PPP协议讲解(PPP连接状态、CHAP/PAP认证、PPP报文)

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报文格式

PPP协议讲解(PPP连接状态、CHAP/PAP认证、PPP报文)

CHAP报文格式

PPP协议讲解(PPP连接状态、CHAP/PAP认证、PPP报文)

IPCP报文格式

PPP协议讲解(PPP连接状态、CHAP/PAP认证、PPP报文)


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、认证密码不对的时候,密码可能会被加入”空格”

PPP协议讲解(PPP连接状态、CHAP/PAP认证、PPP报文)

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/137288.html

(0)
上一篇 2025-06-21 18:20
下一篇 2025-06-21 18:26

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信