GRE トンネル接続の作成
GRE(Generic Routing Encapsulation)トンネルのTransit Gateway接続を使用してエンドポイントを接続できます。 この接続により、 Transit Gatewayは、 クラシック・インフラストラクチャーリソース上でホストされているオーバーレイネットワークに接続できるようになります。
この形式のGREトンネルは、現在では非推奨となっている。 バインドされていないGREトンネルの使用を推奨する。 詳細については、 未結合のGREトンネルの作成を 参照してください。
アンバインドGREトンネルには次のような利点がある:
- クラシック接続からクラシックネットワークのサブネットを受信する機能。
- 同じアベイラビリティ・ゾーン内の同じTransit Gateway上にある、他のバインドされていないGREトンネルを介して通信する能力。
- Transit Gatewayクラシック接続を必要としない。 その結果、クラシックネットワークのサブネットはTransit Gatewayコネクションにアドバタイズされない(逆も同様)。
GREトンネルを非結合のGREトンネルに移行するには、新しい非結合のGREトンネルを作成する前に、既存のGREトンネルを削除する必要があります。 また、新しいトンネルを作成するまでの間、古いGREトンネルを使用しているものは、移行によってネットワークが中断されます。
GREトンネルから非結合のGREトンネルに移行するには
-
新しい非結合GREトンネルで使用するために、既存のGREトンネルの設定情報を収集する。
-
必要であれば、クラシック接続を削除する。
クラシック接続は、他のGREトンネルで使用されている場合は削除できない。
Transit Gateway、ゲートウェイの所有者が、自身のニーズに合わせてHAを個別に設定する必要があります。 GRE接続はポイント・ツー・ポイント接続であり、組み込みの冗長性を持たず、単一障害点となります。 中継ゲートウェイで GRE 接続を構成する場合は、アベイラビリティー・ゾーンを指定する必要があります。 堅牢なHAソリューションを実現するには、異なるアベイラビリティゾーンを使用して複数のGRE接続を設定してください。
開始前に
GRE トンネル接続を作成するには、その前に以下の前提条件を満たす必要があります。
- 既存のクラシック・インフラストラクチャー接続を用意しておくか、ここで作成します。 詳しくは、接続の追加を参照してください。 GRE トンネル接続は、クラシック・インフラストラクチャー上のエンドポイントのみと接続します。
- その他の前提条件については、 GRE接続に関する考慮 事項を確認してください。
UIでGREトンネル接続を作成する
UIで作成できるのは、バインドされていないGREトンネルだけです。 詳細については、 未結合のGREトンネルの作成を 参照してください。
CLIからGREトンネル接続を作成する
指定された中継ゲートウェイで Generic Routing Encapsulation (GRE) トンネル接続を作成します。
ibmcloud tg connection-create-gre|ccgre GATEWAY_ID --name NAME --zone ZONE --base-connection-id BASE_CONNECTION_ID --local-gateway-ip LOCAL_GATEWAY_IP --local-tunnel-ip LOCAL_TUNNEL_IP --remote-gateway-ip REMOTE_GATEWAY_IP --remote-tunnel-ip REMOTE_TUNNEL_IP [--remote-bgp-asn REMOTE_BGP_ASN] [--output json]
ここで、
GATEWAY_ID- 新しい接続がバインドされるゲートウェイのID。
--name- 新しい接続の名前。
--zone- GREトンネルのアベイラビリティゾーン。 例:
us-south-1 --base-connection-id- GREトンネルのアンダーレイとなる、従来のネットワーク接続のID。
--local-gateway-ip- GREトンネル接続用のローカルゲートウェイのIPアドレス。
--local-tunnel-ip- GREトンネル接続用のローカルトンネルIPアドレス。
--remote-gateway-ip- GREトンネル接続用のリモートゲートウェイのIPアドレス。
--remote-tunnel-ip- GREトンネル接続用のリモートトンネルIPアドレス。
--remote-bgp-asn- オプション:リモートBGP ASNが指定されていない場合は、自動的に生成されます。
--output json- オプション:出力をJSON形式で表示します。
--help | -h- オプション:このコマンドに関するヘルプを表示します。
例
ベース接続として「 9037f710-8dfb-4948-a2bd-847c8dde96d3 」というクラシック接続を使用し、「 gre-connection 」という名前のGREトンネル接続を作成します:
ibmcloud tg connection-create-gre $gateway --name gre-connection --base-connection-id 9037f710-8dfb-9999-a2bd-847c8dde96d3 --zone us-south-2 --local-gateway-ip 192.168.100.1 --local-tunnel-ip 192.168.101.1 --remote-gateway-ip 10.242.63.12 --remote-tunnel-ip 192.168.101.2
APIによるGREトンネル接続の作成
要求の例
この例ではGRE接続を要求している:
curl -X POST "https://transit.cloud.ibm.com/v1/transit_gateways/test/connections?version=2022-01-27" -H "accept: application/json" -H "Content-Type: application/json" -d "{\"base_connection_id\":\"975f58c1-afe7-469a-9727-7f3d720f2d32\",\"local_gateway_ip\":\"192.168.100.1\",\"local_tunnel_ip\":\"192.168.129.2\",\"name\":\"Transit_Service_BWTN_SJ_DL\",\"network_type\":\"gre_tunnel\",\"remote_bgp_asn\":65010,\"remote_gateway_ip\":\"10.242.63.12\",\"remote_tunnel_ip\":\"192.168.129.1\"}"
このリクエストのペイロードは以下の通りです:
{
"base_connection_id": "975f58c1-afe7-469a-9727-7f3d720f2d32",
"local_gateway_ip": "192.168.100.1",
"local_tunnel_ip": "192.168.129.2",
"name": "Transit_Service_BWTN_SJ_DL",
"network_type": "gre_tunnel",
"remote_bgp_asn": 65010,
"remote_gateway_ip": "10.242.63.12",
"remote_tunnel_ip": "192.168.129.1"
}
応答例
この例は、GREトンネルを作成したときの応答を示している:
{
"created_at": "2020-03-31T12:08:05Z",
"id": "1a15dca5-7e33-45e1-b7c5-bc690e569531",
"name": "example-connection",
"network_type": "gre_tunnel",
"status": "pending",
"updated_at": "2020-03-31T12:08:05Z"
}
詳細については、『 Transit Gateway 』APIリファレンスの「 に接続を追加します Transit Gateway 」を参照してください。
Terraformを使ってGREトンネル接続を作成する
GRE(Generic Routing Encapsulation)トンネル接続を作成するときに、リソースに以下の引数参照を指定できます:
| 引数 | 詳細 |
|---|---|
| ** | base_connection_id** オプション 新しいリソースを強制する 文字列 |
| ** | gateway** 必須 新しいリソースを強制 Transit Gatewayを入力してください。 |
| ** | local_gateway_ip** オプション 新しいリソースを強制 文字列 |
| ** | local_tunnel_ip** オプション 新しいリソースを強制 文字列 |
| ** | name** オプション 文字列 |
| network_type Required Forces new resource string |
ネットワーク・タイプ。 許可される値は以下の通りです gre_tunnel |
| ** | remote_bgp_asn** オプション 新しいリソースを強制 整数 |
| ** | remote_gateway_ip** オプション 新しいリソースを強制 文字列 |
| ** | remote_tunnel_ip** オプション 新しいリソースを強制 文字列 |
| ** | zone** オプション 新しいリソースを強制 文字列 |
例
この例では、GREトンネル接続のリクエストについて説明します:
resource "ibm_tg_connection" "test_ibm_tg_connection" {
gateway = ibm_tg_gateway.test_tg_gateway.id
network_type = "gre_tunnel"
name = "myconnection"
base_connection_id = testgretunnel
local_gateway_ip = 192.168.0.1
local_tunnel_ip = 10.0.0.1
remote_bgp_asn = 36361
remote_gateway_ip = 192.168.1.1
remote_tunnel_ip = 10.0.1.1
zone = us-east
}