篇幅较大,本章主要有以下大点,可通过目录与右侧导航跳转观看:
(1)广域网基本概念
(2)PPP协议介绍
(3)PAP与CHAP认证
(4)PPPOE介绍与配置
CE路由器通过连接一个或多个PE路由器,为用户提供多点服务接入。
CE路由器通常是一台IP路由器,它与连接的PE路由器建立邻接关系。
PE路由器连接CE路由器和P路由器,是最重要的网络节点。
用户的流量通过PE路由器流入用户网络,或者通过PE路由器流到组网骨干网。
ppp 端对端/点对点 协议(Peer-Peer Protocol)
ppp有什么用?用来干嘛的?
答:PPP是一种点到点链路层协议,主要用于在全双工的同异步链路上[Serial串行接口]进行点到点的数据传输。
1、支持LCP协商:链路层参数协商
2、支持NCP协商:网络层参数协商
3、支持用户认证:PAP、CHAP
4、支持扩展:ppp可扩展的支持低层链路
1、认证方(服务器)上创建认证的账号密码,被认证方(客户端)上设置好用于认证的账号密码
2、认证方主动向被认证方发送挑战报文
含有:(接口认证账号、认证序号A、认证方随机数)
在单向chap认证中,认证方的接口认证账号可有可无。
3、被认证方收到挑战报文,查看接口是否存在chap账号密码:
存在,则回复答复报文:报文序号A、接口认证账号、HASH值 HASH值(认证序号A、认证方随机数、接口认证的密码,三者进行MD5加密得出HASH值)报文序号从始至终都是认证方发送的报文序号。
不存在,则不回复信息,默认认证失败。
4、认证方收到答复报文:
(1)对收到的账号在账号数据库中检索出“密码”
(2)基于报文序号,取出之前产生的“随机数”
(3)进行(报文序号A+认证方随机数+账号对应密码)三者进行MD5加密得到一个HASH值
5、两个HASH值对比,一样则说明认证成功,否则失败。
在PPP协议中,可以只在一端上配置地址实现将指定地址下发给对端。
对端收到发送的Request报文进行报文内的参数协商:
LCP协商完成之后,则周期发送Echo-Request、Echo-Replay维护链路状态
如果没有配置ppp authentication-mode,即没有设置认证,则直接跳过该阶段。
pap认证协商
chap认证协商
存在,则回复的response报文:报文序号A、接口认证账号、HASH值 HASH值(认证序号A、认证方随机数、接口认证的密码,三者进行MD5加密得到一个HASH值)报文序号从始至终都是认证方发送的报文序号。
不存在,则不回复信息,默认认证失败。
(1)对收到的认证账号,在账号数据库中检索出“密码”
(2)基于报文序号,取出之前产生的“认证方随机数”
(3)进行(报文序号A+随机数+账号对应密码)三者进行MD5加密得到一个HASH值
如果参数不存在问题(地址没有冲突、合法)则回复ACK报文如果参数存在问题(地址有冲突或不合规)则回复NAK报文NCP协商并不看你地址是否相同网段,而是看你的地址信息是否有误。
Chap认证建立会话抓包信息下载(Wireshark 3.6.6 )下载链接:https://download.csdn.net/download/qq_45443704/87320707
1.通信双方开始建立PPP链路时,先进入到Establish阶段。
2.在Establish阶段,进行LCP协商:协商通信双方的MRU(Maximum Receive Unit,最大接收单元)、认证方式和魔术字(Magic Number)等选项。 协商成功后进入Opened状态,表示底层链路已建立。
3.如果配置了认证,将进入Authenticate阶段。否则直接进入Network阶段。
4.在Authenticate阶段,会根据连接建立阶段协商的认证方式进行链路认证。 认证方式有两种:PAP和CHAP。如果认证成功,进入Network阶段,否则进入Terminate阶段,拆除链路,LCP状态转为Down。
5.在Network阶段,PPP链路进行NCP协商。 通过NCP协商来选择和配置一个网络层协议并进行网络层参数协商。(选择一个IP地址进行网络层参数协商)最常见的NCP协议是IPCP,用来协商IP参数。
6.在Terminate阶段,如果所有的资源都被释放,通信双方将回到Dead阶段。
PPPOE(PPP Over Ethernet)以太网承载PPP协议
1、PPPOE实现以太网上提供点到点的连接,PPPOE客户端与PPPOE服务器之间建立PPP进行传输数据。
2、使用PPP数据封装的同时,为以太网上的主机提供接入服务,实现用户连接控制和计费,在企业网络与运营商网络中应用广泛。
目前HCIA阶段,简要观看即可。
参考华为HCIA-Datacom V1.0 培训教材.pdf (116.68MB)【章节:17 广域网】
下载地址:https://e.huawei.com/cn/talent/#/resources 搜索下载:hcia-datacom v1.0
提前给你打个预防针,其实挺像DHCP的报文交互的…
1-PPPOE PADI 查找开始
1、PPPoE客户端在本地以太网中广播一个PPPOED PADI报文,此PADI报文中包含了客户端需要的服务信息。[类似于DHCP的Discover报文]
》PADI报文的目的MAC地址是一个广播地址,Code字段为0x09,Session ID字段为0x0000。
》所有PPPoE服务器端收到PADI报文之后,会将报文中所请求的服务与自己能够提供的服务进行比较。
2-PPPOE PADO 提供信息
2、如果服务器端可以提供客户端请求的服务,就会回复一个PADO报文。[类似于DHCP的Offer报文]
》PADO报文的目的地址是发送PADI报文的客户端MAC地址,Code字段为0x07,Session ID字段为0x0000。
3-PPPOE PADR 请求信息
3、客户端可能会收到多个PADO报文[就像DHCP可以收到多个Offer报文],此时将选择最先收到的PADO报文对应的PPPoE服务器端,并发送一个PADR报文给这个服务器端。
》PADR报文的目的地址是选中的服务器端的MAC地址,Code字段为0x19,Session ID字段为0x0000。
4-PPPOE PADS 会话确认
4、PPPoE服务器端收到PADR报文后,会生成一个唯一的Session ID来标识和PPPoE客户端的会话,并发送PADS报文。
》PADS报文的目的地址是PPPoE客户端的MAC地址,Code字段为0x65,Session ID字段是PPPoE服务器端为本PPPoE会话产生的Session ID。
5-华为的PPPOE会话发现逻辑示意图
PPPoE会话阶段会进行PPP协商,分为LCP协商、认证协商、NCP协商三个阶段。
当PPPoE客户端希望关闭连接时,会向PPPoE服务器端发送一个PADT报文,用于关闭连接。
同样,如果PPPoE服务器端希望关闭连接时,也会向PPPoE客户端发送一个PADT报文。