2023年12月23日发(作者:)

3 常用诊断命令和工具

介绍了NE80E/40E提供的故障处理手段,包括ping命令、tracert命令、display命令、debugging命令、reset命令和日志功能。

3.1 ping命令

介绍了Ping的原理、功能以及使用ping命令解决故障的实例。

3.2 tracert命令

介绍了Tracert的原理、功能以及使用tracert命令解决故障的实例。

3.3 display命令

介绍了display命令的功能和使用方法,包括正则表达式在display命令中的应用。

3.4 debugging命令

介绍了debugging命令的功能和使用方法、与display命令的配合关系。

3.5 reset命令

介绍了reset命令的功能和使用方法。

3.6 日志功能

介绍了NE80E/40E的日志功能。

3.1 ping命令

介绍了Ping的原理、功能以及使用ping命令解决故障的实例。

3.1.1 原理

3.1.2 功能

3.1.3 ping命令介绍

3.1.4 使用ping命令进行故障处理

3.1.1 原理

“ping”这个词源于声纳定位操作,指来自声纳设备的脉冲信号。

ping命令的作用类似于发出一个短促的雷达波,通过收集回波来判断目标。即,源站点向目的站点发ICMP

Echo Request报文,目的站点收到后回送ICMP Echo Reply报文,以此检测两个节点间在IP层的可达性,检测网络层是否连通。

3.1.2 功能

ping命令用于检查IP网络连接及主机是否可达。

3.1.3 ping命令介绍

NE80E/40E平台的ping命令

本节介绍NE80E/40E平台的ping命令中几个常用参数。

ping [ -a source-ip-address | -c count | -s packetsize | -t timeout ] * host

-a source-ip-address:设置发送ICMP Echo Request报文的源IP地址。

-c count:设置发送ICMP Echo Request报文的次数,缺省值为5。

-s packetsize:设置发送ICMP Echo Request报文的长度(不包括IP和ICMP报文头),以字节为单位,缺省值为56。

-t timeout:设置ping报文的超时时间,缺省值为2000ms。

说明:

NE80E/40E实现多种应用环境下的ping功能,例如,对私网报文的ping、对VRRP虚拟路由器的ping、对LSP的ping、对IPv6的ping等等。对这些功能的详细介绍请参考《NE80E/40E 配置指南》。

例如,向主机110.1.1.1发出2个8100字节的ping报文。

ping -c 2 -s 8100 110.1.1.1

PING 110.1.1.1: 8100 data bytes, press CTRL_C to break

Reply from 110.1.1.1: bytes=8100 Sequence=0 ttl=123 time = 538 ms

Reply from 110.1.1.1: bytes=8100 Sequence=1 ttl=123 time = 730 ms

--- 110.1.1.1 ping statistics ---

2 packets transmitted

2 packets received

0.00% packet loss

round-trip min/avg/max = 538/634/730 ms

Windows平台的ping命令

本节介绍Windows平台的ping命令中几个常用参数。

ping [ -n number | -t | -l number ] * host

-n number:设置发送ICMP Echo Request报文的次数,缺省值为5。

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

-l:设置ping报文所携带的数据部分的字节数。

例如,向主机110.2.1.1发出2个数据部分大小为3000字节的ping报文。

C:> ping -l 3000 -n 2 110.2.1.1

Pinging 110.2.1.1 with 3000 bytes of data

Reply from 110.2.1.1: bytes=3000 time=321ms TTL=123

Reply from 110.2.1.1: bytes=3000 time=297ms TTL=123

Ping statistics for 110.2.1.1:

Packets: Sent = 2, Received = 2, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

Minimum = 297ms, Maximum = 321ms, Average = 309ms

说明:

Windows平台ping命令其他参数的介绍请参考Windows在线帮助。

3.1.4 使用ping命令进行故障处理

案例一:连通性问题还是性能问题

案例描述

工程师小L,在配置完一台路由器后执行ping命令检测链路是否通畅,发现5个报文都没有ping通。

检查双方的配置文件和路由表,没有找到错误原因。重复执行了一遍相同的ping命令,这一次5个报文中有1个ping通了——原来是线路质量不好,存在比较严重的丢包。

小L又配置了一台路由器,执行ping命令访问Internet上某站点的IP地址,但没有ping通。吸取上次教训,小L再一次ping了20个报文,仍旧没有响应。小L断定是网络故障,但检查配置链路没有发现问题。

最后,小L采取逐段检测的方法对链路中的网关进行逐级测试,发现都可以ping通,但响应时间越来越长,最后一个网关的响应时间在1800ms左右。会不会是由于超时而导致显示为ping不同呢?

