路由器经常用于构建广域网,广域网链路的封装和以太网上的封装有着非常大的差别。常见的广域网封装有 HDLC、PPP、Frame-relay 等,本章介绍 HDLC 和 PPP。相对而言,PPP

比起 HDLC 有较多的功能。

HDLC和PPP简介:

HDLC是点到点串行线路上(同步电路)的帧封装格式,其帧格式和以太网帧格式有很大的差别,HDLC帧没有源MAC地址和目的MAC地址。Cisco公司对HDLC进行了专有优化,,Cisco的 HDLC 封装和标准的 HDLC 不兼容。如果链路的两端都是 cisco 设备,使用 HDLC 封装没有问题,但如果 Cisco 设备与非 Cisco 设备进行连接,应使用 PPP 协议。HDLC 不能提供验证,缺少了对链路的安全保护。默认时,Cisco 路由器的串口是采用 Cisco HDLC 封装的。如果串口的封装不是 HDLC,要把封装改为 HDLC 使用命令“encapsulation hdlc”。

和 HDLC 一样,PPP 也是串行线路上(同步电路或者异步电路)的一种帧封装格式,但是 PPP 可以提供对多种网络层协议的支持。PPP 支持认证、多链路捆绑、回拨、压缩等功能。

PPP 经过 4 个过程在一个点到点的链路上建立通信连接:

• 链路的建立和配置协调:通信的发起方发送 LCP 帧来配置和检测数据链路

• 链路质量检测:在链路已经建立、协调之后进行,这一阶段是可选的

• 网络层协议配置协调:通信的发起方发送 NCP 帧以选择并配置网络层协议

• 关闭链路:通信链路将一直保持到 LCP 或 NCP 帧关闭链路或发生一些外部事件

PPP认证:PAP和CHAP

PAP:利用2次握手的简单方法进行认证。在PPP链路建立完毕后,源节点不停的在链路上反复发送用户名和密码,知道验证通过。PAP验证,密码在链路上明文传输。

CHAP:利用3次握手周期地验证源端节点的身份。CHAP验证过程在链路建立之后进行,而且在以后的任何时候都可以再次进行。CHAP不允许连接发起方在没有收到询问消息的情况下进行验证尝试。CHAP每次使用不同的询问消息,每个消息都是不可预测的唯一值,CHAP不直接传送密码,只传送一个不可预测的询问消息,以及该询问消息与密码经过MD5加密运算过后的加密值。所以CHAP安全性比PAP高。

实验目的:

掌握串行线路的封装概念

掌握HDLC封装

掌握PPP封装


hdlc协议在书上哪一页 HDLC和PPP简介和配置(1)

配置接口IP地址:

R1(config)#interface serial 2/0

R1(config-if)#ip address 192.168.1.1 255.255.255.0

R1(config-if)#no shutdown

R2(config)#interface serial 2/0

R2(config-if)#ip address 192.168.1.2 255.255.255.0

R2(config-if)#no shutdown


hdlc协议在书上哪一页 HDLC和PPP简介和配置(2)

查看接口封装状态

接口默认封装为HDLC。

改变串型链路两端的接口封装为PPP封装。

R1(config)#interface serial 2/0

R1(config-if)#encapsulation ppp

R1(config-if)#exit

R2(config)#interface serial 2/0

R2(config-if)#encapsulation ppp

R2(config-if)#exit


hdlc协议在书上哪一页 HDLC和PPP简介和配置(3)

接口封装已经改为了PPP。


hdlc协议在书上哪一页 HDLC和PPP简介和配置(4)

正常通信。

将两端封装成不同的协议:该R2封装为HDLC即可。

R2(config)#interface serial 2/0

R2(config-if)#encapsulation hdlc

R2(config-if)#exit


hdlc协议在书上哪一页 HDLC和PPP简介和配置(5)

两端封装不匹配,导致链路故障。

显示串行接口时,常见以下几种状态:

Serial2/0 is up, line protocol is up

//链路正常

Serial2/0 is administratively down, line protocol is down

//没有打开该接口,执行“no shutdown”可以打开接口

Serial2/0 is up, line protocol is down

//物理层正常,数据链路层有问题,通常是没有配置时钟、两端封装不匹配、PPP 认证错误

Serial2/0 is down, line protocol is down

//物理层故障,通常是连线问题

配置PAP认证。R1(被认证方),R2(认证方)

(1)两端路由器上的串口采用PPP封装,我们更改回R2的封装格式就可以了。

R2(config)#interface serial 2/0

R2(config-if)#encapsulation ppp

R2(config-if)#exit

在R1上,配置在R2上登录的用户名和密码。

R1(config-if)#ppp pap sent-username R1 password cisco

在R2上配置PAP认证

R2(config-if)#ppp authentication pap

在R2上为R1配置用户名和密码

R2(config)#username R1 password cisco

以上只是配置了R1在R2取得验证,即单向验证。然而在实际应用中通常采用双向验证,R1要验证R2,R2也要验证R1。我们采用相同的步骤进行配置即可。此处省略。

CHAP配置:

首先配置用户名和密码,需要注意的是两方的密码要相同:

R1(config)#username R2 password cc

R2(config)#username R1 password cc

两个串口采用PPP封装,并采用CHAP验证:

R1(config)#interface serial 2/0

R1(config-if)#encapsulation ppp

R1(config-if)#ppp authentication chap

R2(config)#interface serial 2/0

R2(config-if)#encapsulation ppp

R2(config-if)#ppp authentication chap

这就是最简单的CHAP配置,也是实际中最常用的配置。配置时要求用户名为对方路由器名,而双方密码必须一致。原因是:由于 CHAP 默认使用本地路由器的名字做为建立 PPP 连接时的识别符。路由器在收到对方发送过来的询问消息后,将本地路由器的名字作为身份标识发送给对方;而在收到对方发过来的身份标识之后,默认使用本地验证方法,即在配置文件中寻找,看看有没有用户身份标识和密码;如果有,计算加密值,结果正确则验证通过;否则验证失败,连接无法建立。

也可以同时使用PAP和CHAP两种方式:

ppp authentication chap pap或ppp authentication pap chap

如果同时使用两种方式,那么在链路协商阶段将先用第一种方式进行验证。如果对方建议使用第二种验证方式或者只是简单拒绝使用第一种方式,那么将采用第二种方式。

PPP和HDLC相比有较多的功能:支持多网络层协议、支持认证、支持多链路捆绑等等。PPP有两种认证方式:PAP和CHAP,CHAP比较PAP具有较好的安全性。

命令汇总:

encapsulation hdlc //把接口的封装改为 hdlc

encapsulation ppp //把接口的封装改为 ppp

ppp pap sent-username R1 password cisco //pap 认证时,向对方发送用户名 R1 和密码cisco

ppp authentication pap //PPP 的认证方式为 pap

username R1 password cisco //为对方创建用户 R1,密码为 cisco

ppp authentication chap //PPP 的认证方式为 chap

,