pppoe和以太网的区别(3.1.0广域网简介)

观前温馨提示:

篇幅较大,本章主要有以下大点,可通过目录与右侧导航跳转观看:

(1)广域网基本概念

(2)ppp协议介绍

(3)PAP与CHAP认证

(4)PPPoE介绍与配置


简介广域网组网
  • 广域网早期组网的X.25只能提供64Kbit/s的带宽
  • 其后DDN(Digital Data Network)数据网和FR(Frame Relay)帧中继提供的带宽提高到2Mbit/s
  • SDH(Synchronous Digital Hierachy)同步数字结构和ATM(Asynnchronous Transfer Mode)异步传输模式,进下一步把提升到了10Gbit/s
  • 最后发展到当前以IP为基础的10Gbit/s甚至更高带宽的广域网络
广域网中的路由角色(PE/CE/P)概念
  • CE(CustomerEdge):用户的边缘设备,服务提供商所连接的用户端路由器。

CE路由器通过连接一个或多个PE路由器,为用户提供多点服务接入。

CE路由器通常是一台IP路由器,它与连接的PE路由器建立邻接关系。

  • PE(ProviderEdge):运营商的边缘设备,Provide的边缘设备,服务提供商骨干网的边缘路由器,它相当于标签边缘路由器(LER)。

PE路由器连接CE路由器和P路由器,是最重要的网络节点。

用户的流量通过PE路由器流入用户网络,或者通过PE路由器流到组网骨干网

  • P(Provider):运营商的内部核心层设备,提供商路由器,服务提供商是不连接任何CE路由器的骨干网路由设备,它相当于标签交换路由器(LSR)。
PPP协议

