すべてのプロダクト
Search
ドキュメントセンター

VPN Gateway:Traditional VPN Gateway Quick Start

最終更新日:Mar 20, 2026

オープンソースの strongSwan ソフトウェアを使用して、Alibaba Cloud の従来の VPN Gateway との IPsec 接続を迅速に確立できます。これにより、クラウドとオンプレミスのリソース間でプライベートネットワークピアリングが可能になります。

シナリオ

ある企業が中国 (杭州) リージョンに VPC を作成し、従来の VPN Gateway と strongSwan を使用してオンプレミスデータセンター (IDC) に接続する必要があるとします。

このシナリオでは、IDC はパブリック IP アドレスを 1 つだけ持ち、Alibaba Cloud VPN Gateway とデュアルトンネルの IPsec 接続を確立します:

image

リソース計画

  • クラウドリソース:VPC の CIDR ブロックは中国 (杭州) リージョンの 10.0.0.0/16 です

    • vSwitch 1:ゾーン I、CIDR ブロック 10.0.0.0/24

    • vSwitch 2:ゾーン J、CIDR ブロック 10.0.1.0/24

    • ECS インスタンス:vSwitch 1 にデプロイ、IP アドレス 10.0.0.1

    • VPN Gateway:作成後、システムは 2 つのパブリック IP アドレスを割り当てます:

      • IPsec アドレス 1 (アクティブトンネル用):XX.XX.1.1

      • IPsec アドレス 2 (スタンバイトンネル用):XX.XX.2.2

  • オンプレミスリソース:IDC の CIDR ブロックは 172.16.0.0/16 です

    • strongSwan デバイス:プライベート IP アドレス 172.16.0.1

    • パブリックアウトバウンド IP:XX.XX.3.3

  • 暗号化アルゴリズム:コンソールのデフォルト (AES128、SHA1、DH グループ 2) を使用します。暗号化アルゴリズム、認証アルゴリズム、DH グループは両側で一致させる必要があります。

  • ルーティングモード:静的ルートと保護されたデータフローモードを使用します。このモードでは、両端の CIDR ブロックを指定することで、VPN トンネルを通過するトラフィックを定義します。これらのブロック間のトラフィックが保護されたデータフローになります。システムはこのトラフィックを自動的にトンネル経由でルーティングし、対応するルートを作成します。

重要

このトピックでは、単一のパブリック IP と静的ルートのシナリオのみを扱います。デュアルパブリック IP または BGP 動的ルーティングのシナリオについては、「strongSwan の設定例」をご参照ください。

前提条件

  • VPC の CIDR ブロックは、オンプレミス IDC の CIDR ブロックと重複してはなりません。

  • 計画通りに VPC を作成し、2 つの異なるゾーンにそれぞれ 1 つの vSwitch をデプロイ済みであること。接続性テストのために、VPC 内で少なくとも 1 つの ECS インスタンスが実行中であること。

  • オンプレミス IDC に Linux サーバー (この例では CentOS Stream 9) をデプロイ済みであること。サーバーには 1 つのパブリックアウトバウンド IP アドレスがあります。このサーバーに strongSwan をインストールして、オンプレミスゲートウェイとして機能させます。

