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

PPP 、PPPoE 浅析和配置示例

一、名词:

        PPP: Point to Point Protocol    点到点协议
        LCP:Link Control Protocol    链路控制协议
        NCP:Network Control Protocol 网络控制协议,对于上层协议的支持,N 可以为IPv4、IPv6、MPLS 等
        MRU:Maximum Receive Unit    最大接收单元
        MTU:Maximum Transfer Unit    最大传输单元
        PAP:Password Authentication Protocol 口令认证协议
        CHAP:Chanllenge-Handshack Authentication Protocol 挑战握手协议
        DSL:Digital Subscriber Line 数字用户线路
        PPPoE:Point-to-Point Protocol over Ethernet 以太网承载 PPP 协议
        BRAS:Broadband Remote Access Server 宽带接入服务器
        PADI:PPP Active Discovery Initiation,Client 发现 BRAS
        PADO:Offer,BRAS回应
        PADR:Request,Client 请求加入 BRAS
        PADS:Session-Conform,BRAS会话确认

二、PPP:

        分为两个子层:LCP 和 NCP
        LCP:Link Control Protocol 链路控制协议,

    1、LCP 二层链路协商,建立、维护、拆除
       1)建立:

config-request----->
                <------config-ack
                <------config-nak
                <------config-reject
    维护:keepalive,保活
    echo-request------>
            <-----echo-reply
    拆除:
    termination-request------>
            <------terminattion-ack
    PPP链接建立过程:
    LCP configuration-request:
    Option:
        MRU:Maximum Receive Unit 最大接收单元
        MTU:最大传输单元 = 1500(默认),在    DC/IDC中,一般MTU默认o 9000,可直接在接口下配置,如
        int s0/0/0
          mtu 2000    双边如果配置不同,  按最小值来
    假如DF置位  dont fragment,  则使用 PMD: path mtu discovery mtu路径发现来解决 

       2)认证:    PAP/CHAP

    认证方:
    int s0/0/0
      ppp authentication-mode chap    #必须,  认证方标志
      ppp chap user AR2        #只有被认证方没有接口密码的时候,  才有意义
      ppp chap pass simple 1234    #被认证方不看,  只有当双向认证才使用

    被认证方:
    aaa
      local-user AR2 password cipher 123    #当被认证方无密码时,  有意义
    int s0/0/0
      ppp chap user xx        #必须配置 
      ppp chap password    #建议配置,  优先看接口密码,  接口没有就在aaa找对应用户名的密码

       3)捆绑:multilink-group,意义:冗余、负载、增加带宽

[R2]:
interface Mp-group0/0/0remote address 1.1.1.1 ip address 2.2.2.2 255.255.255.0 
#
interface Serial2/0/0link-protocol pppppp mp Mp-group 0/0/0
#
interface Serial2/0/1link-protocol pppppp mp Mp-group 0/0/0
#[R1]:
interface Mp-group0/0/1ip address ppp-negotiate
#
interface Serial2/0/0link-protocol pppppp mp Mp-group 0/0/1
#
interface Serial2/0/1link-protocol pppppp mp Mp-group 0/0/1
#

        if 要做 pap/chap 认证的话,需要在两个串口分别做 

    4)压缩:compress,QoS
    5)防环:magic-number,魔术字

        每个设备会随机形成魔术字,  if 收到自己的魔术字,  则回复config-nak,  然后自己再生成 ,  如果再收到相同的.....则判断环路

2、NCP:PPPoE 的 NCP

IPCP:
    1、互推地址,实现不同网段的互访
    Configuration-Request
        option:  IP Address:  1.1.1.1
            Configuration-ACK
                option:  IP Address 1.1.1.1
                AR3产生一条直连路由
            Configuration-Request
                option:  IP Address 1.1.1.2
    Configuration-ACK
        option:  IP Address 2.2.2.2
        AR2产生一条直连路由
    问题:正常来说,相同公司的不同站点:IP应该在同一网段,什么场景,两端地址不在同一网段?
    答:互联网访问,上网业务
    BRAS:Broad Bandwidth Access Server:  ME60
    Client-----Server  一定不在同一网段
    2、动态获取地址

        PPPoE:  互联网接入技术
            通信技术:DSL:Digital Subscriber Line
            数通技术:PPPoE,  PON(ePon,  GPon)

        服务端:
        int virtual-template 0
          ip addr 1.2.3.4
          ppp authentication-mode pap
          remote address 4.3.2.1
        dis interface virtual-template 0
        int G1/0/1        #绑定一下
          pppoe-server bind virtual-template 0

        客户端:
        int dialer 0
          ip address ppp-negotiate
          ppp pap local-user hw password simple 123
          dialer user hw
          dialer bundle 1
        int G0/0/0
          pppoe-client dial-bundle-number 1

