| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> 华为ensp的PPPOE实验 -> 正文阅读 |
|
[网络协议]华为ensp的PPPOE实验 |
目录 前言今天给大家说一下PPPOE协议,为了方便说,先谈一下PPP协议,PPP协议是在P2P网络中所使用的协议,串口型链路默认就是运行着PPP协议了。 串口型链路虽然带宽很低,只有2.048MB,但是PPP协议设计的比较完善,有认证和下发IP地址的功能,PPP建立连接需要下面几个步骤。 PPP建立连接1.LCP(链路控制协议) ? ? ? ? ①协商链路的条数,在PPP协议中MG_GROUP可以聚合链路(类似于以太网的Eth-trunk) ? ? ? ? ②每台设备在发送数据的时候都会携带自己唯一的一个值,成为魔术字,如果收到携带自己魔术字的数据包则丢弃。(本人理解为可以防环) ? ? ? ? ③协商MRU(最大接收单元) ? ? ? ? ④如果有认证,认证必须通过(这里的认证指的是第二步的认证,例如用户名密码之类的) 2.认证 ? ? ? ? ①pap,采用两次握手 ? ? ? ? ? ? ? ? (1).由被认证方发起,authentication-request报文,携带配置的用户名和密码 ? ? ? ? ? ? ? ? (2).认证通过后,认证方回复authentication-ack,认证通过 ? ? ? ? ? ? ? ? 如果认证三次不通过被认证方发送termination request报文,认证方发送termination ack结束会话。 ? ? ? ? ②chap,采用三次挑战方式 ? ? ? ? ? ? ? ? (1).由认证方发起,challenge挑战报文,里面携带了ID,random,challenge的code表示等字段。 ? ? ? ? ? ? ? ? (2).被认证方收到之后,取出ID,random字段,配合自己接口上所配置的密码进行hash,得到MD5值,然后和用户名一起封装进包进行回复。 ? ? ? ? ? ? ? ? (3).认证方收到之后,从数据库中取出用户的密码,按照同样的方式用ID,random和用户密码进行hash,如果相同则认证通过,否则认证失败。 ? ? ? ? ? ? ? ?认证三次不通过之后,同样进行termination进行终止会话 3.NCP(网络控制协议) ? ? ? ? ? ? ? ? ①互相发送configuration-request报文,携带自身IP,由对端检测IP地址是否冲突,如果不冲突,则回复ack,并且学习对方的IP地址,在路由表上形成一个32位的主机路由,这就是ppp协议为什么可以接口对端IP不在同一网段还可以通信的原因。 ? ? ? ? ? ? ? ? ②如果被认证段配置了通过ppp协议来获取IP地址,那么被认证端会先发一个configuration-request,携带IP为0.0.0.0, ppp的连接建立说完之后,pppoe就很简单了,pppoe就是因为串口链路太慢了,但是ppp协议功能又还不错衍生出来的基于以太网的ppp协议,ppp over ethernet,接下来是PPPoe的连接建立。 PPPOE连接建立1.四次握手,获取会话ID ? ? ? ? ①PADI:客户端发起广播报文,寻求服务端,携带自身MAC ? ?? ? ? ? ? ? ②PADO:服务端回复PADO,携带服务端表示,服务器名字+服务器MAC地址 ? ? ? ? ?③PADR:携带服务端的标识,和自身MAC发起请求Session-ID ? ? ? ? ④PADS:服务器回复Session-ID 2.第二步和PPP是一样的过程 ? ? ? ? ①LCP ? ? ? ? ②认证 ? ? ? ? ③NCP 3.发送终结报文,终止会话(就是PPP的termination报文) 实验过程拓扑: ???????? 在我们进行配置的时候,不管是AR1,还是AR2都是在虚拟模板中或者拨号模板中进行配置的,然后在接口上绑定。? AR1: ①首先创建用户:
②进入虚拟模板进行配置: 指定认证方式,这里注意,物理接口的IP是在模板里面配置的,然后把模板绑定到物理接口上。
③在接口上绑定
?AR2 ①进入拨号口配置
②接口上绑定
查看现象: |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 10:50:55- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |