当前位置: 首页 > news >正文

PPPoE基础笔记

一、拨号原理

1.Discovery(发现阶段)

  • PADI
            Client 发送广播的PADI报文,报文中包含Client想要的服务信息。

  • PADO
            Server收到PADI后,会向Client回复一个单播的PADO报文。

  • PADR
            Client 收到最先收到的PADO后,会向Server发送一个单播的PADR报文。

  • PADS
            Server 会产生唯一的会话ID,然后发送一个PADS报文给Client,建立成功后进入Session阶段。

2.Session(会话阶段)

  • PPP协商
    • LCP
              完成建立、配置和检测数据链路连接
    • 认证
              PAP(明文)和CHAP(密文)
    • NCP
              配置不同的网络层协议,负责协商用户的IP、DNS等

  • 数据传输

        承载PPP数据报文传输

3.Terminate(终止阶段)

  • 单播发送PADT报文结束会话

二、PPPoE报文格式

1.Ethernet部分

  • Ethernet_type: 0x8863→发现和结束阶段
                            0x8864→会话阶段

2.PPPoE部分

  • Code:0x00→会话数据
                0x09→PADI报文
                0x07→PADO报文
                0x19→PADR报文
                0x65→PADS报文
                0xa7→PADT报文

三、PPPoE配置命令

1.Server配置思路

  • 1、配置虚拟模板(Virtual-Template)接口。由于以太网的封装协议已经默认,通过VT接口来模拟PPP接口,将物理接口和VT接口绑定,实现PPP和以太网协议的嵌套。
  • 2、配置PPP分配的IP地址、DNS地址等。
  • 3、将VT接口和PPPoE Server的物理接口绑定。实现PPPoE的封装。
  • 4、配置Server到Client的默认路由。

2.Server详细配置

  • 1、配置VT接口。
#interface virtual-template 模板号(1) 
#ppp authentication-mode 认证方式(pap和chap)// 定义PPP的认证方式 
#remote address pool 地址池(janippool)//PPPoE Client 指定的IP地址池 
#ip address IP地址(1.1.1.254) 地址掩码(24)// 设置VT接口的IP地址
  • 2、地址池和用户认证设置。
地址池 
#ip pool 地址池名(janippool)// 创建地址池 
#gateway-list 网关地址(1.1.1.254)// 指定 Client的网关 
#netwrok 网段(1.1.1.0)mask 掩码(24)// 指定Client分配的网址 
#dns-list DNS地址(114.114.114.114)// 指定Client的DNS地址 用户认证 
#aaa #local-user 用户名(jan)password cipher 密码(huawei@123)// 创建用于PPP认证的用户 #local-user 用户名(jan) service-type ppp // 指定用户用于PPP认证 
  • 3、VT接口与Server物理接口绑定。
#inteface 接口号(G0/0/0) 
#pppoe-server bind virtual-template 1
  • 4、默认路由配置
#ip route-static 0.0.0.0 0.0.0.0 vritual-template 1
  • 5、配置一个模拟的外网
#interface loopback 0 #ip address 2.2.2.2 24

3.Client配置思路

  • 1、拨号控制中心(Dial Control Center)虚拟机接口配置。用于控制拨号接口,封装协议、PPP认证、IP获取、NAT等。
  • 2、将DDC接口和PPPoE Client的物理接口绑定。实现PPPoE封装。
  • 3、运行IPv4的数据报文通过拨号访问控制列表。
  • 4、配置Server到Client的默认路由。

4.Client详细配置

  • 1、配置主机边接口地址。
  • 2、DDC虚拟拨号接口配置。
#interface dialer 拨号接口号(1) //进入拨号接口 
#link-protocol ppp //链路封装PPP协议 
#PPP 认证方式(PAP和CHAP) user 用户名(jan)//配置PPP认证的用户名和方式 
#ppp 认证方式(PAP和CHAP) password simple 密码(huawei@123) //配置PPP认证的用户密码和方式 
#ip address ppp-negotiate //设置PPPoE Client自动获取IP地址 
#dialer user 用户名(jan) // 指定拨号使用名 
#dialer bundle 拨号接口号(1) //指定虚拟的拨号接口号 
#dialer-group 拨号组号(1) //设置一个拨号组
  • 3、DDC虚拟拨号接口和PPPoE Client物理接口绑定。
 #进入接口 #pppoe-client dial-bundle-number 拨号接口号(1)
  • 4、设置拨号访问控制列表
