• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

PPP模块问题定位方法

2019-11-24 发表
  • 0关注
  • 0收藏 2795浏览
程咪 九段
粉丝:24人 关注:1人

问题描述

PPP模块问题定位方法

解决方法

PPP模块问题定位方法

PPP协议及工作原理介绍

图1-1 PPP的帧格式

1. PPP的帧结构

Flag域标识了一物理帧的起始及结束,FCS域为帧校验域。而真正属于PPP报文内容的为Address、Control、Protocol、Information域所包含内容。 注意,这里的说法并不是很准确,它的实际意思是指在协议栈处理中低层交给PPP的包文内容已经去掉了Flag域与FCS域,但在关于PPP报文字节数统计中应算上这些字节数(关于这一点,在LQR协议中曾明确提到)。Address域表示此为PPP广播地址,Address、 Control域(地址控制域)一起表示了此报文为PPP报文,即PPP报文头为FF03; Protocol为协议域;Information为信息域。其中,地址控制域可以被压缩(实际上具体压缩是将这两个域省略,是否压缩通过两端协商来决定);协议域也可被压缩(由两个字节压缩成一个字节,如IP类型为0X0021,可压缩为0X21,是否压缩通过两端协商来决定),协议域实际上就是协议类型,用来区分PPP包文中各种不同的包文,如LCP、IPCP等。信息域的内容格式,随包文类型而不同,上面的图示主要指LCP、IPCP等协商包文的信息域格式,网络层包文的信息域没有这种格式,直接就是包文内容。

Code域表明了此报文为哪种PPP协商报文。Identifier域标志协商包文的唯一性,用于进行协商报文的识别与匹配。Length域为此协商报文长度(包含Code及Identifier域)。Data域所包含的为协商报文内容。Type为协商选项类型,其后的Length为此协商选项长度(包含Type域),紧接着的Data域为协商选项具体内容(这里叫做value,描述起来更方便些)。协商包文中的Data域一般由一系列TLV组成。

2. PPP在建立链路之前要进行一系列的协商过程:

(1) 在开始建立PPP链路时,先进入到Establish阶段。

(2) 在Establish阶段PPP链路进行LCP协商,协商内容包括:MRU(最大接收单元)、魔术字(magic number)、验证方式、异步字符映射、协议域和地址控制域压缩等选项(详见RFC1661)。LCP在协商成功后进入Opened状态,表示底层链路已经建立。

(3) 如果配置了验证(远端验证本地或者本地验证远端)则进入Authenticate阶段,开始CHAP或PAP验证。如果验证失败进入Terminate阶段,拆除链路,LCP状态转为Down;如果验证成功就进入Network协商阶段(NCP),此时LCP状态仍为Opened,而IPCP状态从Initial转到Request

(4) 验证通过后才会进入网络协商阶段(NCP),如进行IPCP、IPXCP、BCP、OSICP等的协商。只有相应的网络层协议协商成功后,该网络层协议才可以通过这条PPP链路发送报文。

(5) PPP链路将一直保持通信,直至有明确的LCP或NCP帧关闭这条链路,或发生了某些外部事件(例如,用户的干预)。

需要注意的是:

(1) 任何阶段的协商失败都将导致链路的拆除。如果PPP发送的Echo Request报文产生丢失,则认为线路出现故障,在连续丢失最大允许丢失的个数之后,PPP将链路复位,以免过多的无效数据传输。

(2) 由于在PPP的一系列协商和验证过程中,任何一个阶段的协商或验证不通过,都会导致链路的拆除,所以可能引起PPP链路故障的因素也很多。

(3) 异步字符映射用于同异步转换,当PPP从异步端口接收到报文时,要将异步报文转换为同步报文;当向异步端口发送报文时,要将同步报文转换为异步报文。

PPP运行过程可参见下图。

 PPP运行流程图

PPP协商过程可参见下图。

 PPP协商流程图

 

MP协议及工作原理介绍:

为了增加带宽,可以将多个PPP链路捆绑使用,称为MultiLink PPP,简称MP。MP允许将报文分片,分片将通过多条点对点链路发送到同一个目的地。MP能在任何支持PPP封装的接口下工作,如串口、ISDN的BRI/PRI接口等,也包括PPPoX(PPPoE、PPPoA、PPPoFR等)这类的虚拟接口,建议用户尽可能将同一类的接口捆绑使用,不要将不同类的接口捆绑使用。

MP方式下接口工作进程如下(以虚拟接口模板下的MP为例):

