ASAでのVPN接続トラブルシューティング

 基本手順

  1. VPN接続のためにPingを送信
    ASAは通信がないとVPNセッションを確立させないのでどちらかのネットワーク上の
    PCから対向のネットワークのアドレスにPingを実行する。
  2. Phase 1の成否確認
    show crypto isakmp sa で相手側GWのIPアドレスがSA一覧にあがっているか
    確認する

    -> IKE peerにアドレスがあり、stateがMM_ACTIVEであれば正常

    失敗している場合は以下を確認
    • Pre-shared-key
    • 対向のIP Address
    • 暗号化アルゴリズム, ハッシュアルゴリズム, Diffie-hellmanグループ
     
  3.  Phase 2の成否確認
    show crypto ipsec sa peer [相手側GWアドレス] でIPSec SAを確認する

    ->1.でpingを打ったPCからpingを打った先へのアドレスに関連するStatsが表示
    されれば正常

    失敗している場合は以下を確認
    • Access-list (Proxy ID)
    • PFS グループ

詳細に失敗原因を調査したい場合は以下の手順でデバッグを実施。
※但し、デバッグを有効にすると機器に負荷がかかり、スループットが低下する可能性もあるため注意が必要

デバッグ手順

  1. ASAでデバッグを有効化する
    debug crypto isakmp [Number] を実行しVPN関係のメッセージを表示させる。
    ※Numberを大きくするほど細かくメッセージを出力する。
     最初は1(Default)で詳しく原因を調べる必要がでたら50くらいにする。
  2. VPN接続のためにPingを送信
  3. デバックメッセージで失敗している部分を特定し設定を確認
    経験上、以下が間違っていてつながらないことがある
    • Phase 1: Pre-shared-key, 対向のIP Address
    • Phase 2: Access-list (Proxy ID), PFSのグループ
    • その他: NATの例外設定 (nat0)