このトラブルシューティング ガイドは、Cloud VPN に関する一般的な問題のモニタリングと解決に役立ちます。
それぞれのステータス メッセージと IKE 暗号のリファレンスが示す意味については、リファレンス セクションをご覧ください。
ロギングとモニタリングの情報を確認するには、ログと指標の表示をご覧ください。
このページで使用する用語の定義については、Cloud VPN の主な用語をご覧ください。
エラー メッセージ
エラー メッセージを確認するには:
Google Cloud コンソールで、[VPN] ページに移動します。
ステータス アイコンが表示されている場合は、アイコンにカーソルを合わせると、エラー メッセージを確認できます。
多くの場合、エラー メッセージは問題の特定に役立ちます。問題を特定できない場合は、ログで詳細を確認してください。Google Cloud コンソールの [トンネルの詳細] ページで詳細なステータス情報を確認できます。
VPN ログ
Cloud VPN ログは Cloud Logging に保存されます。ロギングは自動的に行われるため、有効にする必要はありません。
接続のピア ゲートウェイ側のログの表示については、プロダクトのドキュメントをご覧ください。
多くの場合、ゲートウェイは正しく構成されますが、ホストとゲートウェイ間のピア ネットワークに問題があるか、ピア ゲートウェイと Cloud VPN ゲートウェイ間のネットワークに問題があります。
ログを確認する手順は次のとおりです。
Google Cloud コンソールで、[ログ エクスプローラ] ページに移動します。
ログでは次の情報を確認します。
- Cloud VPN ゲートウェイに構成されているリモートピア IP アドレスが正しいことを確認します。
- オンプレミス ホストからのトラフィックがピア ゲートウェイに到達していることを確認します。
- 2 つの VPN ゲートウェイ間で双方向のトラフィックが適切に送信されていることを確認します。VPN のログで、相手側の VPN ゲートウェイからの受信メッセージが記録されていることを確認します。
- 構成されている IKE のバージョンが、トンネルの両側で同じであることを確認します。
- 共有シークレットがトンネルの両側で同じであることを確認します。
- ピア VPN ゲートウェイが 1 対 1 の NAT の背後に置かれている場合、UDP トラフィックがピア VPN ゲートウェイのポート
500
と4500
に転送されるように NAT デバイスを適切に構成されていることを確認します。 - VPN ログに
no-proposal-chosen
エラーが表示される場合、Cloud VPN とピア VPN ゲートウェイの暗号セットが一致していなかったことを示します。IKEv1 では、暗号セットは正確に一致していなければなりません。IKEv2 では、各ゲートウェイによって少なくとも 1 つの共通の暗号が提示される必要があります。必ずサポートされている暗号を使用してピア VPN ゲートウェイを構成してください。 - トラフィックがトンネルを通過できるように、ピアおよび Google Cloud ルートとファイアウォール ルールが構成されていることを確認します。必要に応じてネットワーク管理者に相談してください。
特定の問題を確認するには、次のような文字列をログで検索します。
- [クエリビルダー] ペインに、次の表に示す高度なクエリのいずれかを入力して、特定のイベントを検索し、[クエリを実行] をクリックします。
必要に応じて [ヒストグラム] ペインで期間を調整し、そのペインで [実行] をクリックします。クエリにログ エクスプローラを使用する方法の詳細については、ログクエリの作成をご覧ください。
表示するアイテム Logging での検索 Cloud VPN がフェーズ 1(IKE SA)を開始 resource.type="vpn_gateway" ("initiating IKE_SA" OR "generating IKE_SA_INIT request")
Cloud VPN がリモートピアに接続できない resource.type="vpn_gateway" "establishing IKE_SA failed, peer not responding"
IKE(フェーズ 1)認証イベント resource.type="vpn_gateway" ("generating IKE_AUTH request" OR "parsed IKE_AUTH response")
IKE 認証の成功 resource.type="vpn_gateway" ("authentication of" AND "with pre-shared key successful")
フェーズ 1(IKE SA)の確立 resource.type="vpn_gateway" ("IKE_SA" AND "established between")
すべてのフェーズ 2(子 SA)イベント(鍵交換イベントを含む) resource.type="vpn_gateway" "CHILD_SA"
ピアがフェーズ 2 の鍵交換を要求 resource.type="vpn_gateway" detected rekeying of CHILD_SA
ピアがフェーズ 2(子 SA)の終了を要求 resource.type="vpn_gateway" received DELETE for ESP CHILD_SA
Cloud VPN がフェーズ 2(子 SA)の終了を要求 resource.type="vpn_gateway" sending DELETE for ESP CHILD_SA
Cloud VPN がフェーズ 2(子 SA)を終了(ピアに対するレスポンスなどで) resource.type="vpn_gateway" closing CHILD_SA
Cloud VPN がフェーズ 2 を終了 resource.type="vpn_gateway" CHILD_SA closed
リモートのトラフィック セレクタが一致しない resource.type="vpn_gateway" Remote traffic selectors narrowed
ローカルのトラフィック セレクタが一致しない resource.type="vpn_gateway" Local traffic selectors narrowed
接続
ping
を使用してオンプレミス システムと Google Cloud 仮想マシン(VM)インスタンス間の接続を確認する場合は、次の点を考慮してください。
Google Cloud ネットワークのファイアウォール ルールで ICMP トラフィックの受信が許可されていることを確認します。暗黙の下り(外向き)許可ルールでは、このルールがオーバーライドされていない限り、ご使用のネットワークからの送信 ICMP トラフィックが許可されます。同様に、オンプレミスのファイアウォール ルールも、受信と送信の ICMP トラフィックを許可するように構成されていることを確認します。
内部 IP アドレスを使用して、Google Cloud VM とオンプレミス システムに ping を実行します。VPN ゲートウェイの外部 IP アドレスの ping では、トンネルを通過する接続はテストされません。
オンプレミスから Google Cloud への接続をテストする場合は、VPN ゲートウェイではなくネットワーク上のシステムから ping を開始することをおすすめします。適切なソース インターフェースが設定されていればゲートウェイからの ping も可能ですが、ご使用のネットワーク上のインスタンスから ping を行うと、ファイアウォール構成をテストできるという利点があります。
Ping
テストでは、TCP ポートや UDP ポートが開いているかどうかは検証されません。システムの基本的な接続が確立されたら、ping
を使用して追加のテストを実行できます。
ネットワーク スループットを計算する
Google Cloud 内およびオンプレミスまたはサードパーティのクラウド ロケーションへのネットワーク スループットの計算ができます。このリソースには、結果の分析方法、ネットワーク パフォーマンスに影響する変数についての説明、トラブルシューティングのヒントなどが記載されています。
一般的な問題と解決策
トンネルが定期的に数秒間停止する
デフォルトでは、Cloud VPN では既存のセキュリティ アソシエーション(SA)が期限切れになる前に交換用の SA がネゴシエートされます(鍵交換とも言います)。ピア VPN ゲートウェイでは鍵交換が行われない場合があります。その場合、既存の SA の削除後に初めて新しい SA がネゴシエートされるため、中断が発生します。
ピア ゲートウェイで鍵交換が行われたかどうかを確認するには、Cloud VPN のログを表示します。接続が切断され、Received SA_DELETE
ログメッセージの直後に再確立された場合、オンプレミス ゲートウェイでは鍵交換は行われていません。
トンネルの設定を確認するには、サポートされている IKE の暗号のドキュメントをご覧ください。特に、フェーズ 2 のライフタイムが正しいことと、Diffie-Hellman(DH)グループが推奨値のいずれかに設定されていることを確認してください。
Cloud VPN トンネル内のイベントを検索するには、Logging 高度なログフィルタを使用します。たとえば、次のような高度なフィルタでは、DH グループの不一致が検索されます。
resource.type="vpn_gateway" "Peer proposal: DOES NOT HAVE DIFFIE_HELLMAN_GROUP"
オンプレミス ゲートウェイが NAT の背後にある場合
Cloud VPN は NAT の背後にあるオンプレミス(ピア)VPN ゲートウェイに対応できます。これを可能にするのが UDP のカプセル化と NAT-T です。この場合、サポートされるのは 1 対 1 の NAT のみです。
接続が機能する VM と機能しない VM がある
ping
や traceroute
などのトラフィック送信方法が、特定の VM からオンプレミス システムに送信するときや、特定のオンプレミス システムから特定の Google Cloud VM に送信するときにだけ機能する場合、送信するトラフィックが Google Cloud とオンプレミスのどちらのファイアウォール ルールでもブロックされていないことが確認されていれば、トラフィック セレクタによって特定の送信元または送信先が除外されている可能性があります。
トラフィック セレクタは VPN トンネルの IP アドレスの範囲を定義します。実装されているほとんどの VPN では、ルートが決められるだけでなく、次の両方の条件を満たす場合にのみ、パケットがトンネルを通って渡されます。
- パケットの送信元が、ローカル トラフィック セレクタで指定された IP 範囲に入っている。
- パケットの送信先が、リモート トラフィック セレクタで指定された IP 範囲に入っている。
トラフィック セレクタは、ポリシーベースのルーティングまたはルートベースの VPN を使用して Classic VPN トンネルを作成するときに指定します。また、対応するオンプレミス トンネルの作成時にも指定します。
ベンダーによっては、ローカル トラフィック セレクタの類義語として、ローカル プロキシ、ローカル暗号化ドメイン、左側のネットワークなどを使用する場合があります。同様に、リモート トラフィック セレクタの類義語には、リモート プロキシ、リモート暗号化ドメイン、右側のネットワークがあります。
Classic VPN トンネルのトラフィック セレクタを変更するには、トンネルを削除して、再作成する必要があります。これらの操作が必要なのは、トラフィック セレクタがトンネルの作成処理に組み込まれていて、トンネルを後から編集できないためです。
トラフィック セレクタを定義する場合は、次のガイドラインを参考にしてください。
- ピア ネットワークと共有する Virtual Private Cloud(VPC)ネットワーク内のすべてのサブネットを、Cloud VPN トンネルのローカル トラフィック セレクタの対象に含める必要があります。
- VPC ネットワークと共有するすべてのオンプレミス サブネットを、ピア ネットワークのローカル トラフィック セレクタの対象に含める必要があります。
- 各 VPN トンネルでは、トラフィック セレクタに次の関係が存在します。
- Cloud VPN ローカル トラフィック セレクタは、ピア VPN ゲートウェイのトンネルのリモート トラフィック セレクタと一致する必要があります。
- Cloud VPN リモート トラフィック セレクタは、ピア VPN ゲートウェイ上のトンネルのローカル トラフィック セレクタと一致する必要があります。
リージョンが異なる VM 間のネットワーク レイテンシの問題
レイテンシやパケットロスの問題を確認するには、Google Cloud ネットワーク全体のパフォーマンスをモニタリングします。Google Cloud のパフォーマンス ビューでは、パフォーマンス ダッシュボードに Google Cloud 全体のパケットロスとレイテンシの指標が表示されます。これらの指標からは、プロジェクト パフォーマンス ビューの問題がプロジェクトに固有のものかどうか確認できます。詳細については、パフォーマンス ダッシュボードの使用をご覧ください。
HA VPN ゲートウェイを非 HA VPN ゲートウェイに接続できない
Google Cloud は、HA VPN ゲートウェイと Google Cloud でホストされている非 HA VPN ゲートウェイ間のトンネル接続の作成をサポートしていません。この制限には、Classic VPN ゲートウェイと Compute Engine VM で実行されるサードパーティ VPN ゲートウェイが含まれます。
これを行うと、Google Cloud から次のようなエラー メッセージが返されます。
You cannot provide an interface with an IP address owned by Google Cloud. You can only create tunnels from an HA gateway to an HA gateway or create tunnels from an HA gateway to an ExternalVpnGateway.
このエラーを回避するには、HA VPN ゲートウェイを次のいずれかに接続する VPN トンネルを作成します。
- 別の HA VPN ゲートウェイ
- Google Cloud でホストされていない外部 VPN ゲートウェイ
- Compute Engine 仮想マシン(VM)インスタンス
HA VPN 経由で外部の宛先に接続できない
HA VPN ゲートウェイを使用する場合、Google Cloud リソースは VPN トンネルを使用して、ピアルーターからアドバタイズされた宛先にのみ接続します。
リモート宛先に接続できない場合は、宛先の IP 範囲をピアルーターがアドバタイズしていることを確認してください。
IPv6 トラフィックがルーティングされない
IPv6 ホストに接続する際に問題が発生した場合は、次のようにします。
- IPv4 ルートが正しくアドバタイズされていることを確認します。IPv4 ルートがアドバタイズされていない場合は、BGP ルートとルート選択のトラブルシューティングをご覧ください。
- ファイアウォール ルールを調べて、IPv6 トラフィックを許可していることを確認します。
- VPC ネットワークとオンプレミス ネットワークで IPv6 サブネット範囲が重複していないことを確認します。重複するサブネットの範囲を確認するをご覧ください。
- Cloud Router で学習したルートの割り当てや上限を超過していないかどうかを判断します。学習したルートの割り当てを超過すると、IPv4 接頭辞の前に IPv6 接頭辞がドロップされます。割り当てと上限を確認するをご覧ください。
- IPv6 構成を必要とするすべてのコンポーネントが正しく構成されていることを確認します。
- VPC ネットワークで、
--enable-ula-internal-ipv6
フラグを指定した内部 IPv6 アドレスの使用が有効になっている。 - VPC サブネットが、
IPV4_IPV6
スタックタイプを使用するように構成されている。 - VPC サブネットの
--ipv6-access-type
がINTERNAL
に設定されている。 - サブネット上の Compute Engine VM が IPv6 アドレスで構成されている。
- HA VPN ゲートウェイが、
IPV4_IPV6
スタックタイプを使用するように構成されている。 - BGP ピアで IPv6 が有効であり、BGP セッションに正しい IPv6 ネクストホップ アドレスが構成されている。
- Cloud Router のステータスとルートを表示するには、Cloud Router のステータスとルートの表示をご覧ください。
- BGP セッション構成を表示するには、BGP セッション構成の表示をご覧ください。
- VPC ネットワークで、
トラブルシューティングのリファレンス
このセクションでは、ステータス アイコン、ステータス メッセージ、サポートされている IKE 暗号について説明します。
ステータス アイコン
Cloud VPN では、Google Cloud コンソールで次のステータス アイコンが使用されます。
アイコンの画像 | 色 | 説明 | 適用されるメッセージ |
---|---|---|---|
緑 | 成功 | 確立済み | |
黄 | 警告 | [リソースを割り当てています]、[最初の handshake]、[完全に設定されるまで待機しています]、[プロビジョニング] | |
赤 | エラー | その他すべてのメッセージ |
ステータス メッセージ
VPN ゲートウェイとトンネルの状態を示すために、Cloud VPN では次のステータス メッセージが使用されます。示された状態に応じて、VPN トンネルの使用料金が課金されます。
メッセージ | 説明 | この状態で課金されるかどうか |
---|---|---|
リソースを割り当てています | トンネルを設定するためにリソースを割り当てています。 | ○ |
プロビジョニング | トンネルを設定するためのすべての構成ファイルを受信するのを待機しています。 | × |
完全に設定されるまで待機しています | 構成はすべて受信しましたが、トンネルはまだ確立されていません。 | ○ |
最初の handshake | トンネルを確立中です。 | ○ |
確立済み | 安全な通信セッションが正常に確立されました。 | ○ |
ネットワーク エラー ([受信パケットがありません] に置き換えられています) |
IPsec の承認が正しく行われませんでした。 | ○ |
承認エラー | handshake に失敗しました。 | ○ |
ネゴシエーション エラー | トンネル構成が拒否されました。拒否リストに追加された可能性があります。 | ○ |
プロビジョニング解除 | トンネルがシャットダウンされています。 | × |
受信パケットがありません | ゲートウェイがオンプレミス VPN からパケットを受信していません。 | ○ |
拒否 | トンネルの構成が拒否されました。サポートにお問い合わせください。 | ○ |
停止 | トンネルは停止し、アクティブではありません。VPN トンネルに必要な転送ルールが 1 つ以上削除されている可能性があります。 | ○ |
IKE 暗号のリファレンス
Cloud VPN では、ピア VPN デバイスまたは VPN サービス用の暗号および構成パラメータをサポートしています。サポートされている IKE 暗号設定がピア側で使用される限り、Cloud VPN は接続を自動ネゴシエートします。
IKE 暗号の完全なリファレンスについては、サポートされている IKE の暗号をご覧ください。
次のステップ
- Cloud VPN の基本コンセプトについては、Cloud VPN の概要をご覧ください。
- 高可用性、高スループットのシナリオ、複数のサブネットのシナリオについては、高度な構成をご覧ください。