(1) 首先和对端进行LCP协商,协商过程中,除了协商一般的LCP参数外,还验证对端接口是否也工作在MP方式下。

(2) 如果对端不工作在MP方式下,则LCP协商成功后,直接进入下一步的验证(若配置了PAP或CHAP验证)或NCP协商步骤,不进行MP捆绑。通过验证之后,PPP可以得到对方的用户名。

(3) 如果对端也工作在MP方式下,则根据用户名找到为该用户指定的虚拟接口模板,并以该虚拟模板的各项NCP参数(如IP地址等)进行NCP协商,物理接口配置的NCP参数不起作用。

NCP协商通过后,即可建立MP链路,用更大的带宽传输数据。

MP的配置主要有两种方式,一种是通过虚拟模板接口(Virtual-Template),一种是利用MP-Group接口。

问题定位思路:

PPP作为数据链路层协议,需要由物理层提供数据收发服务,并为网络层提供数据报文的封装,网络层参数的协商等功能。因此利用PPP来解决设备问题时,也

 

应该主要从以下几个方面入手:

 

(1) 物理层问题分析

 

(2) LCP问题的分析

 

(3) 验证问题的分析

 

(4) IPCP问题的分析

 

此外,如果能够阅读PPP报文,了解PPP协商所处的阶段以及PPP报文的协商过程,问题一般可得到满意的解决。

 

在处理设备故障时,我们需要下面这两个debugging开关:

 

(1) debugging ppp all interface interface-type interface-num

 

(2) debugging physical all interface interface-type interface-num

 

1. 物理层问题分析

(1) 问题描述

 

设备表现为广域网接口无法正常使用。

 

(2) 问题定位及解决过程

 

首先应该从物理层开始检查。

 

使用display interface命令查看接口信息,例如执行命令display interface bri 0/0(BRI接口 0/0)或display interface serial 0/0(串口 0/0)

 

根据显示信息中的“硬件设备的状态”和“LCP的状态”判断物理层是否正常。

 

(3) 举例

 

H3C AR28-11路由器为例:

 

[Router]display interface Serial 0/0

 

Serial0/0 current state :UP

 

Line protocol current state :UP

 

Description : Serial0/0 Interface

 

The Maximum Transmit Unit is 1500, Hold timer is 10(sec)

 

Internet Address is 1.1.1.1/24

 

Link layer protocol is PPP

 

LCP opened, IPCP opened, OSICP stopped

 

Output queue : (Urgent queuing : Size/Length/Discards)  0/50/0

 

Output queue : (Protocol queuing : Size/Length/Discards) 0/500/0

 

Output queue : (FIFO queuing : Size/Length/Discards)  0/75/0

 

Physical layer is synchronous,

 

Interface is DTE, Cable type is V24

 

Last clearing of counters: 16:27:03 UTC Fri 10/14/2005

 

    Last 300 seconds input rate 1.62 bytes/sec, 13 bits/sec, 0.03 packets/sec

 

    Last 300 seconds output rate 1.62 bytes/sec, 13 bits/sec, 0.03 packets/sec

 

    Input: 21 packets, 632 bytes

 

           0 broadcasts, 0 multicasts

 

           0 errors, 0 runts, 0 giants

 

           0 CRC, 0 align errors, 0 overruns

 

           0 dribbles, 0 aborts, 0 no buffers

 

           0 frame errors

 

    Output:21 packets, 632 bytes

 

           0 errors, 0 underruns, 0 collisions

 

           0 deferred

 

    DCD=UP  DTR=UP  DSR=UP  RTS=UP  CTS=UP

 

Serial0/0 is up,表明物理层状态UP,此外Serial0/0可能为downadministratively downstandby,其中down说明物理层工作异常,应检查物理层配置及设备问题。administratively down,说明物理层被人为关闭。此时可以执行undo shutdown命令手工打开此端口。 standby是在使用接口备份功能,备份接口的一种状态,也表示接口物理层不可用。

 

LCP状态也表明了物理层是否向链路层上报lowerup消息,从PPP状态转移图可知。

 

如果物理层未发送lowerupPPP未发送open消息,则LCP应处于initial状态;如果物理层发送了lowerupPPP已发送open消息和CONFREQ报文,则LCP应处于req-send状态;如果物理层发送了lowerupPPP已发送open消息、CONFREQ报文和CONFACK报文,则LCP应处于ACKSENT状态;如果物理层发送了lowerupPPP未发送 open消息,则LCP应处于starting状态。如物理层未通,应先查找物理层未通的原因。

 

