点到点协议(Point to Point Protocol,PPP)是IETF(Internet Engineering Task Force,因特网工程任务组)推出的点到点类型线路的数据链路层协议。它解决了SLIP中的问题,并成为正式的因特网标准。
PPP协议在RFC 1661、RFC 1662和RFC 1663中进行了描述。
PPP支持在各种物理类型的点到点串行线路上传输上层协议报文。PPP有很多丰富的可选特性,如支持多协议、提供可选的身份认证服务、可以以各种方式压缩数据、支持动态地址协商、支持多链路捆绑等等。这些丰富的选项增强了PPP的功能。同时,不论是异步拨号线路还是路由器之间的同步链路均可使用。因此,应用十分广泛。
下面是我查的关于PPP协议认证的一些知识
1。什么情况我们可以用show cdp nei看到自己直边的邻居呢,邻居的发现对我们在排查问题时很有帮助,我们可以通过我们左右的邻居,来判断是那台设备出现问题, 只要我们在接口上把物理端口打开,然后DCE端配上时钟就可以发现邻居。
Router(config-if)#do sh cdp nei
Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge
                  S - Switch, H - Host, I - IGMP, r - Repeater
Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID
R2               Ser 1/0            159          R        7206VXR   Ser 1/0
在上图中R2为我们的邻居,本地Ser1/0与R2的Ser1/0相连,R2的设备型号为7206VXR,为Router.
Router# debug cdp adj
CDP neighbor info debugging is on
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#int s1/0
Router(config-if)#sh
Router(config-if)#
*Jan 29 17:06:09.883: CDP-AD: Interface Serial1/0 going down   由于shutdown的原因使的邻居断开
*Jan 29 17:06:09.911: CDP-AD: Interface Serial1/0 going down
*Jan 29 17:06:11.887: %LINK-5-CHANGED: Interface Serial1/0, changed state to administratively down
*Jan 29 17:06:12.887: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0, changed state to down
Router(config-if)#no sh
Router(config-if)#
*Jan 29 17:06:19.055: CDP-AD: Interface Serial1/0 coming up
*Jan 29 17:06:21.015: %LINK-3-UPDOWN: Interface Serial1/0, changed state to up
*Jan 29 17:06:21.019: CDP-AD: Interface Serial1/0 coming up
*Jan 29 17:06:22.019: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0, changed state to up
Router(config-if)#do debug cdp pa   cdp packet information
CDP packet info debugging is on
Router(config-if)#
*Jan 29 17:06:56.167: CDP-PA: Packet received from R2 on interface Serial1/0
*Jan 29 17:06:56.167: **Entry  found in cache**
*Jan 29 17:06:58.415: CDP-PA: version 2 packet sent out on Serial1/0
2。PPP协议的封装
R2(config-if)#do ping 192.168.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.1, timeout is 2 seconds:
!!!!!   在默认封装的情况下能PING通,封装为HDLC
Success rate is 100 percent (5/5), round-trip min/avg/max = 72/96/124 ms
R2(config-if)#do ping 192.168.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.1, timeout is 2 seconds:
!!!!  只要封装了PPP协议,而没有添加认证的情况也能PING通
Success rate is 100 percent (5/5), round-trip min/avg/max = 48/76/96 ms
R2(config-if)#
3.关于PPP CHAP认证 
 1  CHAP原理
PPP提供了两种可选的身份认证方法: 口令验证协议PAP(Password Authentication Protocol,PAP)和质询握手协议(Challenge Handshake Authentication Protocol,CHAP)。如果双方协商达成一致,也可以不使用任何身份认证方法。
CHAP认证比PAP认证更安全,因为CHAP不在线路上发送明文密码,而是发送经过摘要算法加工过的随机序列,也被称为" 挑战字符串".如图1所示。 同时,身份认证可以随时进行,包括在双方正常通信过程中。因此,非法用户就算截获并成功破解了一次密码,此密码也将在一段时间内失效。
图1   CHAP
CHAP对端系统要求很高,因为需要多次进行身份质询、响应。这需要耗费较多的CPU资源,因此只用在对安全要求很高的场合。
  3  CHAP配置
  3.1  PPP基本配置