小L将ping命令报文的超时时间改为4000ms,这次成功ping通了,所有报文响应时间都在2200ms左右。

建议和总结

真的是ping不通吗?

这个问题需要定位清楚,连通性问题和性能问题的关注点是不一样的,问题定位错误必然导致排错过程的周折。

ping命令缺省发送5个报文,超时时长是2000ms。如果ping不通,建议用带参数-c和-t的ping命令再执行一遍,如:

ping -c 20 -t 4000 ip-address

即,连续发送20个报文,每个报文的超时时长为4000ms,这样就可以判断出到底是连通性问题还是性能问题。

案例二:使用大包ping对端进行MTU不一致的故障处理

案例描述

一台使用NE80E/40E软件的NE路由器与其他厂商的路由器互连,并运行OSPF协议。配置完毕后,一切正常,并在相当长的时间内运转稳定。但两个月后,用户反馈网络中断。

采用以下方式对问题定位:

1. 登录到两台路由器上,发现双方连接正常,可以相互ping通对端地址,但OSPF协议中断;

2. 登录到NE路由器查看邻居状态,发现邻居状态机处于Exstart状态。打开相应的调试开关查看报文信息,发现双方都可以收到Hello报文,但NE路由器发送DD报文后,一直没有收到对方回应的DD报文;

3. 登录另一台路由器,打开相应的调试开关,发现对方收到NE路由器发送的DD报文后,发送了相应的DD报文进行回应。

因此,NE路由器没有收到对方发出的DD回应报文,但对方确实发出来了。

原因分析

1. 双方能够接收到Hello报文,说明链路通畅,多播报文收发也没有问题。

2. 推断可能是对方发送的DD报文有错误,导致NE路由器拒绝接受,但查看相应的信息,并没有报告接收到错误的DD报文。

3. 仔细查看某厂商路由器的调试信息发现这个DD报文很大有2000多字节。会不会是由于报文太大导致的问题呢?试着ping了一个2000字节的报文,结果不通。那么故障原因很可能是--由于双方的MTU不一致导致大包不通。

处理过程:

检查配置,发现对方路由器的MTU设置为4000多而NE路由器的MTU设置为1500,于是修改对端路由器的MTU为1500。故障处理。

那么为什么工程初期没有问题呢?这是因为前期DD报文长度小于1500字节,而后来网络扩容导致路由信息过多使DD 报文的长度超过了1500 字节。

建议和总结:

缺省情况下,ping命令发送的报文大小是56个字节,所以显示的ping通信息只是表示56字节的报文可以通而并不一定表示其他大小的报文仍旧可以通。所以,应当善于使用ping的其他参数来进行故障处理。

案例三:A能ping通B,B就一定能ping通A吗

现象描述

图3-1 ping案例组网图

在RouterA上配置一条指向100.2.2.2/16的静态路由。

[RouterA] ip route-static 100.2.2.2 255.255.0.0 100.1.1.2

在RouterA上ping路由器RouterB的以太网接口地址100.2.2.2,可以ping通;但在RouterB上ping路由器RouterA的以太网接口地址100.3.3.3,却无法ping通。

原因分析

1. 在RouterB上执行display ip routing-table命令,发现没有到100.3.0.0/16的路由,所以RouterB上ping不通RouterA的以太网接口100.3.3.3。

2. 但是为何在RouterA上可以ping通100.2.2.2呢?同样是没有回程路由呀?

3. 打开路由器上的IP报文调试开关,发现从RouterA上发出的ICMP报文的源地址填写的是100.1.1.1而不是100.3.3.3,由于两台路由器的POS接口处于同一网段,所以,响应报文可以顺利到达RouterA。

建议和总结

在不考虑防火墙前提下,A能够ping通B则B一定能够ping通A,这句话的对错取决于A和B是指主机还是指路由器。

o

如果是指两台主机,上面的描述就是正确的。

o

如果是指两台路由器,上面的描述就不应正确。这是因为,路由器通常会有多个IP地址。当从一台路由器上执行ping命令时,ICMP Echo报文的源地址选择哪一个呢?实际情况是,路由器选择发出报文的接口的IP地址。

o

在考虑配置NAT的前提下,即使是两台主机,公网主机ping不通私网主机。

3.2 tracert命令

介绍了Tracert的原理、功能以及使用tracert命令解决故障的实例。

3.2.1 原理

3.2.2 功能

3.2.3 tracert命令介绍

3.2.4 使用tracert命令进行故障处理

3.2.1 原理