ステップ 1:従来の VPN Gateway の作成

  1. コンソールで VPN Gateway ページを開き、VPN Gateway の作成 をクリックします。次の主要なパラメーターを設定します。

    • インスタンス名: 意味のある名前(例: vpn-gw-docdev)を入力します。

    • リージョンとゾーン:VPC があるリージョンを選択します。この例では、中国 (杭州) を選択します。

    • ゲートウェイタイプ: Standard を選択します。

    • ネットワークタイプ: パブリック を選択します。

    • VPC:接続するターゲット VPC を選択します。

    • vSwitch 1: ゾーン I の vSwitch を選択します。

    • vSwitch 2: ゾーン J の vSwitch を選択します。この vSwitch は、vSwitch 1 とは異なるゾーンに配置する必要があります(クロスゾーン高可用性を確保するため)。vSwitch が利用できない場合は、まず作成してください。

    • 帯域幅: ビジネス要件に基づいて帯域幅を選択します。この例では、デフォルト値を使用します。

    • IPsec-VPN: 有効にする を選択します。

    • SSL-VPN: 無効化

    • 課金サイクル: デフォルト値を使用します。

    • サービスにリンクされたロールの作成: サービスリンクロールが作成されていることを確認してください。VPN ゲートウェイは、このロールを使用して他のクラウドリソースにアクセスします。

  2. 今すぐ購入」をクリックして、支払いを完了します。VPN ゲートウェイの初期化には約 1~5 分かかります。システムは、VPN ゲートウェイに 2 つのパブリック IP アドレスを割り当てます—one つはアクティブなトンネル用、もう 1 つはスタンバイ トンネル用です。

ステップ 2:カスタマーゲートウェイの作成

カスタマーゲートウェイは、Alibaba Cloud にご利用のオンプレミスゲートウェイデバイスのパブリック IP アドレスを記録します。このシナリオでは、IDC にはパブリックアウトバウンド IP が 1 つしかないため、カスタマーゲートウェイを 1 つだけ作成します。

  1. VPN Gateway コンソールの左側にあるナビゲーションウィンドウで、カスタマーゲートウェイ をクリックします。

  2. カスタマーゲートウェイの作成」をクリックし、以下を設定します。

    • 名前: カスタマーゲートウェイの名前を入力します (例: cgw-idc-docdev)。

    • IP アドレス: オンプレミス IDC のパブリック egress IP アドレス (XX.XX.3.3) を入力します。

ステップ 3:IPsec 接続の作成

  1. VPN Gateway コンソールの左側にあるナビゲーションウィンドウで、IPsec 接続 をクリックします。次に、VPN ゲートウェイと関連付け をクリックします。

  2. IPsec 接続の基本パラメーターを設定します:

    • IPsec 接続名: ipsec-docdev のような意味のある名前を入力します。

    • リージョン: 中国 (杭州) を選択します。

    • VPN ゲートウェイの選択: 手順 1 で作成した VPN ゲートウェイを選択します。

    • ルーティングモード宛先ルーティングモード を選択します。このモードでは、両端の CIDR ブロックを定義します。システムにより、一致するトラフィックがトンネル経由で自動的にルーティングされ、対応するルートが作成されます。

    • ローカルネットワーク: VPC CIDR ブロック 10.0.0.0/16 を入力します。

    • リモートネットワーク: IDC CIDR ブロック 172.16.0.0/16 を入力します。

    • 今すぐ有効化: はい を選択します。Alibaba Cloud がピア側とネゴシエーションを開始します。ピア側の設定を完了すると、接続がすばやく確立されます。

    • BGP の有効化:この例では、BGP を有効化しないでください。

  3. トンネルパラメーターを設定します:

    • Tunnel 1

      • カスタマーゲートウェイ: ステップ 2 で作成したカスタマーゲートウェイを選択します。

      • 事前共有鍵: IPsec トンネルのネゴシエーション中に身分認証に使用される共有鍵です。両方の側で同じ事前共有鍵を使用する必要があります。そうしないと、トンネルを確立できません。大文字、小文字、数字、および特殊文字を含む強力なパスワードを使用してください。

      • 暗号化設定: デフォルト値をそのまま使用します。この例では、デフォルトの暗号化アルゴリズム (AES128)、認証アルゴリズム (SHA1)、および DH グループ (group2) を使用しています。

    • Tunnel 2:

      • カスタマーゲートウェイ: トンネル 1 と同じカスタマーゲートウェイを選択します(このシナリオでは、IDC にはパブリック出口 IP が 1 つしかありません)。

      • 事前共有鍵: Tunnel 1 と同じキーを使用します。

      • 暗号化設定: トンネル 1 と一致させます。デフォルト値を保持します。

  4. [OK] をクリックすると、システムがルートを公開するようプロンプトを表示します。まず、[キャンセル] をクリックします。

    IPsec 接続の初期化には約 5 分かかります (ステータスは 準備中 と表示されます)。この時点ではまだルートを構成できません。strongSwan デバイスを構成するには、ステップ 4 に進んでください。ルートの構成はステップ 5 で完了します。
  5. Alibaba Cloud 上の 2 つのトンネルのパブリック IP アドレスを記録します。これらは後で strongSwan を設定する際に必要になります:

    • IPsec-VPN 接続 一覧ページに戻り、先ほど作成した IPsec 接続を特定します。

    • ゲートウェイ IP アドレス 列で、IPsec アドレス 1 および IPsec アドレス 2 を記録します。この例では、それらは XX.XX.1.1 および XX.XX.2.2 です。

