二、PPPoE原理及配置

1、PPPoE的基本原理

运营商希望把一个站点上的多台主机连接到同一台远程接入设备,并实现对用户进行认证、授权和计费、访问控制的功能,通过应用RFC2516定义的PPPoE(Point-to-Point Protcol over Ethernet)技术很好的解决了以太网接入应用中的用户认证问题。将PPP帧封装到以太帧,使用PPP协议(点到点协议)在以太网上传输PPP报文的技术称为PPPoE。

PPP是一种数据链路层协议,遵循HDLC(高级数据链路控制协议)族的一般报文格式。它使用链路控制协议(LCP)来建立和维护数据链路连接。应用网络控制协议(NCP)在一条点到点连接上使用多种网络层协议(被路由协议)。PPP协议栈只涉及到物理层和数据链路层。

链路控制协议(LCP)提供以下配置:身份验证、压缩、错误检测、多链路、PPP回拨。网络控制协议(NCP)用于标识和封装网络层协议,允许通过同一条PPP链路传输多种网络层协议,包括IPCP(因特网协议控制协议)和IPXCP(网间分组交换控制协议)。

PPPoE组网结构采用Client/Server模型,PPPoE的客户端为PPPoE Client,PPPoE的服务器端为PPPoE Server。PPPoE Client向PPPoE Server发起连接请求,PPPoE Server为PPPoE Client提供接入控制、认证等功能。

PPPoE Client可以是电脑主机也可以是网关设备,常见的是现在通过光猫或者路由器设置帐号和密码后,输入上网帐号和密码连接网络,然后将PPP帧封装以太帧传输到PPPoE Server上进行PPP认证。在网络运营商的宽带接入服务器(Broadband Remote Access Server,BRAS)提供接入控制、认证、动态分配IP地址等功能。

企业接入
所有主机不用安装PPPoE Client拨号软件,同一个局域网中的所有主机共享一个账号,通过企业路由器与运营商的集中路由器建立PPPoE会话。

PPPoE利用以太网将大量主机组成网络,通过一个远端接入设备连入因特网,具有适用范围广、安全性高、计费方便的特点。

1.1、PPPoE拨号的三个阶段

PPPoE拨号可分为三个阶段,即Discovery阶段、Session阶段和Terminate阶段。

1、discovery发现阶段
发现阶段是无状态的,目的是获得 PPPoE终结端(在局端的ADSL设备上)的以太网MAC地址,并建立一个惟一的PPPoESESSION-ID。发现阶段结束后,就进入标准的PPP会话阶段。

主机可以发现多个接入集中器,然后允许用户选择一个。

2、PPP Session会话阶段
当PPPoE进入session阶段后,PPP报文就可以作为PPPoE帧的净荷封装在以太网帧发到对端,SESSION_ID必须是Discovery阶段的确定的ID,MAC地址必须是对端的MAC地址。

进行普通的LCP、NCP、IPCP协商来进行PPP验证和IP地址分配。

3、Terminate阶段
PPP通信双方可以使用PPP协议自身来结束PPPoE会话,当无法使用PPP协议结束会话时可以使用PADT(PPPoE Active Discovery Terminate)报文。

进入PPPoE Session阶段后,PPPoE Client和PPPoE Server都可以通过发送PADT报文的方式来结束PPPoE连接。PADT数据包可以在会话建立以后的任意时刻单播发送。在发送或接收到PADT后,就不允许再使用该会话发送PPP流量了。

1.2、PPPoE报文格式

字段 长度 含义
Destination_Address 48bits 以太网单播目的地址或者以太网广播地址(0xFFFFFFFF)。
Source_Address 48bits 源设备的以太网MAC地址。
Ethernet_Type 16bits 表示PPPoE拨号的阶段。•当值为0x8863时表示Discovery阶段或Terminate阶段。•当值为0x8864时表示Session阶段。
VER 4bits 表示PPPoE版本号,值为0x01。
Type 4bits 表示PPPoE类型,值为0x01。
Code 8bits 表示PPPoE报文类型。
Session_ID 16bits 用于唯一标识一个PPP Session,在discovery发现阶段被定义。值0xFFFF为将来的使用保留,不允许使用。
Length 16bits 表示PPPoE报文的Payload长度。它不包括以太网头部和PPPoE头部的长度。
Tag_Type 16bits 表示网络字节序。
Tag_Length 16bits 是一个网络字节序的无符号值,表示Tag_Value的字节数。
Tag_Valus 可变 Tag_Value的数据。
Checksum 16bits 表示校验和字段,用于检验报文的正确性。

