常用信息采集与故障诊断命令的使用方法

电子说

1.3w人已加入

描述

前言

设备稳定运行一方面依赖于完备的网络规划,另一方面,通过日常的维护和监测发现设备运行隐患也是非常必要的。那么,当设备运行出现问题该如何解决呢?如何去通过设备日志或者采集信息来判断故障原因呢?

本文主要介绍常用信息采集与故障诊断命令(display、reset、ping、tracert、trap功能、日志功能、报文头获取功能等)的使用方法及分析过程。

01  display命令

display命令是网络维护和故障处理的重要工具,可用于了解:

设备的当前状况。

检测相邻设备。

总体监控网络。

定位网络故障。

设备的display命令可以在所有视图下运行,方便用户随时查看各种信息。

例如,设备的display命令部分选项如下所示。

 

 display ?
  aaa                     AAA(Authentication,Authorization,Accounting)
  acl                     ACL status and configuration information
  alarm                   Failure manager module
  als                     Set automatic laser shutdown
  anti-attack             Specify anti-attack configurations
  arp                     Display ARP entries
  auto-defend             Auto defend
  bfd                     Specify Bidirectional Forwarding Detection (BFD)
  bgp                     BGP information
  bridge                  Bridge MAC
  bridge-domain           Bridge-domain
  capture-packet          Display capture packet
  clock                   Display the clock status
  command                 Command line
  configuration           Configuration information
  control-flap            Interface flap control status
  copyright               Open source software copyright information
  cpu                     The state of CPU monitor
 ---- More ----

 

上述只列出了display命令可以使用的部分,大部分关键字后还可跟更多的关键字,可使我们能够采集到不同层次的信息。

不同设备或不同版本,可能会有所不同。

1.1  普通字符与特殊字符的组合使用

在我们日常运维或处理问题的过程中,常常会遇到设备配置特别多,大部分内容都不是我们想要查看采集的内容,这是就会用到一个过滤的功能,通过命令行过滤,直接显示我们想要收集查看的内容。

按过滤条件进行查询时,显示内容的第一行信息中,以包含该字符串的整条信息作为起始,而非以过滤字符串作为起始。

系统支持使用| count显示使用过滤条件后输出的结果的行数,支持使用| section显示使用过滤条件后输出的结果段信息,支持使用| ignore-case表示匹配字符串时不区分大小写,还支持使用| no-more表示过滤条件后输出的结果不分屏。四种均可以与过滤方式配合使用。

在支持正则表达式的命令中,有三种过滤方式可供选择:

| begin regular-expression:输出以匹配指定正则表达式的行开始的所有行。

即过滤掉所有待输出字符串,直到出现指定的字符串(此字符串区分大小写)为止,其后的所有字符串都会显示到界面上。

| exclude regular-expression:输出不匹配指定正则表达式的所有行。

即待输出的字符串中没有包含指定的字符串(此字符串区分大小写),则会显示到界面上;否则过滤不显示。

| include regular-expression:只输出匹配指定正则表达式的所有行。

即待输出的字符串中如果包含指定的字符串(此字符串区分大小写),则会显示到界面上;否则过滤不显示。

下面举例来说明在命令中指定过滤方式的用法。

例1:执行命令display interface brief,显示不匹配正则表达式“10GE|40GE”的所有行,“10GE|40GE”表示匹配“10GE”或“40GE”。

 

 display interface brief | exclude 10GE|40GE
PHY: Physical
*down: administratively down
^down: standby
(l): loopback
(s): spoofing
(b): BFD down
(e): EFM down
(d): Dampening Suppressed
(p): port alarm down
(dl): DLDP down
InUti/OutUti: input utility rate/output utility rate
Interface               PHY   Protocol InUti OutUti   inErrors  outErrors
Eth-Trunk2              down  down        0%     0%         0          0
Eth-Trunk27             up    up       0.01%  0.01%         0          0
MEth0/0/0               up    up       0.01%  0.01%         0          0
NULL0                   up    up(s)       0%     0%         0          0
Vlanif2                 down  down        --     --         0          0
Vlanif10                down  down        --     --         0          0
Vlanif20                down  down        --     --         0          0
Vlanif200               up    up          --     --         0          0

 

