キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
cancel
26853
閲覧回数
5
いいね!
0
コメント
Taisuke Nakamura
Cisco Employee
Cisco Employee

 

  

はじめに

本ドキュメントでは、ASAソフトウェアバージョン 8.3以降の、パケット処理順序(パケット処理フロー)と 各機能の処理負荷の目安について紹介します。

    • 処理順序を知ることで、問題箇所の切り分けに役立ちます
    • 処理負荷の目安を知ることは、パフォーマンス影響の予測に役立ちます
    • パケットトレーサで、処理順序と マッチした設定を確認できます


本ドキュメントは、ASA バージョン 9.3(3)2を用いて確認、作成をしております。



ASAソフトウェア パケット処理順序

ASAはデフォルトでTCPとUDPのステートフルインスぺクションに対応します。 inspect icmpコマンドの有効化により、ICMPのステートフルインスペクションにも対応します。

ASAはこれらのコネクションを生成・管理し、戻りのパケットを動的に許可します。


ASAに到達したパケットは、以下順番で処理されます。

既存コネクションの無い場合、"UN-NAT or Routing"に処理が受け渡されます。 なお、到達したのがTCPパケットで 既存コネクションの無い場合は、TCPのSYN以外はセキュリティドロップされ、ログに残ります。 TCPコネクションの確立には、TCP SYNの交換から開始する必要があるためです。

"UN-NAT or Routing"の処理段階で、Egress Interfaceの 仮決定を行います。 当情報を元に、後のACLチェックや、送信元アドレス変換(NAT)、Application Inspectionや、各種セキュリティチェックと、コネクションの生成を行います。

"Inspections & Security Checks"の処理段階では、TCPのシーケンス/確認応答番号やフラグの正しい連続性の確認や、特定通信(DNSやFTP、SMTPなど)の アプリケーションレイヤでの制御やセキュリティチェックを行います。 サービスモジュール(e.g. Firepower)を利用時は、当処理段階で連携し動作し、より高度なセキュリティ制御機能を提供します。

Egress Interfaceで、L3 Route Lookupによる Next-Hopの確認、及び、L2 Resolution(ARP解決)を行った後、パケットは転送されます。


既存コネクションのある場合でパケットを受信した場合、NATやACLのチェックはバイパスし処理されます。 つまり、既存コネクションのあるパケットは より高速に処理されます。

    
     

処理負荷の目安

処理負荷の目安は以下です。

ACLや NATの処理は、高速処理に最適化されていますが、処理テーブルのエントリを上から順にチェックするため、チェック対象が多いほど 処理負荷は少しずつ上昇します。 また、ACLやNATチェックの後、コネクションが生成されるため、つまりコネクション生成処理(や冗長構成時のコネクション同期)の負荷も発生します。

Application Inspectionや サービスモジュール(e.g. Firepower)の処理は、Deep Inspectionを行うため、処理負荷は より高くなります。

      
     

パケットトレーサ

パケットトレーサ ユーティリティを用いて、指定のIPアドレスとポートのパケットを 指定Interfaceで受信時の、パケット処理順序と、各処理段階でマッチした設定の簡易確認ができます。

パケットトレーサは、特殊なパケットをASA内部で生成し、実際の設定を用いて処理確認を行います。 その為、その処理結果は、show logや show nat detailなど各種ログに残ります。 実際のパケットで処理確認を行うため、信頼性の高い情報です。 生成された特殊パケットは、処理確認後に 速やかに破棄されます。

その為、パケットトレーサ ユーティリティは、処理順序の確認のほか、ACLや NAT、Routing、Modular Policy Framework(MPF)など 実設定の 簡易動作確認にも、大変有効です。

パケットトレーサ ユーティリティは、CLI もしくは ASDMから実行可能です。
   

<CLIから実行時>

  • コマンド書式
#簡易表示
packet-tracer input [if名] [tcp|udp] [送信元IP] [送信元ポート] [宛先IP] [宛先ポート]
#詳細な表示
packet-tracer input [if名] [tcp|udp] [送信元IP] [送信元ポート] [宛先IP] [宛先ポート] detailed
  • コマンド実行例
    送信元:192.168.10.1/1234 宛先:192.168.10.241/21 (=FTP疑似通信)のパケットを、insideインターフェイスで受信時の、シミュレーション結果
ASA# packet-tracer input inside tcp 192.168.10.1 1234 192.168.10.241 21

Phase: 1
Type: UN-NAT
Subtype: static
Result: ALLOW
Config:
object network IP-192.168.20.1
nat (outside,inside) static 192.168.10.241
Additional Information:
NAT divert to egress interface outside <--- 出力Interfaceの仮決定
Untranslate 192.168.10.241/21 to 192.168.20.1/21 <--- 宛先変換

Phase: 2
Type: ACCESS-LIST
Subtype: log
Result: ALLOW
Config:
access-group IN in interface inside
access-list IN extended permit ip any any <---- ACLチェック
Additional Information:

Phase: 3
Type: NAT
Subtype:
Result: ALLOW
Config:
object network NW-192.168.10.0
nat (inside,outside) dynamic interface
Additional Information:
Dynamic translate 192.168.10.1/1234 to 192.168.20.254/1234 <---- 送信元変換

   --- 略 ---

Phase: 7
Type: INSPECT
Subtype: inspect-ftp
Result: ALLOW
Config:
class-map inspection_default
match default-inspection-traffic
policy-map global_policy
class inspection_default
inspect ftp <--- FTP(tcp=21)のApplication Inspection処理にマッチ
service-policy global_policy global
Additional Information:

   --- 略 ---

Result:
input-interface: inside
input-status: up
input-line-status: up
output-interface: outside
output-status: up
output-line-status: up
Action: allow

         

<ASDMから実行時>

  • ASDMの上部メニュー Tools > Packet Tracer.. から実行


      
      

参考情報

ASA 8.2: Packet Flow through an ASA Firewall
  - ASAバージョン 8.2までのパケット処理順序
http://www.cisco.com/c/en/us/support/docs/security/asa-5500-x-series-next-generation-firewalls/113396-asa-packet-flow-00.html

ASA: ACLの処理順序について
https://supportforums.cisco.com/ja/document/12745226

ASA: NATルールタイプ別の処理の違いと 設定例
https://supportforums.cisco.com/ja/document/12482501

ASA: IP Routingと 処理順序について
https://supportforums.cisco.com/ja/document/12745341

Command Reference: packet-tracer
http://www.cisco.com/c/en/us/td/docs/security/asa/asa-command-reference/I-R/cmdref2/p1.html#pgfId-2129824

ファイアウォール トラブルシューティング
https://community.cisco.com/t5/-/-/ta-p/3161736

Firepower System and FTDトラブルシューティング
https://community.cisco.com/t5/-/-/ta-p/3161733

 

 

Getting Started

検索バーにキーワード、フレーズ、または質問を入力し、お探しのものを見つけましょう

シスコ コミュニティをいち早く使いこなしていただけるよう役立つリンクをまとめました。みなさんのジャーニーがより良いものとなるようお手伝いします