Destination_Address目标地址

  • Discovery会话阶段,该域的值是单播或者广播地址,PPPoE Client寻找PPPoE Server的过程使用广播地址,确认PPPoE Server后使用单播地址。
  • PPP Session会话阶段,该域必须是Discovery阶段已确定的通信对方的单播地址。

Code表示PPPoE报文类型

  • Code域为0x09,表示PADI报文。
  • Code域为0x07,表示PADO报文。
  • Code域为0x19,表示PADR报文。
  • Code域为0x65,表示PADS报文。
  • Code域为0x00,表示会话数据。
  • Code域为0xa7,表示PADT报文。

1.3、PPPoE协商过程

1.3.1、discovery发现阶段:

1、PPPoE Client广播发送一个PADI(PPPoE Active Discovery Initial)报文,在此报文中包含PPPoE Client想要得到的服务类型信息。

PPPoE 头部:分组的目的地址为以太网的广播地址0×ffffffffffff,CODE(代码)字段值为0×09,SESSION-ID(会话ID)字段值为0×0000。

PPPoE Payload:TAG_Type域为0x0101(Service-Name),表明后面紧跟的是服务的名称,用于请求服务,也可以包含其他的TAG。

2、所有的PPPoE Server收到PADI报文之后,将其中请求的服务与自己能够提供的服务进行比较,如果可以提供,则单播回复一个PADO(PPPoE Active Discovery Offer)报文。

PPPoE 头部:CODE字段值为0×07,SESSION-ID字段值仍为0×0000。

PPPoE Payload:TAG_Type域为0x0101(Service-Name),表明后面紧跟的是服务的名称;为0x0102(AC-Name),表明后面紧跟的字符串唯一地表示了某个特定的访问集中器。

3、PPPoE Client可能收到多个PPPoE Server发送的PADO报文,PPPoE Client选择最先收到的PADO报文对应的PPPoE Server做为自己的PPPoE Server,并单播发送一个PADR(PPPoE Active Discovery Request)报文。

PPPoE 头部:Code域为0x19,SESSION-ID字段值仍为0×0000。

PPPoE Payload:0x0101(Service-Name),表明后面紧跟的是服务的名称。有且只有一个TAG_Type为Service-Name的TAG,其他类型的TAG可选。

4、PPPoE Server产生一个唯一的会话ID(Session ID),标识和PPPoE Client的这个会话,通过发送一个PADS(PPPoE Active Discovery Session-confirmation)报文把会话ID发送给PPPoE Client,会话建立成功后便进入PPPoE Session阶段。

PPPoE 头部:Code域为0x65,SESSION-ID字段值为分配的数值。

1.3.2、PPP Session会话阶段:

1、PPP协商阶段
Ethernet_Type域设置为0x8864,PPPoE 头部:Code域为0x00,SESSION-ID字段值为Discovery阶段所指定的值,TAG_Type域包含一个PPP帧。PPP帧的开始字段是PPP Protocol-ID。

  • LCP阶段主要完成建立、配置和检测数据链路连接。(负责设备之间链路的创建、维护和终止。)
  • LCP协商成功后,开始进行认证,认证协议类型由LCP协商结果(CHAP或者PAP)决定。
  • 认证成功后,PPP进入NCP阶段。NCP是一个协议族,用于配置不同的网络层协议,常用的是IP控制协议(IPCP),它主要负责协商用户的IP地址和DNS服务器地址。

2、PPP数据传输阶段

1.3.3、Terminate阶段:

PPPoE头部:Code域为0xa7,SESSION-ID字段值为Discovery阶段所指定的值。

1.4、密码验证协议

PPP提供密码验证协议PAP(Password Authentication Protocol)和质询握手验证协议CHAP(Challenge-Handshake Authentication Protocol)两种验证方式。

PAP认证过程非常简单,二次握手机制。使用明文格式发送用户名和密码。

CHAP认证过程比较复杂,三次握手机制;使用密文格式发送CHAP认证信息;认证方发起CHAP认证,有效避免暴力破解。

两者的区别是CHAP认证用户使用MD5算法对该随机报文进行加密,将生成的密文和自己的用户名发给验证方,验证方用自己保存的被验证方密码和MD5算法对原随机报文加密,比较二者的密文,若比较结果一致,认证通过,若比较结果不一致,认证失败。

2、PPPoE的配置

2.1、PPPoE Server配置

要求:以太网内路由器设备作为PPPoE Server端,每台PC机都可通过拨号上网,接入Internet。

实现效果:PPPoE Server为主机动态分配IP地址;通过AAA本地认证认证主机用户;为主机分配DNS服务器地址。

