1、display命令
display命令是网络维护和故障处理的重要工具,可用于了解:
- 设备的当前状况。
- 检测相邻设备。
- 总体监控网络。
- 定位网络故障。
设备的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”。
<HUAWEI> 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”的所有行。
<HUAWEI> 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”的个数。
<HUAWEI> display current-configuration | include vlan | count
Total lines: 14.
1.2 常用display命令
设备提供了多条display命令用于查看硬件部件、接口及软件的状态信息。通常这些状态信息可以为用户故障处理提供定位思路。
常用的故障信息搜集的命令如下:
基本信息 | display diagnostic-information | 此命令主要用于系统基本信息的收 集,集合了多条常用display命令的输出信息,包括display device、display current-configuration等等。使用时请注意,此命令执行时间较长,如果采用直接在终端的显示方式,可以通过按CtrI+C停止。 |
---|---|---|
设备信息 | display device | 此命令通常用于发现某单板运行不正常时查看该单板状态。如果Alarm状态为Abnormal说明状态异常。 |
启动信息 | display startup | 此命令用于查看设备当前或者下次启动使用的版本文件信息。 |
版本信息 | display version | 故障设备使用的软件版本是进行定位的重要信息。display version命令可以获取设备软件、主控板、接口板的版本信息。 |
接口信息 | display interface | 此命令通常用于查看接口的各种信息,常用于设备接口对接故障、查看报文丢包统计。 |
补丁信息 | display patch-information | 故障设备使用的补丁版本是进行定位的重要信息。display patch-information命令可以获取当前系统的补丁包信息,包括:补丁包版本号、补丁包名称等基本信息思。 |
电子标签信息 | display device elabel | 电子标签用来标识设备的硬件信息。可以通过本命令查看单板上的电子标签信息。 |
设备状态信息 | display health | 此命令用来查看设备的温度信息、电源信息、风扇信息、功率信息、CPU及内存占用率信息和存储介质使用信息。 |
配置恢复信息 | display configuration recover-result | 此命令用来查看设备启动后的配置恢复结果,检查是否有恢复失败记录。 |
系统当前配置信息 | display current-configuration | 此命令用来显示当前设备上所有配置系统当前信息。可使用正则表达式对配置信息配置信息过滤,以便查找当前所需要的信息。 |
系统保存的配置信息 | display saved-configuration | 如果设备成功.上电并进入系统后工作不正常,可以执行display saved-configuration命令查看设备的启动配置,即查看通过startup saved-configuration或者copy startup命令指定的配置文件。 |
display saved-configuration last命令用来查看上次保存的系统配置信息,即本次启动时使用的配置文件。 | ||
时间信息 | display clock | 此命令用来查看系统当前日期和时钟。 |
NTP时钟信息 | display ntp status | 此命令用来查看NTP运行的状态,可以以解本节点的时钟同步状态、时钟层次等信息。 |
用户日志信息 | display logbuffer | 此命令用来查看日志文件缓冲区中的用户日志信息。 |
Trap信息 | display trapbuffer | 此命令用来查看信息中心Trap缓冲区记录的信息。 |
内存使用 | display memory | 此命令用来查看设备内存使用率的信息。 |
CPU使用的情况 | display cpu | 此命令用来查看设备CPU使用率的信息。 |
主备倒换状态 | display switchover state | 此命令用来查看系统是否满足主备倒换的条件。 |
设备告警信息 | display alarm active | 此命令用来查看设备当前告警信息。 |
硬件告警信息 | display device alarm hardware | 此命令用来查看设备的硬件告警信息。 |
温度信息 | display device temperature all | 此命令用来查看温度信息。 |
风扇信息 | display device fan | 此命令用来查看风扇信息。 |
电源信息 | display device power | 此命令用来查看电源信息。 |
路由统计信息 | display ip routing-table display ip fib slot slot-id statistics |
这两条命令用来查看设备的路由表项信息。 |
ISIS邻居信息 | display isis peer display isis interface |
这两条命令用来查看ISIS协议的邻居信息。 |
BGP邻居信息 | display bgp peer display bgp vpnv4 all brief |
这两条命令用来查看BGP协议的邻居信息。 |
BGP路由统计信息 | display bgp routing-table statistics display bgp vpnv4 all routing-table statistics |
这两条命令用来查看BGP路由表项信息。 |
OSPF邻居 | display ospf peer display ospf interface |
这两条命令用来查看OSPF协议的邻居信息 |
TRILL邻居信息 | display trill peer | 此命令用来查看TRILL邻居信息。 |
MPLS LSP标签数量信息 | display mpls lsp statistics | 此命令用来查看当前处于Up状态的LSP数目。 |
MPLS LDP 会话信息 | display mpls ldp session | 此命令用来查看LDP对等体间的会话信息。 |
组播邻居信息 | display pim neighbor | 此命令用来查看组播邻居信息。 |
组播路由表信息 | display pim routing-table brief | 此命令用来查看组播路由表信息。 |
堆叠成员信息 | display stack | 此命令用来查看堆叠系统的成员信息 |
堆叠配置信息 | display stack configuration | 此命令用来查看堆叠系统的配置信息 |
堆叠拓扑信息 | display stack topology | 此命令用来查看堆叠系统的拓扑信息 |
堆叠故障信息 | display stack troubleshooting | 此命令用来查看堆叠系统的故障信息 |
接口故障信息 | display interface troubleshooting | 此命令用来查看接口的故障信息。 |
BGP故障信息 | display bgp troubleshooting | 此命令用来查看BGP的故障信息。 |
Eth-Trunk 故障信息 | display eth-trunk troubleshooting | 此命令用来查看Eth-Trunk的故障信息 |
ISIS故障信息 | display isis troubleshooting | 此命令用来查看ISIS的故障信息。 |
LACP故障信息 | display lacp troubleshooting | 此命令用来查看LACP的故障信息。 |
MPLS故障信息 | display mpls ldp troubleshooting | 此命令用来查看MPLS的故障信息。 |
OSPF故障信息 | display ospf troubleshooting | 此命令用来查看OSPF的故障信息。 |
OSPF IPv6故障信息 | display ospfv3 troubleshooting | 此命令用来查看OSPF IPv6的故障信息。 |
TRILL故障信息 | display trill troubleshooting | 此命令用来查看引起查看TRILL邻居断连故障的具体原因。 |
2、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 interface或display ip interface命令查看端口的报文收发及CRC校验是否正确,进而分析报文的收发在什么地方出现了问题。
但display interface和display ip interface命令显示的是自设备运行以来或上次计数器清零后的统计值,包含了之前一段时间的积累,对于分析当前的收发情况有一定干扰。
因此,按照如下方式查看统计信息。使用reset interface counters或reset ip statistics命令清空统计值。
- 使用ping命令使端口收发报文。
使用display interface或display ip interface命令查看端口命令查看统计值。
3、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信息详解:
<HUAWEI> 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报文个数,可以对网络状况进行判断。
故障现象 | 可能原因 |
---|---|
全部可达,但时间较长 | 中间网络状况不佳。 |
网关设备做了QoS,限制了转发速度。 | |
全部不可达 | 网络中断(含设备和线缆)。 |
中间经过的防火墙设备不允许进行ping探测,丢弃了ICMP报文。 | |
网络产生环路,TTL减到1后被丢弃。 | |
网络拥塞导致报文响应慢。 | |
部分可达 | 网络状况不佳,部分报文被丢弃。 |
中间网络配置有负载分担,且其中部分分担网络故障。 | |
遭到”泛洪”攻击。 |
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命令信息详解
显示信息每行包含编号、到达的设备IP地址、3次报文的响应时间。中间部分显示为“ *”,说明该节点设备配置不允许ping和tracert。<HUAWEI> 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
当网络上出现路由环路时,使用ping命令只能知道接收端出现超时错误,而tracert命令能够很容易发现路由环路等潜在问题。在tracert某地址时,多次出现相同的地址,即可认为出现了路由环路。