一、PPP协议简介

PPP(Point-to-Point Protocol)是一种数据链路层协议,用于在两个节点之间建立点对点的数据通信连接。PPP协议是TCP/IP协议族中的一员,它可以在串行通信线路上传输IP数据包,支持多种网络层协议,如IP、IPX、AppleTalk等。PPP协议定义了一整套协议,包括建立连接的五种状态、LCP协议、Authenticate验证协议、Network网络层协议等。

二、PPP建立连接的五种状态

PPP建立连接的过程中,有五种状态,分别是:

1. 非建立状态(Dead):初始状态,表示没有建立连接。

2. 等待状态(Establishing):表示正在建立连接,发送方发送LCP协议报文,接收方回复LCP协议报文。

3. 认证状态(Authenticate):可选状态,表示正在进行认证,发送方发送认证请求报文,接收方回复认证响应报文。

4. 网络层协商状态(Network):表示正在进行网络层协商,发送方发送IPCP协议报文,接收方回复IPCP协议报文。

5. 已建立状态(Opened):表示连接已经建立,可以进行数据传输。

三、LCP简介

LCP(Link Control Protocol)是PPP协议中的一个重要协议,用于在两个节点之间建立连接。LCP协议定义了一系列报文类型和状态,用于协商连接参数,如最大传输单元(MTU)、协议版本、认证方式等。

1.LCP报文类型

LCP报文类型分为三大类,分别是:

1. 配置请求报文(Configure-Request):发送方向接收方请求协商某个参数的值。

2. 配置响应报文(Configure-Ack):接收方回复发送方的请求,同意协商某个参数的值。

3. 配置拒绝报文(Configure-Nak):接收方回复发送方的请求,拒绝协商某个参数的值,并提供一个备选值。

2.LCP协商报文交互过程

LCP协商报文交互过程如下:

1. 发送方发送配置请求报文。

2. 接收方回复配置响应报文或配置拒绝报文。

3. 如果接收方回复配置拒绝报文,则发送方根据备选值再次发送配置请求报文。

4. 如果接收方回复配置响应报文,则协商成功。

3.LCP协商状态

LCP协商状态分为五种,分别是:

1. 初始状态(Initial):表示连接尚未建立,发送方发送配置请求报文。

2. 配置请求已发送状态(Starting):表示发送方已经发送了配置请求报文,等待接收方回复。

3. 配置请求已接收状态(Req-Sent):表示接收方已经接收到了配置请求报文,正在处理。

4. 配置已协商状态(Ack-Received):表示接收方已经回复了配置响应报文,发送方正在处理。

5. 已建立状态(Opened):表示连接已经建立,可以进行数据传输。

四、Authenticate验证阶段

PPP协议支持两种认证方式,分别是PAP和CHAP。

1.PAP认证报文交互过程

PAP认证报文交互过程如下:

1. 发送方发送认证请求报文,包含用户名和密码。

2. 接收方回复认证响应报文,表示认证成功或失败。

2.CHAP认证报文交互过程

CHAP认证报文交互过程如下:

1. 发送方发送挑战请求报文,包含一个随机数。

2. 接收方回复挑战响应报文,包含一个经过加密的随机数。

3. 发送方将接收到的随机数和密码进行加密,生成一个响应报文。

4. 接收方验证响应报文是否正确,如果正确则认证成功,否则认证失败。

五、Network网络层协商阶段

PPP协议支持多种网络层协议,如IP、IPX、AppleTalk等。在网络层协商阶段,使用IPCP协议进行协商。

IPCP简介

IPCP(Internet Protocol Control Protocol)是PPP协议中的一个重要协议,用于在两个节点之间协商IP地址、DNS服务器地址等网络层参数。

1.IPCP报文类型

IPCP报文类型分为三种,分别是:

1. 配置请求报文(Configure-Request):发送方向接收方请求协商某个参数的值。

2. 配置响应报文(Configure-Ack):接收方回复发送方的请求,同意协商某个参数的值。

3. 配置拒绝报文(Configure-Nak):接收方回复发送方的请求,拒绝协商某个参数的值,并提供一个备选值。

2.IPCP协商报文交互过程

IPCP协商报文交互过程如下:

