概要
このドキュメントでは、ルータのクラッシュをトラブルシューティングする方法について説明します。「システムクラッシュ」とは、システムが回復不能なエラーを検出し、それ自体を再起動した状況です。クラッシュを引き起こすエラーは通常、プロセッサハードウェアによって検出され、自動的にROMモニタの特別なエラー処理コードに分岐します。ROM モニタはエラーを識別し、メッセージを出力して、障害に関する情報を保存し、システムを再起動します。
前提条件
要件
このドキュメントに特有の要件はありません。
使用するコンポーネント
このドキュメントの内容は、特定のソフトウェアやハードウェアのバージョンに限定されるものではありません。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。
クラッシュに関する情報の入手
ルータがクラッシュしたときは、手動でルータのリロードまたは電源の再投入を行う前に、できるだけ多くの情報を収集することが非常に重要になります。手動でリロードまたは電源の再投入を行うと、クラッシュに関する情報は crashinfo ファイルに正常に保存された情報を除いてすべて失われます。次の出力は、クラッシュに関する情報と情報を示しています。
ご使用のシスコデバイスのshow version、show stacks、show context、またはshow tech supportコマンドの出力データがあれば、Cisco CLI Analyzerを使用して、潜在的な問題と修正を表示できます。Cisco CLI Analyzerを使用するには、登録ユーザーでログインし、JavaScriptを有効にしている必要があります。
コマンド |
説明 |
show version |
このコマンドは、Cisco IOS®ソフトウェアリリース10.0で初めて導入されました。show version EXECコマンドは、システムハードウェアの設定、ソフトウェアバージョン、コンフィギュレーションファイルとソフトウェアイメージの名前とソース、ルータの稼働時間、およびシステムの再起動時の情報を表示します。重要:クラッシュの後に(電源の再投入や reload コマンドの実行などにより)ルータをリロードすると、この情報は失われるため、必ずリロードする前に情報を収集してください。 |
show stacks |
このコマンドは、Cisco IOSソフトウェアリリース10.0で初めて導入されました。show stacks EXECコマンドは、プロセスと割り込みルーチンのスタック使用状況を監視するために使用されます。show stacks の出力は、ルータがクラッシュしたときに収集する情報のうち、最も重要な情報源の 1 つです。重要:クラッシュの後に(電源の再投入や reload コマンドなどにより)ルータをリロードすると、この情報は失われるため、必ずリロードする前に情報を収集してください。 |
show context |
このコマンドは、Cisco IOSソフトウェアリリース10.3で初めて登場しました。show context EXECコマンドを使用して、例外が発生したときに不揮発性RAM(NVRAM)に保存されている情報を表示します。コンテキスト情報はプロセッサとアーキテクチャに固有ですが、ソフトウェア バージョンと稼働時間の情報は固有ではありません。そのため、異なるルータ タイプでは、コンテキスト情報も異なります。show context コマンドを実行すると、次のような出力が表示されます。
- システム リブートの理由
- スタック トレース
- ソフトウェア バージョン
- シグナル番号、コード、ルータの稼働時間の情報
- クラッシュ時のすべてのレジスタの内容
|
show tech-support |
このコマンドは、Cisco IOSソフトウェアリリース11.2で初めて登場しました。このコマンドは、問題を報告するときにルータに関する一般的な情報を収集するのに役立ちます。内容は以下を含みます。
- show version
- show running-config
- show stacks
- show interface
- show controller
- show process cpu
- show process memory
- show buffers
|
console log |
クラッシュ時にルータのコンソールに接続している場合、クラッシュ中に次のような情報が表示されます。 *** System received a Software forced crash ***
signal= 0x17, code= 0x24, context= 0x619978a0
PC = 0x602e59dc, Cause = 0x4020, Status Reg = 0x34008002
DCL Masked Interrupt Register = 0x000000f7
DCL Interrupt Value Register = 0x00000010
MEMD Int 6 Status Register = 0x00000000
事前にこの情報とログを保存します。ルータの再起動後に、必ず show stacks の出力を取得してください。 |
syslog |
ルータが syslog サーバにログを送信するように設定されている場合は、クラッシュの前に発生した内容に関する情報を syslog サーバで確認できます。ただし、ルータがクラッシュしている場合、このsyslogサーバに最も有用な情報を送信できない可能性があります。したがって、ほとんどの場合、syslog の出力は、クラッシュのトラブルシューティングにはそれほど役立ちません。 |
crashinfo |
crashinfo ファイルには、最後に発生したクラッシュに関する有用な情報が記録されており、ブートフラッシュまたはフラッシュ メモリに保存されています。データやスタックの破損が原因でルータがクラッシュした場合、このタイプのクラッシュをデバッグするためには、通常の show stacks コマンドの出力より多くのリロード情報が必要になります。Cisco 12000 Gigabit Router Processor(GRP; ギガビット ルータ プロセッサ)、Cisco 7000 および 7500 Route Switch Processor(RSP; ルート スイッチ プロセッサ)、Cisco 7200 シリーズ ルータでは、リロード情報はデフォルトで bootflash:crashinfo に書き込まれます。Cisco 7500 Versatile Interface Processor 2(VIP2)の場合、このファイルはデフォルトでbootflash:vip2_slot_no_crashinfoに保存されます。ここでslot_noはVIP2スロット番号です。Cisco 7000 Route Processor(RP; ルート プロセッサ)では、このファイルはデフォルトで flash:crashinfo に保存されます。詳細については、『Crashinfo ファイルからの情報の取得』を参照してください。 |
コア ダンプ |
コア ダンプは、ルータのメモリ イメージの完全なコピーです。ほとんどのタイプのクラッシュでは、この情報はトラブルシューティングに必要ありませんが、新しい不具合を報告する場合は、この情報も含めることを強く推奨します。デバッグの正常性、スケジューラのヒープチェック プロセス、メモリの check-interval 1 など、より多くの情報をコア ダンプ内に追加するには、いくつかのデバッグをイネーブルにする必要があります。詳細については、『コア ダンプの作成』を参照してください。 |
rom monitor |
ルータのconfig-register設定が0で終わると、クラッシュ後にルータがROMモニタ(ROMmon)になる可能性があります。プロセッサが68kの場合、プロンプトは「>」になります。 k コマンドにより、スタック トレースを取得できます。プロセッサが Reduced Instruction Set Computing(RISC; 縮小命令セット コンピュータ)の場合、プロンプトは「rommon 1>」になります。 stack 50 または show context の出力を取得します。 |
クラッシュのタイプ
show version コマンドや show stacks コマンドの出力には、バス エラーやソフトウェア強制クラッシュなど、発生したクラッシュのタイプが示されています。crashinfo コマンドおよび show context コマンドでも、クラッシュ タイプの情報を得ることができます。一部の新しいCisco IOSソフトウェアリリースでは、クラッシュの理由が明確に示されていません(たとえば、「Signal = x」(xは数字))。 この番号が示す意味については、「Versatile Interface Processor のクラッシュ原因コード」を参照してください。たとえば、「Signal = 23」は、ソフトウェアによる強制クラッシュを意味します。次のリンクを参照して、ルータで発生する特定のタイプのクラッシュをトラブルシューティングしてください。
ルータ モジュールのクラッシュ
ルータ全体ではなく、特定のルータ モジュールだけがクラッシュすることがあります。次のドキュメントでは、一部のルータ モジュールでクラッシュが発生した場合にトラブルシューティングを行う方法を説明しています。
クラッシュを示す出力例
Router#show version
Cisco Internetwork Operating System Software
IOS (tm) RSP Software (RSP-PV-M), Version 12.0(10.6)ST, EARLY DEPLOYMENT
MAINTENANCE INTERIM SOFTWARE
Copyright (c) 1986-2000 by cisco Systems, Inc.
Compiled Fri 23-Jun-00 16:02 by richv
Image text-base: 0x60010908, data-base: 0x60D96000
ROM: System Bootstrap, Version 12.0(19990806:174725), DEVELOPMENT SOFTWARE
BOOTFLASH: RSP Software (RSP-BOOT-M), Version 12.0(9)S, EARLY DEPLOYMENT
RELEASE SOFTWARE (fc1)
Router uptime is 20 hours, 56 minutes
System returned to ROM by error - a Software forced crash, PC 0x60287EE8
System image file is "slot0:rsp-pv-mz.120-10.6.ST"
cisco RSP8 (R7000) processor with 131072K/8216K bytes of memory.
R7000 CPU at 250Mhz, Implementation 39, Rev 1.0, 256KB L2, 2048KB L3 Cache
Last reset from power-on
G.703/E1 software, Version 1.0.
G.703/JT2 software, Version 1.0.
X.25 software, Version 3.0.0.
Chassis Interface.
1 EIP controller (6 Ethernet).
1 VIP2 R5K controller (1 FastEthernet)(2 HSSI).
6 Ethernet/IEEE 802.3 interface(s)
1 FastEthernet/IEEE 802.3 interface(s)
2 HSSI network interface(s)
2043K bytes of non-volatile configuration memory.
20480K bytes of Flash PCMCIA card at slot 0 (Sector size 128K).
16384K bytes of Flash internal SIMM (Sector size 256K).
No slave installed in slot 7.
Configuration register is 0x2102
Router#show stacks
Minimum process stacks:
Free/Size Name
5188/6000 CEF Reloader
9620/12000 Init
5296/6000 RADIUS INITCONFIG
5724/6000 MDFS Reload
2460/3000 RSP memory size check
8176/9000 DHCP Client
Interrupt level stacks:
Level Called Unused/Size Name
1 163 8504/9000 Network Interrupt
2 14641 8172/9000 Network Status Interrupt
3 0 9000/9000 OIR interrupt
4 0 9000/9000 PCMCIA Interrupt
5 5849 8600/9000 Console Uart
6 0 9000/9000 Error Interrupt
7 396230 8604/9000 NMI Interrupt Handler
System was restarted by error - a Software forced crash, PC 0x602DE884 at 05:07:31
UTC Thu Sep 16 1999
RSP Software (RSP-JSV-M), Version 12.0(7)T, RELEASE SOFTWARE (fc2)
Compiled Mon 06-Dec-99 19:40 by phanguye
Image text-base: 0x60010908, database: 0x61356000
Stack trace from system failure:
FP: 0x61F73C30, RA: 0x602DE884
FP: 0x61F73C30, RA: 0x6030D29C
FP: 0x61F73D88, RA: 0x6025E96C
FP: 0x61F73DD0, RA: 0x6026A954
FP: 0x61F73E30, RA: 0x602B94BC
FP: 0x61F73E48, RA: 0x602B94A8
ブートフラッシュにcrashinfoがある場合は、show stacksコマンドの最後に次の情報が表示されます。
***************************************************
******* Information of Last System Crash **********
***************************************************
Using bootflash:crashinfo_20000323-061850. 2000
CMD: 'sh int fas' 03:23:41 UTC Thu Mar 2 2000
CMD: 'sh int fastEthernet 6/0/0' 03:23:44 UTC Thu Mar 2 2000
CMD: 'conf t' 03:23:56 UTC Thu Mar 2 2000
CMD: 'no ip cef di' 03:23:58 UTC Thu Mar 2 2000
CMD: 'no ip cef distributed ' 03:23:58 UTC Thu Mar 2 2000
...
Router#show context
System was restarted by error - a Software forced crash, PC 0x602DE884 at
05:07:31 UTC Thu Sep 16 1999
RSP Software (RSP-JSV-M), Version 12.0(7)T, RELEASE SOFTWARE (fc2)
Compiled Mon 06-DEC-99 19:40 by phanguye
Image text-base: 0x60010908, database: 0x61356000
Stack trace from system failure:
FP: 0x61F73C30, RA: 0x602DE884
FP: 0x61F73C30, RA: 0x6030D29C
FP: 0x61F73D88, RA: 0x6025E96C
FP: 0x61F73DD0, RA: 0x6026A954
FP: 0x61F73E30, RA: 0x602B94BC
FP: 0x61F73E48, RA: 0x602B94A8
Fault History Buffer:
RSP Software (RSP-JSV-M), Version 12.0(7)T, RELEASE SOFTWARE (fc2)
Compiled Mon 06-DEC-99 19:40 by phanguye
Signal = 23, Code = 0x24, Uptime 3w0d
$0 : 00000000, AT : 619A0000, v0 : 61990000, v1 : 00000032
a0 : 6026A114, a1 : 61A309A4, a2 : 00000000, a3 : 00000000
t0 : 61F6CD80, t1 : 8000FD88, t2 : 34008700, t3 : FFFF00FF
t4 : 00000083, t5 : 3E840024, t6 : 00000000, t7 : 00000000
s0 : 0000003C, s1 : 00000036, s2 : 00000000, s3 : 61F73C48
s4 : 00000000, s5 : 61993A10, s6 : 61982D00, s7 : 61820000
t8 : 0000327A, t9 : 00000000, k0 : 61E48C4C, k1 : 602E7748
gp : 6186F3A0, sp : 61F73C30, s8 : 00000000, ra : 6030D29C
EPC : 602DE884, SREG : 3400E703, Cause : 00000024
Error EPC : BFC00000, BadVaddr : 40231FFE
TAC のサービスリクエストをオープンする場合に収集すべき情報
トラブルシューティングの手順を完了しても引き続きサポートが必要で、Cisco TACでサービスリクエストをオープンする場合は、ルータクラッシュのトラブルシューティングに次の情報を必ず含めてください。
- サービス リクエストをオープンする前に実施したトラブルシューティング
- (可能な場合はイネーブル モードの)show technical-support の出力
- show log の出力またはコンソールのキャプチャ(可能な場合)
- crashinfo ファイル(ファイルがあり、show technical-support の出力に含まれていない場合)
- show region 出力(show technical-support 出力に含まれていない場合)
収集したデータは、圧縮しないプレーン テキスト形式(.txt)でサービス リクエストに添付してください。 Service Request Tool にアクセスできない場合は、メッセージの件名の行にお客様のサービス要求番号を記入し、attach@cisco.com にメッセージを送信することにより、お客様のサービス要求に関連情報を添付できます。
注:ルータのクラッシュをトラブルシューティングする必要がない限り、情報を収集する前に、手動でルータをリロードしたり、ルータの電源をオフ/オンしたりしないでください。これにより、問題の根本原因を特定するために必要な重要な情報が失われる可能性があります。