このページでは、ある VPN ゲートウェイから別の VPN ゲートウェイに VPN トンネルを追加する方法について説明します。
VPN トンネルは、組織のネットワークとリモート ネットワーク間の暗号化された IPsec トンネルです。VPNGateway
インターフェースを PeerGateway
インターフェースに接続し、VPNBGPPeer
リソースを使用してトンネル経由でルーティング情報を交換します。
始める前に
VPN トンネルを作成するには、次のものが必要です。
- 既存の VPN ゲートウェイと VPN ピア ゲートウェイ リソース。詳細については、VPN ゲートウェイとピア ゲートウェイを作成するをご覧ください。
- 既存の VPN BGP ピア オブジェクト。詳細については、VPN BGP セッションを作成するをご覧ください。
- 既存のシークレット。詳細については、PSK を使用してシークレットを作成するをご覧ください。
必要な ID とアクセスロール:
- VPN 管理者: VPN 関連のすべてのリソースに対する読み取り / 書き込み権限があります。組織の IAM 管理者に、VPN 管理者(
vpn-admin
)ロールを付与するよう依頼します。 - VPN 閲覧者: VPN 関連のすべてのリソースに対する読み取り権限があります。組織の IAM 管理者に、VPN 閲覧者(
vpn-viewer
)ロールを付与するよう依頼します。 - 詳細については、ロールの定義をご覧ください。
- VPN 管理者: VPN 関連のすべてのリソースに対する読み取り / 書き込み権限があります。組織の IAM 管理者に、VPN 管理者(
VPN トンネルの作成
前の手順で作成した VPNGateway
、PeerGateway
、VPNBGPPeer
、Secret
リソースを参照して、トンネルを作成します。
VPN トンネルを作成する手順は次のとおりです。
VPNTunnel
オブジェクトを作成します。kubectl --kubeconfig MANAGEMENT_API_SERVER create -n platform -f - <<EOF apiVersion: networking.gdc.goog/v1 kind: VPNTunnel metadata: name: VPN_TUNNEL_NAME spec: vpnInterface: name: VPN_GW_NAME namespace: platform interface: VPN_INTERFACE_NAME peerInterface: name: PEER_GW_NAME namespace: platform interface: PEER_INTERFACE_NAME vpnBGPPeer: name: VPN_BGP_PEER_NAME namespace: platform ikeKey: name: PSK_NAME namespace: platform EOF
次のように置き換えます。
MANAGEMENT_API_SERVER
: ゾーン API サーバーの kubeconfig パス。ターゲット ゾーンの API サーバーの kubeconfig ファイルをまだ生成していない場合は、ログインで詳細を確認してください。VPN_TUNNEL_NAME
: 使用されている VPN トンネルの名前。VPN_GW_NAME
: VPN ゲートウェイの名前。VPN_INTERFACE_NAME
: VPN インターフェースの名前。PEER_GW_NAME
: ピア VPN ゲートウェイの名前。PEER_INTERFACE_NAME
: ピア VPN ゲートウェイ インターフェースの名前。VPN_BGP_PEER_NAME
: VPN BGP ピアの名前。詳細については、VPN BGP セッションを作成するをご覧ください。PSK_NAME
: PSK を使用して Secret を作成するで作成した PSK の名前。
Status
フィールドを調べて、VPN_TUNNEL_NAME
オブジェクトが正しく調整されたことを確認します。VPN トンネルの詳細を取得します。kubectl --kubeconfig MANAGEMENT_API_SERVER describe -n platform vpntunnel VPN_TUNNEL_NAME
出力を確認します。次の例のようになっている必要があります。
Status: Conditions: Last Transition Time: 2024-05-10T00:33:31Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: Reconciled Last Transition Time: 2024-05-10T00:33:31Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: Ready Last Transition Time: 2024-05-10T00:33:31Z Message: Tunnel is established. Observed Generation: 1 Reason: Ready Status: True Type: TunnelEstablished State: Established
VPNGateway
、PeerGateway
、VPNBGPPeer
オブジェクトは、VPNTunnel
によって参照された後、ステータスが更新されている必要があります。たとえば、VPNBGPPeer
が正しく調整されたことを確認すると、更新されたステータス値が表示されます。VPNBGPPeer
オブジェクトの詳細を取得します。kubectl --kubeconfig MANAGEMENT_API_SERVER describe -n platform vpnbgppeer VPN_BGP_PEER_NAME
出力を調べます。ステータス値が更新されています。
Status: Advertised: Prefix: 10.0.0.16/28 Prefix: 10.0.1.32/27 Prefix: 172.16.0.0/14 Prefix: 172.20.0.0/17 Prefix: 172.20.128.0/17 Prefix: 2002:4860:100e:fa00::/58 Conditions: Last Transition Time: 2024-05-10T00:36:38Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: ValidIPs Last Transition Time: 2024-05-10T00:36:38Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: TunnelsAttached Last Transition Time: 2024-05-10T00:36:38Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: Reconciled Last Transition Time: 2024-05-10T00:36:38Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: AdvertisedRoutesReady Last Transition Time: 2024-05-10T00:36:38Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: ReceivedRoutesValid Last Transition Time: 2024-05-10T00:36:38Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: ReceivedRoutesReady Last Transition Time: 2024-05-10T00:36:38Z Message: Ready Observed Generation: 1 Reason: Ready Status: True Type: Ready Received: Prefix: 192.168.100.0/24 Prefix: 193.188.200.0/24 State: Established