对于同步串行接口,默认的封装格式是HDLC(Cisco私有实现)。可以使用命令encapsulation ppp将封装格式改为PPP.如图2所示。
图2   PPP串行封装
当通信双方的某一方封装格式为HDLC,而另一方为PPP时,双方关于封装协议的协商将失败。此时,此链路处于协议性关闭(protocol down)状态,通信无法进行。如图3所示。
图3   两端路由器串行接口封装格式不一致
这时,在 路由器RouterA与路由器RouterB的链路没有成功建立之前,路由器RouterA及RouterB的路由表将为空。看不到任何路由信息
3.2  CHAP配置
3.2.1  CHAP认证过程
同PAP一样,CHAP认证可以在一方进行, 即由一方认证另一方身份,也可以进行双向身份认证。这时,要求被认证的双方都要通过对方的认证程序,否则,无法建立二者之间的链路。我们以单方认证为例分析CHAP配置过程及诊断方法。
如图4所示。当双方都封装了PPP协议且要求进行CHAP身份认证,同时它们之间的链路在物理层已激活后,认证服务器会不停地发送身份认证要求直到身份认证成功。和PAP不同的是,这时认证服务器发送的是"挑战"字符串。
图4   CHAP验证
在图4中,当认证客户端(被认证一端)路由器RouterB发送了对"挑战"字符串的回应数据包后,认证服务器会按照摘要算法(MD5)验证对方的身份。如果正确,则身份认证成功,通信双方的链路最终成功建立。
如果被认证一端路由器RouterB发送了错误的"挑战"回应数据包,认证服务器将继续不断地发送身份认证要求直到收到正确的回应数据包为止。
3.2.2  CHAP认证服务器的配置
CHAP认证服务器的配置分为两个步骤: 建立本地口令数据库、要求进行CHAP认证。
建立本地口令数据库
通过全局模式下的命令username username password password来为本地口令数据库添加记录。这里请注意,此处的username应该是对端路由器的名称,即routerb.如下所示:
RouterA(config)# username routerb password samepass
要求进行CHAP认证
这需要在相应接口配置模式下使用命令 ppp authentication chap来完成。如下所示:
RouterA(config)# interface serial 0/0
RouterA(config-if)# ppp authentication chap
 3.2.3  CHAP认证客户端的配置
CHAP认证客户端的配置只需要一个步骤(命令),即建立本地口令数据库。请注意,此处的username应该是 对端路由器的名称,即routera,而 口令应该和CHAP认证服务器口令数据库中的口令相同。如下所示。
RouterB(config-if)# username routera password samepass
   3.2.4  CHAP的诊断
对于CHAP身份认证中出现的问题也可以利用debug ppp authentication命令进行诊断。如图5所示,它表明认证客户端发送的"挑战"回应数据包没有通过认证服务器的认证。
图5   命令debug ppp authentication 的输出
图6表明经过若干次认证要求后,认证服务器最终收到了认证客户端发送过来的正确的"挑战"回应数据包。此时,双方的链路将成功建立。
图6   命令debug ppp authentication 的输出
  注意:
1、CHAP认证过程中,口令是大小写敏感的。
2、身份认证也可以双向进行,即互相认证。配置方法同单向认证类似,只不过需要将通信双方同时配置成为认证服务器和认证客户端。
3、口令数据库也可以存储在路由器以外的AAA或TACACS+服务器上。限于篇幅,此处不再赘述。
通信认证双方选择的认证方法可能不一样,如一方选择PAP,另一方选择CHAP,这时双方的认证协商将失败。为了避免身份认证协议过程中出现这样的失败,可以配置路由器使用两种认证方法。当第一种认证协商失败后,可以选择尝试用另一种身份认证方法。如下的命令配置路由器首先采用PAP身份认证方法。如果失败,再采用CHAP身份认证方法。
RouterA(config-if)# ppp authentication pap chap
如下的命令则相反, 首先使用CHAP认证,协商失败后采用PAP认证。
RouterA(config-if)# ppp authentication chap pap
 4 PAP
