VPNの接続の問題のトラブルシューティング方法

Printer Friendly Page

※この記事は以下の記事の日本語訳です。

How to Troubleshoot VPN Connectivity Issues

https://live.paloaltonetworks.com/t5/Management-Articles/How-to-Troubleshoot-VPN-Connectivity-Issues...

 

詳細

フェーズ1

  • ISPに関連する問題を除外するため、PAの外側のインターフェイスからピアのIPへpingし、ピアの外側のインターフェイス上でpingが有効になっていることを確認します。
  • セキュリティ要件によりpingがブロックされている場合は、もう一方のピアがMain/Aggresive モードのメッセージまたは DPD に応答しているかどうか確認します。それから、Monitorタブ配下のSystemログまたはikemgrログにてピアから "Are you there?" メッセージの応答があるかどうかを確認します。
  • IKE識別が正しく設定されていることを確認します。
  • IKEおよびIPSECアプリケーションを許可するポリシーが適切に配置されていることを確認します。通常、このポリシーは、PAに Clean-upルールが設定されていなければ不要です。もしClean-up ルールが設定されている場合は、このポリシーは通常、外側のzone から外側の zoneに対して設定されます。
  • プロポーザルが正しいことを確認します。もし正しくない場合、ミスマッチに関するログがSystemログで確認できます。もしくは、以下の CLIコマンドを使用して確認することができます。
    less mp-log ikemgr.log
  • 事前共有キーが正しいことを確認します。正しくない場合、ミスマッチに関するログがSystemログで確認できます。もしくは、以下の CLIコマンドを使用して確認することができます。
    less mp-log ikemgr.log
  • トラフィックを分析するためにパケットキャプチャを実施します。フィルタを使用してキャプチャされたトラフィックの範囲を絞ります。

役に立つCLIコマンド:

> show vpn ike-sa gateway <name>
> test vpn ike-sa gateway <name>
> debug ike stat

高度なCLIコマンド:

  • 詳細なログを確認するためには、ログ レベルを "debug" にします。
> debug ike global on debug
> less mp-log ikemgr.log
  • Main/AggresiveおよびQuick モードのネゴシエーションを参照するために、パケットキャプチャを有効にしてこれらのネゴシエーションをキャプチャすることが可能です。Main モードのメッセージ 5、6以降、およびQuick モードの全てのパケットはデータのペイロードが暗号化されています。
> debug ike pcap on
> view-pcap no-dns-lookup yes no-port-lookup yes debug-pcap ikemgr.pcap
  • debugを停止します。
> debug ike pcap off 

パケット フィルタを設定してキャプチャすると、キャプチャ結果を調査対象のパケットのみに限定することができます。debug ike pcap on を実行すると、すべてのVPNトラフィックのキャプチャが参照できます。

 

NAT-Tが有効かどうかを確認するためには、Mainモードの第5、6メッセージから、パケットの送受信ポートが500から4500に変更されているかどうかを確認します。
ピアのベンダーIDが Palo Alto Networks デバイスでサポートされているかどうか、逆に、Palo Alto Networks デバイスのベンダーIDがピアのデバイスでサポートされているかどうかを確認します。

 

フェーズ2

  • ファイアウォールがトンネルをネゴシエートしていることを確認し、2つの一方向のSPIが存在することを確認します。
> show vpn ipsec-sa
> show vpn ipsec-sa tunnel <tunnel.name>
  • プロポーザルが正しいことを確認します。正しくない場合、ミスマッチに関するログが、Monitorタブ配下のSystemログで確認できます。もしくは以下のコマンドを使用して確認できます。
less mp-log ikemgr.log
  • PFSが両方のエンドで有効になっていることを確認します。正しくない場合、ミスマッチに関するログが、Monitorタブ配下のSystemログで確認できます。もしくは以下のコマンドを使用して確認できます。
less mp-log ikemgr.log
  • Proxy-IDの設定を確認します。この設定は通常トンネルが2つの Palo Alto Networks のファイアウォール間のトンネルの場合は必要ありませんが、ピアが別のベンダーの場合はIDの設定が必要です。正しくない場合、ミスマッチがSystemログで確認できます。もしくは以下のコマンドを使用して確認できます。
> less mp-log ikemgr.log
  • 役に立つCLIコマンド:
> show vpn flow name <tunnel.id/tunnel.name>
> show vpn flow name <tunnel.id/tunnel.name> | match bytes
  • カプセル化と非カプセル化のバイト数が増加しているかどうかを確認します。トラフィックがファイアウォールを通過していれば、カプセル化と非カプセル化の両方の値が増加しているはずです。
> show vpn flow name <tunnel.id/tunnel.name> | match bytes

もしカプセル化のバイト数が増加していて非カプセル化のバイト数が一定の場合は、ファイアウォールはパケットを送信していますが受信していません。

  • ポリシーがトラフィックをドロップしていないか、もしくは、PANの手前のポート変換デバイスがESPパケットをドロップしていないかを確認します。
> show vpn flow name <tunnel.id/tunnel.name> | match bytes

 

もし非カプセル化のバイト数が増加していてカプセル化のバイト数が一定の場合、ファイアウォールはパケットを受信していますが送信していません。

  • ポリシーがトラフィックをドロップしているか確認します。
> test routing fib-lookup virtual-router default ip <destination IP>
--------------------------------------------------
runtime route lookup
--------------------------------------------------
virtual-router:  default
destination:      10.5.1.1
result:          interface tunnel.1

show routing route
> test vpn ipsec-sa tunnel <name>

Advanced CLI commands:
> debug ike global on debug
> less mp-log ikemgr.log
> debug ike pcap on
> view-pcap no-dns-lookup yes no-port-lookup yes debug-pcap ikemgr.pcap
> debug ike pcap off

トンネルはアップしているがトラフィックがトンネルを通過していない場合、

  • セキュリティ ポリシーとルーティングを確認します。
  • ポートアドレス変換を行っているアップストリームのデバイスがあるか確認します。ESPは レイヤ3プロトコルなので、ESPパケットにはポート番号がありません。このようなデバイスが ESPパケットを受信すると、変換するポート番号が確認できないため、パケットをサイレントにドロップする可能性が高いです。
  • 必要に応じて debug packet filters、debug packet captures、debug packet logs を適用し、トラフィックがどこでドロップされているかを切り分けます。