ステップ 4:strongSwan デバイスの設定

重要

このセクションのサードパーティ製品に関する情報は参考用です。Alibaba Cloud は、サードパーティ製品に関連する操作のパフォーマンス、信頼性、または潜在的な影響に関して、いかなる保証も約束も行いません。

このセクションでは、CentOS Stream 9 64 ビット を例として strongSwan を設定します。他のオペレーティングシステムについては、strongSwan 公式ドキュメントをご参照ください。

1. ファイアウォールポリシーの許可

strongSwan デバイスで、クラウド上の 2 つの IPsec アドレスからのアクセスを許可するために、ESP プロトコル (IP プロトコル番号 50)UDP ポート 500、および UDP ポート 4500 を許可します。

例えば、iptables を使用している場合は、実際のファイアウォールツールに基づいてコマンドを調整してください:

iptables -I INPUT -s XX.XX.1.1,XX.XX.2.2 -p esp -j ACCEPT
iptables -I INPUT -s XX.XX.1.1,XX.XX.2.2 -p udp --dport 500 -j ACCEPT
iptables -I INPUT -s XX.XX.1.1,XX.XX.2.2 -p udp --dport 4500 -j ACCEPT

2. IP フォワーディングの有効化

echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
sudo sysctl -p

3. strongSwan のインストール

dnf install epel-release -y
dnf install strongswan -y