“tracert”的全称是trace route,用于探测报文在源节点到目的节点之间所经过的路径。

tracert利用IP报文的TTL域每经过一个路由器转发后减一,当TTL=0时向源节点报告TTL超时这个特性实现。

1. 首先发送一个TTL为1的UDP报文,因此第一跳发送回一个ICMP错误消息,明此数据报不能被发送;

2. 之后再发送一个TTL为2的报文,在第二跳返回TTL超时,这个过程不断进行,直到到达目的地;

3. 在目的地,由于数据报中使用了无效的端口号(缺省为33434),目的主机会返回一个ICMP目的地不可达消息,该tracert操作结束。

在上述过程中,tracert记录下每一个ICMP TTL超时消息的源地址,从而获得报文到达目的地所经过的网关的IP地址。

3.2.2 功能

tracert命令用于测试报文从发送主机到目的地所经过的网关,主要用于检查网络连接是否可达,以及初步定位网络发生故障的位置。

3.2.3 tracert命令介绍

NE80E/40E平台的tracert命令

本节介绍NE80E/40E平台的tracert命令中几个常用参数。

tracert [ -a source-ip-address | -f first-TTL | -m max-TTL | -p port | -q nqueries | -w timeout ] * host

-a source-ip-address:设置tracert报文的IP地址。

-f first-TTL:设置初始TTL。

-m max-TTL:设置最大TTL。

-p port:设置的主机的端口号,一般无须更改此选项。

-q nqueries:设置每次发送的探测数据包的个数。

-w timeout:设置报文的超时时间,单位是秒。

host:目的主机的IP地址。

例如,查看去往目的主机100.1.1.1所经过的网关。

tracert 100.1.1.1

traceroute to 100.1.1.1(100.1.1.1) 30 hops max,40 bytes packet

1 100.10.10.1 1 4 ms 5 ms 5 ms

2 100.10.2.30 10 ms 5 ms 5 ms

3 100.10.3.21 10 ms 5 ms 5 ms

4 100.20.1.17 175 ms 160 ms 145 ms

5 110.1.27.32 185 ms 210 ms 260 ms

6 100.1.1.1 230 ms 185 ms 220 ms

说明:

NE80E/40E实现多种应用环境下的tracert功能,例如,对私网地址的tracert、对LSP的tracert、对IPv6的tracert等等。对这些功能的详细介绍请参考《NE80E/40E 配置指南》。

Windows平台的tracert命令

在Windows平台上,tracert命令的格式如下:

tracert [ -d | -h max-TTL | -j host-list | -w timeout ] * host

-d:不解析主机名;

-h max-TTL:设置最大TTL。

-j host-list:设置松散源地址路由列表。

-w timeout:设置UDP报文的超时时间。

例如,查看去往目的主机100.1.1.1所经过的前两个网关。

C:> tracert -h 2 100.1.1.1

Tracing route to 100.1.1.1 over a maximum of 2 hops:

1 3 ms 2 ms 2 ms 100.10.10.1

2 5 ms 3 ms 2 ms 100.10.20.2

Trace complete.

3.2.4 使用tracert命令进行故障处理

案例一:使用tracert命令定位不当的网络配置点

现象描述

图3-2 tracert命令定位故障组网图一

在图3-2中,RouterB和RouterC同属于一个运行RIPv2协议的网络,主机100.4.0.2访问数据库服务器100.5.0.2,用户反映访问速度慢。

相关信息显示

登录到RouterC,使用带参数的ping远端服务器100.5.0.2,显示如下:

ping -c 10 -s 4000 -t 6000 100.5.0.2

PING 100.5.0.2: 4000 data bytes, press CTRL_C to break

Reply from 100.5.0.2: bytes=4000 Sequence=0 ttl=249 time = 552

ms

Reply from 100.5.0.2: bytes=4000 Sequence=1 ttl=249 time = 5733

ms

Reply from 100.5.0.2: bytes=4000 Sequence=2 ttl=249 time = 552

ms

Reply from 100.5.0.2: bytes=4000 Sequence=3 ttl=249 time = 5714

ms

Reply from 100.5.0.2: bytes=4000 Sequence=4 ttl=249 time = 552

ms

Reply from 100.5.0.2: bytes=4000 Sequence=5 ttl=249 time = 5711

ms

Reply from 100.5.0.2: bytes=4000 Sequence=6 ttl=249 time = 552

ms

Reply from 100.5.0.2: bytes=4000 Sequence=7 ttl=249 time = 5709

ms

Reply from 100.5.0.2: bytes=4000 Sequence=8 ttl=249 time = 552

