PPP主要包括三个部分
1.    在串行链路上封装上层数据报文的方法
2.    LCP(link control protocals): 链路控制协议来配置和测试数据通信链路,协商PPP协议的配置参数。
3.    NCP(network control protocals): 根据不同的网络层协议可提供一簇网络控制协议(tcp/ip ipcp spx/ipx ipxcp)
 
 
PPP会话的建立
1.链路建立阶段: 进行LCP的相关协商,协商内容包括工作方式,认证方式,链路压缩等
2.认证阶段:如果配置了PPP认证(默认是不进行认证),支持chap和PAP。若认证失败,LCP状态转为down;认证成功,进入网络层协议阶段
3.网络层协议阶段:IP,IPX会通过各自的网络控制协议(IPCP , IPXCP)进行配置,相应网络层协议协商成功后(主要内容是双方IP),才通过这条PPP链路发送报文
 
 
PAP是一种两次握手认证协议,分主认证方和被认证方,认证可以是双方向的
1.被认证方发起认证请求,发送用户名和口令到主认证方
2.主认证方根据本端的用户表查看是否有此口令,以及密码(明文)是否正确
 
 
CHAP是三次握手认证协议,不发送口令,主认证方首先发起认证请求,安全性比PAP高。
1.主认证方发起认证请求(主认证方用户名,随机数据)
2.被认证方回复(被认证方用户名,随机报文与密码加密后的报文)
3.主认证方验证(接受/拒绝)
 
 
 
 
packet-switched: X.25  Frame-relay  ATM
 
circuit-switched: PPP  SLIP  HDLC
 
 
HDLC  标准HDLC:仅支持单协议环境
 Cisco HDLC:增加了私有位,可以支持多种协议ip apple talk ipx
 
 
Router(config)#interface serial 1/0
Router(config-if)#encapsulation HDLC
 
 
 
 
 
step1:封装
R1/R2(config)#interface serial 0
R3/R5(config-if)#encapsulation ppp
 
PPP认证
1.PAP认证(Password Authentication Protocol)
把用户名和密码发给对方,让对方判断认证信息
 
step2:建立帐号和密码
R3(config)#username R5 password R5       //R3为对方(R5)建立帐号和密码
R5(config)#username R3 password R3       //R5为对方(R3)建立帐号和密码
 
step3:把对方为自己建立的帐号和密码,发送给对方,让对方检查,是否正确
R3/R5(config)#interface serial 0
R3/R5(config)#ppp authentication pap
R3(config-if)#ppp pap sent-username R3 password R3
R5(config-if)#ppp pap sent-username R5 password R5
 
HDLC不支持认证,PAP认证有致命的缺点,认证是明文发送的
 【提示】显示串行接口时,常见以下几种状态:
Serial0/0/0 is up, line protocol is up
//链路正常
Serial0/0/0 is administratively down, line protocol is down
//没有打开该接口,执行“no shutdown”可以打开接口
Serial0/0/0 is up, line protocol is down
//物理层正常,数据链路层有问题,通常是没有配置时钟、两端封装不匹配、PPP 认证错误
Serial0/0/0 is down, line protocol is down
//物理层故障,通常是连线问题
 
 
实验调试
使用“debug ppp authentication”命令可以查看 ppp 认证过程。
R1#debug ppp authentication
PPP authentication debugging is on
//以上打开 ppp 认证调试
R1(config)#int s0/0/0
R1(config-if)#shutdown
R1(config-if)#no shutdown
//由于 PAP 认证是在链路建立后进行一次,把接口关闭重新打开以便观察认证过程

2.CHAP认证 (Challenge Handshake Authentication Protocol)
step1:封装
R1(config)#interface serial 1
R1(config)#interface serial 0
R1/R3(config-if)#encapsulation ppp
 
step2:为对端建立帐号和密码
R1(config)#username R3 password R-13
R3(config)#username R1 password R-13
注意:密码要完全一样!

Cisco的HDLC和其他厂商的HDLC不兼容

HDLC是同步串口的默认封装格式

PPP协议作用

能够控制数据链路的建立;
 能够对广域网的IP地址进行分配和管理;
 允许同时采用多种网络层路由协议;
 能够配置和测试数据链路;
 能够有效进行错误检测;

PPP 综述

PPP 可以通过 NCP 携带多个协议的数据包
PPP 可以通过 LCP 建立和控制连接

ppp验证协议:
1、PAP
 a、密码明文传输
 b、验证两端是同等的

2、CHAP

Configuring CHAP Example

注:
1、username是对端的hostname
2、password要一致

激活PAP或CHAP验证
注:
1、chap pap:表示在chap验证不通过时尝试进行pap验证
2、pap chap:表示在pap验证不通过时尝试进行chap验证

最新文章

  1. NYOJ 70
  2. 千万用户级别应用系统背后的SOA组件化容器
  3. 转载:kafka参数详解
  4. windows 下 redis for php 配置
  5. angularjs工具方法
  6. php获取文件夹下面的文件列表和文件夹列表
  7. 12月07日《奥威Power-BI智能分析报告制作方法 》腾讯课堂开课啦
  8. iPhone(iOS设备) 无法更新或恢复时, 如何进入恢复模式
  9. MS-queue算法相关
  10. 使用 Java 开发兼容 IPv6 的网络应用程序
  11. 蓝牙1.1、蓝牙1.2、蓝牙2.0(蓝牙2.0+EDR)区别
  12. Objective-C Effective 技巧
  13. java环境搭建 windows
  14. [HAOI2007]上升序列
  15. 浅谈tcp粘包问题
  16. Nuget(BagGet)使用教程
  17. C#使用Selenium+PhantomJS抓取数据
  18. HiveQl 基本查询
  19. SQL语句 拆分某些字段,一行变多行
  20. 【分布式搜索引擎】Elasticsearch分布式架构原理

热门文章

  1. 跌宕起伏的java帝国史,剖析谷歌甲骨文长达8年的版权战争
  2. Linux学习之路--常用配置
  3. 接口自动化测试框架 -- reudom
  4. DM7的SQL批量插入for、while方法
  5. Huffman树及其编码(STL array实现)
  6. oracle-按年、月、周、日、时、分 分组查询统计数据,无数据补零(connect by)
  7. ACM北大暑期课培训第二天
  8. Java项目之家庭收支记账软件
  9. MapGIS文件如何压缩存盘
  10. 《【面试突击】— Redis篇》--Redis都有哪些数据类型?分别在哪些场景下使用比较合适?