例2:执行命令display current-configuration,只显示匹配正则表达式“vlan”的所有行。

 

 display current-configuration | include vlan
vlan batch 2 9 to 20 77 99 200 222 4091
vlan 19
 mux-vlan
vlan 222
 aggregate-vlan
 access-vlan 1
 instance 2 vlan 2
 carrier-vlan 100
 ce-vlan 10
 port trunk allow-pass vlan 99 200
 igmp-snooping static-router-port vlan 99
 port trunk allow-pass vlan 20
 port default vlan 77
 port trunk allow-pass vlan 20

 

例3:执行命令display current-configuration,显示所有匹配正则表达式“vlan”的个数。

 

 display current-configuration | include vlan | count
Total lines: 14.

 

1.2  常用display命令

设备提供了多条display命令用于查看硬件部件、接口及软件的状态信息。通常这些状态信息可以为用户故障处理提供定位思路。

常用的故障信息搜集的命令如下: 信息采集

02     reset命令

根据所提供的功能,设备的reset命令主要包括两类:

复位连接,例如:reset bgp。

清除统计信息。

2.1  与报文统计相关的两条reset命令

两条常用的reset命令是reset interface counters和reset ip statistics命令。分别对应display interface和display ip interface命令中的统计信息。

display interface命令提供二层收发的各计数器信息,这类计数器的刷新使用reset interface counters命令。

display ip interface命令提供三层收发的各计数器信息,这类计数器的刷新使用reset ip statistics命令。

2.2  reset命令的使用

当使用带参数的ping命令测试链路的连通性时,有时需要通过display interfacedisplay ip interface命令查看端口的报文收发及CRC校验是否正确,进而分析报文的收发在什么地方出现了问题。

display interfacedisplay ip interface命令显示的是自设备运行以来或上次计数器清零后的统计值,包含了之前一段时间的积累,对于分析当前的收发情况有一定干扰。

因此,按照如下方式查看统计信息。

使用reset interface countersreset ip statistics命令清空统计值。

使用ping命令使端口收发报文。

使用display interfacedisplay ip interface命令查看端口命令查看统计值。

03

     Ping和Tracert命令

3.1  Ping简介

Ping命令主要用于检查网络连接及主机是否可达。Ping功能是基于ICMP协议来实现的:源端向目的端发送ICMP请求(ECHO-REQUEST)报文后,根据是否收到目的端的ICMP应答(ECHO-RESPONSE)报文来判断目的端是否可达。对于可达的目的端,再根据发送与接收报文个数、Ping报文的往返的响应时间来判断链路的质量。

我们大部分是直接ping IP地址,不再添加其它参数,其实相对添加ping参数,会使处理故障的效率提高。

下面详细介绍Ping命令的参数:

-a:设置发送ECHO-REQUEST报文的源IP地址,如果不指定源IP地址,将采用出接口的IP地址作为ICMP ECHO-REQUEST报文发送的源地址。

-c:发送ECHO-REQUEST报文的次数,缺省为5。当网络质量不高时,可以增加发送报文数目,通过丢包率来检测网络质量。

-f:设置发送的报文不分片,如果报文大于MTU值,则会丢弃该报文。

-s:设置ECHO-REQUEST报文大小(不含IP和ICMP头)。

-t:设置发送完ECHO-REQUEST后,等待ECHO-RESPONSE的超时时间。在网络状况不好的情况下,可以适当改大该参数。缺省为2s,即2s内没有收到回复报文即认为目的不可达。

host:可以是IP地址或域名,如果是域名会首先进行DNS解析,并显示解析后的IP地址。

拓展一下windows操作系统下ping命令的参数:

-n:ping报文的个数,缺省值为5。

-t:持续地ping直到人为中断,Ctrl+Break暂时中止ping命令并查看当前的统计结果,而Ctr+C则中断命令的执行。

-l:设置ping报文所携带的数据部分的字节数,设置范围从0至65500。

-f:设置发送的报文不分片,如果报文大于MTU值,则会丢弃该报文。

-a:反向解析IP地址为主机名。