ms

Reply from 100.5.0.2: bytes=4000 Sequence=9 ttl=249 time = 5710

ms

原因分析

1. 上面的ping显示出一个规律:偶数报文返回的时长是奇数报文的10倍还多。初步推断,奇数报文和偶数报文采用了不同的路径传输。

2. 使用tracert命令来追踪路径。在RouterC上,tracert远端RouterA的以太网接口100.5.0.1。

tracert -q 8 100.5.0.1

traceroute to 100.5.0.1(100.5.0.1) 30 hops max,40 bytes

packet

1 100.4.0.1 6 ms 4 ms 4 ms 4 ms 4 ms 4 ms 4 ms 4 ms

......

5 100.3.0.2 20 ms 16 ms 15 ms 16 ms 16 ms 16 ms 16 ms

16 ms

6 100.5.0.1 30 ms 278 ms 25 ms 279 ms 25 ms 278 ms 25

ms 277 ms

从上面的显示可以看到,直至100.3.0.2,UDP探测报文的返回时长都基本一致,而到100.5.0.1时,则发生明显变化,出现奇数报文时长短,偶数报文时长长的现象。据此判断,问题发生在RouterB和RouterA之间。

3. 询问该段网络的管理员,得知RouterB和RouterA之间有一主一备两条串行链路,主链路带宽为155Mbit/s(POS2/0/0之间),备份链路为2Mbit/s(Serial3/0/0之间)。两路由器间配置了如下的静态路由。

配置RouterB:

ip route-static 100.5.0.0 255.255.0.0 100.1.0.2

ip route-static 100.5.0.0 255.255.0.0 100.2.0.2

配置RouterA:

ip route-static 0.0.0.0 0.0.0.0 100.1.0.1

ip route-static 0.0.0.0 0.0.0.0 100.2.0.1

由于配置时没有指定静态路由的优先级,两条路由项的优先级都采用了缺省值60。因此,两条路由同时出现在路由表中,实现的是负载分担,而不是备份。

处理过程

确定了故障原因后,有两种处理方法可以解决此问题:

o

继续使用静态路由,更改优先级

RouterB的主链路使用缺省优先级60,备份链路优先级改为100:

[RouterB] ip route-static 100.5.0.0 255.255.0.0 100.1.0.2

[RouterB] ip route-static 100.5.0.0 255.255.0.0 100.2.0.2

100

RouterA进行类似更改:

[RouterA] ip route-static 0.0.0.0 0.0.0.0 100.1.0.1

[RouterA] ip route-static 0.0.0.0 0.0.0.0 100.2.0.1 100

这样,只有当主链路发生故障时,备份链路的路由项才会出现在路由表中。

o

在两路由器上运行动态路由协议,如IS-IS、OSPF等,但不要运行RIP(因为RIP仅以hop作为Metric)

建议和总结

本案例展示了如何通过ping命令和tracert命令的配合,定位网络问题的故障点。在规模较大的网络中,维护人员可能无法沿路径逐个排查,这种情况下,迅速定位出发生问题的线路或路由器非常重要。

案例二:使用tracert命令发现路由环路

现象描述

图3-3 tracert命令定位故障组网图二

如图3-3,三台路由器均配置静态路由,配置完成后,登录到RouterA上ping主机100.4.0.2,不能ping通。

相关信息显示

ping -c 6 -t 5000 100.4.0.2

PING 100.4.0.2: 56 data bytes, press CTRL_C to break

Request time out

Request time out

Request time out

Request time out

Request time out

Request time out

tracert 100.4.0.2

traceroute to 100.4.0.2(100.4.0.2) 30 hops max,40 bytes packet

1 100.1.0.1 7 ms 5 ms 5 ms

2 100.1.0.2 7 ms 6 ms 6 ms

??

29 100.1.0.1 25 ms 25 ms 16 ms

30 100.1.0.2 18 ms 17 ms 17 ms

原因分析

从tracert命令的输出信息可以发现,RouterA和RouterB间产生了路由环路。由于是配置的是静态路由,推断RouterA或RouterB的静态路由配置错误。

o

检查RouterA的配置,配置的是缺省静态路由,没有错误:

ip route-static 0.0.0.0 0.0.0.0 100.1.0.1

o

检查RouterB的配置,发现配置的到100.4.0.0网络的静态路由如下:

ip route-static 100.4.0.0 255.255.0.0 100.1.0.2

o

下一跳配置的是100.1.0.2,而不是100.3.0.1。正是这一错误的配置导致了路由环路的产生。