1. 发送方发送配置请求报文。

2. 接收方回复配置响应报文或配置拒绝报文。

3. 如果接收方回复配置拒绝报文,则发送方根据备选值再次发送配置请求报文。

4. 如果接收方回复配置响应报文,则协商成功。

3.IPCP协商状态

IPCP协商状态分为四种,分别是:

1. 初始状态(Initial):表示连接尚未建立,发送方发送配置请求报文。

2. 配置请求已发送状态(Starting):表示发送方已经发送了配置请求报文,等待接收方回复。

3. 配置请求已接收状态(Req-Sent):表示接收方已经接收到了配置请求报文,正在处理。

4. 已建立状态(Opened):表示连接已经建立,可以进行数据传输。

六、PPP报文

PPP报文由两部分组成,分别是PPP头部和数据部分。

1.PPP头部

PPP头部由三个字段组成,分别是标志字段、地址字段和控制字段。其中标志字段固定为01111110,地址字段固定为11111111,控制字段固定为00000011。

2.LCP报文格式

LCP报文格式由四个字段组成,分别是代码字段、标识符字段、长度字段和数据字段。其中代码字段表示报文类型,标识符字段用于标识报文,长度字段表示数据字段的长度,数据字段包含具体的协商参数。

3.PAP报文格式

PAP认证报文格式由三个字段组成,分别是代码字段、标识符字段和数据字段。其中代码字段表示报文类型,标识符字段用于标识报文,数据字段包含用户名和密码。

4.CHAP报文格式

CHAP认证报文格式由四个字段组成,分别是代码字段、标识符字段、长度字段和数据字段。其中代码字段表示报文类型,标识符字段用于标识报文,长度字段表示数据字段的长度,数据字段包含挑战请求或响应的随机数和加密后的密码。

5.IPCP报文格式

IPCP报文格式与LCP报文格式类似,由四个字段组成,分别是代码字段、标识符字段、长度字段和数据字段。其中代码字段表示报文类型,标识符字段用于标识报文,长度字段表示数据字段的长度,数据字段包含具体的协商参数,如IP地址、DNS服务器地址等。

七、PPP排错

在PPP协议中,常见的排错方法包括以下几种:

1. 使用debug命令查看PPP协议报文交互过程。

2. 检查物理连接是否正常,如串口线是否插好、串口波特率是否设置正确等。

3. 检查PPP协议参数是否设置正确,如最大传输单元(MTU)、认证方式等。

4. 检查网络层协议参数是否设置正确,如IP地址、DNS服务器地址等。

5. 使用网络分析工具,如Wireshark等,分析PPP协议报文,查找问题所在。

八、PPP认证

PPP支持多种认证方式,包括PAP(Password Authentication Protocol)、CHAP(Challenge Handshake Authentication Protocol)等。

1. PAP认证:PAP认证是一种简单的明文认证方式,客户端发送用户名和密码给服务器端,服务器端进行验证。如果验证通过,PPP链路建立成功。

2. CHAP认证:CHAP认证是一种更加安全的认证方式,它使用挑战-响应机制进行认证。服务器端发送一个随机数给客户端,客户端使用密码对随机数进行加密后返回给服务器端,服务器端进行验证。如果验证通过,PPP链路建立成功。