第一步、配置全局地址池pool1

[R1] ip pool pppoe
[R1-ip-pool-pool1] network 192.168.1.0 mask 255.255.255.0
[R1-ip-pool-pool1] gateway-list 192.168.1.1
[R1-ip-pool-pool1] quit

第二步、配置域用户使用本地认证方案

[R1] aaa
[R1-aaa] authentication-scheme scheme0  //创建名为scheme0的授权方案。
[R1-aaa-authen-scheme0] authentication-mode local
[R1-aaa-authen-scheme0] quit
[R1-aaa] domain xyz                         //创建域xyz
[R1-aaa-domain-xyz] authentication-scheme scheme0
[R1-aaa-domain-xyz] authorization-scheme scheme0
[R1-aaa-domain-xyz] quit
[R1-aaa] local-user user1@xyz password
Please configure the login password (8-128)
It is recommended that the password consist of at least 2 types of characters, i
ncluding lowercase letters, uppercase letters, numerals and special characters.
Please enter password:
Please confirm password:
Info: Add a new user.
[R1-aaa] local-user user1@xyz service-type ppp
[R1-aaa] quit

第三步、配置虚拟接口模板参数

[R1] interface virtual-template 1    //创建虚拟模板接口
[R1Virtual-Template1] ppp authentication-mode chap domain xyz  //ppp使用chap验证
[R1-Virtual-Template1] ip address 192.168.1.1 255.255.255.0
[R1-Virtual-Template1] remote address pool pppoe    //调用地址池pppoe
[R1-Virtual-Template1] ppp ipcp dns 8.8.8.8 4.4.4.4
[R1-Virtual-Template1] quit

第四步、绑定虚拟接口模板在以太网接口上。

[R1] interface gigabitethernet 1/0/0
[R1-GigabitEthernet1/0/0] pppoe-server bind virtual-template 1 //物理接口与虚拟接口进行绑定
[R1-GigabitEthernet1/0/0] quit

各主机安装PPPoE Client拨号软件后,配置好用户名(此处为user1@xyz)和密码就能使用PPPoE协议,拨号连接PPPoE Server。

显示PPPoE会话的状态信息和配置信息命令:
display pppoe-server session all

2.2、PPPoE Client配置

要求:以太网内路由器设备R1作为PPPoE Client端,通过这个帐号到R2作为PPPoE Server端进行认证。

实现效果:每台PC机都可通过自动拨号方式,接入Internet。

第一步、配置PPPoE Server如2.1PPPoE Server配置,此处省略。

第二步、配置拨号访问组1以及对应的拨号访问控制条件。

[R2] dialer-group 1 rule ip permit       //配置拨号访问组1
[R2] interface dialer 1      //创建拨号接口1
[R2-Dialer1] dialer bundle enable    //共享DDR
[R2-Dialer1] dialer-group 1    //将Dialer1接口与拨号访问组1关联。
[R2-Dialer1] ip address ppp-negotiate       //通过协商获取IP地址
[R2-Dialer1] ppp chap user user1@xyz    //用户帐号
[R2-Dialer1] ppp chap password cipher 12345678    //用户密码
[R2-Dialer1] quit

第三步、配置PPPoE会话

[R2] interface gigabitethernet 2/0/0
[R2-GigabitEthernet2/0/0] pppoe-client dial-bundle-number 1
[R2-GigabitEthernet2/0/0] quit

第三步、配置到PPPoE Server的静态路由

[R2] ip route-static 0.0.0.0 dialer 1
[R2] interface dialer 1
[R2-Dialer1] dialer timer idle 150     //配置空闲时间间隔为150秒
[R2-Dialer1] quit

第四步、验证配置
display pppoe-client session summary