处理过程

修改RouterB的配置:

[RouterB] undo ip route-static 100.4.0.0 255.255.0.0 100.1.0.2

[RouterB] ip route-static 100.4.0.0 255.255.0.0 100.3.0.1

建议和总结

使用tracert命令,很容易发现路由环路等问题。

当路由器A认为路由器B知道到达目的地的路径,而路由器B认为路由器A知道目的地时,路由环路就发生了。使用ping命令只能知道接收端的超时错误,而tracert命令能够立即发现环路所在——如果tracert命令两次或者多次显示同样的接口。

当通过tracert命令发现路由环路后,需要分情况判断:

o

静态路由:基本可以肯定是手工配置的问题,如本案例。

o

OSPF协议:可能是地址聚合的问题。请参阅相关章节内容。

o

多路由协议:可能是路由引入产生的问题。请参阅相关章节内容。

3.3 display命令

介绍了display命令的功能和使用方法,包括正则表达式在display命令中的应用。

3.3.1 display命令概述

3.3.2 display命令中的正则表达式

3.3.3 查看版本信息

3.3.4 查看配置信息

3.3.5 查看接口信息

3.3.6 display diagnostic-information命令

3.3.1 display命令概述

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

路由器的当前状况;

检测相邻路由器;

总体监控网络;

定位网络故障。

熟练掌握各种display命令的应用,了解显示信息的含义,是网络维护人员需要掌握的必备技能之一。

NE80E/40E平台的display命令可以在所有视图下运行,方便用户随时查看各种信息

例如,基于NE80E/40E5.30路由平台的display命令部分选项如下所示:

display ?

aaa

AAA(Authentication,Authorization,Accounting)

access-user Online user

accounting-scheme Accounting scheme

acl Acl status and configuration information

arp Display ARP entry

aspf ASPF configuration information

atm ATM status and configuration information

authentication-scheme Authentication scheme

authorization-scheme Display AAA authorization scheme

bfd Specify BFD(Bidirectional Forwarding

Detection)

configuration information

bgp BGP information

ccc Display CCC connection

channel Informational channel status and

configuration

information

clipboard Clipboard status and configuration

information

clock Clock status and configuration information

......

说明:

上述信息列出了display命令可以使用的部分一级关键字,大部分关键字后还可以跟更多的关键字,以使用户能够了解到不同层次的信息。

不同设备或相同设备不同版本支持的特性不尽相同,上述信息所涉及的特性在某些设备上可能不提供。

本节只介绍部分最常用的、与设备整体相关的display命令,各协议相关的display命令,在后续章节相应的协议故障处理中介绍。

3.3.2 display命令中的正则表达式

正则表达式的规则

正则表达式可用于模式匹配和替换,使用时,用户首先根据一定的规则构建匹配模式,然后将匹配模式与目标对象进行匹配。

为帮助用户灵活地构建匹配模式,正则表达式提供了一些具有特殊含义的专用字符,也称为“元字符”(metacharacter),用来规定其它字符在目标对象中的出现模式。

表3-1是对元字符的使用描述。

表3-1 元字符描述

元字符

.

*

+

|

^

$

[xyz]

[^xyz]

[a-z]

[^a-z]

{n}

{n,}

{n,m}

转义字符

含义

匹配除“n”之外任何单个字符,包括空格

之前的字符在目标对象中出现0次或连续多次

之前的字符在目标对象中出现1次或连续多次

竖线左边和右边的字符为“或”的关系

之后的字符必须出现在目标对象的开始

之前的字符必须出现在目标对象的结束

匹配方括号内列出的任意字符

匹配除了方括号内列出的字符外的任意字符(^号在字符前)

匹配指定范围内的任意字符

匹配不在指定范围内的任意字符

n是一个非负整数,匹配连续出现的确定n次

n是一个非负整数,匹配连续出现的至少n次

m和n均为非负整数,n<=m。匹配连续出现的次数为n~m次。使用时注意,逗号与n和m之间不能有空格

最简单的正则表达式不包含任何元字符,例如,可以规定一个正则表达式hello,它只匹配字符串“hello”。另外两个例子如下:

^ip:匹配以字符串“ip”开始的目标对象。

ip$:匹配以字符串“ip”结束的目标对象。

display命令中的正则表达式

有些display命令会产生大量输出信息,而这些信息中可能只有部分内容是网络维护人员关心的。

NE80E/40E平台的大部分display命令提供对正则表达式的支持,用户可以对希望显示的内容进行过滤。

进行过滤输出时,有三种类型的过滤可供选择,在支持正则表达式的命令中,这三种选择的表达方式为|

