HCNA Routing&Switching之PPPoE协议
前文我们了解了广域网中的HDLC和PPP协议相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15174240.html;今天我们来聊一聊PPPoE协议相关话题;
数字用户线路DSL(Digital Subscriber Line)是以电话线为传输介质的传输技术,我们通常把所有的DSL技术统称为xDSL,x代表不同种类的数字用户线路技术;目前比较流行的宽带接入方式是ADSL,ADSL是非对称DSL技术,使用的是PPPoE(PPP over Ethernet)协议;PPPoE协议通过在以太网上提供点到点的连接,建立PPP会话,使得以太网中的主机能够连接到远端的宽带接入服务器。PPPoE具有使用范围广、安全性高、计费方便等特点;
DSL技术应用场景
提示:BRAS是运营商的宽带接入设备;DSLAM是Digital Subscriber Line Access Multiplexer的简称,中文称呼数字用户线路接入复用器。DSLAM是各种DSL系统的局端设备,属于最后一公里接入设备(the last mile),其功能是接纳所有的DSL线路,汇聚流量,相当于一个二层交换机。
PPPoE在DSL中的应用
提示:在企业内部,我们通过PPPoE客户端通过网线和Modem连接;Modem的作用就是将数字信号转换为模拟信号,它有两个种接口,一种是连接PPPoE客户端的网口,一种是连接DSLAM的电话口;运营商希望通过一台接入设备来连接远程的多个主机,同时接入设备能够提供访问控制和计费功能;在众多的接入技术中,把多个主机连接到接入设备的最经济的方法就是以太网,而PPP协议可以提供良好的访问控制和计费功能,于是产生了在以太网上传输的PPP报文技术,即PPPoE;PPPoE利用以太网将大量主机组成网络,通过一个远端接入设备连接因特网,并运用PPP协议对接入的每个主机进行控制,具有使用范围广,安全性高,计费放备案的特点;PPPoE解决了用户上网收费等实际应用问题,得到了宽带接入运营商店认可并被广泛应用;
PPPoE报文格式
提示:PPPoE报文是使用Ethernet格式进行封装,所以PPPoE是以太网的上层协议;在封装过程中首先要先封装以太网首部,随后才是PPPoE首部;以太网首部中的Type是用来表示上层协议的类型;当Type的值为0x8863时,就表示承载的是PPPoE发现阶段的报文;当type的值为0x8864时就表示承载的是PPPoE会话阶段的报文;
PPPoE会话建立过程
提示:PPPoE建立会话的过程主要要经过上述二个阶段,发现阶段和会话阶段;其中发现阶段主要是发现PPPoE服务器,获取对方以太网地址;会话阶段主要是PPP协议的各种协商;经过上述两个阶段以后,一个PPPoE会话就建立好了,后续用户就可以通过PPPoE会话进行上网,数据传输;会话终结阶段是用户侧发送PPPoE终止报文,随后PPPoE会话终止;
PPPoE数据包类型
提示:PPPoE会话建立和终止过程中主要有以上5中类型的报文;PADI是PPPoE发现初始报文,主要用户寻找PPPoE服务端;当PPPoE服务端收到PPPoE客户端发送的PADI报文后,对应服务端会向客户端发送PADO,该类型报文主要是告诉PPPoE客户端对应服务端能够满足客户端的请求;当客户端收到服务端发送的PADO时(可能会有多个服务端发送PADO),它会选择最早收到的PADO对应的服务端发送PADR;PADR是客户端向服务端请求建立会话,同时也拒绝其他服务端发送的PADO报文;服务端收到客户端发送的PADR后,会回复一个PADS报文,该类型报文主要作用是告诉客户端会话id等信息;当客户端或服务端需要断开连接时,客户端或服务端会向对端发送PADT,表示终止连接,该类型报文的主要作用是通知对端PPPoE会话结束;对端收到该类型报文,会话会立即断开;
PPPoE工作流程
提示:客户端通过广播发送PADI报文来发送接入服务器;类似DHCP中的DHCP discover包;
提示:当服务器收到客户端发送的PADI报文后,将客户端请求的服务于自己能够提供的服务进行比较,如果可以提供,则单播恢复PADO报文;类似DHCP中的DHCP offer包;
提示:PPPoE客户端会根据自己收到的PADO选择最优的PADO报文对应的服务器,并单播发送一个PADR报文;PADR报文有两层作用,一层是向对应服务端请求建立会话等信息,二是拒绝其他服务端的PADO;类似DHCP中的DHCP Request包;
提示:PPPoE服务端收到客户端的PADR报文后,服务端会生成一个唯一的PPPoE session ID,并通过发送PADS报文给客户端,表示会话建立成功;类似DHCP中的DHCP ack包;
提示:当PPPoE会话建立成功以后,后续就是PPP参数协商;ppp参数协商和串口链路上的PPP参数协商过程一样;主要分LCP和NCP协商;如果有认证,还需要进行认证;当PPP参数协商成功以后,对应客户端会通过服务端获取到一个规划的ip地址等参数,后续客户端就可以通过这个ip地址等进行上网,数据传输;
PPPoE会话建立全过程
提示:只有PPP中NCP协商完成以后,对应客户端才会获取到ip地址,后续的通信客户端会通过这个ip地址来进行数据传输;
PPPoE会话终止过程
提示:当PPPoE客户端或者服务端需要关闭连接时,可以向服务端或者客服端发送PADT报文;表示关闭连接;在PADT报文中,目的mac地址为单播地址,session id为希望关闭的session id;一旦收到一个PADT报文后,对应会话会随即关闭;
PPPoE配置
实验:如下拓扑,配置PPPoE客户端和服务端
服务端配置
1、在服务端上建立用于认证的用户名和密码
2、创建用于分配ip地址等信息的地址池
提示:地址池中可以添加网关、dns、排除地址等等信息;
3、创建虚拟模板接口
提示:虚拟模板接口里主要配置ppp认证模式,以及关联地址池,和本端的ip地址;
4、将物理接口和虚拟模板接口关联
服务端全部配置
sys
sys server
aaa
local-user qiuhom password cipher admin123.com
local-user qiuhom server ppp
q
ip pool PPPoE
net 100.1.1.0 mask 255.255.255.252
q
int virtual-template 1
ppp authentication-mode chap
remote address pool PPPoE
ip add 100.1.1.1 30
q
int g0/0/0
pppoe-server bind virtual-template 1
客户端配置
1、创建拨号规则
提示:上述命令表示允许所有ip协议的报文进行拨号;
2、创建拨号接口,并在接口下配置ppp认证,并绑定拨号规则
提示:dialer user xxx 中的用户名称它只用于标识和绑定dialer的作用,不用于ppp认证,所以这里的用户名可以是任意的;
3、将物理接口和拨号接口做绑定
验证:看看对应拨号接口是否获取到ip地址?
提示:可以看到对应拨号接口已经正常获取到ip地址;说明我们的配置没有问题;
4、配置默认路由,将出接口指向对应的拨号接口
提示:配置好默认路由以后,对应客户端就可以通过pppoe的会话链路进行上网;
客户端全部配置
sys
sys client
dialer-rule
dialer-rule 1 ip permit
q
int dialer 1
dialer user xxx
dialer bundle 1
ppp chap user qiuhom
ppp chap password ci admin123.com
ip add ppp-negotiate
int g0/0/0
pppoe-client dial-bundle-number 1
q
ip route-s 0.0.0.0 0 dialer 1
在客户端验证PPPoE会话信息
在服务端验证PPPoE会话信息
在客户端验证对应拨号接口
提示:可以看到对应拨号接口使用的是PPP协议,对应LCP和IPCP都是opened,并且对应接口也通过ppp协商获取到100.1.1.2地址;
HCNA Routing&Switching之PPPoE协议的更多相关文章
- HCNA Routing&Switching之广域网协议HDLC和PPP
前文我们了解了地址转换技术NAT相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15168042.html:今天我们来聊一聊广域网中的两个二层封装协议H ...
- HCNA Routing&Switching之动态路由协议RIP
前文我们了解了动态路由的基本概念,以及动态路由和静态路由的区别,优缺点,动态路由的分类,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14995317.html ...
- HCNA Routing&Switching之静态路由
前文我们聊到了路由的相关概念和路由基础方面的话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14947897.html:今天我们聊聊静态路由相关话题: 回顾 ...
- HCNA Routing&Switching之路由基础
在开始聊路由之前,我们首先要明白在网络通讯里,什么是路由?什么是路由表.路由器以及网关的相关术语:路由简单讲就是指网络数据包从源头到目标的路径,主要用来为不同网络间通讯提供数据包转发依据:路由表就是多 ...
- HCNA Routing&Switching之动态路由基本概念
前文我们了解了静态路由的相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14965433.html:今天我们来聊一聊动态路由相关概念: 首先我们要清楚什 ...
- HCNA Routing&Switching之动态路由协议OSPF基础(二)
前文我们主要了解了OSPF的区域.区域分类.路由器类型.OSPF的核心工作流程,回顾请参考:https://www.cnblogs.com/qiuhom-1874/p/15025533.html:今天 ...
- HCNA Routing&Switching之动态路由协议OSPF基础(一)
前文我们了解了基于路径矢量算法的动态路由协议RIP防环以及度量值的修改相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15012895.html:今天我 ...
- HCNA Routing&Switching之动态路由协议OSPF DR和BDR
前文我们了解了OSPF建立邻居关系的条件,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15032907.html:今天我们来聊一聊OSPF中的DR和BDR: ...
- HCNA Routing&Switching之交换技术基础
什么是交换机?顾名思义,交换机就是用来数据包交换的:广泛用于终端接入:它的前身是hub(集线器),hub是一个古老的设备,它的作用也是用于终端接入,但hub有一个最大的缺点是它不能隔离冲突域:所谓冲突 ...
随机推荐
- Neural Approaches to Conversational AI
Neural Approaches to Conversational AI 学姐介绍的一篇综述阅读笔记 SIGIR 2018 主要贡献: 提出一个综合的调查关于最近几年的应用在QA,任务导向和闲聊对 ...
- WPF教程九:理解WPF中的对象资源
在WPF中,所有继承自FrameworkElement的元素都包含一个Resources属性,这个属性就是我们这篇要讲的资源. 这一篇讲解的资源是不是上一篇的程序集资源(那个是在编译过程中打包到程序集 ...
- STM32笔记三
1.单片机有两种存储器,程序存储器用来存储编写的程序,数据存储器用来存储单片机工作时的临时数据.内部存储器分为工作寄存器区.位寻址区.数据缓存区和特殊功能寄存器区. 2.位:数据存储的最小单位.在计算 ...
- 从 Vue 中 parseHTML 方法来看前端 html 词法分析
先前我们在 从 Vue parseHTML 所用正则来学习常用正则语法 这篇文章中分析了 parseHTML 方法用到的正则表达式,在这个基础上我们可以继续分析 parseHTML 方法. 先来看该方 ...
- Java基础00-反射35
1. 类加载器 深入理解java类加载器类加载器 1.1 类加载 类加载或类初始化的三个步骤:类的加载.类的连接.类的初始化 加载:类加载过程的一个阶段:通过一个类的完全限定查找此类字节码文件,并利用 ...
- [刘阳Java]_Spring对Dao的支持_第10讲
Spring框架优秀就是在于MVC开发的时候一旦需要对底层的数据库操作,它可以很好的支持JDBC技术,还有现在主流的ORM框架(Hibernate, MyBatis)技术. 重点先介绍Spring对J ...
- File类与常用IO流第一章File类
第一章:File类 一.1个重点单词: file:文件:directory:文件夹/目录:path:路径(绝对路径:absolutePath) 二.4个静态成员变量: 1.static String ...
- 【剑指offer】03.数组中重复的数组
剑指 Offer 03. 数组中重复的数字 知识点:数组:哈希表:萝卜占坑思想 题目描述 找出数组中重复的数字. 在一个长度为 n 的数组 nums 里的所有数字都在 0-n-1 的范围内.数组中某些 ...
- 微信小程序云开发-云存储的应用-识别驾驶证
一.准备工作 1.创建云函数identify 2.云函数identify中index.js代码 1 // 云函数入口文件 2 const cloud = require('wx-server-sdk' ...
- 构建后端第4篇之---spring 源码阅读构建环境
解决 IDEA 创建 Gradle 项目没有src目录问题 in new model named zyt-study root dir there are a build.gradle plug ...