#dialer-rule 列表号(1) 
#dialer-rule 列表号(1) ip permit
  • 5、配置Client到Server的默认路由。
#ip route-static 0.0.0.0 0.0.0.0 dialer 1

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • String 事务
  • 大模型面试系列-大模型算法工程师的面试题目与解答技巧详细说明
  • 安美数字酒店宽带运营系统 weather.php 任意文件读取漏洞复现
  • redis面试(十五)公平锁队列重排
  • 封装clickHouse线程池与ibeetl解析SQL并对结果转进行转化
  • 监控电脑屏幕被拍照的原理是什么?如此有趣的电脑防偷窥知识,你一学就会!
  • MAC 终端上传文件到云服务器
  • 【银河麒麟高级服务器操作系统】libtirpc-devel 安装问题分析
  • 英国与日本经济数据影响市场走势
  • allegro PCB设计心得笔记(四) -- 显示坐标原点和更改默认产品选项
  • 计算机网络——运输层(进程之间的通信、运输层端口,UDP与TCP、TCP详解)
  • Qt实现中英文切换中QMessageBox中的中文信息怎么处理
  • uniapp基础知识【搬代码】
  • vue播放flv视频流
  • ASP.NET Core Web API 使用Autofac框架
  • 【Amaple教程】5. 插件
  • 【跃迁之路】【733天】程序员高效学习方法论探索系列(实验阶段490-2019.2.23)...
  • Apache Zeppelin在Apache Trafodion上的可视化
  • C++类中的特殊成员函数
  • IP路由与转发
  • JavaScript 基本功--面试宝典
  • java概述
  • java架构面试锦集:开源框架+并发+数据结构+大企必备面试题
  • Python语法速览与机器学习开发环境搭建
  • rabbitmq延迟消息示例
  • React的组件模式
  • Storybook 5.0正式发布:有史以来变化最大的版本\n
  • Vue2 SSR 的优化之旅
  • XForms - 更强大的Form
  • 阿里中间件开源组件:Sentinel 0.2.0正式发布
  • 第十八天-企业应用架构模式-基本模式
  • 二维平面内的碰撞检测【一】
  • - 概述 - 《设计模式(极简c++版)》
  • 给新手的新浪微博 SDK 集成教程【一】
  • 基于 Babel 的 npm 包最小化设置
  • 爬虫进阶 -- 神级程序员:让你的爬虫就像人类的用户行为!
  • 前嗅ForeSpider采集配置界面介绍
  • 前言-如何学习区块链
  • 深度解析利用ES6进行Promise封装总结
  • 实战|智能家居行业移动应用性能分析
  • 手写一个CommonJS打包工具(一)
  • ​软考-高级-系统架构设计师教程(清华第2版)【第1章-绪论-思维导图】​
  • ​水经微图Web1.5.0版即将上线
  • ​直流电和交流电有什么区别为什么这个时候又要变成直流电呢?交流转换到直流(整流器)直流变交流(逆变器)​
  • #QT(QCharts绘制曲线)
  • (delphi11最新学习资料) Object Pascal 学习笔记---第14章泛型第2节(泛型类的类构造函数)
  • (env: Windows,mp,1.06.2308310; lib: 3.2.4) uniapp微信小程序
  • (第61天)多租户架构(CDB/PDB)
  • (二)JAVA使用POI操作excel
  • (汇总)os模块以及shutil模块对文件的操作
  • (六)库存超卖案例实战——使用mysql分布式锁解决“超卖”问题
  • (牛客腾讯思维编程题)编码编码分组打印下标(java 版本+ C版本)
  • (三)Hyperledger Fabric 1.1安装部署-chaincode测试
  • (微服务实战)预付卡平台支付交易系统卡充值业务流程设计
  • (转)关于pipe()的详细解析