{ begin | exclude | include } regular-expression:

begin:从指定的字符串开始输出。

exclude:只输出不包含匹配字符串的行。

include:只输出包含匹配字符串的行。

下面是一个查看以字符串“user”开始的配置信息:

display current-configuration | begin ^user

user-interface con 0

user-interface aux 0

user-interface vty 0 4

authentication-mode none

user privilege level 3

idle-timeout 0 0

3.3.3 查看版本信息

查看版本信息使用display version命令,不仅可以查看软件的基本信息,也可以查看设备的硬件信息。

由于不同版本在支持的特性和实现的功能方面存在差异,所以,查看硬件和软件的信息是故障处理的重要一步。

在进行故障处理时,通常从这个命令开始,收集下列信息:

当前运行的VRP软件版本和产品软件版本

是哪一系列的路由器

路由器上次启动以来运行的时间

主控板信息

接口板信息

下面是路由器上的输出示例。

display version

Huawei Versatile Routing Platform Software

NE40E (R) software, Version 5.30 (CN), RELEASE 0014

Copyright (C) 2000-2005 Huawei Technologies Co., Ltd

NE40E uptime is 0 week, 0 day, 4 hours, 3 minutes

BKP 0 version information:

1. PCB Version : CR52BKPA REV A

2. MPU Slot Quantity: 0

3. SRU Slot Quantity: 2

4. SFU Slot Quantity: 2

5. LPU Slot Quantity: 8

MPU 9(Master) : uptime is 0 week, 0 day, 4 hours, 3 minutes

SDRAM Memory Size : 2048M bytes

Flash Memory Size : 32M bytes

NVRAM Memory Size : 512K bytes

CF Card Memory Size : 489M bytes

CF Card1 Memory Size: 0M bytes

MPU version information:

1. PCB Version : CR52MPUA REV A

2. EPLD1 Version : 017

3. EPLD2 Version : 033

4. BootROM Version : 31.0

5. BootLoad Version : 31.0

6. Software Version : Version 5.30 RELEASE 0014

MIF version information:

1. PCB Version : CR52MIFA REV C

2. FPGA Version : 006

MonitorBUS version information:

1. PCB Version : CR31MBSA REV D

2. EPLD Version : 017

3. Software Version : 1.4

说明:

由于不同设备的硬件结构不同,display version命令实际输出的项目也有所差异。

3.3.4 查看配置信息

display current-configuration和display saved-configuration命令

display current-configuration命令用来查看当前的配置信息。

display saved-configuration命令用来查看存储设备中的路由器配置文件,即路由器下次上电启动时所用的配置文件。

说明:

current-configuration是路由器目前正在运行的配置文件,当更改某一配置时,current-configuration会立即改变。如果没有使用save命令将改变保存到启动配置文件saved-configuration中,路由器重启时改动将丢失。

配置文件是文本文件,其格式如下:

以命令格式保存;

为节省空间,只保存非缺省的参数