广域网宽带接入技术二PPPoE原理及配置相关推荐

  1. 广域网宽带接入技术五EPON技术

    广域网宽带接入技术五EPON技术 3.2.2.ONU测距和时延补偿 3.2.3.以太网OAM工作流程 3.2.4.带宽分配 4.EPON设备基本配置 4.1.OLT常用配置 4.1.1.OLT配置 3 ...

  2. 计算机网络二层技术——链路聚合原理及其配置(有这一篇就足够了)

    目录 链路聚合 前言 链路聚合应用场景 链路聚合 链路聚合模式 数据流控制 二层链路聚合配置 三层链路聚合配置 常问问题? 如果一个管理员希望将千兆以太口和百兆以太口加入同一个Eth-trunk,会发 ...

  3. PPPoE 的 基础配置及原理

    PPPoE 的 基础配置及原理 拓扑图 配置原理 1.Virtual-Template虚拟模板接口的配置: 为了让同为L2层协议的以太网承载ppp,那么就需要配置vt虚拟模板(Virtual-Temp ...

  4. 【直通华为HCNA/HCNP系列R篇8】VRRP技术原理及配置与管理-王达-专题视频课程

    [直通华为HCNA/HCNP系列R篇8]VRRP技术原理及配置与管理-10465人已学习 课程介绍         本课程以笔者编写,由华为公司指定作为ICT认证培训教材--<华为路由器学习指南 ...

  5. vlan为什么能隔离广播域_路由交换技术-VLAN原理及配置

    VLAN原理及配置 1. 背景 网络中计算机的数量越来越多,传统的以太网开到面临冲突严重,广播泛滥及安全性无法保障等问题 VLAN(virtual local area network)即虚拟局域网, ...

  6. 网络存储技术Windows server 2012 (项目二 动态磁盘的配置与管理)

    网络存储技术Windows server 2012 (项目二 基本磁盘的配置与管理) 目录 前言 一.项目背景 二.项目实训题 1.项目1 2.项目2 3.项目3 前言 网络存储技术,是以互联网为载体 ...

  7. MPLS 虚拟专用网络技术原理与配置

    MPLS VPN原理与配置 文章目录 MPLS VPN原理与配置 VPN技术的产生及分类 VPN模型 - Overlay VPN VPN模型 - Peer-to-Peer VPN MPLS VPN解决 ...

  8. 第五章 路由器的工作原理及其配置

    第五章 路由器的工作原理及其配置 5.1 广域网服务 WAN连接的目的是在两个远离的网络之间尽可能高效率传递数据.连接的效率越高,到最终用户的连接就越透明.WAN连接通常比L A N连接要慢.例如,一 ...

  9. (*长期更新)软考网络工程师学习笔记——Section 3 宽带接入技术和导引型传输媒体

    目录 一.宽带接入技术 (一)xDSL技术 1.xDSL技术的简介 2.常见的ADSL接入方式 (二)HFC混合光纤--同轴电缆 (三)FTTx技术 1.FTTx的定义 2.FTTx的分类 3.无源光 ...

  10. 三级网络技术备考重点之路由器配置及使用

    计算机三级网络技术:第七章路由器配置及使用 三级网络技术备考重点之路由器配置及使用 1.路由器概述 路由器是工作在网络层的设备. 路由器负责将数据分组从源端主机经最佳路径传送到目的端主机 路由器具有异 ...

最新文章

  1. 引争议!硕导提议高校教师应多配偶,这样就能多生娃!高校的处理通报来了...
  2. 特殊权限控制之SUID、SGID、Sticky及facl
  3. [转]MySQL Explain详解
  4. Android nomedia 避免图片等资源泄露在系统图库其中
  5. CC2530中常用的控制寄存器
  6. 使用Java8的Stream对两个 List 遍历匹配数据的优化处理
  7. C/C++中“空语句”的说明
  8. Flask 扩展 Flask-Script
  9. linux 并行 模式,并行设计模式-Master/Worker
  10. leetcode56. Merge Intervals
  11. 【证明】两个自变量的二阶线性方程经过可逆变换后方程的类型不会改变
  12. pmp 第六版 模拟卷5错题整理
  13. linux qt 多点触摸,Qt 4.6 添加 Multi-touch(多点触摸)支持
  14. MySQL - 实战 棋牌游戏数据库开发
  15. Bugzilla使用
  16. 惠普笔记本需要按下FN键,F5起作用;惠普笔记fn键开启和关闭功能;则无需FN可直接使用F1-F12功能按键。
  17. android 关闭来电铃声,Android删除除自定义铃声后,来电铃声显示是一串数字
  18. vue 项目中 zip 压缩包文件下载
  19. linux卷空间不足问题 gparted工具重新分配根分区空间
  20. macOS Monterey推出原生密码管理器,支持手动输入网址及账户

热门文章

  1. 因为制作爬虫程序,我收到了警告
  2. 淘宝网站的设计与排版
  3. 班长投票小程序的java代码
  4. 读书寄语之体现人生智慧的9个字
  5. Bulma CSS - 简介
  6. 世界需要简化第四篇:从地面发射人造卫星或战术导弹,如何控制其运行轨道?——算法经高度抽象简化,所有下标经仔细核对
  7. 简单理解时间同步和时钟同步
  8. 不用 qlv 格式转换成 mp4 - 优雅的下载腾讯视(mp4 格式)
  9. NAND Flash闪存坏块的相关知识
  10. 网课答案公众号查询方法