CCNA25-广域网数据封装PPP



1,广域网数据封装HDLC(cisco私有)

202258472.jpg


2,广域网数据封装ppp

203254359.jpg


帧格式

PPP的帧格式

7E
FF
03
协议
信息
FCS
7E
字节
1
1
1
2
<=1500
2
1
PPP采用7EH作为一帧的开始和结束标志(F);其中地址域(A)和控制域(C)取固定值(A=FFH,C=03H) ;协议域(两个字节)取0021H表示IP分组,取8021H表示网络控制数据,取C021H表示链路控制数据;帧校验域(FCS)也为两个字节,它用于对信息域的校验。若信息域中出现7EH,则转换为(7DH,5EH)两个字符。当信息域出现7DH时,则转换为(7DH,5DH)。当信息流中出现ASCII码的控制字符(即小于20H),即在该字符前加入一个7DH字符。


封装:一种封装多协议数据报的方法。PPP 封装提供了不同网络层协议同时在同一链路传输的多路复用技术。PPP 封装精心设计,能保持对大多数常用硬件的兼容性,克服了SLIP不足之处的一种多用途、点到点协议,它提供的WAN数据链接封装服务类似于LAN所提供的封闭服务。所以,PPP不仅仅提供帧定界,而且提供协议标识和位级完整性检查服务。
链路控制协议:一种扩展链路控制协议,用于建立、配置、测试和管理数据链路连接。
网络控制协议:协商该链路上所传输的数据包格式与类型,建立、配置不同的网络层协议;
配置:使用链路控制协议的简单和自制机制。该机制也应用于其它控制协议,例如:网络控制协议(NCP)。
为了建立点对点链路通信,PPP 链路的每一端,必须首先发送 LCP 包以便设定和测试数据链路。在链路建立,LCP 所需的可选功能被选定之后,PPP 必须发送 NCP 包以便选择和设定一个或更多的网络层协议。一旦每个被选择的网络层协议都被设定好了,来自每个网络层协议的数据报就能在链路上发送了。

链路将保持通信设定不变,直到有 LCP 和 NCP 数据包关闭链路,或者是发生一些外部事件的时候(如,休止状态的定时器期满或者网络管理员干涉)。

1)什么是LCP?
链路控制协议(LCP) LCP 建立点对点链路,是 PPP 中实际工作的部分。LCP 位于物理层的上方,负责建立、配置和测试数据链路连接。LCP 还负责协商和设置 WAN 数据链路上的控制选项,这些选项由 NCP 处理。
2)NCP是什么?
PPP允许多个网络协议共用一个链路,网络控制协议 (NCP) 负责连接PPP(第二层)和网络协议 (第三层)。对于所使用的每个网络层协议,PPP 都分别使用独立的 NCP来连接。例如,IP 使用 IP 控制协议 (IPCP),IPX 使用 Novell IPX 控制协议 (IPXCP)。



应 用:假设同样是在Windows 98,并且已经创建好“拨号连接”。那么可以通过下面的方法来设置PPP协议:首先,打开“拨号连接”属性,同样选择“服务器类型”选项卡;然后,选择默认的“PPP:Internet,Windows NT Server,Windows 98”,在高级选项中可以设置该协议其它功能选项;最后,单击“确定”按钮即可。


3,PPP:点对点协议

(PPP:Point to Point Protocol)
PPP(点到点协议)是为在同等单元之间传输数据包这样的简单链路设计的链路层协议。这种链路提供全双工操作,并按照顺序传递数据包。设计目的主要是用来通过拨号或专线方式建立点对点连接发送数据,使其成为各种主机、网桥和路由器之间简单连接的一种共通的解决方案。
点对点协议(PPP)为在点对点连接上传输多协议数据包提供了一个标准方法。PPP 最初设计是为两个对等节点之间的 IP 流量传输提供一种封装协议。在 TCP-IP 协议集中它是一种用来同步调制连接的数据链路层协议(OSI 模式中的第二层),替代了原来非标准的第二层协议,即 SLIP。除了 IP 以外 PPP 还可以携带其它协议,包括 DECnet和 Novell的Internet 网包交换(IPX)。



