当前位置: 首页 > 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 
#


 

http://www.lryc.cn/news/432846.html

相关文章:

  • 【Python机器学习】词向量推理——词向量
  • Python 语法糖:让编程更简单(续二)
  • 6 - Shell编程之sed与awk编辑器
  • 什么是XML文件,以及如何打开和转换为其他文件格式
  • 海外直播对网速、带宽、安全的要求
  • UWB定位室外基站
  • 高斯平面直角坐标讲解,以及地理坐标转换高斯平面直角坐标
  • C++入门(06)安装QT并快速测试体验一个简单的C++GUI项目
  • 一篇文章告诉你小程序为什么最近这么火?
  • Qt-常用控件(3)-多元素控件、容器类控件和布局管理器
  • 【系统设计】主动查询与主动推送:如何选择合适的数据传输策略
  • mac 安装brew并配置国内源
  • Temu官方宣导务必将所有的点位材料进行检测-RSL资质检测
  • mysql高级sql
  • Linux CentOS 7.9 安装mysql8
  • 替代 Django 默认 User 模型并使用 `django-mysql` 添加数据库备注20240904
  • 三维激光扫描点云配准外业棋盘的布设与棋盘坐标测量
  • 【Python知识宝库】文件操作:读写文件的最佳实践
  • Chapter 13 普通组件的注册使用
  • u盘显示需要格式化才能用预警下的数据拯救恢复指南
  • 还不懂BIO,NIO,AIO吗
  • 物联网——DMA+AD多通道
  • Vue 中 watch 和 watchEffect 的区别
  • pip install pyaudio sounddevice error: externally-managed-environment
  • HTML 转 PDF API 接口
  • http://localhost:15672/ 无法访问
  • 6.3图的遍历
  • 2024数学建模国赛选题建议+团队助攻资料(已更新完毕)
  • 大学课程-人机交互期末复习
  • 畅游5G高速网络:联发科集成Wi-Fi6E与蓝牙5.2的系统级单芯片MT7922