PAP是一个简单的、实用的身份验证协议。如图1所示。


  
  图1   PAP  
  PAP认证进程只在双方的通信链路建立初期进行。如果认证成功,在通信过程中不再进行认证。如果认证失败,则直接释放链路。  
   PAP的弱点是用户的用户名和密码是明文发送的,有可能被协议分析软件捕获而导致安全问题。 但是,因为认证只在链路建立初期进行,节省了宝贵的链路带宽。  
  3  PAP配置  
  3.1  PPP基本配置  
  对于同步串行接口,默认的封装格式是HDLC(Cisco私有实现)。可以使用命令encapsulation ppp将封装格式改为PPP.如图2所示。


  
  图2   PPP串行封装  
  当通信双方的某一方封装格式为HDLC,而另一方为PPP时,双方关于封装协议的协商将失败。此时,此链路处于协议性关闭(protocol down)状态,通信无法进行。如图3所示。

  图3   两端路由器串行接口封装格式不一致  
  这时,在路由器RouterA与路由器RouterB的链路没有成功建立之前,路由器RouterA及RouterB的路由表将为空。  
  3.2  PAP配置  
  3.2.1  PAP认证过程  
  PAP认证可以在一方进行,即由一方认证另一方身份,也可以进行双向身份认证。这时,要求被认证的双方都要通过对方的认证程序。否则,无法建立二者之间的链路。我们以单方认证为例分析PAP配置过程及诊断方法。  
  如图4所示。当双方都封装了PPP协议且要求进行PAP身份认证,同时它们之间的链路在物理层已激活后,认证服务器会不停地发送身份认证要求直到身份认证成功。


  
  图4   PAP认证过程  
  在图4中, 当认证客户端(被认证一端)路由器RouterB发送了用户名或口令后,认证服务器会将收到的用户名或口令和本地口令数据库中的口令信息比对,如果正确则身份认证成功,通信双方的链路最终成功建立。  
   如果被认证一端路由器RouterB发送了错误的用户名或口令,认证服务器将继续不断地发送身份认证要求直到收到正确的用户名和口令为止。  
  3.2.2  PAP认证服务器的配置  
  PAP认证服务器的配置分为两个步骤: 建立本地口令数据库、要求进行PAP认证。  
  ●建立本地口令数据库  
  通过全局模式下的命令 username username password password来为本地口令数据库添加记录。如下所示:  
  RouterA(config)# username routera password rapass  
  ●要求进行PAP认证  
  这需要在相应接口配置模式下使用命令ppp authentication pap来完成。如下所示。  
  RouterA(config)# interface serial 0/0  
  RouterA(config-if)# ppp authentication pap  
  3.2.3  PAP认证客户端的配置  
  PAP认证客户端的配置只需要一个步骤(命令),即将 用户名和口令发送到对端,如下所示:  
  RouterB(config-if)# ppp pap sent-username routera pass rapass  
  3.2.4  PAP的诊断  
  如果通信双方的链路因为身份认证的原因而没有建立成功,利用debug ppp authentication命令可以很容易发现问题所在。如图5所示,它表明认证客户端发送的用户名和口令没有通过认证服务器的认证。


  
  图5   命令debug ppp authentication的输出  
  图6表明经过若干次认证要求后,认证服务器最终收到了认证客户端发送过来的正确的用户名和口令组合。此时,双方的链路将成功建立。

Gateway of last resort is not set
192.168.1.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.1.0/24 is directly connected, Serial1/0
C       192.168.1.2/32 is directly connected, Serial1/0
  图6   链路成功建立  
  注意:  
  1、PAP认证过程中,口令是大小写敏感的。  
  2、身份认证也可以双向进行,即互相认证。配置方法同单向认证类似,只不过需要将通信双方同时配置成为认证服务器和认证客户端。  
  3、口令数据库也可以存储在路由器以外的AAA或TACACS 服务器上。限于篇幅,此处不再赘述。

本文出自 51CTO.COM技术博客