2. LCP问题的分析

(1)      问题描述

 

执行命令display interface bri 0/0(BRI接口0/0)display interface serial1/0(串口 1/0),如显示LCP协议未进入OPENED状态,可以考虑为LCP的问题。

 

(2)      问题定位及解决过程

 

此方面的问题一般较少出现,如出现应该打开debugging ppp lcp packetdebugging ppp lcp state,首先检查物理接口的报文收发是否正常,如果确认接口的报文收发正常,并且有大量的CONFNAKCONFREJ报文出现,或者出现TERMACKCODEREJPROTREJ之类的报文,可以说明是协商的问题,再根据报文协商项内容分析无法协商成功的原因。

 

3. 验证问题的分析

(1)      问题描述

 

使用display interface命令查看接口信息,如显示LCP协议进入OPENED状态,而IPCP依然为Initial状态,或者LCP变为OPENED状态后又很快重新开始协商,可考虑为验证的问题。

 

(2)      问题定位及解决过程

 

由于此状态为临时状态,不易观察,也可通过debugging ppp all来观察。如果成功协商了验证,PPP会打印出PAPCHAP验证的报文,如果验证失败,会打印出“PPP authentication failed”信息,可以根据报文的具体内容分析验证失败的原因。有时配置了验证,但是LCP协商过程中该协商项被拒绝,LCP进入OPENED状态会立即重新协商,此时若通过debugging ppp lcp all观察,可以看到对端未通过验证的提示信息,例如:

 

*0.22570109 H3C PPP/8/debug2

 

  PPP Packet:

 

      Serial0/0 Input  LCP(c021) Pkt, Len 12

 

      State acksent, code ConfRej(04), id 4d, len 8

 

      AuthProto(3), len 4, PAP c023

 

4. IPCP问题的分析

(1)      问题描述

 

使用display interface命令查看接口信息,如果显示LCP协议进入OPENED状态,而IPCP处于reqsentackrcvd,并观察PPP报文有大量的IPCP报文收发,可说明路由器IPCP协商有问题。若IPCP处于STOPPED状态,也可能是收到IPCPTERMREQCODEREJ导致状态迁移。

 

(2)      问题定位及解决过程

 

阅读IPCP报文,可分析出问题原因。由于IPCP必须协商的参数为IP地址,其他为可选择参数,一般来说是IP地址配置有问题,无法进行IPCP协商。此时应给两端接口配置IP地址,此外如果是访问Internet网,可不配置IP地址,但应该配置IP address negotiate

 

5. 其他问题一

(1)      问题描述

 

LCPIPCP均已经进入OPENED状态,但是Ping报文无法互通。

 

(2)      问题定位及解决过程

 

可以考虑是路由的原因,采用直接ping对端接口的IP地址:

 

如果能够互通,证明PPPIP报文的封装情况正常。

 

如果依然有问题,但LCPIPCP始终处于OPENED状态,可以考虑是否链路误码率较高,此情况比较少见。

 

6. 其他问题二

(1)      问题描述

 

路由器上配置了AAA之后,LCPIPCP均已经进入OPENED状态。但是如果配置了计费,设备很快又重新开始LCP;如果没有设置计费服务器,AAA会将PPP链路挂断。

 

(2)      问题定位及解决过程

 

如果要使用AAA,又不需要计费,可以配置accounting optional,允许不计费使用。

 

该案例对您是否有帮助:

您的评价:1

若您有关于案例的建议,请反馈:

0 个评论

该案例暂时没有网友评论

编辑评论

举报

×

侵犯我的权益 >
对根叔知了社区有害的内容 >
辱骂、歧视、挑衅等(不友善)

侵犯我的权益

×

泄露了我的隐私 >
侵犯了我企业的权益 >
抄袭了我的内容 >
诽谤我 >
辱骂、歧视、挑衅等(不友善)
骚扰我

泄露了我的隐私

×

您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

侵犯了我企业的权益

×

您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 pub.zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
  • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
  • 3. 是哪家企业?(营业执照,单位登记证明等证件)
  • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

抄袭了我的内容

×

原文链接或出处

诽谤我

×

您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔知了社区有害的内容

×

垃圾广告信息
色情、暴力、血腥等违反法律法规的内容
政治敏感
不规范转载 >
辱骂、歧视、挑衅等(不友善)
骚扰我
诱导投票

不规范转载

×

举报说明

提出建议

    +

亲~登录后才可以操作哦!

确定

亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

注册后可访问此模块

跳转hclhub

你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作