命令的组织以命令视图为基本框架,同一命令视图的命令组织在一起,形成一节,节与节之间通常用空行或注释行隔开(以“#”开始的为注释行)。空行或注释行可以是一行或多行。

下面是一个当前配置文件的示例:

display current-configuration

#

sysname Quidway

#

stp region-configuration

region-name 00e06b699758

active region-configuration

#

mpls lsr-id 1.1.1.1

mpls

#

interface NULL0

#

interface LoopBack1

ip address 1.1.1.1 255.255.255.255

#

aaa

authentication-scheme default

#

authorization-scheme default

#

accounting-scheme default

#

domain default

#

#

ip route-static 0.0.0.0 0.0.0.0 100.1.1.1

#

user-interface con 0

idle-timeout 0 0

user-interface vty 0 4

#

return

强烈建议网络维护或管理人员保存一份启动配置文件的拷贝,存放在路由器以外的其他设备上。这有几点好处:

使维护人员能够迅速对其他路由器完成类似配置;

保存在外部的文本文件可以按上述规定的格式脱机编辑,然后加载到路由器;

可以将该配置文件通过E-mail发送给华为技术支持人员以定位配置问题。

display this命令

display this命令用来查看当前视图下的配置信息。

下面是一个Loopback接口的当前配置信息:

[Quidway-LoopBack1] display this

#

interface LoopBack1

ip address 1.1.1.1 255.255.255.255

#

return

3.3.5 查看接口信息

查看接口信息的基本命令是display interface,另外,如果需要查看接口的IP层相关信息,可以使用命令display ip interface。

下面是一个以太网接口的显示信息:

display interface gigabitethernet 1/0/0

GigabitEthernet1/0/0 current state : UP

Line protocol current state : UP

Description : HUAWEI, Quidway Series, GigabitEthernet1/0/0 Interface

Route Port,

The Maximum Transmit Unit is 1500

Internet Address is 10.5.40.1/24

IP Sending Frames' Format is PKTFMT_ETHNT_2, Hardware address is

00e0-fc2c-87b3

The Vendor PN is SCP6F86-GL-CWH

Port BW: 1G, Transceiver max BW: 1G, Transceiver Mode: MultiMode

WaveLength: 850nm, Transmission Distance: 300m

Rx Power: -29.59dBm, Tx Power: -5.00dBm

Loopback:none, full-duplex mode, negotiation: disable, Pause

Flowcontrol:Receive

Enable and Send Enable

Last physical up time : 2008-03-21 15:35:04

Last physical down time : 2008-03-21 15:35:04

Statistics last cleared: never

Last 5 minutes input rate 0 bits/sec, 0 packets/sec

Last 5 minutes output rate 0 bits/sec, 0 packets/sec

Input: 1442 packets, 118606 bytes

11 broadcasts, 1426 multicasts, 0 pauses

62039 errors, 0 runts, 0 giants, 0 throttles,

0 CRC, 62039 frames, 0 overruns, 0 alignments

Output:2727 packets, 218444 bytes

0 broadcasts, 2710 multicasts, 0 pauses

0 errors, 0 underruns, 0 collisions, 0 late collisions,

0 deferred, 0 lost carrier, 0 no carrier

说明:

不同类型的接口输出信息不同,不同设备上相同类型的接口也可能由于采用不同的器件,输出信息有所差异。

3.3.6 display diagnostic-information命令

display diagnostic-information命令是多条display命令的集合,可用来获取系统的主要监控信息。

如果无法判断网络故障的产生原因,可以将display diagnostic-information命令的输出信息发送给华为技术支持人员,使之了解当前路由器的总体情况。

说明:

display diagnostic-information命令不支持分屏显示,一旦开始运行,只能通过键盘操作中止其执行。

3.4 debugging命令

介绍了debugging命令的功能和使用方法、与display命令的配合关系。

3.4.1 debugging命令概述

3.4.2 debugging命令使用注意

3.4.3 debugging信息查看

3.4.4 display命令和debugging命令的配合使用

3.4.5 debugging命令使用案例

3.4.1 debugging命令概述

NE80E/40E提供丰富的debugging命令,可以帮助用户获得路由器报文交换和处理的详细信息,有效定位网络故障。

在NE80E/40E中,debugging信息与日志(log)信息、告警(trap)信息统一由信息中心(info-center)管理。用户可以使用信息中心提供的功能,灵活设置信息输出的条件、输出方向等。

信息中心的详细介绍请参见《NE80E/40E 配置指南 系统管理》。

3.4.2 debugging命令使用注意

debugging命令是网络维护人员必须掌握的重要工具。但debugging信息的处理和输出会占用大量CPU资源,debugging命令使用不当可能导致网络性能下降,或引发其它网络故障。

在使用debugging命令时,需要注意如下几点:

只使用debugging命令定位故障,而不是监控网络运行。

尽量在网络使用的低峰期或用户较少时使用。

在没有完全掌握某条debugging命令所能提供的信息前,不要轻易使用该debugging命令。

由于debugging命令在各个输出方向对系统资源的占用情况不同,应根据网络负荷状况选择合理的输出方向。debugging命令在各个输出方向对系统资源的占用从大到小依次为:Console>monitor>host>buffered

尽量缩小debugging命令的影响范围,不要轻易使用类似debugging all之类包含多个调试子项的命令。如果命令提供了接口名称、ACL或其他限制条件,应充分利用这些条件,降低对设备性能的影响,同时减少无用信息的输出。

在获得足够的信息后,应立即关闭相应的调试开关。可以先使用display debugging命令查看已打开的调试开关,再通过相应的undo debugging命令关闭调试开馆;也可以使用undo debugging all命令关闭所有调试开关。

另外,当远程调试路由器时,如果是使用链路层协议为FR、PPP或HDLC的串口Telnet到路由器的,建议不要打开该串口相应的链路层调试开关,否则可能由于数据流量太大,使该串口的协议down掉。

3.4.3 debugging信息查看

背景信息

缺省情况下,如果打开了调试功能,debugging信息将输出到Console口连接的控制台终端上。

下面的例子介绍了通过Telnet方式登录的用户如何查看debugging信息。

操作步骤

1. 开启信息中心功能

system-view

[Quidway] info-center enable

2. 将原控制台的信息输出到Telnet终端

[Quidway] info-center monitor channel 0

[Quidway] quit

3. 允许在Telnet终端上显示信息中心发来的debugging信息

terminal monitor

% Current terminal monitor is on

terminal debugging

% Current terminal debugging is on

4. 打开想要查看的调试信息开关

debugging ppp packet interface pos 1/0/0

3.4.4 display命令和debugging命令的配合使用

两类命令的不同功能

两类命令的不同在于:

display命令能够提供某个时间的设备运行状况的视图(静态);

debugging命令能够提供一段时间内设备运行的变化情况(动态)。

因此,在进行故障处理时,如果需要了解系统运行总体情况,必须同时使用这两类命令。

例如:处理OSPF协议故障时,

display ip routing-table命令可用来了解路由器当前已知的路由表项

debugging ospf event命令可用来了解路由表的更新过程。

debugging命令不直接体现设备已知的信息,而display命令不能体现路由表的变化情况,两者配合使用,才能全面反映正在发生的事情。

配合使用的原则

一般而言,display命令对系统的运行性能影响比debugging命令的影响小很多,因此,两者配合使用时,应遵循如下规则:

首先使用相关的多条display命令查看设备当前的运行状况,分析可能原因,缩小故障检查的范围;

然后打开某个特定的debugging命令,观察调试信息变化情况,定位和排除故障。

3.4.5 debugging命令使用案例

现象描述

某电信局安装了路由器作为接入服务器的出口网关,一段时间运转良好。有一天用户反映该设备速度明显变慢。Ping对端设备所用时间为正常情况的2倍还多。

原因分析

初步分析可能有以下几种原因:

线路质量不好。

对端设备问题,导致回应较慢。

自身配置错误

网络繁忙

软硬件故障

操作步骤

1. 检查线路,没有发现问题;

2. Ping与之相连的其他路由器设备,存在同样的故障,说明不是对端设备的问题;

3. 对照以前运转良好时备份的配置文件,检查路由器当前配置,没有错误;

4. 当时并非上网高峰期,并且只是转发速度变慢,没有丢包,应当不是网络负荷问题;

5. 检查该路由器的日志信息,发现其中记录了大量的收发IP报文信息,执行display debugging命令,发现该路由器的debugging ip packet处于打开状态。设备记录每一个被转发的IP报文,大大降低了路由器的处理速度,导致转发速度变慢。

6. 关闭该debugging开关后,故障解决。

建议与总结

只有在定位故障时才使用debugging命令,调试结束后,立即关闭相应的调试开关。

3.5 reset命令

介绍了reset命令的功能和使用方法。

3.5.1 reset命令概述

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

3.5.3 reset命令的使用

3.5.1 reset命令概述

根据所提供的功能,NE80E/40E平台的reset命令主要包括两类:

复位连接,例如:reset bgp

清除统计信息

本节简单介绍后一类reset命令的使用。

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

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

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

interface命令;

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

3.5.3 reset命令的使用

背景信息

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

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

因此,查看统计信息的正确步骤是:

操作步骤

1. 首先使用reset命令清空统计值;

2. 然后执行ping命令使路由器端口收发报文;

3. 最后使用display命令查看统计值。

任务示例

例如:通过display interface gigabitethernet 1/0/0观察到如下统计数据:

10 input errors,5 CRC,1 frame errors

0 overrunners,0 aborted sequences, 0 input no buffers

发现端口收发有错误,但这些错误是否是最近产生的呢?

可以使用reset counters interface gigabitethernet 1/0/0先请空统计信息,然后ping一组报文,再使用display

interface gigabitethernet 1/0/0查看结果统计。如果仍然显示错误,就需要分析错误原因了。

3.6 日志功能

介绍了NE80E/40E的日志功能。

在设备运行过程中,NE80E/40E日志模块会对运行中的各种情况进行记录,形成日志信息。

生成的日志信息可以通过控制口或telnet方式显示日志内容,在设备上对日志进行保存,也可以使用syslog协议将日志信息输出到日志服务器。

syslog协议采用UDP的514号端口进行传输,任何在514端口上出现的UDP包都会被视为一条日志信息,日志信息以符号“%”开始,其输出格式如下:

日志信息格式如下:

%时间戳 主机名 模块名/日志级别/信息摘要:详细信息

通过查看日志信息,可以了解设备一段时间以来的运行状态、分析网络的状况、为定位问题提供依据。