ppp 端对端/点对点 协议(Peer-Peer Protocol

ppp有什么用?用来干嘛的?

答:PPP是一种点到点链路层协议,主要用于在全双工同异步链路上[Serial串行接口]进行点到点的数据传输。

pppoe和以太网的区别(3.1.0广域网简介)(1)

PPP协议的优势

1、支持LCP协商:链路层参数协商

2、支持NCP协商:网络层参数协商

3、支持用户认证:PAP、CHAP

4、支持扩展:ppp可扩展的支持低层链路

  • 以太网网络,PPP可扩展为PPPOE
  • ATM网络,PPP可扩展为PPPOA
PPP协议之用户认证PAP认证
  • PAP密码认证协议(Password Authentication Protocol
  • PAP是明文交互认证
  • PAP的简要认证过程
    • 1、认证方(服务器)上创建认证的账号密码,被认证方(客户端)上设置好用于认证的账号密码
    • 2、由被认证方向认证方发送认证信息(账号密码),认证方检查账号密码,匹配成功则回复认证成功否则回复认证失败
    • 【客户端】》主动认证》【服务器】

pppoe和以太网的区别(3.1.0广域网简介)(2)

CHAP认证
  • CHAP 挑战握手认证协议(Challenge Handshake Authentication Protocol
  • CHAP是密文交互认证
  • CHAP的简要认证过程:

1、认证方(服务器)上创建认证的账号密码,被认证方(客户端)上设置好用于认证的账号密码

2、认证方主动向被认证方发送挑战报文

含有:(接口认证账号认证序号A认证方随机数

在单向chap认证中,认证方的接口认证账号可有可无。

3、被认证方收到挑战报文,查看接口是否存在chap账号密码:

存在,则回复答复报文:报文序号A接口认证账号、HASH值 HASH值(认证序号A认证方随机数接口认证的密码,三者进行MD5加密得出HASH值)报文序号从始至终都是认证方发送的报文序号。

不存在,则不回复信息,默认认证失败。

4、认证方收到答复报文:

(1)对收到的账号在账号数据库中检索出“密码”

(2)基于报文序号,取出之前产生的“随机数”

(3)进行(报文序号A 认证方随机数 账号对应密码)三者进行MD5加密得到一个HASH值

5、两个HASH值对比,一样则说明认证成功,否则失败。

pppoe和以太网的区别(3.1.0广域网简介)(3)

PPP协议之地址下发

在PPP协议中,可以只在一端上配置地址实现将指定地址下发给对端。

[AR1]int s4/0/0 [AR1-Serial4/0/0]ip add 192.168.1.1 24 [AR1-Serial4/0/0]remote address 192.168.1.2 # 指定对端使用的地址 [AR2]int s4/0/0 [AR2-Serial4/0/0]ip add ppp-negotiate # 通过邻居获取地址 Dec 19 2022 18:28:38-08:00 Huawei %IFNET/4/LINK_STATE(l)[63]:The line protoco l PPP IPCP on the interface Serial1/0/0 has entered the UP state. # 出现该提示说明成功获取到地址

PPP协议的详细建立过程1、LCP协商
  • 主动发送request报文给AR2进行链路层参数的协商。
  • request报文内容:MRU、认证协议、MP-Group、魔术字
    • MRU最大传输单元:保障双向传输数据过程中不会因为MRU不同导致丢包现象。
    • 认证协议:为下一个阶段做铺垫,表明是否需要认证。
    • MP-Group:表明是否存在链路聚合。
    • 魔术字:随机产生,起到防止环路现象,如果在接口收到自己所发送的魔术字,则直接丢弃。

对端收到发送的Request报文进行报文内的参数协商:

    • 1、如果协商的参数内容都是正常的,则向对端回复ACK报文,协商成功。
    • 2、如果协商的参数内容都识别,但存在不认可的参数,则回复NAK报文,NAK中携带自己认可的参数。
      • 收到NAK后的源将再次发送Request报文同时填充使用NAK报文内的参数。
    • 3、如果协商的参数有不识别的内容,则回复Reject报文,要求源重新协商,源将去除目标不识别的内容进行剔除再发送Request。

LCP协商完成之后,则周期发送Echo-Request、Echo-Replay维护链路状态

2、pap/chap认证协商

如果没有配置ppp authentication-mode,即没有设置认证,则直接跳过该阶段。

pap认证协商

    • 被认证《主动向》认证方发送Request报文进行参数协商:(携带认证账号明文密码
    • 认证方收到Request报文,将报文内的认证账号 密码自身数据库中的认证账号 密码进行对比:
      • ①对比结果相同,回复ACK报文,认证通过
      • ②对比结果不同,回复NAK报文,认证失败

pppoe和以太网的区别(3.1.0广域网简介)(4)

chap认证协商

    • 认证方《主动向》被认证方,发送的Chalenge信息(接口认证账号<非必要>认证序号ID认证方随机数
    • 被认证方,查看接口是否存在chap账号密码:

存在,则回复的response报文:报文序号A接口认证账号、HASH值 HASH值(认证序号A认证方随机数接口认证的密码,三者进行MD5加密得到一个HASH值)报文序号从始至终都是认证方发送的报文序号。

不存在,则不回复信息,默认认证失败。

    • 认证方,收到回复的response报文:

(1)对收到的认证账号,在账号数据库中检索出“密码”

(2)基于报文序号,取出之前产生的“认证方随机数”

(3)进行(报文序号A 随机数 账号对应密码)三者进行MD5加密得到一个HASH值

    • 认证方两个HASH值对比,一样则说明认证成功Success,否则失败Failure。

pppoe和以太网的区别(3.1.0广域网简介)(5)

3、NCP协商
  • 最常见的NCP协议是IPCP,用来协商IP参数。
  • 如果该阶段没有协商成功》display ip interface brief,查看接口状态时会看到Protocol字段处于down状态

pppoe和以太网的区别(3.1.0广域网简介)(6)

  • 认证方《主动向》被认证方,发送的Request信息,携带 本端接口IP地址。
  • 被认证方收到Request报文:

如果参数不存在问题(地址没有冲突、合法)则回复ACK报文如果参数存在问题(地址有冲突或不合规)则回复NAK报文NCP协商并不看你地址是否相同网段,而是看你的地址信息是否有误。

  • 当认证方收到ACK报文,表示协商成功,双方将建立一条直连路由。这也是为什么ppp链路中不同段地址也能互通的原因。

pppoe和以太网的区别(3.1.0广域网简介)(7)

4、建立完成之后,通过Echo Request、Echo Replay保活5、建立chap认证方式的建立全过程抓包信息:

Chap认证建立会话抓包信息下载(Wireshark 3.6.6 )下载链接:https://download.csdn.net/download/qq_45443704/87320707

pppoe和以太网的区别(3.1.0广域网简介)(8)

PPP协议建立的状态机

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和以太网的区别(3.1.0广域网简介)(9)

PPPOEPPPOE简介

PPPOE(PPP Over Ethernet)以太网承载PPP协议

1、PPPOE实现以太网上提供点到点的连接,PPPOE客户端与PPPOE服务器之间建立PPP进行传输数据。

2、使用PPP数据封装的同时,为以太网上的主机提供接入服务,实现用户连接控制和计费,在企业网络与运营商网络中应用广泛。

PPP的帧结构

目前HCIA阶段,简要观看即可。

pppoe和以太网的区别(3.1.0广域网简介)(10)

PPPOE的会话建立大致过程

参考华为HCIA-Datacom V1.0 培训教材.pdf (116.68MB)【章节:17 广域网】

下载地址:https://e.huawei.com/cn/talent/#/resources 搜索下载:hcia-datacom v1.0

pppoe和以太网的区别(3.1.0广域网简介)(11)

1、PPPOE会话发现

提前给你打个预防针,其实挺像DHCP的报文交互的…

1-PPPOE PADI 查找开始

1、PPPoE客户端在本地以太网中广播一个PPPOED PADI报文,此PADI报文中包含了客户端需要的服务信息。[类似于DHCP的Discover报文]

》PADI报文的目的MAC地址是一个广播地址,Code字段为0x09,Session ID字段为0x0000。

》所有PPPoE服务器端收到PADI报文之后,会将报文中所请求的服务与自己能够提供的服务进行比较。

pppoe和以太网的区别(3.1.0广域网简介)(12)

2-PPPOE PADO 提供信息

2、如果服务器端可以提供客户端请求的服务,就会回复一个PADO报文。[类似于DHCP的Offer报文]

》PADO报文的目的地址是发送PADI报文的客户端MAC地址,Code字段为0x07,Session ID字段为0x0000。

pppoe和以太网的区别(3.1.0广域网简介)(13)

3-PPPOE PADR 请求信息

3、客户端可能会收到多个PADO报文[就像DHCP可以收到多个Offer报文],此时将选择最先收到的PADO报文对应的PPPoE服务器端,并发送一个PADR报文给这个服务器端。

》PADR报文的目的地址选中的服务器端的MAC地址,Code字段为0x19,Session ID字段为0x0000。

pppoe和以太网的区别(3.1.0广域网简介)(14)

4-PPPOE PADS 会话确认

4、PPPoE服务器端收到PADR报文后,会生成一个唯一的Session ID来标识和PPPoE客户端的会话,并发送PADS报文。

》PADS报文的目的地址PPPoE客户端的MAC地址,Code字段为0x65,Session ID字段是PPPoE服务器端为本PPPoE会话产生的Session ID。

pppoe和以太网的区别(3.1.0广域网简介)(15)

5-华为的PPPOE会话发现逻辑示意图

pppoe和以太网的区别(3.1.0广域网简介)(16)

2、PPPOE会话阶段

PPPoE会话阶段会进行PPP协商,分为LCP协商、认证协商、NCP协商三个阶段。

pppoe和以太网的区别(3.1.0广域网简介)(17)

华为的PPPOE会话阶段逻辑示意图

pppoe和以太网的区别(3.1.0广域网简介)(18)

3、PPPOE会话终结

PPPoE客户端希望关闭连接时,会向PPPoE服务器端发送一个PADT报文,用于关闭连接

同样,如果PPPoE服务器端希望关闭连接时,也会向PPPoE客户端发送一个PADT报文。

在客户端上进行会话断开: <Client>reset pppoe-client all <Client> Dec 19 2022 23:23:27-08:00 Client %PPP/4/PHYSICALDOWN(l)[0]:On the interface Dialer1:0, PPP link was closed because the status of the physical layer was Down . <Client> Dec 19 2022 23:23:27-08:00 Client %IFNET/4/LINK_STATE(l)[1]:The line protocol PPP on the interface Dialer1:0 has entered the DOWN state. <Client> Dec 19 2022 23:23:27-08:00 Client %IFNET/4/LINK_STATE(l)[2]:The line protocol PPP IPCP on the interface Dialer1:0 has entered the DOWN state.

pppoe和以太网的区别(3.1.0广域网简介)(19)

华为的PPPOE会话终结逻辑示意图PPPOE的配置环境介绍:
  • PPPOE服务器拨号地址为192.168.1.254、地址池为192.168.1.0/24、拨号虚拟模板序号1、使用chap认证、账号密码均是pppoe。
  • PPPOE客户端使用拨号数字10与PPPOE服务器进行建立会话。
  • PPPOE建立会话过程抓包信息(Wireshark 3.6.6)下载链接:https://download.csdn.net/download/qq_45443704/87320944

pppoe和以太网的区别(3.1.0广域网简介)(20)

服务器: # 1、创建DHCP地址池,给PPPOE拨号用户下发地址 [Server]dhcp enable [Server]ip pool ppp [Server-ip-pool-ppp]network 192.168.1.0 mask 24 [Server-ip-pool-ppp]gateway-list 192.168.1.254 [Server-ip-pool-ppp]q # 2、配置PPPOE服务端使用chap认证,利用PPP的NCP协商给客户端下发地址 [Server]interface Virtual-Template 1 [Server-Virtual-Template1]ppp authen chap [Server-Virtual-Template1]ip add 192.168.1.254 24 [Server-Virtual-Template1]remote add pool ppp [Server-Virtual-Template1]q # 3、配置chap认证的账号密码(命令有所缩写) [Server]aaa [Server-aaa]local pppoe pa cip pppoe [Server-aaa]local pppoe ser ppp [Server-aaa]q # 4、接口应用PPPOE拨号模板 [Server]int g0/0/0 [Server-GigabitEthernet0/0/0]pppoe-server bind virtual-template 1 # 你可能会有的疑惑: # 1、接口不需要配置地址的吗? # 【拨号模板中已经设置有了,应用模板也相当于应用了地址】 # 2、客户端不需地址吗? # 【客户端会通过发送PADI、PADO、PADR、PADS等报文协助PPPOE的建立】 # 上面的PPPOE会话建立过程有所提到 客户端: [Client]interface Dialer 1 [Client-Dialer1]lin ppp [Client-Dialer1]ppp chap user pppoe [Client-Dialer1]ppp chap password ci pppoe [Client-Dialer1]ip add ppp-negotiate [Client-Dialer1]dialer user client1 [Client-Dialer1]dialer bundle 10 [Client-Dialer1]q [Client]int g0/0/0 [Client-GigabitEthernet0/0/0]pppoe-client dial-bundle-number 10 # PPPOE自动拨号成功提示 [Client] Dec 19 2022 22:14:50-08:00 Client %IFNET/4/LINK_STATE(l)[1]:The line protocol PPP on the interface Dialer1:0 has entered the UP state. [Client] Dec 19 2022 22:14:50-08:00 Client %IFNET/4/LINK_STATE(l)[2]:The line protocol PPP IPCP on the interface Dialer1:0 has entered the UP state. [Client]

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页