三、PPPoE ping 通过程

        1、查路由表:

        0.0.0.0/0----dailer 1(PPP)

        2、封装,DMAC未知,需要构建

            Bundle id    Session id    Interface    SMAC    DMAC
            1    ?    G0/0/0    自己的    ?
            PPPoE Discovery:
            1)、Client 发现 BRAS
            PPPoE Discovery    #广播,包含PADI:  PPP Active Discovery Initiation
            源MAC AR1    DMAC 全F
            2)、BRAS 回应
            PPPoE Offer    #单播,PADO,包含BRAS MAC,  如果有多个BRAS,Client会优选第一个Offer
            3)、Client 请求
            PADR:  PPP Address Request,  请求加入bras,  拒绝掉其他的 BRAS
            4)、BRAS 确认
            PADS:  session-confirm,会话确认
            完成后,获取 Session id 和 DMAC,进行封装后发出

        3、PPP 认证
        4、PPP 建链

四、PPP 配置举例

        1、PPP PAP配置举例:

        PPP 认证分为认证方和被认证方,这里 R2 为 Sever端 和认证方,R1 为被认证方:

[R2]:
aaa local-user hw password cipher %$%$+>0h@g2c(E_#xYHN=U074Ph&%$%$local-user hw privilege level 2local-user hw service-type ppp
#
interface Serial2/0/0link-protocol pppppp authentication-mode pap remote address 1.2.3.5 ip address 1.2.3.4 255.255.255.0 
#
[R1]:
interface Serial2/0/0link-protocol pppppp pap local-user hw password simple 123ip address ppp-negotiate
#

        2、PPP CHAP 配置举例:

[R2]:
aaa local-user ar1 password cipher %$%$%%qD<7,-.#>~<+5b2:;,4^3V%$%$local-user ar1 privilege level 2local-user ar1 service-type ppp
#
interface Serial2/0/0link-protocol pppppp authentication-mode chap remote address 1.2.3.5 ppp chap user ar1ip address 1.2.3.4 255.255.255.0 
#
[R1]:
interface Serial2/0/0link-protocol pppppp chap user ar1ppp chap password simple 123ip address ppp-negotiate
#

五、PPPoE 配置举例

[R2]:
aaa local-user hw password cipher %$%$+>0h@g2c(E_#xYHN=U074Ph&%$%$local-user hw privilege level 2local-user hw service-type ppp
#
interface Virtual-Template0ppp authentication-mode pap remote address 1.1.1.1 ip address 2.2.2.2 255.255.255.0 
#
interface GigabitEthernet0/0/0pppoe-server bind Virtual-Template 0
#
[R1]:
interface Dialer0link-protocol pppppp pap local-user hw password simple 123ip address ppp-negotiatedialer user hwdialer bundle 1
#
interface Serial2/0/1link-protocol ppp
#
interface GigabitEthernet0/0/0pppoe-client dial-bundle-number 1 
#


 

相关文章:

PPP 、PPPoE 浅析和配置示例

一、名词&#xff1a; PPP&#xff1a; Point to Point Protocol 点到点协议 LCP&#xff1a;Link Control Protocol 链路控制协议 NCP&#xff1a;Network Control Protocol 网络控制协议&#xff0c;对于上层协议的支持&#xff0c;N 可以为IPv4、IPv6…...

【Python机器学习】词向量推理——词向量

目录 面向向量的推理 使用词向量的更多原因 如何计算Word2vec表示 skip-gram方法 什么是softmax 神经网络如何学习向量表示 用线性代数检索词向量 连续词袋方法 skip-gram和CBOW&#xff1a;什么时候用哪种方法 word2vec计算技巧 高频2-gram 高频词条降采样 负采样…...

Python 语法糖:让编程更简单(续二)

Python 语法糖&#xff1a;让编程更简单&#xff08;续&#xff09; 10. Type hints Type hints 是 Python 中的一种语法糖&#xff0c;用于指定函数或变量的类型。例如&#xff1a; def greet(name: str) -> None:print(f"Hello, {name}!")这段代码将定义一个…...

6 - Shell编程之sed与awk编辑器

目录 一、sed 1.概述 2.sed命令格式 3.常用操作的语法演示 3.1 输出符合条件的文本 3.2 删除符合条件的文本 3.3 替换符合条件的文本 3.4 插入新行 二、awk 1.概述 2. awk命令格式 3.awk工作过程 4.awk内置变量 5.awk用法示例 5.1 按行输出文本 5.2 按字段输出文…...

什么是XML文件,以及如何打开和转换为其他文件格式

本文描述了什么是XML文件以及它们在哪里使用,哪些程序可以打开XML文件,以及如何将XML文件转换为另一种基于文本的格式,如JSON、PDF或CSV。 什么是XML文件 XML文件是一种可扩展标记语言文件。它们是纯文本文件,除了描述数据的传输、结构和存储外,本身什么也不做。 RSS提…...

海外直播对网速、带宽、安全的要求

要满足海外直播的要求&#xff0c;需要拥有合适的网络配置。在全球化的浪潮下&#xff0c;海外直播正逐渐成为企业、个人和各类组织的重要工具。不论是用于市场推广、品牌宣传&#xff0c;还是与观众互动&#xff0c;海外直播都为参与者带来了丰富的机会。然而&#xff0c;确保…...

UWB定位室外基站

定位基站&#xff0c;型号SW&#xff0c;是一款基于无线脉冲技术开发的UWB定位基站&#xff0c;基站可用于人员、车辆、物资的精确定位&#xff0c; 该基站专为恶劣环境使用而设计&#xff0c;防尘、防水等级IP67&#xff0c;工业级标准支持365天连续运行&#xff0c;本安防爆可…...

高斯平面直角坐标讲解,以及地理坐标转换高斯平面直角坐标

高斯平面直角坐标系(Gauss-Krger 坐标系)是基于 高斯-克吕格投影 的一种常见的平面坐标系统,主要用于地理信息系统 (GIS)、测绘和工程等领域。该坐标系将地球表面的经纬度(地理坐标)通过一种投影方式转换为平面直角坐标,以便在二维平面中进行距离、面积和角度的计算。 一…...

C++入门(06)安装QT并快速测试体验一个简单的C++GUI项目

文章目录 1. 清华镜像源下载2. 安装3. 开始菜单上的 QT 工具4. 打开 Qt Creator5. 简单的 GUI C 项目5.1 打开 Qt Creator 并创建新项目5.2 设计界面5.3 添加按钮的点击事件5.4 编译并运行项目 6. 信号和槽&#xff08;Signals and Slots&#xff09; 这里用到了C类与对象的很多…...

一篇文章告诉你小程序为什么最近这么火?

微信小程序之所以最近这么火&#xff0c;主要得益于其低成本获取高流量、线上线下流量互换、社交裂变引爆流量以及封闭商业生态闭环等优势。下面将详细探讨小程序火爆的多个原因&#xff1a; 一篇文章告诉你小程序为什么这么火爆&#xff1f; 低成本获取高流量 无需安装注册&…...

Qt-常用控件(3)-多元素控件、容器类控件和布局管理器

1. 多元素控件 Qt 中提供的多元素控件有: QListWidgetQListViewQTableWidgetQTableViewQTreeWidgetQTreeView xxWidget 和 xxView 之间的区别&#xff0c;以 QTableWidget 和 QTableView 为例. QTableView 是基于 MVC 设计的控件.QTableView 自身不持有数据,使用 QTableView 的…...

【系统设计】主动查询与主动推送:如何选择合适的数据传输策略

基本描述总结 主动查询机制&#xff1a;系统A主动向系统B请求数据&#xff0c;采用严格的权限控制和身份认证&#xff0c;防止未授权的数据访问。数据在传输过程中使用TLS加密&#xff0c;并通过动态脱敏处理隐藏敏感信息。 推送机制&#xff1a;系统B在数据更新时主动向系统…...

mac 安装brew并配置国内源

​ 前置条件 - Xcode 命令行工具 一行代码安装Homebrew 添加到路径(PATH) - zsh shell为例 背景介绍 最近重装了我的MAC mini &#xff08;m1 芯片&#xff09;, 很多软件都需要重新安装&#xff0c;因为后续还需要安装一些软件&#xff0c;所以想着安装个包管理软件 什么…...

Temu官方宣导务必将所有的点位材料进行检测-RSL资质检测

关于饰品类产品合规问题宣导&#xff1a; 产品法规RSL要求 RSL测试是根据REACH法规及附录17的要求进行测试。REACH法规是欧洲一项重要的法规&#xff0c;其中包含许多对化学物质进行限制的规定和高度关注物质。 为了确保珠宝首饰的安全性&#xff0c;欧盟REACH法规规定&#…...

mysql高级sql

文章目录 一&#xff0c;查询1.按关键字排序1.1按关键字排序操作(1)按分数排序查询&#xff08;不加asc默认为升序&#xff09;(2)按分数降序查询&#xff08;DESC&#xff09;(3)使用where进行条件查询(4)使用ORDER BY语句对多个字段排序 1.2使用区间判断查询&#xff08;and/…...

Linux CentOS 7.9 安装mysql8

1、新建mysql文件夹 数据比较大&#xff0c;所以我在服务器另外挂了一个盘装mysql&#xff0c;和默认安装一个道理&#xff0c;换路径即可 cd ../ //创建文件夹 mkdir mysql //进入mysql文件夹 cd mysql 2、下载mysql8.0安装包并解压、重命名 //下载安装包 wget https://dev…...

替代 Django 默认 User 模型并使用 `django-mysql` 添加数据库备注20240904

替代 Django 默认 User 模型并使用 django-mysql 添加数据库备注 前言 在 Django 项目开发中&#xff0c;默认的 User 模型虽然能够满足许多基础需求&#xff0c;但在实际项目中我们常常需要对用户模型进行定制化。通过覆盖默认的 User 模型&#xff0c;我们可以根据具体的业…...

三维激光扫描点云配准外业棋盘的布设与棋盘坐标测量

文章目录 一、棋盘标定板准备二、棋盘标定板布设三、棋盘标定板坐标测量一、棋盘标定板准备 三维激光扫描棋盘是用来校准和校正激光扫描仪的重要工具,主要用于提高扫描精度。棋盘标定板通常具有以下特点: 高对比度图案:通常是黑白相间的棋盘格,便于识别。已知尺寸:每个格…...

【Python知识宝库】文件操作:读写文件的最佳实践

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 文章目录 前言一、文件读取1. 使用open函数2. 逐行读取3. 使用readlines和readline 二、文件写入1. 写入文本2. 追加内容3. 写入…...

Chapter 13 普通组件的注册使用

欢迎大家订阅【Vue2Vue3】入门到实践 专栏&#xff0c;开启你的 Vue 学习之旅&#xff01; 文章目录 前言一、组件创建二、局部注册三、全局注册 前言 在 Vue.js 中&#xff0c;组件是构建应用程序的基本单元。本章详细讲解了注册和使用 Vue 的普通组件的两种方式&#xff1a;…...

浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)

✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义&#xff08;Task Definition&…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

安宝特方案丨XRSOP人员作业标准化管理平台:AR智慧点检验收套件

在选煤厂、化工厂、钢铁厂等过程生产型企业&#xff0c;其生产设备的运行效率和非计划停机对工业制造效益有较大影响。 随着企业自动化和智能化建设的推进&#xff0c;需提前预防假检、错检、漏检&#xff0c;推动智慧生产运维系统数据的流动和现场赋能应用。同时&#xff0c;…...

基于服务器使用 apt 安装、配置 Nginx

&#x1f9fe; 一、查看可安装的 Nginx 版本 首先&#xff0c;你可以运行以下命令查看可用版本&#xff1a; apt-cache madison nginx-core输出示例&#xff1a; nginx-core | 1.18.0-6ubuntu14.6 | http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages ng…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具

文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...

GitHub 趋势日报 (2025年06月08日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...

在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?

uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件&#xff0c;用于在原生应用中加载 HTML 页面&#xff1a; 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...

CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)

漏洞概览 漏洞名称&#xff1a;Apache Flink REST API 任意文件读取漏洞CVE编号&#xff1a;CVE-2020-17519CVSS评分&#xff1a;7.5影响版本&#xff1a;Apache Flink 1.11.0、1.11.1、1.11.2修复版本&#xff1a;≥ 1.11.3 或 ≥ 1.12.0漏洞类型&#xff1a;路径遍历&#x…...

前端开发者常用网站

Can I use网站&#xff1a;一个查询网页技术兼容性的网站 一个查询网页技术兼容性的网站Can I use&#xff1a;Can I use... Support tables for HTML5, CSS3, etc (查询浏览器对HTML5的支持情况) 权威网站&#xff1a;MDN JavaScript权威网站&#xff1a;JavaScript | MDN...

跨平台商品数据接口的标准化与规范化发展路径:淘宝京东拼多多的最新实践

在电商行业蓬勃发展的当下&#xff0c;多平台运营已成为众多商家的必然选择。然而&#xff0c;不同电商平台在商品数据接口方面存在差异&#xff0c;导致商家在跨平台运营时面临诸多挑战&#xff0c;如数据对接困难、运营效率低下、用户体验不一致等。跨平台商品数据接口的标准…...