PPP的PAP与CHAP相关推荐

  1. 华为ccie网络工程师中技术要点PPP中PAP和CHAP的区别

    华为ccie网络工程师中技术要点PPP中PAP和CHAP的区别,PPP(点到点协议)协议:是为在同等单元之间传输数据包这样的简单链路设计的链路层协议.这种链路提供全双工操作,并按照顺序传递数据包.设计 ...

  2. CCNA配置试验之七 PPP中PAP和CHAP的验证

    PPP支持NCPC(网络控制协议)和LCP(链路控制协议) PPP的验证方式分为PAP二次握手明文传输和CHAP三次握手密文传输. 试验配置PAP和CHAP的验证: 试验配置如下: R1(CHAP) ...

  3. PPP原理 PAP认证 CHAP认证

    目录 PPP的基本构架 PPP主要由三类协议族组成 PPP应用场景 PPP缺省配置 配置PAP认证 操作步骤 配置认证方 配置被认证方 配置CHAP认证 操作步骤 配置认证方 配置被认证方 认证方没有 ...

  4. PPP及pap和chap

    HDLC Cisco 默认使用的封装技术:每个厂商该技术均为私有 [r2]interface Serial 4/0/0[r2-Serial4/0/0]link-protocol hdlc //修改二层 ...

  5. 路由器配置深入浅出—路由器接口PPP协议封装及PAP和CHAP验证配置

    知识域: 是针对点对点专线连接的接口的二层封装协议配置 PPP的PAP和CHAP验证,cpt支持,不一定要在gns3上做实验. 路由器出厂默认是hdlc封装,修改为ppp封装后,可以采用pap验证或者 ...

  6. 计算机网络协议分析 第三课 PAP,CHAP,PPPoE

    计算机网络协议分析第三课 第二章 链路层技术 2.3.5 PPP认证 PAP认证 CHAP认证 2.4 PPPoE 第二章 链路层技术 2.3.5 PPP认证 PPP协议支持两种认证协议:PAP和CH ...

  7. 思科-实验10:路由器接口 PPP 协议封装和 PAP、CHAP 验证配置

    [实验内容] (1) 选择两台C2811 路由器,分别关闭电源后添加WIC-2T 模块,添加位置为插槽0/接口适配器0(提示:在4个插槽中右下角的位置).开启电源之后使用Serial 电缆将两台路由器 ...

  8. PPP协议身份验证PAP和CHAP

    本次实验使用Cisco Packet Tracer,此次实验为复习. 点到点协议(Point to Point Protocol,PPP)是为在同等单元之间传输数据包这样的简单链路设计的链路层协议.  ...

  9. 计算机网络进阶 ---- 网络类型 ---- 二层封装协议 ---- HDLC ---- PPP ---- pap认证 ---- chap认证 ---- 详解

    一.网络类型: [1]点到点 (Peer to Peer – p2p) ---- 在一个网段中,只能部署两个节点: [2]MA(Multiple Access) ---- 多路访问 ---- 一个网段 ...

最新文章

  1. 4个做管理后才知道的秘密
  2. 模拟游客一天的生活与旅游java程序代写源码
  3. C++之肥大的界面之感想
  4. ios 获取一个枚举的所有值_Java enum枚举在实际项目中的常用方法
  5. 送给即将毕业的大学生:乔布斯在斯坦福的大学演讲
  6. Gulp 前端自动化构建
  7. 1114:白细胞计数
  8. 【iVX 初级工程师培训教程 10篇文拿证】04 画布及我和 iVX 合照
  9. python修改列表中字典内的值_python修改字典内key对应值的方法
  10. 百度云cdn设置州五年制大专_图说云原生:让云原生转型变得像种白菜一样简单...
  11. 和最大子序列(dp)
  12. Docker如何更改存储库名称或重命名图像?
  13. Eclipse常用开发插件(转)
  14. 推理证明技巧之人肉计算机,四大推理方法搞定高中证明题
  15. 分享数百个 HT 工业互联网 2D 3D 可视化应用案例之 2019
  16. 案例二——网页倒计时(秒杀)
  17. CodeForces - 379E New Year Tree Decorations(暴力卡精度)
  18. LSTM预测股票收盘价
  19. 利用SQLite数据库进行用户名、密码的注册和登录验证
  20. 3个案例讲清如何构建“What-if分析”,教你轻松玩转动态参数

热门文章

  1. Mysql zip版 升级
  2. IQA图像质量评价常用评价指标
  3. android DrawerLayout 点击穿透、点击自身消失等问题解决
  4. [react] React项目中使用阿里font-icon的svg形式
  5. 数智链接,新一代校园招聘解决方案
  6. Java知识体系总结(2021版)
  7. OPPO 智能电视 K9x 43 英寸版 评测
  8. 通过2DAO 投资二级市场的机会与潜力
  9. 计算机远程用户屏蔽,怎么禁止Win7计算机被远程控制?
  10. python语言中浮点数_python浮点数怎么写