4. strongSwan の設定

  1. 元の設定ファイルをバックアップします:mv /etc/strongswan/swanctl/swanctl.conf /etc/strongswan/swanctl/swanctl.conf.bak

  2. 新しい設定ファイルを作成します:vi /etc/strongswan/swanctl/swanctl.conf

  3. 以下の設定を追加して保存します。サンプル IP アドレスと事前共有鍵を実際の値に置き換えてください:

    # Alibaba Cloud 従来の VPN Gateway + オンプレミスの単一パブリックアウトバウンド IP + 保護されたデータフロー向けの strongSwan デュアルトンネル IPsec-VPN 設定
    #
    # 「必要に応じて変更」とマークされたパラメーターのみ変更が必要です。その他はデフォルトのままでかまいません。
    # アルゴリズム注記:aes128-sha1-modp1024 = AES-128 / SHA-1 / DH グループ 2 (コンソールのデフォルト)
    # アクティブ/スタンバイロジック:vco1 (priority=1) はアクティブトンネル、vco2 (priority=2) はスタンバイトンネルです。アクティブトンネルに障害が発生すると、自動的にフェイルオーバーします。
    
    connections {
    
       # === トンネル 1 (アクティブ) ===
       vco1 {
          version = 2
          dpd_delay = 10
          rekey_time = 84600
          over_time = 1800
          proposals = aes128-sha1-modp1024
          encap = yes
    
          local_addrs  = 172.16.0.1                # strongSwan デバイスのネットワークインターフェース IP (必要に応じて変更:NAT 環境ではプライベート IP を使用し、インターフェースがパブリックアウトバウンド IP に直接バインドされている場合はパブリック IP を使用します)
          local {
             auth = psk
             id = XX.XX.3.3                        # オンプレミスのパブリックアウトバウンド IP (必要に応じて変更)
          }
    
          remote_addrs = XX.XX.1.1                 # Alibaba Cloud トンネル 1 のパブリック IP (必要に応じて変更)
          remote {
             auth = psk
             id = XX.XX.1.1                        # Alibaba Cloud トンネル 1 のパブリック IP、上記の remote_addrs と一致させる必要があります (必要に応じて変更)
          }
    
          children {
             vco_child1 {
                local_ts  = 172.16.0.0/16          # オンプレミスの保護されたデータフローの CIDR ブロック (必要に応じて変更)
                remote_ts = 10.0.0.0/16            # Alibaba Cloud の保護されたデータフローの CIDR ブロック (必要に応じて変更)
                mode = tunnel
                rekey_time = 85500
                life_time = 86400
                dpd_action = restart
                start_action = start
                close_action = start
                esp_proposals = aes128-sha1-modp1024
                priority = 1                       # アクティブトンネルとして設定。変更しないでください。
             }
          }
       }
    
       # === トンネル 2 (スタンバイ) ===
       vco2 {
          version = 2
          dpd_delay = 10
          rekey_time = 84600
          over_time = 1800
          proposals = aes128-sha1-modp1024
          encap = yes
    
          local_addrs  = 172.16.0.1                # strongSwan デバイスのネットワークインターフェース IP、トンネル 1 と同じ (必要に応じて変更)
          local {
             auth = psk
             id = XX.XX.3.3                        # オンプレミスのパブリックアウトバウンド IP、トンネル 1 と同じ (必要に応じて変更)
          }
    
          remote_addrs = XX.XX.2.2                 # Alibaba Cloud トンネル 2 のパブリック IP (必要に応じて変更)
          remote {
             auth = psk
             id = XX.XX.2.2                        # Alibaba Cloud トンネル 2 のパブリック IP、上記の remote_addrs と一致させる必要があります (必要に応じて変更)
          }
    
          children {
             vco_child2 {
                local_ts  = 172.16.0.0/16          # オンプレミスの保護されたデータフローの CIDR ブロック、トンネル 1 と同じ (必要に応じて変更)
                remote_ts = 10.0.0.0/16            # Alibaba Cloud の保護されたデータフローの CIDR ブロック、トンネル 1 と同じ (必要に応じて変更)
                mode = tunnel
                rekey_time = 85500
                life_time = 86400
                dpd_action = restart
                start_action = start
                close_action = start
                esp_proposals = aes128-sha1-modp1024
                priority = 2                       # スタンバイトンネルとして設定。変更しないでください。
             }
          }
       }
    }
    
    secrets {
       ike-vco1 {
          id = XX.XX.1.1                           # Alibaba Cloud トンネル 1 のパブリック IP (必要に応じて変更)
          secret = your-psk-here                   # トンネル 1 の事前共有鍵、Alibaba Cloud と一致させる必要があります (必要に応じて変更)
       }
       ike-vco2 {
          id = XX.XX.2.2                           # Alibaba Cloud トンネル 2 のパブリック IP (必要に応じて変更)
          secret = your-psk-here                   # トンネル 2 の事前共有鍵、Alibaba Cloud と一致させる必要があります (必要に応じて変更)
       }
    }

5. トンネルステータスの起動と確認

sudo systemctl restart strongswan
swanctl --load-all
watch swanctl --list-sas

両方のトンネルが ESTABLISHED と表示され、CHILD_SA が INSTALLED と表示されれば、strongSwan デバイスと Alibaba Cloud VPN Gateway 間の IPsec 接続は正常に確立されています。

ステップ 5:クラウド側のルーティング設定

この例では保護されたデータフロー モードを使用しているため、システムが VPN ゲートウェイの ポリシーベースルーティング に自動的にルートエントリを作成します。