ping信息详解:

 

 ping 10.1.1.2
  PING 10.1.1.2: 56  data bytes, press CTRL_C to break                     
    Reply from 10.1.1.2: bytes=56 Sequence=1 ttl=255 time=1 ms             
    Reply from 10.1.1.2: bytes=56 Sequence=2 ttl=255 time=1 ms             
    Reply from 10.1.1.2: bytes=56 Sequence=3 ttl=255 time=2 ms             
    Reply from 10.1.1.2: bytes=56 Sequence=4 ttl=255 time=1 ms             
    Reply from 10.1.1.2: bytes=56 Sequence=5 ttl=255 time=2 ms             
                                                                                
  --- 10.1.1.2 ping statistics ---                                         
    5 packet(s) transmitted                                                     
    5 packet(s) received                                                        
    0.00% packet loss                                                           
    round-trip min/avg/max = 1/1/2 ms

 

设备发出了5个ping包,均收到了回应。

发出的ping包的大小为缺省的56字节。

返回的TTL为255,可以分析出来经过了多少个设备,ttl=255说明ping的目的设备与发出ping报文的设备直接相连。

time=1ms说明报文回应时间为1ms,该参数通常可以作为网络是否拥塞的参考。

缺省Ping命令发送5个ping报文,建议使用-c参数进行多次ping,可以更准确反应当前网络的状况。根据返回的ping报文个数,可以对网络状况进行判断。

信息采集

3.2  Tracert简介

Ping可以告诉用户目标是否可达,而Tracert命令用于测试数据包从发送主机到目的地所经过的设备,它主要检查网络连接是否可达,以及分析网络什么地方发生了故障。Tracert的执行过程如下:

首先发送一个TTL为1的UDP报文。

到达第一跳时TTL超时,第一跳设备发回一个ICMP错误消息,指明此数据包不能被发送。

发送主机将TTL加1,重新发送此数据包。

第二跳设备返回TTL超时报文。

以上步骤循环进行,直到到达目的地。这样,发送主机就能够记录每一个ICMP TTL超时消息的源地址,得到IP数据包到达目的地所经历的路径。

tracert命令参数

-a:指明本次tracert命令配置的报文源地址。如果不指定源地址,将采用出接口的IP地址作为tracert报文发送的源地址。

-f:指定初始TTL。设置first-TTL,当经过的跳数小于此参数值,由于TTL字段的值大于0,经过的这几个节点不会返回ICMP超时报文给源主机。如果已经设置了max-TTL参数值,first-TTL的取值必须小于max-TTL。

-m:指定最大TTL。通常情况下,max-TTL的值被设置为经过站点的跳数。如果已经设置了first-TTL参数值,max-TTL的取值必须大于first-TTL。

-q:指定每次发送的UDP探测数据包个数。当网络质量不高时,可以增加发送探测数据包数目,保证探测报文能够到达目的节点。

-vpn-instance:指定tracert目的地址的VPN属性,即关联的VPN实例名称。

-w:等待响应报文的超时时间。当发送数据包到达某网关超时,则输出“ * ”。如果网络质量不高且速度很慢,建议增加发送数据包的超时时间。

host:可以是IP地址或域名,如果是域名会首先进行DNS解析,并显示解析后的IP地址。

拓展一下windows操作系统下tracert命令的参数:

-d:不解析主机名。

-h:指定最大TTL的数值。

-j:设定松散源地址路由列表。

-w:用于设置UDP报文的超时时间,单位为毫秒。

tracert命令信息详解

 

 tracert 10.1.1.2
 traceroute to  10.1.1.2(10.1.1.2), max hops: 30 ,packet length: 40,press CTRL_C to break
 1 192.168.200.100 10 ms  2 ms  2 ms
 2  *  *  *
 3 10.1.1.2 10 ms  1 ms  2 ms

 

显示信息每行包含编号、到达的设备IP地址、3次报文的响应时间。中间部分显示为“* * *”,说明该节点设备配置不允许ping和tracert。

当网络上出现路由环路时,使用ping命令只能知道接收端出现超时错误,而tracert命令能够很容易发现路由环路等潜在问题。在tracert某地址时,多次出现相同的地址,即可认为出现了路由环路。

  审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分