思科路由器:网络故障诊断与排除命令

时间:2017-09-04 16:09出处:爱路由器网-www.iluyouqi.com阅读:

在出现网络故障时,作为网络工程师能够及时定位故障并解决网络故障是十分重要的。

  在出现网络故障时,作为网络工程师能够及时定位故障并解决网络故障是十分重要的。CiscoISO操作系统软件提供了一组功能丰富的命令,可以用来进行网络故障查找与排除、问题诊断以及性能检测。命令大致可以分为两类:show命令和debug命令。同时,还包含一组用于连接这两类命令的clear命令。下面我们分别讲解各命令

  网络故障诊断与排除show命令

  在这一节中,我们将讲述最常用的show命令,阐述这些命令的输出以及这些命令适用于解决的故障类型。为了叙述清楚,这些命令被分为全局系统命令、与接口相关的命令和与协议相关的命令。我们仅讨论最常使用的命令。

  网络故障诊断与排除全局系统命令

  本节将列出与路由器软件和硬件相关的输出命令,其中包括存储区和电源。showversion命令是最基本的命令之一,它显示路由器本身以及其所使用的软、硬件的基本信息。showhardware命令的功能与showversion命令类似。

  命令的输出信息包括:IOS的版本、路由器持续运行的时间约23周、最近一次重启动的原因、路由器主存的大小、共享存储器的大小、闪存的大小、IOS映像的文件名,以及路由器从何处启动等信息。showversion命令显示了路由器的许多非常有用的信息。在解决问题时,通常应该从这个命令开始收集数据。

  如果路由器的多个接口同时丢失报文,则可能由于路由器内存不足或者CPU过载。用户可以使用showmemory命令检查内存利用率(如下所示)。CPU利用率可以使用showprocess命令检查。

  YH-Router#showmemoryHeadTotal(b)Used(b)Free(b)Lowest(b)Largest(b)Processor60DB19C0191954566162924130325321161516411250780Fast60DB19C0131072128344272827282684 showmemory的前两行显示了存储器的一般信息,它表明系统有足够可用的内存。同时它还显示内存中没有碎片,因为在13.03兆字节可用内存中最大的可用块接近11.25兆字节。内存碎片表明内存被划分为了许多不连续的块。它将导致内存的利用率降低,严重时可能产生内存错误从而也严重影响路由器的性能。

  现在看一看路由器中有许多内存碎片的情形(如下所示)。此时我们有足够多的可用内存(8.4兆字节),但是其中最大的块仅为0.5兆字节。连续内存中没有足够大的可用块,这有可能导致严重的内存分配问题。这些问题有时表现为一个或多个接口间歇性的丢失报文。此时路由器产生内存碎片错误消息。

  HX-Router#shmemHeadTotal(b)Used(b)Free(b)Lowest(b)Largest(b)Processor60DB19C019195456107137128481744192680586748Fast60DB19C013107290936401364013640092使用命令showmemoryfree,用户可以看到可用内存被划分为许多很小的碎片。需要注意的是,路由器中存在一定数量的内存碎片是正常的。虽然并没有一个很严格的界限来划分内存碎片的可接受程度,但是可用块的大小至少应该不小于可用内存的一半。用户可以通过重新启动路由器来解决这个问题。在重新启动时,系统重新分配内存和缓存空间。此时,用户应该监视内存分配的过程。如果再次发生类似的情况,则应该咨询CiscoTAC.

  用户可以使用showprocesscpu命令检查路由器的CPU是否过载。该命令将给出路由器CPU的利用率,同时显示路由器中不同进程的CPU占用率。在下述示例中,路由器的CPU工作正常。在通常情况下,在5分钟内CPU的平均利用率小于60%是可以接受的。如果怀疑CPU利用率出现了问题,则需要不断地监视这一参数,因为它可能在短时间内发生变化。最好每10秒钟使用一次该命令。通过这种方法,可以清楚地了解CPU利用率的波动情况。

  YH-Router#shprocesscpuCPUutilizationforfiveseconds:15%/4%;oneminute:175;fiveminutes:19%PIDRuntime(ms)InvokeduSecs5Sec1Min5MinTTYProcess14601845380085850.00%0.00%0.00%0NTP225274953623842051060100.00%2.35%2.65%0CheckHeaps1326155236913595828620.32%0.25%0.22%0IPBackground1431772015015021160.00%0.00%0.00%0IPCacheager23515983801350948513810.32%0.24%0.28%0IPXInput24867921242366207136670.98%0.87%0.89%0IPXRIP2543848094812338416135537.94%3.31%3.91%0IPXSAP

  如果CPU的平均利用率超过了80%,则表明路由器过载。下一步需要检测那一些进程导致了CPU利用率过高。在上面的显示中,我们可以看到进程IPXSAP占用了绝大部分的CPU处理能力,但是它还在可以接受的范围之内。有时候,如果SRBbackground参数持续过高,则表明发生了路由网桥风暴。

  showprocessmemory命令可以用来给出路由器可用内存的一般信息,然后显示每一个进程所占用的内存空间的详细信息。

  如果路由器由于临时重启动而完全崩溃,则相应的错误消息将包含在showversion命令的输出中。showstack命令用于跟踪路由器的堆栈,提供路由器临时重新启动的原因。如果由于错误而导致重新启动,堆栈记录将在输出的末尾显示。为了抽取与网络故障相关的信息,堆栈记录需要解码。这一工作通常由CiscoTAC工程师完成。此外,拥有相应CCO登录ID的用户可以通过将showstack命令的输出发送到CCO而获得解码信息。堆栈记录解码的结果有时与Cisco路由器的bug有关。

  当用户向CiscoTAC报告网络故障时,支持技术人员通常要求用户发送showtech_support命令的输出结果。这个命令将导致下述命令的按序执行:Showversion、Showcontrollers、Showbuffers、Showinterface、Showstack、Showprocesscpu、Showprocessmemory和Showrunning-config.这些命令的组合将给出路由器配置以及大多数关键性能参数的详细信息。showtech_support命令的输出对于CiscoTAC技术人员解决复杂网络问题是十分有用。

返回顶部