ppp协议,一文带你了解相关推荐

  1. ipv6单播地址包括哪两种类型_IPV6中为啥没有ARP了呢?一文带你搞懂NDP邻居发现协议...

    前言 前面我们介绍了ICMPv6协议 除了提供ICMPv4常用的基本功能之外,还有邻居发现(ND)的功能.一文带你看懂ICMPv6和ICMPv4的区别 那么究竟什么是邻居发现协议(ND)呢? 邻居发现 ...

  2. 一文带你读懂HTTP协议的前世今生

    点击上方蓝字关注我们 HTTP,Hypertext Transfer Protocol,超文本协议,是在万维网上传输文件(如文本.图形图像.声音.视频和其他多媒体文件)的规则集.如果web用户打开他们 ...

  3. ppp chap 加密摘要_“网络工程师培训”基础教程:一文读懂PPP协议

    1.PPP协议简介 PPP 是一种得到广泛应用的广域网协议,它同时支持同/异步传输介质,也支持拨号方式.在我们的日常生活.工作中,拨号上网.DDN 专线等网络连接方式都是封装的 PPP 协议. 2.P ...

  4. 一文带你看懂TCP/IP协议 (更新中 现更新至网络层部分)

    相信大家在编程的学习或应用中,对网络编程都有一定的需求.我们都知道http/https属于TCP/IP协议,也都用到过get,post等方法,但是想要真正的了解这些东西的原理.我认为TCP/IP协议还 ...

  5. 一文看懂PPP协议——PPP协议简介

    今天给大家介绍一下PPP协议的相关内容,文章浅显易懂,特别适合0基础同学.本文主将主要从PPP概述.PPP链路建立过程和PPP认证三个角度对PPP协议进行讲解. 一.PPP概述 PPP,point-t ...

  6. RFC1661中文 ppp协议

    组织:中国互动出版网(http://www.china-pub.com/) RFC文档中文翻译计划(http://www.china-pub.com/compters/emook/aboutemook ...

  7. 一文带你深入理解JVM内存模型

    一文带你深入理解JVM内存模型 一.JAVA的并发模型 共享内存模型 在共享内存的并发模型里面,线程之间共享程序的公共状态,线程之间通过读写内存中公共状态来进行隐式通信 该内存指的是主内存,实际上是物 ...

  8. 什么是5G NR技术?一文带你深入了解5G NR技术

    什么是5G NR技术?一文带你深入了解5G NR技术 工信部IMT-2020(5G)推进组正式发布了5G第三阶段研发试验规范,5G第三阶段研发试验已启动.该研发试验基于3GPP 5G标准,构建统一环境 ...

  9. 超详细!一文带你了解 LVS 负载均衡集群!

    作者 | JackTian 来源 | 杰哥的IT之旅(ID:Jake_Internet) 前言 如今,在各种互联网应用中,随着站点对硬件性能.响应速度.服务稳定性.数据可靠性等要求也越来越高,单台服务 ...

最新文章

  1. php使用memcache存储session
  2. 使用OGR创建dxf格式矢量数据
  3. ab压力测试_CentOS安装压力测试工具ApacheBench(ab)
  4. java一键保存表格增删改,一个增删改功能的表格小demo
  5. 批处理写入以及动态与参数化SQL,数据库的性能如何?
  6. 一群人围成一圈从123报数,如果报到3就退出该圈中,直到最后一个人留下来!...
  7. web的case点总结
  8. Java 基于javaMail的邮件发送(支持附件)
  9. Intellij IDEA连接Spark集群
  10. 正确识别希捷Backup Plus新睿品1TB正品,杜绝奸商猖獗
  11. java基于springboot校园餐厅订餐管理系统
  12. 水果忍者 java_水果忍者v1.7.2
  13. bootice添加linux_使用BOOTICE 恢复系统启动项
  14. 1005打印任务取消不了 hp_HP打印机打印时任务打印不了时无法取消
  15. 采用曼码调制的非接触式IC卡译码软件设计
  16. 人工智能数学基础-线性代数1:向量及向量加减法与数乘
  17. 常用C++开发环境介绍
  18. 【折腾电脑】win笔记本雷电3外接显卡过程记录(使用内屏)、雷电三驱动怎么更新
  19. oracle查询为姓 张,Oracle经典查询案例
  20. 小学语文毕业知识整理与复习题

热门文章

  1. 为什么 95% 自学成才的开发人员很快就转行了?
  2. [windows] win10刷新dns的方法
  3. 需求分析——数据流图的绘制
  4. 刚离开苹果,GAN 之父已找好下家:再次重返谷歌,继续在家办公
  5. MySQL 约束(Constraint)
  6. cannot add foreign key constraint mysql_解决1215 - cannot add foreign key constraint
  7. 数据加密 三种密钥交换算法详解(RSA DHE ECDHE)
  8. 微型计算机原理8255a考研题,2017年华中农业大学信息学院820微型计算机原理及应用考研题库...
  9. 【DL】第5章 以示例文本的样式生成文本
  10. 常系数非齐次线性微分方程通解的求法