4,工作流程

当用户拨号接入 ISP 时,路由器的调制解调器对拨号做出确认,并建立一条物理连接(底层up)。PC 机向路由器发送一系列的 LCP 分组(封装成多个 PPP 帧)。
这些分组及其响应选择一些 PPP 参数,和进行网络层配置(此前如有PAP或CHAP验证先要通过验证),NCP 给新接入的 PC机分配一个临时的 IP 地址,使 PC 机成为因特网上的一个主机。
通信完毕时,NCP 释放网络层连接,收回原来分配出去的 IP 地址。接着,LCP 释放数据链路层连接。最后释放的是物理层的连接。


195233777.jpg



5,和HDLC的区别

最主要的区别
PPP是面向字节的,HDLC是面向位的。


6,两种认证方式

一种是PAP,一种是CHAP。相对来说PAP的认证方式安全性没有CHAP高。PAP在传输password是明文的,而CHAP在传输过程中不传输密码,取代密码的是hash(哈希值)。PAP认证是通过两次握手实现的,而CHAP则是通过3次握手实现的。PAP认证是被叫提出连接请求,主叫响应。而CHAP则是主叫发出请求,被叫回复一个数据包,这个包里面有主叫发送的随机的哈希值,主叫在数据库中确认无误后发送一个连接成功的数据包连接



201807171.png


实验说明:PPP中的认证方式有papchap两种,这两种认证既可以单独使用也可以结合使用。并且既可以进行单向认证也可以进行双向认证。

pap是通过验证远端的用户名和密码是否匹配来进行验证

chap则是发送一个挑战包,然后远端通过自己的数据库的用户名和密码利用md5进行计算后返还一个数值,然后在发送方验证这个数值是否和自己计算出来的数值是否一致进行验证

基本配置:

R1

!

hostnameR1----------------------------------------------------------设置主机名为“R1

!

interfaceSerial1/0

ip address 1.1.1.1255.255.255.0

encapsulationppp-------------------------------------------------设置封装为ppp

R2

hostname R2

!

interfaceSerial1/0

ip address 1.1.1.2255.255.255.0

encapsulationppp

通过上面的配置,在没有启用任何认证的情况下,链路是通的。

配置步骤:

1.在两台路由器上进行pap认证:

如果我们进行单项认证的话配置应该如下

R1为认证的服务器端,需要建立本地口令数据库,并且开始pap认证。

R1(config)#usernameR2 password gairuhe------------------------建立本地口令数据库

R1(config)#ints1/0

R1(config-if)#ppp authenticationpap--------------------------------要求进行PAP认证

在这样的配置下,我们可以看到链路已经down了:

R1(config-if)#

*Aug 2316:45:12.639: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0,changed state to down

R2为认证的客户端,需要发送用户名和密码来匹配服务器端的口令数据库

此时我们在R2上加上如下的配置:

R2(config)#int s1/0

R2(config-if)#ppp pap sent-username R2password gairuhe------发送用户名和密码

R2(config-if)#

*Aug 2316:47:48.635: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0,changed state to up

此时链路已经起来,我们仅在R1上做了认证,而在R2上没有进行认证。这就是pap的单向认证。


CHAP认证


R1(config)#username cisco  password cisco-----------------------被认证的用户名和密码
R1(config-if)#ppp authentication chap -----------------------开启chap认证


我们可以看到日志信息

*Mar  1 01:11:36.151: Se1/0 PPP: Authorization required
*Mar  1 01:11:36.215: Se1/0 CHAP: O CHALLENGE id 5 len 23 from "R1"


*Mar  1 01:12:59.475: Se1/0 PPP: No authorization without authentication
*Mar  1 01:12:59.579: Se1/0 CHAP: I CHALLENGE id 35 len 23 from "R1"
*Mar  1 01:12:59.583: Se1/0 CHAP: Unable to authenticate for peer

