HCIA-ICT实战基础-广域网技术PPP
目录
早期广域网技术概述
PPP协议原理与配置
1 早期广域网技术概述
1.1 什么是广域网
广域网是连接不同地区局域网的网络, 通常所覆盖的范围从几十公里到几千公里. 他能连接多个地区、城市和国家, 或横跨几个洲提供远距离通信, 形成国际性的远程网络.
1.2 广域网与局域网区别
注: ISP-网络服务提供商
1.3 早期广域网结束介绍
早去广域网与局域网的区别在于数据链路层和物理层的差异性.
1.4 广域网络设备角色介绍
广域网络设备基本角色有三种: CE(Customer Edge, 用户边缘设备)、PE(Provider Edge, 服务提供商边缘设备)和P(Provider, 服务提供商设备)
1.5 早期广域网技术应用
早期的广域网技术主要是针对不同的物理链路类型, 在数据链路层进行不同的二层封装. 在CE和PE之间常用的广域网封装协议有PPP/HDLC/FR(主要常用只剩PPP)等, 用于解决用户接入广域网的长距离传输问题. 在ISP内部常用的广域网协议主要是ATM(慢慢被以太网和MPLS取代), 它用于解决骨干网高速转发的问题.
2 PPP协议原理与配置
2.1 PPP协议概述
PPP(Point-to-Point Protocol, 点到点协议)是一种常见的广域网数据链路层协议, 主要用于在全双工的链路上进行点到点的数据传输封装. 不同于802.1q被用于以太网链路上, PPP协议通常用在串行链路上.
PPP提供了安全认证协议族PAP(Password Authentication Protocol, 密码验证协议)和CHAP(Challenge Handshake Authentication Protocol, 挑战握手认证协议).
PPP协议具有良好的扩展性, 例如, 当需要在以太网链路上承载PPP协议时, PPP可扩展为PPPoE.
PPP协议提供LCP(Link Control Protocol, 链路控制协议), 用于各种链路层参数的协商, 例如最大接收单元, 认证模式等.
PPP协议提供各种NCP(Network Control Protocol, 网络控制协议), 如IPCP(IP Control Protocol, IP控制协议), 用于各网络层参数的协商, 更好的支持了网络层协议.
2.2 PPP链路建立流程
PPP链路的建立有三个阶段的协商过程: 链路层协商、认证协商(可选)和网络层协商.
- 链路层协商: 通过LCP报文进行链路参数协商, 检录链路层连接.
- 认证协商: 通过链路建立阶段协商认证方式进行链路认证.
- 网络层协商: 通过NCP协商来选择和配置一个网络层协议并进行网络层参数协商.
2.3 PPP链路接口状态机
PPP协商由链路两端的接口完成, 接口状态表示了协议协商阶段
2.4 LCP(Link Control Protocol, 链路控制协议) 报文格式
PPP报文可由Protocol字段表示不同类型的PPP报文, 例如, 当Protocol字段为0xC021是, 代表是LCP报文. 此时又由Code字段标识不同类型的LCP报文, 如下所示:
TLV结构(Type,、Length、Value, 类型、长度、值), 可扩展性强.
2.5 LCP协商过程
2.5.1 正常协商
LCP协商由不同的LCP报文交互完成. 协商由任意一方发送Configure-Request报文发起, 如果对端接收次报文且参数匹配, 则通过回复Configure-Ack响应协商成功.
需要确认的参数:
MRU: 最大接收单元, 和MTU(最大传输单元有区别, 默认最大都是1500);
Auth_Type=PAP: 认证类型=" ", 此处认证类型为PAP;
Magic_Num=a: 魔术字(迫真翻译), 功能是防环检测, a是R1上产生的随机数, 如果收到的报文的魔术字和自己产生的魔术字相同的话, 那么R1就认为网络中发生了环路.
2.5.2 参数不匹配
在LCP报文交互中出现LCP参数不匹配时, 接收方回复Configure-Nak响应告知对端修改参数然后重新协商.
2.5.3 参数不识别
在LCP报文交互中出现LCP参数不识别时, 接收方回复Configure-Reject响应告知对端删除不识别的参数然后重新协商.
2.6 PPP认证模式
链路协商成功后, 进行认证协商(此过程可选). 认证协商有两种模式, PAP(Password Authentication Protocol, 密码验证协议)和CHAP(Challenge Handshake Authentication Protocol, 挑战握手认证协议);
2.6.1 PAP(Password Authentication Protocol, 密码验证协议)
PAP认证双方有两次握手, 协商报文以明文形式在链路传输, 所以不常用.
2.6.2 CHAP(Challenge Handshake Authentication Protocol, 挑战握手认证协议)
CHAP认证双方有三次握手, 协商报文被加密后再在链路上传输.
挑战报文参数介绍:
被认证方收到报文后, 会将挑战值和随机数和密码进行哈希计算并得出MD5值, 然后封装进报文中的Response参数回复给认证方, 认证方收到之后也会进行本地计算并比较结果, 如果成功就回复成功的报文.
2.7 NCP协商
PPP认证协商通过后, 双方进入NCP协商阶段, 协商在数据链路上所传输的数据包的格式与类型. 以常见的IPCP协议为例, 他分为静态IP地址协商和动态IP地址协商.
2.7.1 静态IP地址协商
静态IP地址协商需要手动在链路两端配置IP地址.
协商检查内容为IP地址格式和对端ip地址是否与自己的IP地址冲突
2.7.3 动态IP地址协商
动态IP地址协商支持PPP链路一端为对端配置IP地址
这里有点类似于R2作为DHCP服务端将IP地址分发给R1.
2.8 配置命令
2.8.1 PPP基础配置命令
-
配置接口封装PPP协议
[Huawei-Serial0/0/0]link-protocol ppp
在接口视图下, 将接口封装协议改为PPP, 华为设备串行接口默认封装协议为PPP, 思科设备为HDLC.
-
配置协商超时时间间隔
[Huawei-Serial0/0/0]ppp timer negotiate seconds
在PPP LCP协商协议中, 本端设备会向对端设备发送LCP协商报文, 如果在指定协商时间间隔内没有收到对端的应答报文, 则重新发送.
多嘴一句, 在配置网络设备时, 关于时间的配置都不建议去修改.
2.8.2 PAP认证配置命令
-
配置验证方式以PAP方式认证对端
[Huawei-aaa]local-user username password {cipher | irreversible-cipher} password [Huawei-aaa]local-user user-name service-type ppp
[Huawei-Serial0/0/0]ppp authentication-mode pap
配置验证方以PAP方式认证对端, 首先需要通过AAA将被验证方的用户名和密码加入本地用户列表, 然后选择认证模式.
-
配置被验证方以PAP方式被对端认证.
[Huawei-Serial0/0/0]ppp pap local-user username password {cipher | irreversible-cipher} password
配置本地被对端以PAP方式验证时, 本地发送PAP用户名和口令
2.8.3 CHAP认证配置命令
-
配置验证方以CHAP方式认证对端
[Huawei-aaa]local-user user-name password {cipher | irrevesible} password [Huawei-aaa]local-user user-name service-type ppp
[Huawei-Serial0/0/0]ppp authentication-mode chap
-
配置被验证方以CHAP方式被对端认证
[Huawei-Serial0/0/0]ppp chap user user-name [Huawei-Serial0/0/0]ppp chap password {cipher | irrevesible} password
配置本地用户名, 配置本地被对端以CHAP方式验证时的口令