このルートをワンクリックで VPC ルートテーブルに公開できます。これにより、VPC 内の ECS インスタンスから IDC の CIDR ブロックへのトラフィックが VPN Gateway を経由してルーティングされます:

  1. VPN Gateway のリストページに戻ります。ステップ 1 で作成した VPN Gateway のインスタンス ID をクリックして、詳細ページを開きます。

  2. ポリシーベースルーティング タブをクリックします。IPsec 接続が保護されたデータフローモードを使用すると、システムによって自動的に生成された宛先ルートエントリを確認できます (宛先 CIDR ブロックが 172.16.0.0/16、ネクストホップが IPsec 接続)。

  3. 送信先ルートエントリの 操作 列で、公開 をクリックして、ルートを VPC ルートテーブルに公開します。

    公開後、VPC ルートテーブルには、宛先 CIDR ブロックが 172.16.0.0/16 で、ネクストホップが VPN Gateway に設定された新しいルートが追加されます。VPC 内の ECS インスタンスから IDC の CIDR ブロックへのトラフィックは、自動的に VPN トンネルを通過します。

検証とテスト

接続性の検証

  1. まず、ECS セキュリティグループのルールが ICMP トラフィックを許可していることを確認します。次に、strongSwan デバイスにログインし、次のコマンドを実行してクラウド上の ECS インスタンスに PING を送信します:

    ping 10.0.0.1

    応答パケットを受信した場合、クラウド VPC とオンプレミス IDC は正常に接続されています。

  2. まず、ローカルのファイアウォールが ICMP トラフィックを許可していることを確認します。次に、VPC 内の ECS インスタンス (10.0.0.1) にログインし、strongSwan デバイスのプライベート IP アドレスに PING を送信します:

    ping 172.16.0.1

    応答パケットを受信した場合、逆方向の接続も機能しています。

高可用性の検証

  1. ECS インスタンスから IDC サーバーへ継続的に PING を送信し続けます:

    ping 172.16.0.1 -c 10000
  2. アクティブトンネルを中断させる:Alibaba Cloud コンソールで、アクティブトンネルの事前共有鍵を変更します (これにより、両側の鍵が異なります)。アクティブトンネルが切断されます。

  3. PING の結果を観察します:トラフィックが一時的に停止し、その後再開します。これにより、スタンバイトンネルへの自動フェイルオーバーが確認できます。

  4. アクティブトンネルを復元する:アクティブトンネルの事前共有鍵を正しい値に戻します。アクティブトンネルが回復すると、トラフィックは自動的に元に戻ります。

トラブルシューティング

一般的な問題と解決策:

症状

考えられる原因

解決策

コンソールでトンネルのネゴシエーション失敗が表示される

ネットワーク到達不能

strongSwan デバイスが Alibaba Cloud の IPsec アドレスに PING できるか確認します。ローカル IDC のファイアウォールが UDP ポート 500 と 4500 を許可していることを確認します。

事前共有鍵の不一致

両側の事前共有鍵が完全に一致していること (大文字/小文字、特殊文字を含む) を確認します。

IKE パラメーターの不一致

IKE バージョン、暗号化アルゴリズム、認証アルゴリズム、DH グループが両側で一致していることを確認します。従来の VPN Gateway は複数のアルゴリズムの互換性をサポートしていません。パラメーターは完全に一致させる必要があります。

トンネルは確立されているが PING が失敗する

ルート設定の欠落

VPN Gateway の宛先ルートが VPC ルートテーブルに公開されているか確認します。

セキュリティグループの制限

ECS セキュリティグループが IDC の CIDR ブロック (172.16.0.0/16) からの ICMP トラフィックを許可しているか確認します。

ローカルファイアウォールの制限

IDC のファイアウォールが VPC の CIDR ブロック (10.0.0.0/16) からのトラフィックを許可しているか確認します。

strongSwan 側のルート欠落

strongSwan デバイスで IP フォワーディングが有効になっていることを確認します。また、IDC 内の他のサーバーに VPC の CIDR ブロックへのルート (ネクストホップとして strongSwan デバイスを指定) があることを確認します。