R2(config)#interface s1/0

R2(config-if)#ppp chap  hostname  cisco      
R2(config-if)#ppp chap   password  cisco

*Mar  1 01:13:44.723: Se1/0 CHAP: Using hostname from interface CHAP
*Mar  1 01:13:44.723: Se1/0 CHAP: Using password from interface CHAP
*Mar  1 01:13:44.723: Se1/0 CHAP: O RESPONSE id 49 len 26 from "cisco"
*Mar  1 01:13:44.815: Se1/0 CHAP: I SUCCESS id 49 len 4
R2(config-if)#
*Mar  1 01:13:45.815: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0, changed state to up



7,ppp 的multilink功能

MPPP(MultiLink-PPP),即多链路点对点协议,是PPP协议的扩展。

它的作用是把连接两台路由器的多条物理广域网链路捆绑成一条逻辑链路,从而达到增加链路带宽的功能。比如可以把四个物理的2M线路通过MPPP捆绑成一条逻辑的8M线路。

一、主要命令介绍
1.
将串行接口封装为PPP格式,并将该接口与虚接口multilink 10组关联
R1(config)#int s0/0
R1(config-if)#encapsulation ppp
R1(config-if)#ppp multilink group 10
2.
定义虚接口 multilink,后面跟的数字代表所属的multilink group
R1(config)#int multilink 10

R1(config-if)#ipadd 192.168.1.1 255.255.255.0
二、本次实验拓扑

121524568.jpg


三、实验具体配置及结果检测
1. R1
的配置:
!
interface Multilink10
ip address 192.168.1.1 255.255.255.0
ppp multilink
ppp multilink group 10
!
interface Serial0/0
no ip address
encapsulation ppp
serial restart-delay 0
serial restart-delay 连续重启延时

0代表不重启,>0(比如30)代表30秒后重启路由器。

一般默认为0,除了特殊情况才作更改。
ppp multilink

PPP Multilink协议(MP)是PPP(点对点协议)的扩展,它具有绑定两条或多条同步并行连接的能力。所产生的虚拟连接拥有的带宽等于各条独立连接的带宽的总和。
ppp multilink group 10
!
interface Serial0/1
no ip address
encapsulation ppp
serial restart-delay 0
ppp multilink
ppp multilink group 10
!
interface Serial0/2
no ip address
encapsulation ppp
serial restart-delay 0
ppp multilink
ppp multilink group 10
!
2. R2
的配置:
!
interface Multilink10
ip address 192.168.1.2 255.255.255.0
ppp multilink
ppp multilink group 10
!
interface Serial0/0
no ip address
encapsulation ppp
serial restart-delay 0
ppp multilink
ppp multilink group 10
!
interface Serial0/1
no ip address
encapsulation ppp
serial restart-delay 0
ppp multilink
ppp multilink group 10
!
interface Serial0/2
no ip address
encapsulation ppp
serial restart-delay 0
ppp multilink
ppp multilink group 10
!
3.
验证:
1) sh ip int bri

2) 比较虚接口multilink单个串行接口的带宽,看看是否实现了多链路功能。
122259338.jpg

命令: sh int multilink10  &  sh int s0/0


122355422.jpg

122457444.jpg



8,故障排查命令

debug ppp negotiation -确定客户端是否可以通过PPP协商; 这是您检查地址协商的时候。
debug ppp authentication -确定客户端是否可以通过验证。如果您在使用Cisco IOS软件版本11.2之前的一个版本,请发出debug ppp chap命令。
debug ppp error - 显示和PPP连接协商与操作相关的协议错误以及统计错误。
debug aaa authentication -要确定在使用哪个方法进行验证(应该是RADIUS,除非RADIUS服务器发生故障),以及用户是否通过验证。
debug aaa authorization -要确定在使用哪个方法进行验证,并且用户是否通过验证。
debug aaa accounting -查看发送的记录。
debug radius -查看用户和服务器交换的属性。
















你可能感兴趣的:(信息,广域网)