12、PPP和HDLC
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验证
12、PPP和HDLC的更多相关文章
- 数据链路层协议(Ethernet、IEEE802.3、PPP、HDLC)
目录 数据链路层协议 Ethernet以太网协议 以太网数据帧的封装 IEEE802.3协议 PPP协议 HDLC协议 数据链路层协议 首先Ethernet.IEEE802.3.PPP和HDLC都是数 ...
- 实验18:HDLC和PPP
实验15-1:HDLC 和PPP 封装 Ø 实验目的通过本实验,读者可以掌握如下技能:(1) 串行链路上的封装概念(2) HDLC 封装(3) PPP 封装 Ø 实验拓扑 实验步骤n ...
- ppp详解
ppp 一 PPP point to point protocol 数据链路层协议 PPP session establishment 1 link est ...
- ppp协议解析二
转:http://blog.csdn.net/yangzheng_yz/article/details/11526747 PPP(Point to Point Protocol,点对点协议)协议是为在 ...
- TCP/IP基础知识
TCP/IP基础知识 网络 TCP/IP 引言 本篇属于TCP/IP协议的基础知识,重点介绍了TCP/IP协议簇的内容.作用以及TCP.UDP.IP三种常见网络协议相关的基础知识. 内容 TCP/IP ...
- IM通信协议逆向分析、Wireshark自定义数据包格式解析插件编程学习
相关学习资料 http://hi.baidu.com/hucyuansheng/item/bf2bfddefd1ee70ad68ed04d http://en.wikipedia.org/wiki/I ...
- TCP/IP网络协议基础知识集锦[转]
引言 本篇属于TCP/IP协议的基础知识,重点介绍了TCP/IP协议簇的内容.作用以及TCP.UDP.IP三种常见网络协议相关的基础知识. 内容 TCP/IP协议簇是由OSI七层模型发展而来的,之所以 ...
- day2 网络基础
网路基础 网络OSI模型七层: 物理层: 定义特性:机械,电器,功能,过程: 定义接口标准:双绞线,光纤,同轴电缆: 相关协议:无: 数据链路层: 定义帧的开始结束,封装成帧,差错校验,透明传输(防止 ...
- TCP/IP 基础简介
引言本篇属于TCP/IP协议的基础知识,重点介绍了TCP/IP协议簇的内容.作用以及TCP.UDP.IP三种常见网络协议相关的基础知识. 内容TCP/IP协议簇是由OSI七层模型发展而来的,之所以存在 ...
随机推荐
- 第 426 期 Python 周刊
文章,教程和讲座 端到端机器学习:从数据收集到模型部署 链接: https://ahmedbesbes.com/end-to-end-ml.html 在本文中,我们将完成构建和部署机器学习应用程序的必 ...
- MapReduce-自动化运行配置
1.打包时指定main Class信息 注意:默认直接通过maven插件打成jar包中没有指定main class信息,因此在运行mapreduce的jar包时必须在指令后明确main class信 ...
- 「洛谷P1080」「NOIP2012提高组」国王游戏 解题报告
P1080 国王游戏 题目描述 恰逢 \(H\)国国庆,国王邀请\(n\)位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这 \( ...
- 浅析vue封装自定义插件
在使用vue的过程中,经常会用到Vue.use,但是大部分对它一知半解,不了解在调用的时候具体做了什么,因此,本文简要概述下在vue中,如何封装自定义插件. 在开始之前,先补充一句,其实利用vue封装 ...
- 从0开发3D引擎(三):搭建开发环境
本系列使用Reason语言,因此需要搭建它的开发环境. 上一篇博文 从0开发3D引擎(二):准备预备知识 搭建开发环境 建议使用VSCode编辑器来开发Reason,因为它的插件支持得最好. 具体搭建 ...
- C++ 模板常见特性(函数模板、类模板)
背景 C++ 是很强大,有各种特性来提高代码的可重用性,有助于减少开发的代码量和工作量. C++ 提高代码的可重用性主要有两方面: 继承 模板 继承的特性我已在前面篇章写过了,本篇主要是说明「模板」的 ...
- Scala与Mongodb实践4-----数据库操具体应用
目的:在实践3中搭建了运算环境,这里学会如何使用该环境进行具体的运算和相关的排序组合等. 由数据库mongodb操作如find,aggregate等可知它们的返回类型是FindObservable.A ...
- Scala实践13
1.隐式参数 方法可以具有隐式参数列表,由参数列表开头的implicit关键字标记.如果该参数列表中的参数没有像往常一样传递,Scala将查看它是否可以获得正确类型的隐式值,如果可以,则自动传递. S ...
- 防止过拟合的方法 预测鸾凤花(sklearn)
1. 防止过拟合的方法有哪些? 过拟合(overfitting)是指在模型参数拟合过程中的问题,由于训练数据包含抽样误差,训练时,复杂的模型将抽样误差也考虑在内,将抽样误差也进行了很好的拟合. 产生过 ...
- IDEA新建maven项目没有webapp目录解决方法
转载地址:https://www.cnblogs.com/oldzhang1222/p/10429827.html 先创建的页面修改路径 修改路径如下 添加并完善路径\src\main\webapp ...