この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
シスコは世界中のユーザにそれぞれの言語でサポート コンテンツを提供するために、機械と人による翻訳を組み合わせて、本ドキュメントを翻訳しています。ただし、最高度の機械翻訳であっても、専門家による翻訳のような正確性は確保されません。シスコは、これら翻訳の正確性について法的責任を負いません。原典である英語版(リンクからアクセス可能)もあわせて参照することを推奨します。
このドキュメントでは、Cisco適応型セキュリティアプライアンス(ASA)のパフォーマンスの監視とトラブルシューティングに使用するコマンドについて説明します。
このドキュメントに特有の要件はありません。
このドキュメントの情報は、バージョン 8.3 以降を稼働する Cisco 適応型セキュリティ アプライアンス(ASA)に基づいています。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。
パフォーマンスの問題をトラブルシューティングするには、このセクションで説明する基本部分を確認します。
注: show
コマンドをシスコデバイスから実行すると、Cisco CLIアナライザを使用して潜在的な問題と修正を表示できます。Cisco CLIアナライザは、次の機能をサポートしています show
コマンドを発行します。Cisco CLIアナライザを使用する場合は、シスコの登録ユーザであり、シスコアカウントにログインし、ブラウザでJavaScriptを有効にしている必要があります。
セキュリティ アプライアンスは、インターフェイスの速度とデュプレックスの設定を自動的に検出するようにあらかじめ設定されています。ただし、自動ネゴシエーションプロセスが失敗し、速度またはデュプレックスのいずれかのミスマッチ(およびパフォーマンスの問題)が発生する可能性のある状況がいくつかあります。ミッション クリティカルなネットワーク インフラストラクチャの場合、シスコがインターフェイスごとに速度とデュプレックス モードを手動でハードコーディングするため、エラーが発生する可能性はありません。これらのデバイスは通常は移動しないため、適切に設定すれば変更する必要はありません。
どのようなネットワーク デバイスでも、リンク速度は検出可能ですが、デュプレックスはネゴシエートする必要があります。2台のネットワークデバイスが速度とデュプレックスを自動ネゴシエートするように設定されている場合、これらのデバイスは速度とデュプレックスの機能をアドバタイズするフレーム(Fast Link Pulse(FLP)と呼ばれます)を交換します。未対応のリンク パートナーにとっては、これらのパルスは通常の 10 Mbps フレームのように見えます。パルスをデコードできるリンク パートナーにとっては、FLP にはリンク パートナーが提供できる速度とデュプレックスの設定がすべて含まれています。FLP を受信した端末はそのフレームに対する確認応答を返し、各デバイスは互いに速度およびデュプレックスを、それぞれ実現可能な最高の状態に合わせます。一方のデバイスが自動ネゴシエーションをサポートしていない場合、他方のデバイスはFLPを受信し、並行検出モードに移行します。パートナーの速度を検出するために、デバイスはパルスの長さをリッスンし、その長さに基づいて速度を設定します。ここで、デュプレックスの設定の際に問題が生じます。デュプレックスはネゴシエートする必要があるため、自動ネゴシエートに設定されたデバイスは他のデバイスの設定を決定できないため、IEEE 802.3u標準に従ってデフォルトの半二重になります。
たとえば、ASAインターフェイスを自動ネゴシエーション用に設定し、100 Mbpsおよび全二重にハードコードされているスイッチに接続すると、ASAはFLPを送信します。ただし、スイッチは速度とデュプレックス用にハードコードされており、自動ネゴシエーションに参加しないため、応答しません。スイッチから応答を受信しないため、ASAはパラレル検出モードに移行し、スイッチが送信するフレーム内のパルスの長さを検出します。つまり、ASAはスイッチが100 Mbpsに設定されていることを検知し、これに基づいてインターフェイス速度を設定します。しかし、スイッチは FLP を交換しないため、ASA はスイッチが全二重で動作できるかどうかを検出できず、自身のインターフェイス デュプレックスを、IEEE 803.2u 規格に従って半二重に設定します。スイッチは100 Mbpsおよび全二重にハードコードされており、ASAは100 Mbpsおよび半二重に(実際に)自動的にネゴシエートしたため、デュプレックスのミスマッチが発生し、パフォーマンスに重大な問題が発生する可能性があります。
速度またはデュプレックスの不一致は、通常、問題のあるインターフェイスでエラー カウンタの値が増加することによって判明します。最もよくあるエラーは、フレーム、Cyclic Redundancy Check(CRC; 巡回冗長検査)、およびラントです。これらの値がインターフェイスで増加している場合は、速度/デュプレックスの不一致またはケーブル配線の問題のいずれかが発生しています。この問題を解決してから、他の作業を行う必要があります。
例
Interface GigabitEthernet0/0 "outside", is up, line protocol is up Hardware is i82546GB rev03, BW 1000 Mbps, DLY 10 usec Auto-Duplex(Full-duplex), Auto-Speed(100 Mbps) Input flow control is unsupported, output flow control is unsupported MAC address 0013.c480.b2b8, MTU 1500 IP address 192.168.17.4, subnet mask 255.255.255.0 311981 packets input, 20497296 bytes, 0 no buffer Received 311981 broadcasts, 157 runts, 0 giants 379 input errors, 107 CRC, 273 frame, 0 overrun, 0 ignored, 0 abort 0 pause input, 0 resume input 0 L2 decode drops 121 packets output, 7744 bytes, 0 underruns 0 pause output, 0 resume output 0 output errors, 0 collisions, 1 interface resets 0 late collisions, 0 deferred 0 input reset drops, 0 output reset drops, 0 tx hangs input queue (blocks free curr/low): hardware (255/249) output queue (blocks free curr/low): hardware (255/254)
CPU使用率が高いことに気づいた場合は、次の手順を実行してトラブルシューティングを行います。
show xlate count
が低い。show memory detail
コマンドを使用して、ASAが使用するメモリが通常の使用率であることを確認します。show processes cpu-hog
と show processes memory
正常です。show interface
コマンドを発行して、エラーを確認します。Ciscoasa#sh int GigabitEthernet0/1 Interface GigabitEthernet0/1 "inside", is up, line protocol is up Hardware is i82546GB rev03, BW 1000 Mbps, DLY 10 usec Auto-Duplex(Full-duplex), Auto-Speed(100 Mbps) Input flow control is unsupported, output flow control is unsupported MAC address 0013.c480.b2b8, MTU 1500 IP address 192.168.17.4, subnet mask 255.255.255.0 311981 packets input, 20497296 bytes, 0 no buffer Received 311981 broadcasts, 157 runts, 0 giants 7186 input errors, 0 CRC, 0 frame, 7186 overrun, 0 ignored, 0 abort 0 pause input, 0 resume input 0 L2 decode drops 121 packets output, 7744 bytes, 0 underruns 0 pause output, 0 resume output 0 output errors, 0 collisions, 1 interface resets 0 late collisions, 0 deferred 0 input reset drops, 0 output reset drops, 0 tx hangs input queue (blocks free curr/low): hardware (255/249) output queue (blocks free curr/low): hardware (255/254)この問題を解決するには、対応するインターフェイスの速度を auto に設定します。
注:Ciscoでは、 ip verify reverse-path interface
コマンドを発行します。これにより、有効な送信元アドレスを持たないパケットが廃棄され、CPU使用率が低下します。これは、CPU高使用率の問題が発生しているFWSMに適用されます。
show mroute
コマンドを発行して、ASAが受信するマルチキャストルートが多すぎるかどうかを確認します。show local-host
コマンドを発行して、ネットワークでサービス拒否攻撃が発生しているかどうかを確認します。これは、ネットワークでのウイルス攻撃を示している可能性があります。注:シスコの内部ツールおよびバグ情報にアクセスできるのは、登録ユーザのみです。
注:前述のソリューションで問題が解決しない場合は、要件に基づいてASAプラットフォームをアップグレードしてください。適応型セキュリティアプライアンスプラットフォームの機能と性能の詳細については、『セキュリティアプライアンス用Ciscoセキュリティモジュール』を参照してください。詳細については、TAC(シスコテクニカルサポート)にお問い合せください。
次に、高いメモリ使用率について可能性のある原因と解決策を示します。
Catalyst オペレーティング システム(OS)が稼働する Cisco スイッチなどの多くのスイッチが、デフォルトで、プラグアンドプレイ デバイスとして設計されています。そのため、ASAがスイッチに接続されている場合、デフォルトのポートパラメータの多くは望ましくありません。たとえば、Catalyst OS が稼働するスイッチでは、デフォルトのチャネリングがオートに、トランキングがオートに、PortFast が無効に、それぞれ設定されています。Catalyst OSが稼働するスイッチにASAを接続する場合は、チャネリングを無効にし、トランキングを無効にし、PortFastを有効にします。
チャネリング(Fast EtherChannel または Giga EtherChannel とも呼ばれます)は、複数の物理ポートを 1 つの論理グループにバインドし、リンク全体のスループットを向上させるために使用されます。ポートを自動チャネリングに設定すると、ポートは、チャネルの一部かどうかを判断するために、リンクがアクティブになると、Port Aggregation Protocol(PAgP; ポート集約プロトコル)フレームを送出します。他のデバイスがリンクの速度とデュプレックスを自動的にネゴシエートしようとすると、これらのフレームが問題を引き起こす可能性があります。また、ポートのチャネリングがオートに設定されていると、リンクのアップ後、ポートがトラフィックの転送を始める前に、さらにおよそ 3 秒の遅延が発生します。
注:Catalyst XLシリーズスイッチでは、チャネリングはデフォルトでAutoに設定されていません。このため、ASAに接続するすべてのスイッチポートでチャネリングを無効にする必要があります。
トランキング(一般的なトランキング プロトコルでは Inter-Switch Link(ISL; スイッチ間リンク)または Dot1q)では、複数の Virtual LAN(VLAN; 仮想 LAN)が単一のポート(またはリンク)に結合されます。通常、トランキングは 2 台のスイッチの双方で複数の VLAN が定義されているときにスイッチ間で使用されます。ポートが自動トランキングに設定されると、ポートでは、接続先のポートがトランキングを要求しているかどうかを判断するために、リンクがアップになると、Dynamic Trunking Protocol(DTP)フレームを送出します。これらのDTPフレームは、リンクの自動ネゴシエーションで問題を引き起こす可能性があります。スイッチ ポートでトランキングがオートに設定されていると、リンクのアップ後、ポートがトラフィックの転送を始める前に、さらにおよそ 15 秒の遅延が加わります。
PortFast(Fast Start とも呼ばれます)は、スイッチ ポートにレイヤ 3 デバイスが接続されていることをスイッチに通知するオプションです。ポートでは、デフォルトでの 30 秒間(15 秒のリッスンと 15 秒の学習)の待機が行われず、スイッチでは、リンクがアップした直後にポートが「フォワーディング」状況にされます。PortFast を有効にしてもスパニング ツリーが無効にならないことを理解することが重要です。そのポートのスパニング ツリーはまだ有効になっています。PortFast を有効にすると、リンクの他端に接続されている別のスイッチやハブ(レイヤ 2 専用デバイス)はないことのみが、スイッチに通知されます。スイッチでは、通常の 30 秒間の遅延が省略され、そのポートをアップした場合にレイヤ 2 ループが発生するかどうかの判定が試みられます。そのため、リンクがアップした後も、スイッチは引き続きスパニング ツリーに参加しています。ポートからは Bridge Packet Data Units(BPDU)が送出され、スイッチはそのポートで BPDU をリッスンしています。これらの理由から、ASAに接続するすべてのスイッチポートでPortFastを有効にすることを推奨します。
注:Catalyst OSリリース5.4以降には、 set port host
コマンドを使用して、チャネリングの無効化、トランキングの無効化、およびPortFastの有効化を1回のコマンドで実行できます。
各 NAT または NAT オーバーロード(PAT)セッションには、xlate と呼ばれる変換スロットが割り当てられます。これらの xlate は、xlate に影響する NAT ルールの変更を行った後でも存在する場合があります。このため、変換を受けるトラフィックによって、変換スロットの減少または予期しない動作のいずれか一方または両方が発生する場合があります。ここでは、セキュリティ アプライアンスの xlate を表示およびクリアする方法を説明します。
注意:セキュリティアプライアンスでxlateをグローバルにクリアすると、デバイスを通過するすべてのトラフィックのフローが一瞬中断する場合があります。
Outside インターフェイスの IP アドレスを使用する PAT に対する ASA の設定の例を次に示します。
object network OBJ_GENERIC_ALL subnet 0.0.0.0 0.0.0.0 nat (inside,outside) source dynamic OBJ_GENERIC_ALL interface
セキュリティ アプライアンスを通過するトラフィックは、ほとんどが NAT の対象になります。セキュリティアプライアンスで使用されている変換を表示するには、 show xlate
コマンドにより、WLC CLI で明確に示されます。
Ciscoasa#show xlate 5 in use, 5 most used Flags: D - DNS, i - dynamic, r - portmap, s - static, I - identity, T - twice NAT from any:192.168.1.10 to any:172.16.1.1/24 flags s idle 277:05:26 timeout 0:00:00
変換スロットは、キーの変更を行った後でも残っている場合があります。セキュリティアプライアンスの現在の変換スロットをクリアするには、 clear xlate
コマンドにより、WLC CLI で明確に示されます。
Ciscoasa#clear xlate
Ciscoasa#show xlate 0 in use, 1 most used
「 clear xlate
コマンドは、xlateテーブルから現在のダイナミックトランスレーションをすべてクリアします。特定のIP変換をクリアするには、 clear xlate
コマンドを global [ip address]
キーワード.
NAT のための ASA の設定例を次に示します。
object network inside-net subnet 0.0.0.0 0.0.0.0 object network outside-pat-pool range 10.10.10.10 10.10.10.100 nat (inside,outside) source dynamic inside-net outside-pat-pool
次を確認します。 show xlate
内部10.2.2.2から外部グローバル10.10.10.10への変換の出力:
Ciscoasa#show xlate 2 in use, 2 most used Flags: D - DNS, i - dynamic, r - portmap, s - static, I - identity, T - twice TCP PAT from inside:10.2.2.2/1429 to any:10.10.10.10/64768 flags ri idle 62:33:57 timeout 0:00:30 TCP PAT from inside:10.5.5.5/1429 to any:10.10.10.11/64768 flags ri idle 62:33:57 timeout 0:00:30
10.10.10.10 のグローバル IP アドレスに対する変換をクリアします。
Ciscoasa# clear xlate global 10.10.10.10
この例では、Inside の 10.2.2.2 から Outside のグローバルな 10.10.10.10 への変換がなくなります。
Ciscoasa#show xlate 1 in use, 2 most used Flags: D - DNS, i - dynamic, r - portmap, s - static, I - identity, T - twice TCP PAT from inside:10.5.5.5/1429 to any:10.10.10.11/64768 flags ri idle 62:33:57 timeout 0:00:30
syslog を使用すると、ASA に関する問題をトラブルシューティングできます。Cisco では、ASA Firewall Syslog Server(PFSS)と呼ばれる Windows NT 対応の syslog サーバを無償で提供しています。PFSSは、Cisco Technical Support & Downloadsからダウンロードできます。
その他の複数のベンダーでは、Windows 2000やWindows XPなど、さまざまなWindowsプラットフォーム用のsyslogサーバを提供しています。UNIX および Linux では、ほとんどのマシンで syslog サーバがデフォルトでインストールされています。
syslog サーバを設定するときは、ASA から syslog サーバにログが送信されるように ASA を設定してください。
以下に、いくつかの例を示します。
logging on
logging host <ip_address_of_syslog_server>
logging trap debugging
注:この例では、デバッグ(レベル7)とより重要なsyslogをsyslogサーバに送信するようにASAを設定します。これらの ASA ログは最も詳細なログであるため、問題のトラブルシューティングを行うときにのみ使用してください。通常の運用では、ログ レベルを警告(レベル 4)またはエラー(レベル 3)に設定してください。
パフォーマンスが低下する問題がある場合は、テキスト ファイルの syslog を開き、パフォーマンスの問題に関係する送信元 IP アドレスを探します(UNIX を使用している場合は、syslog を grep して送信元 IP アドレスを探せます)。 外部サーバが TCP ポート 113(Identification Protocol(Ident)の場合)で内部 IP アドレスへのアクセスを試みているものの、ASA がパケットを拒否していることを示すメッセージをチェックします。メッセージは次の例のようになります。
%ASA-2-106001: Inbound TCP connection denied from 10.64.10.2/35969 to 192.168.110.179/113 flags SYN
このメッセージが表示された場合は、 service resetinbound
コマンドをASAに発行します。ASAはサイレントモードでパケットをドロップしません。代わりに、このコマンドを使用すると、セキュリティポリシーによって拒否された着信接続がASAによってすぐにリセットされます。サーバでは、Ident パケットの TCP 接続がタイムアウトするのを待つのではなく、ただちにリセット パケットが受信されるようになります。
企業への導入に推奨される方法は、SNMPを使用してCisco ASAのパフォーマンスを監視することです。Cisco ASAでは、SNMPバージョン1、2c、および3でこれをサポートしています。
セキュリティ アプライアンスを設定して、ネットワーク管理サーバ(NMS)にトラップを送信したり、NMS を使用して、セキュリティ アプライアンスの MIB を参照することができます。MIB は定義の集合であり、セキュリティ アプライアンスは定義ごとに値のデータベースを保持します。詳細については、『CLI 8.4および8.6を使用したCisco ASA 5500シリーズコンフィギュレーションガイド』を参照してください。
Cisco ASA 対応のサポートされているすべての MIB は、『ASA の MIB サポート一覧』で確認できます。次のMIBは、パフォーマンスを監視する際に役立ちます。
ASA でパフォーマンスが低下する場合は、ASA が使用している外部アドレスに対応した Domain Name System Pointer(DNS PTR)レコード(逆 DNS ルックアップ レコードとも呼ばれます)が、権威 DNS サーバ上にあることを確かめてください。このレコードには、グローバル ネットワーク アドレス変換(NAT)プール(または、インターフェイスでオーバーロードしている場合は ASA Outside インターフェイス)内のすべてのアドレスと、すべてのスタティック アドレス、および内部アドレス(それらのアドレスで NAT を使用していない場合)が含まれます。File Transfer Protocol(FTP;ファイル転送プロトコル)やTelnetサーバなどの一部のアプリケーションでは、逆DNSルックアップを使用して、ユーザの送信元と有効なホストかどうかを判別できます。逆 DNS ルックアップが解決しない場合は要求がタイムアウトするため、パフォーマンスが低下します。
これらのホストにPTRレコードが存在することを確認するには、 nslookup
PCまたはUNIXマシンからコマンドを発行します。インターネットへの接続に使用するグローバルIPアドレスを含めます。
例
% nslookup 192.168.219.25 10.219.133.198.in-addr.arpa name = www.cisco.com.
そのIPアドレスに割り当てられたデバイスのDNS名を含む応答を受信する必要があります。応答がない場合は、DNS の管理者に連絡し、自分の各グローバル IP アドレスに対応した PTR レコードを追加するように依頼してください。
インターフェイスでのオーバーラン
トラフィック バーストが発生している場合、バーストが NIC の FIFO バッファまたは受信リング バッファのバッファリング容量を超えると、パケットがドロップされる可能性があります。フロー制御のポーズフレームを有効にすると、この問題を軽減できます。ポーズ(XOFF)および XON フレームは、FIFO バッファ使用量に基づいて、NIC ハードウェアによって自動的に生成されます。バッファ使用量が高ウォーター マークを超えると、ポーズ フレームが送信されます。フロー制御用のポーズ(XOFF)フレームをイネーブルにするには、次のコマンドを使用します。
hostname(config)#interface tengigabitethernet 1/0 hostname(config-if)#
flowcontrol send on
「 show cpu usage
コマンドを使用して、ASA CPUにかかるトラフィックの負荷を調べます。トラフィックのピーク時、あるいはネットワークのサージや攻撃の発生時には、CPU 使用率が急激に上昇することがあります。
ASAは単一のCPUを使用してさまざまなタスクを処理します。たとえば、パケットを処理し、デバッグメッセージをコンソールに出力します。プロセスにはそれぞれに目的があり、他のプロセスよりも多くの CPU 時間を必要とするプロセスもあります。CPUを最も多く使用するプロセスはおそらく暗号化です。そのため、ASAが暗号化されたトンネルを通じて大量のトラフィックを送信する場合は、より高速なASA、つまりVPN 3000などの専用VPNコンセントレータを検討する必要があります。VAC は、ASA の CPU から暗号化と復号化の負荷を取り除き、カード上のハードウェアで実行します。これにより、ASA でトリプル DES(168 ビット暗号化)を使用する 100 Mbps のトラフィックを暗号化/復号化することが可能になります。
大量のシステム リソースを消費する可能性のあるもう 1 つのプロセスとして、ロギングがあります。この理由から、ASA のコンソール、モニタ、およびバッファのロギングを無効にすることを推奨します。問題のトラブルシューティングを行う際にはこれらの処理を有効にしても構いませんが、日常の運用では(特に CPU の処理能力が不足している場合)無効にしてください。また、syslogまたはSimple Network Management Protocol(SNMP)ロギング(ロギング履歴)をレベル5(通知)以下に設定することも推奨されます。また、特定のsyslogメッセージIDを無効にするには、 no logging message
コマンドが表示されない場合もあります。
Cisco Adaptive Security Device Manager(ASDM)は、 Monitoring
時間の経過に伴うASAのCPU使用率を表示できるタブ。このグラフを使用して、ASA の負荷を判定できます。
「 show cpu usage
コマンドを使用して、CPU使用率の統計情報を表示できます。
例
Ciscoasa#show cpu usage CPU utilization for 5 seconds = 1%; 1 minute: 2%; 5 minutes: 1%
ASDMでのCPU使用率の表示
ASDM で CPU 使用率を表示するには、次の手順を実行します。
Monitoring > Properties > System Resources Graphics > CPU
ASDMでGraph Window Titleを選択します。次に、[Available Graphs] の一覧から [Add] をクリックして、必要なグラフを選択します。
出力の説明
次の表に、のフィールドの説明を示します。 show cpu usage
エラーが表示される場合があります。
フィールド |
説明 |
---|---|
CPU utilization for 5 seconds |
最後の 5 秒間の CPU 使用率。 |
1 minute |
CPU 使用率の 5 秒間のサンプルを最後の 1 分間で平均したもの。 |
5 分 |
CPU 使用率の 5 秒間のサンプルを最後の 5 分間で平均したもの。 |
「 show traffic
コマンドは、特定の期間にASAを通過するトラフィックの量を示します。この結果は、コマンドが最後に発行されてから経過した時間間隔に基づきます。正確な結果を得るには、 clear traffic
コマンドを発行する前に、1 ~ 10分待ってから、 show traffic
コマンドが表示されない場合もあります。また、 show traffic
コマンドを発行し直す前に1 ~ 10分待ちます。ただし、2番目のインスタンスからの出力のみが有効です。
コントローラ GUI または CLI を使用して show traffic
コマンドを発行して、ASAを通過するトラフィックの量を確認します。インターフェイスが複数ある場合、コマンドは最も多くのデータを送受信しているインターフェイスの判別に役立ちます。2つのインターフェイスを持つASAアプライアンスの場合、外部インターフェイスの着信トラフィックと発信トラフィックの合計は、内部インターフェイスの着信トラフィックと発信トラフィックの合計と等しくなる必要があります。
例
Ciscoasa#show traffic outside: received (in 124.650 secs): 295468 packets 167218253 bytes 2370 pkts/sec 1341502 bytes/sec transmitted (in 124.650 secs): 260901 packets 120467981 bytes 2093 pkts/sec 966449 bytes/sec inside: received (in 124.650 secs): 261478 packets 120145678 bytes 2097 pkts/sec 963864 bytes/sec transmitted (in 124.650 secs): 294649 packets 167380042 bytes 2363 pkts/sec 1342800 bytes/sec
いずれかのインターフェイスが定格スループットに近づいている場合、またはそれに達している場合は、より高速なインターフェイスにアップグレードするか、またはそのインターフェイスに対して流入または流出するトラフィックの量を制限する必要があります。そうしないと、パケットが廃棄される可能性があります。で説明したように、 show interface
このセクションでは、インターフェイスカウンタを調べてスループットを確認できます。
「 show perfmon
コマンドは、ASAが検査するトラフィックの量とタイプを監視するために使用されます。このコマンドは、1 秒あたりの変換(xlates)および接続(conn)の数を調べる唯一の手段です。接続はさらに TCP 接続と User Datagram Protocol(UDP; ユーザ データグラム プロトコル)接続とに分かれます。このコマンドが生成する出力については、「出力の説明」を参照してください。
例
PERFMON STATS Current Average Xlates 18/s 19/s Connections 75/s 79/s TCP Conns 44/s 49/s UDP Conns 31/s 30/s URL Access 27/s 30/s URL Server Req 0/s 0/s TCP Fixup 1323/s 1413/s TCPIntercept 0/s 0/s HTTP Fixup 923/s 935/s FTP Fixup 4/s 2/s AAA Authen 0/s 0/s AAA Author 0/s 0/s AAA Account 0/s 0/s
出力の説明
次の表に、のフィールドの説明を示します。 show perfmon
エラーが表示される場合があります。
フィールド | 説明 |
---|---|
Xlates |
1 秒間に生成された変換の数 |
接続 |
1 秒間に確立された接続の数 |
TCP Conns |
1 秒あたりの TCP 接続の数 |
UDP Conns |
1 秒あたりの UDP 接続の数 |
URL Access |
1 秒間にアクセスされた URL(Web サイト)の数 |
URL Server Req |
WebsenseおよびN2H2に1秒あたりに送信される要求(必須) |
TCP Fixup |
ASA が 1 秒間に転送する TCP パケットの数 |
TCPIntercept |
スタティックに設定されている初期制限を超えた、1 秒あたりの SYN パケットの数 |
HTTP Fixup |
1秒あたりのポート80宛てのパケット数(UDPポート80) |
FTP Fixup |
1 秒間に検出された FTP コマンドの数 |
AAA Authen |
1 秒あたりの認証要求の数 |
AAA Author |
1 秒あたりの認可要求の数 |
AAA Account |
1 秒あたりのアカウンティング要求の数 |
また、 show cpu usage
コマンドを使用して、 show blocks
コマンドを発行して、ASAが過負荷状態になっているかどうかを確認します。
パケットブロック(1550および16384バイト)
ASA のインターフェイスに到着したパケットは入力インターフェイス キューに入れられ、最終的に OS に渡されてブロックに格納されます。イーサネット パケットの場合は 1550 バイトのブロックが使用されます。パケットが 66 MHz ギガビット イーサネット カードに到達した場合は 16384 バイトのブロックが使用されます。ASA は、アダプティブ セキュリティ アルゴリズム(ASA)に基づいてパケットを許可するか拒否するかを判断し、パケットを処理してから、発信インターフェイスの出力キューに渡します。ASA がトラフィックの負荷をサポートできない場合は、使用可能な 1550 バイト ブロック(66 MHz GE の場合は 16384 バイト ブロック)の数が 0 に近づきます(コマンド出力の CNT カラムに示されます)。CNT カラムが 0 になると、ASA は 8192 個を上限として、より多くのブロックを割り当てようとします。使用可能なブロックがなくなると、ASA はパケットを廃棄します。
フェールオーバー ブロックおよび syslog ブロック(256 バイト)
256 バイト ブロックは、主にステートフル フェールオーバー メッセージ用に使用されます。アクティブ ASA はパケットを生成してスタンバイ ASA に送り、変換テーブルおよび接続テーブルを更新します。バーストトラフィックが発生している間は、高い割合の接続が作成または破棄されるため、使用可能な256バイトブロックの数が0になることがあります。この低下は、1 つ以上の接続がスタンバイ ASA に対して更新されていないことを示します。この場合、ステートフル フェールオーバー プロトコルによって、失われた変換または接続が次の機会に捕捉されるため、通常このような状態は許容されます。ただし、256 バイト ブロックの CNT カラムが長い間 0 または 0 付近に留まっている場合は、ASA が処理している 1 秒あたりの接続数が原因で、ASA は変換テーブルおよび接続テーブルの同期を維持できません。この問題が絶えず発生する場合は、ASA をより高速なモデルにアップグレードしてください。
ASA から送出される syslog メッセージも 256 バイト ブロックを使用しますが、これらは通常 256 バイト ブロックのプールを使い切るほど大量に送出されることはありません。CNT カラムで 256 バイト ブロックの数が 0 付近を示している場合は、ログをデバッグ(レベル 7)で syslog サーバに記録していないかどうかを確かめます。これは ASA 設定の logging trap 行に示されます。デバッグ目的で追加情報が必要な場合を除き、ロギングを通知(レベル5)以下に設定することをお勧めします。
例
Ciscoasa#show blocks SIZE MAX LOW CNT 4 1600 1597 1600 80 400 399 400 256 500 495 499 1550 1444 1170 1188 16384 2048 1532 1538
出力の説明
この表では、 show blocks
エラーが表示される場合があります。
カラム |
説明 |
---|---|
SIZE |
ブロック プールのサイズ(バイト)。それぞれのサイズは、特定のタイプを表しています。 |
MAX |
指定したバイト ブロックのプールで使用可能なブロックの最大数。起動時に、最大限のブロック数がメモリから切り分けられます。通常、最大ブロック数は変化しません。例外として、256 バイトおよび 1550 バイトのブロックでは、適応型セキュリティ アプライアンスが必要なときにさらに多くのブロックを動的に作成することが可能で、最大 8192 個まで作成できます。 |
LOW |
低基準値。この数は、適応型セキュリティ アプライアンスの電源がオンになった時点、またはブロックが(clear blocks コマンドで)最後にクリアされた時点から、このサイズの使用可能なブロックが最も少なくなったときの数を示しています。LOW カラムが 0 である場合は、先行のイベントでメモリがいっぱいになったことを示します。 |
CNT |
特定のサイズのブロック プールで現在使用可能なブロックの数。CNT カラムが 0 である場合は、メモリが現在いっぱいであることを意味します。 |
次の表に、ISEのSIZE行の値を示します。 show blocks
エラーが表示される場合があります。
SIZE の値 |
説明 |
---|---|
0 |
dupb ブロックで使用されます。 |
4 |
DNS、ISAKMP、URL フィルタリング、uauth、TFTP、TCP モジュールなどのアプリケーションの既存ブロックを複製します。また、このサイズのブロックは、通常はドライバにパケットを送信するコードなどで使用できます。 |
80 |
TCP 代行受信で確認応答パケットを生成するために、およびフェールオーバー hello メッセージに使用されます。 |
256 |
ステートフルフェールオーバーの更新、syslogロギング、およびその他のTCP機能に使用されます。これらのブロックは、主にステートフル フェールオーバーのメッセージに使用されます。アクティブ適応型セキュリティ アプライアンスはパケットを生成してスタンバイ適応型セキュリティ アプライアンスに送り、変換テーブルおよび接続テーブルを更新します。バーストトラフィックでは、高い割合の接続が作成または破棄されるため、使用可能なブロックの数が0になることがあります。この状況は、1 つ以上の接続がスタンバイ適応型セキュリティ アプライアンスに対して更新されていないことを示します。ステートフルフェールオーバープロトコルは、失われた変換または接続を次回に捕捉します。256バイトブロックのCNTカラムが長い間0または0付近に留まっている場合、適応型セキュリティアプライアンスで処理される1秒あたりの接続数が原因で、適応型セキュリティアプライアンスでは変換テーブルと接続テーブルの同期を維持することが困難になります。適応型セキュリティ アプライアンスから送出される syslog メッセージもまた 256 バイト ブロックを使用しますが、これらは通常 256 バイト ブロックのプールを使い切るほど大量に送出されることはありません。CNT カラムで 256 バイト ブロックの数が 0 付近を示している場合は、ログをデバッグ(レベル 7)で syslog サーバに記録していないかどうかを確かめます。これは、適応型セキュリティ アプライアンス設定の logging trap 行に示されます。デバッグ目的で追加情報が必要な場合を除き、ロギングは通知(レベル5)以下に設定することをお勧めします。 |
1550 |
適応型セキュリティアプライアンスを介して処理するイーサネットパケットを格納するために使用されます。パケットが適応型セキュリティアプライアンス(ASA)インターフェイスに入ると、入力インターフェイスキューに配置され、オペレーティングシステムに渡されて、ブロックに配置されます。適応型セキュリティアプライアンスは、セキュリティポリシーに基づいてパケットを許可するか拒否するかを決定し、パケットを処理して発信インターフェイスの出力キューに渡します。適応型セキュリティアプライアンスがトラフィックの負荷に追いつくのに苦労している場合、使用可能なブロックの数は、コマンド出力のCNTカラムに示されているように0に近い位置に置くことができます。CNT カラムが 0 になると、適応型セキュリティ アプライアンスは 8192 個を上限として、より多くのブロックを割り当てようとします。使用可能なブロックがなくなると、適応型セキュリティ アプライアンスはパケットをドロップします。 |
16384 |
64 ビット 66 MHz のギガビット イーサネット カード(i82543)にのみ使用されます。イーサネット パケットの詳細については、1550 の説明を参照してください。 |
2048 |
制御の更新に使用される制御フレームまたはガイド付きフレーム。 |
「 show memory
コマンドは、ASAの物理メモリ(RAM)の合計と、現在使用可能なバイト数を表示します。この情報を使用するには、まず ASA がメモリを使用する方法を理解する必要があります。ASA は、ブート時に OS をフラッシュから RAM にコピーし、RAM から OS を実行します(ルータとまったく同様です)。次に、ASA は自身のスタートアップ コンフィギュレーションをフラッシュからコピーして RAM に格納します。最後に、ASAはRAMを割り当てて、で説明されているブロックプールを作成します show blocks
。この割り当てが完了すると、ASA で追加の RAM が必要になるのは、コンフィギュレーションのサイズが増えた場合だけです。このほか、ASA は変換エントリと接続エントリも RAM に格納します。
通常の動作中は、ASAの空きメモリはほとんど変更されないはずです。通常、メモリ不足になる必要があるのは、攻撃を受け、数十万の接続がASAを通過する場合だけです。接続を確認するには、 show conn count
コマンドを使用して、ASAを経由する接続の現在数と最大数を表示します。ASA がメモリ不足になると、最終的に ASA はクラッシュします。クラッシュが発生する前に、syslog(%ASA-3-211001)にメモリ割り当てエラーメッセージが表示されることがあります。
攻撃を受けているためにメモリが不足している場合は、シスコテクニカルサポートチームにお問い合わせください。
例
Ciscoasa# show memory Free memory: 845044716 bytes (79%) Used memory: 228697108 bytes (21%) ------------- ---------------- Total memory: 1073741824 bytes (100%)
「 show xlate count
コマンドは、ASAを介した変換の現在および最大数を表示します。変換とは内部アドレスから外部アドレスへのマッピングで、1 対 1 のマッピング(Network Address Translation(NAT; ネットワーク アドレス変換)と同じ)または多数対 1 のマッピング(Port Address Translation(PAT; ポート アドレス変換)と同じ)になります。このコマンドは、 show xlate
コマンドを使用してASA経由の各変換を出力します。コマンド出力に表示される「in use」の変換は、コマンドの発行時にASA内でアクティブな変換の数を示します。「most used」は、ASAの電源オン以降にASA上で確認された変換の最大数を示します。
注:1つのホストは、さまざまな宛先への複数の接続を持つことができますが、変換は1つだけです。xlate のカウントが内部ネットワークのホスト数よりも極端に多い場合には、内部ホストのいずれかが侵入されている可能性があります。侵入された内部ホストは、送信元アドレスをスプーフィングして ASA からパケットを送出します。
注:vpnclient設定が有効で、内部ホストがDNS要求を送信すると、 show xlate
コマンドは、スタティック変換の複数のxlateをリストできます。
例
Ciscoasa#
show xlate count 84 in use, 218 most used
Ciscoasa(config)#show xlate 3 in use, 3 most used Flags: D - DNS, d - dump, I - identity, i - inside, n - no random, o - outside, r - portmap, s - static TCP PAT from inside:10.1.1.15/1026 to outside:192.168.49.1/1024 flags ri idle 62:33:57 timeout 0:00:30 UDP PAT from 10.1.1.15/1028 to outside:192.168.49.1/1024 flags ri idle 62:33:57 timeout 0:00:30 ICMP PAT from inside:10.1.1.15/21505 to outside:192.168.49.1/0 flags ri idle 62:33:57 timeout 0:00:30
最初のエントリは、Inside ネットワークのホスト ポート(10.1.1.15, 1026)から Outside ネットワークのホスト ポート(192.168.49.1, 1024)への TCP PAT です。「r」というフラグは、変換がポート アドレス変換であることを示しています。「i」というフラグは、変換が Inside アドレス ポートに適用されることを示します。
2番目のエントリは、内部ネットワークのホストポート(10.1.1.15、1028)から外部ネットワークのホストポート(192.168.49.1、1024)へのUDPポートアドレス変換です。「r」というフラグは、変換がポート アドレス変換であることを示しています。「i」というフラグは、変換が Inside アドレス ポートに適用されることを示します。
3番目のエントリは、内部ネットワークのホストICMP-id(10.1.1.15, 21505)から外部ネットワークのホストICMP-id(192.168.49.1, 0)へのICMPポートアドレス変換です。「r」というフラグは、変換がポート アドレス変換であることを示しています。「i」というフラグは、変換が Inside アドレス ICMP ID に適用されることを示します。
Inside アドレス フィールドは、よりセキュアなインターフェイスからセキュアではないインターフェイスに横断するパケットの送信元アドレスが示されます。逆に、よりセキュアではないインターフェイスからセキュアなインターフェイスに横断するパケットでは、宛先アドレスが示されます。
「 show conn count
コマンドは、ASAを経由する接続の現在および最大数を表示します。「接続」とは、内部アドレスから外部アドレスへのレイヤ 4 情報のマッピングです。ASA が TCP セッションの SYN パケットを受信するか、または UDP セッションの最初のパケットが到達すると、接続が作成されます。TCP セッション ハンドシェイクがクローズするとき、または UDP セッションでタイムアウトが発生したときに、ASA が最後の ACK パケットを受信すると、接続が削除されます。
接続カウントが非常に高い(通常の50 ~ 100倍)場合は、攻撃を受けていることを示しています。 show memory
コマンドを発行して、高い接続カウントによってASAのメモリ不足が発生していないことを確認します。攻撃を受けている場合は、スタティック エントリあたりの最大接続数を制限できます。最大初期接続数を制限することも可能です。これにより、内部サーバが攻撃にさらされる事態を回避できます。詳細については、『CLI、8.4および8.6を使用したCisco ASA 5500シリーズ設定ガイド』を参照してください。
例
Ciscoasa#show conn count 2289 in use, 44729 most used
「 show interface
コマンドは、デュプレックスのミスマッチの問題とケーブルの問題を判別するのに役立ちます。また、インターフェイスがオーバーラン状態かどうかを詳しく調べる場合にも役立ちます。ASA が CPU のキャパシティをほとんど使い切ると、1550 バイト ブロックの数が 0 に近づきます(66 MHz ギガビット イーサネット カードの場合は 16384 バイト ブロックの数を見ます)。 また、別の指標として、インターフェイスの「no buffer」の増加が見られます。no buffer メッセージは、パケットに使用できるブロックがないためにパケットが廃棄されたことにより、インターフェイスがパケットを ASA OS に送信できないことを示します。no bufferレベルの増加が定期的に発生する場合は、 show proc cpu
コマンドを発行して、ASAのCPU使用率を確認します。大きいトラフィック負荷のために CPU 使用率が高い場合は、十分な負荷の処理能力を持つ、より高性能な ASA にアップグレードします。
パケットが初めてインターフェイスに到達すると、パケットは入力ハードウェア キューに置かれます。入力ハードウェア キューがいっぱいになると、パケットは入力ソフトウェア キューに置かれます。パケットは入力キューから渡され、1550 バイト ブロック(66 MHz ギガビット イーサネット インターフェイスの場合は 16384 バイト ブロック)に格納されます。続いて ASA によってパケットの出力インターフェイスが決定され、パケットが該当するハードウェア キューに置かれます。ハードウェア キューがいっぱいになると、パケットは出力ソフトウェア キューに置かれます。いずれかのソフトウェア キューの最大ブロック数が大きくなると、インターフェイスがオーバーラン状態になります。たとえば、ASA に到達するトラフィックが 200 Mbps で、それらすべてが単一の 100 Mbps インターフェイスから送出される場合、発信インターフェイスの出力ソフトウェア キューは高い値を示し、インターフェイスが大量のトラフィックを処理できないことを示します。このような状況が起きている場合は、より高速なインターフェイスにアップグレードしてください。
例
Ciscoasa#show interface Interface GigabitEthernet0/1 "inside", is up, line protocol is up Hardware is i82546GB rev03, BW 1000 Mbps, DLY 10 usec Auto-Duplex(Full-duplex), Auto-Speed(100 Mbps) Input flow control is unsupported, output flow control is unsupported MAC address 0013.c480.b2b8, MTU 1500 IP address 192.168.17.4, subnet mask 255.255.255.0 311981 packets input, 20497296 bytes, 0 no buffer Received 311981 broadcasts, 157 runts, 0 giants 379 input errors, 107 CRC, 273 frame, 0 overrun, 0 ignored, 0 abort 0 pause input, 0 resume input 0 L2 decode drops 121 packets output, 7744 bytes, 0 underruns 0 pause output, 0 resume output 0 output errors, 0 collisions, 1 interface resets 0 late collisions, 0 deferred 0 input reset drops, 0 output reset drops, 0 tx hangs input queue (blocks free curr/low): hardware (255/249) output queue (blocks free curr/low): hardware (255/254)
また、インターフェイスにエラーがないかどうかも確認する必要があります。ラント、入力エラー、CRC、またはフレーム エラーが表示される場合は、デュプレックスの不一致が発生している可能性がありますケーブルにも問題がある可能性があります。二重モードに関する問題の詳細は、「速度と二重モードの設定」のセクションを参照してください。各エラー カウンタは、特定のエラーが原因でドロップされたパケットの数を表すことに注意してください。特定のカウンタが頻繁に増加している場合は、ASA のパフォーマンスが低下している可能性が高く、問題の根本的な原因を突きとめる必要があります。
インターフェイスカウンタを調べる際には、インターフェイスが全二重に設定されている場合は、コリジョン、レイトコリジョン、または遅延パケットが発生しないことに注意してください。逆に、インターフェイスが半二重に設定されている場合は、コリジョン、レイトコリジョン、遅延パケットの一部を受信する必要があります。コリジョン、レイトコリジョン、および遅延パケットの合計数は、入力および出力パケットカウンタの合計の10 %を超えることはできません。コリジョンがトラフィック合計の 10 % を超えている場合は、リンクが過剰に使用されており、全二重へのアップグレードか、またはより高速なもの(10 ~ 100 Mbps)へのアップグレードが必要です。10 %のコリジョンは、ASAがそのインターフェイスを通過するパケットの10 %をドロップすることを意味します。これらの各パケットは再送信する必要があります。
製品が影響を受けるかどうかを確認するには、このアドバイザリの「 interface
インターフェイスカウンタの詳細については、『Cisco ASA 5500シリーズ適応型セキュリティアプライアンスコマンドリファレンス』のコマンドを参照してください。
「 show processes
コマンドを実行すると、コマンドの実行時にASAで実行されているすべてのアクティブなプロセスが表示されます。この情報は、CPU 時間が過剰に与えられているプロセスと、CPU 時間がまったく与えられていないプロセスを判別する際に役立ちます。この情報を取得するには、 show processes
コマンドを2回発行します。各インスタンス間で約1分待機します。問題のプロセスについて、1 回目の出力で表示される Runtime 値から、2 回目の出力で表示される Runtime 値を差し引きます。この結果は、その時間内にプロセスに与えられた CPU 時間の量(ミリ秒)を示しています。プロセスによっては、特定の間隔で実行されるようにスケジューリングされているものや、処理すべき情報があるときにしか実行されないものがあります。すべてのプロセスの中で Runtime の値が最も大きいのは、おそらく 577poll プロセスです。577poll プロセスはイーサネット インターフェイスをポーリングし、それらのインターフェイスに処理する必要のあるデータがあるかどうかを調べています。
注:各ASAプロセスの調査は、このドキュメントの範囲外ですが、完全を期して簡単に説明します。ASAプロセスの詳細については、『ASA 8.3以降:パフォーマンスの問題の監視とトラブルシューティング』を参照してください。
要約すると、 show cpu usage
コマンドを発行して、ASAの負荷を特定します。出力は稼働平均であることに注意してください。ASAでは、稼働平均によって隠されたCPU使用率のスパイクが高くなる可能性があります。ASA の CPU 使用率が 80 % に達すると、ASA による遅延が徐々に増え、CPU 使用率がおよそ 90 % に達するまで増え続けます。CPU 使用率が 90 % を超えると、ASA はパケットのドロップを始めます。
CPU使用率が高い場合は、 show processes
コマンドを発行して、最もCPU時間を使用しているプロセスを識別します。この情報を使用して、CPU の使用率の高いプロセス(ロギングなど)が消費する時間を減らします。
CPU使用率が高くないにもかかわらず、パケットがまだドロップされていると考えられる場合は、 show interface
コマンドを発行して、おそらくデュプレックスのミスマッチが原因で発生する、ASAインターフェイスでのno buffersおよびcollisionsをチェックします。no buffer カウントが増えているにもかかわらず CPU 使用率が低い場合は、通過するトラフィックをインターフェイスがサポートできていません。
バッファに問題がない場合は、ブロックを調べます。現在のCNTカラムが show blocks
1550バイトブロック(66 MHz Gigカードの場合は16384バイトブロック)の出力は0に近く、ASAは非常にビジーであるためイーサネットパケットをドロップする可能性が最も高いです。この場合は、CPU の使用率が急激に上昇します。
ASA経由で新しい接続を確立するときに問題が発生した場合は、 show conn count
コマンドを発行して、ASA経由の現在の接続数を確認します。
現在のカウントが高い場合は、 show memory
ASAのメモリが不足していないことを確認するための出力です。メモリが少ない場合は、DHCPサーバとの接続の発信元を show conn
または show local-host
コマンドを発行して、ネットワークがサービス拒否攻撃を受けていないことを確認します。
他のコマンドを使用して、ASA を通過するトラフィックの量を測定することもできます。「 show traffic
コマンドは、インターフェイスごとの集約パケットとバイトを表示し、 show perfmon
トラフィックを、ASAが検査する異なるタイプに分類します。
改定 | 発行日 | コメント |
---|---|---|
2.0 |
24-Mar-2023 |
リンクと形式を更新。CCWアラートを修正。再認定。 |
1.0 |
09-Aug-2011 |
初版 |