サブネット
Virtual Private Cloud(VPC)ネットワークはグローバル リソースです。各 VPC ネットワークは、サブネットと呼ばれる 1 つ以上の IP アドレス範囲で構成されています。サブネットはリージョン リソースであり、IP アドレス範囲が関連付けられています。
Google Cloud では、「サブネット」と「サブネットワーク」という用語は同義語です。Google Cloud コンソール、Google Cloud CLI コマンド、API ドキュメントでは、同じ意味で使用されます。
ネットワークとサブネット
ネットワークを使用するには、そのネットワークに少なくとも 1 つのサブネットが必要です。自動モード VPC ネットワークは、各リージョンのサブネットを自動的に作成します。カスタムモード VPC ネットワークはサブネットなしで開始し、サブネットの作成を完全に制御できます。リージョンごとに複数のサブネットを作成できます。自動モード VPC ネットワークとカスタムモード VPC ネットワークの違いについては、VPC ネットワークの種類を参照してください。
Google Cloud でリソースを作成する場合は、ネットワークとサブネットを選択します。インスタンス テンプレート以外のリソースの場合は、ゾーンまたはリージョンも選択します。ゾーンを選択すると、その親リージョンが暗黙的に選択されます。サブネットはリージョン オブジェクトであるため、リソースに選択したリージョンによって、使用できるサブネットが決まります。
インスタンスを作成するときに、インスタンスのゾーンを選択します。VM のネットワークを選択しない場合は、すべてのリージョンにサブネットを持つデフォルトの VPC ネットワークが使用されます。VM のネットワークを選択する場合は、選択したゾーンの親リージョンに、サブネットを含むネットワークを選択する必要があります。
マネージド インスタンス グループを作成するときに、グループタイプとインスタンス テンプレートに応じて、ゾーンまたはリージョンを選択します。インスタンス テンプレートでは、使用する VPC ネットワークを定義します。したがって、マネージド インスタンス グループを作成するときに、適切な構成を持つインスタンス テンプレートを選択する必要があります。テンプレートには、選択したゾーンまたはリージョン内にサブネットを持つ VPC ネットワークを指定する必要があります。自動モード VPC ネットワークは常に、リージョンごとにサブネットを 1 つずつ持ちます。
Kubernetes コンテナ クラスタを作成する場合は、クラスタの種類に応じてゾーンまたはリージョンを選択し、ネットワークとサブネットを選択します。選択したゾーンやリージョンで使用可能なサブネットを選択する必要があります。
サブネットの種類
VPC ネットワークでは、次の種類のサブネットがサポートされています。
IPv4 のみ(単一スタック)のサブネット(IPv4 サブネット範囲のみ)
IPv4 と IPv6(デュアル スタック)のサブネット(IPv4 と IPv6 の両方のサブネット範囲)
1 つの VPC ネットワークには、これらの種類のサブネットを自由に組み合わせることができます。
サブネットを作成するときは、使用するスタックタイプを指定します。既存の IPv4 専用サブネットを更新し、デュアル スタック サブネットとして構成することもできます。
デュアルスタック サブネットは、カスタムモード VPC ネットワークでのみサポートされます。自動モード VPC ネットワークや以前のネットワークではサポートされません。
IPv4 サブネット範囲を作成する場合は、次の情報を指定します。
サブネットの設定 | 有効な値 | 詳細 |
---|---|---|
IPv4 範囲 | 選択した有効な範囲 | 必須 |
セカンダリ IPv4 範囲 | 選択した有効な範囲 | 任意 |
IPv6 サブネット範囲を作成する場合は、次の情報を指定します。
サブネットの設定 | 有効な値 | 詳細 |
---|---|---|
IPv6 アクセスタイプ |
|
|
サブネットの目的
サブネットはさまざまな目的で使用できます。
- 通常のサブネット: これはデフォルトのサブネット タイプです。通常のサブネットは、ユーザーによって作成されるか、VM インスタンスで使用するために自動モードの VPC ネットワークで自動的に作成されます。通常のサブネットの目的は、gcloud CLI または API で
PRIVATE
にすることです。Google Cloud コンソールでは、この目的は [なし] です。 - Private Service Connect サブネット: Private Service Connect を使用してマネージド サービスを公開するために使用するサブネットです。
- プロキシ専用サブネット: リージョンの Envoy ベースのロードバランサで使用するプロキシ専用サブネットです。
- Private NAT サブネット: Private NAT のソース範囲として使用するために予約されるサブネット。このサブネットは
--purpose=PRIVATE_NAT
に設定されています。
ほとんどの場合、サブネットの作成後にその目的を変更することはできません。詳細については、gcloud compute networks subnets update
コマンド リファレンスをご覧ください。
サブネットの命名に関する制限事項
サブネット名には次の制限があります。
VPC ネットワークのメンバーでない限り、Google Cloud プロジェクト内でサブネットに VPC ネットワークと同じ名前を付けることはできません。プロジェクト内で、同じリージョンのサブネットには一意の名前を付ける必要があります。たとえば、
production
というネットワークでproduction
という名前のサブネットを複数作成するには、それぞれ異なるリージョンに作成する必要があります。サブネットの名前またはリージョンを作成後に変更することはできません。ただし、リソースによって使用されていないサブネットであれば、削除して置き換えることは可能です。
IPv4 サブネット範囲
各サブネットには、プライマリ IPv4 アドレス範囲があります。VM インスタンス、内部ロードバランサ、内部プロトコル転送の各リソースのプライマリ内部アドレスは、サブネットのプライマリ範囲から取得されます。必要に応じて、エイリアス IP 範囲でのみ使用されるセカンダリ IP アドレス範囲をサブネットに追加します。ただし、インスタンスのエイリアス IP 範囲は、サブネットのプライマリ範囲またはセカンダリ範囲のいずれでも構成できます。
IPv4 サブネットが、事前定義された連続した CIDR ブロックを形成する必要はありませんが、必要に応じて連続させることができます。たとえば、自動モード VPC ネットワークでは事前定義された自動モード IP 範囲に収まるサブネットが作成されます。ただし、サブネットのプライマリ範囲を 10.0.0.0/24
に、同じネットワーク内の別のサブネットのプライマリ範囲を 192.168.0.0/16
にできます。
IPv4 サブネット範囲の制限事項
IPv4 サブネット範囲には次の制限があります。
VPC ネットワーク内のすべてのサブネットの各プライマリまたはセカンダリ IPv4 範囲は、一意の有効な CIDR ブロックである必要があります。
定義できるセカンダリ IP アドレス範囲の数については、ネットワークごとの上限をご覧ください。
サブネットを作成した後で、サブネットのプライマリ IPv4 範囲の拡張は可能ですが、置き換えや縮小はできません。
ただし、インスタンスによって使用されていないサブネットのセカンダリ IPv4 アドレス範囲であれば、それを削除して置き換えることは可能です。
プライマリ範囲やセカンダリ範囲の最少サイズは、IPv4 アドレス 8 つです。つまり、使用できる最長のサブネット マスクは
/29
です。使用できる最短のサブネット マスクは
/4
です。ただし、ほとんどの/4
IP アドレス範囲では、追加の検証でこのサイズのサブネットを作成できなくなります。たとえば、サブネット範囲をプライベート IPv4 範囲または他の予約済み範囲と重複させることはできません。無効なサブネット範囲を選択する可能性を最小限に抑えるため、サブネットの最大サイズを/8
に制限することをおすすめします。割り振り済みの範囲と重複するサブネットにプライマリ範囲とセカンダリ範囲を作成することはできません。同じネットワーク内の別のサブネットにプライマリ範囲またはセカンダ範囲を作成することもできません。また、ピアリングされたネットワークにサブセットの IPv4 範囲も作成できません。Google Cloud では、このようなシナリオで重複するサブネット範囲が作成されないようにします。
Google Cloud は、プライマリとセカンダリの両方の IP 範囲に対応するサブネット ルートを作成します。サブネット ルート、つまりサブネット IP 範囲には、定義上最も範囲の狭い IP 範囲が必要です。
Cloud VPN、Dedicated Interconnect、Partner Interconnect を使用して VPC ネットワークを別のネットワークに接続している場合は、プライマリとセカンダリの範囲がオンプレミスの IP 範囲と競合しないようにします。詳細については、重複するサブネットの範囲を確認するをご覧ください。
サブネット IPv4 範囲は、静的ルートの宛先と競合してはいけません。
サブネットのプライマリまたはセカンダリ IPv4 範囲に、
10.128.0.0/9
ブロックの IPv4 アドレスを使用しないでください。このブロックの IPv4 アドレスは、自動モードの VPC ネットワークで自動的に作成されたサブネットが使用します。10.128.0.0/9
ブロックの IP アドレスを使用すると、VPC ネットワーク ピアリングまたは Cloud VPN トンネルでネットワークを自動モードの VPC ネットワークに接続できなくなります。
サブネットの範囲は、制限付きの範囲よりも狭い範囲または緩い範囲に設定することはできません。たとえば、
169.0.0.0/8
は制限された範囲であるリンクローカル範囲169.254.0.0/16
(RFC 3927)と重複しているため、有効なサブネット範囲ではありません。サブネット範囲は、RFC 範囲(前の表で説明)と、プライベートで使用されるパブリック IP アドレス範囲にまたがることはできません。たとえば、
172.0.0.0/10
は172.16.0.0/12
プライベート IP アドレス範囲とパブリック IP アドレスの両方が含まれているため、有効なサブネット範囲ではありません。サブネット範囲は複数の RFC 範囲にまたがることはできません。たとえば、
192.0.0.0/8
は192.168.0.0/16
(RFC 1918 から)と192.0.0.0/24
(RFC 6890 から)の両方を含むため、有効なサブネット範囲ではありません。ただし、プライマリ範囲が異なる 2 つのサブネットを作成できます。1 つは192.168.0.0/16
、もう 1 つは192.0.0.0/24
です。どちらか一方をセカンダリ範囲にすると、両方の範囲を同じサブネット上で使用できます。
有効な IPv4 範囲
サブネットのプライマリおよびセカンダリ IPv4 アドレス範囲は、リージョン内部 IPv4 アドレスです。次の表に、有効な範囲を示します。
範囲 | 説明 |
---|---|
プライベート IPv4 アドレス範囲 | |
10.0.0.0/8 172.16.0.0/12 192.168.0.0/16
|
プライベート IP アドレス RFC 1918
|
100.64.0.0/10 |
共有アドレス空間 RFC 6598 |
192.0.0.0/24 |
IETF プロトコルの割り当て RFC 6890 |
192.0.2.0/24 (TEST-NET-1)198.51.100.0/24 (TEST-NET-2)203.0.113.0/24 (TEST-NET-3) |
ドキュメント RFC 5737 |
192.88.99.0/24 |
IPv6 から IPv4 へのリレー(サポート終了)RFC 7526 |
198.18.0.0/15 |
ベンチマーク テスト RFC 2544 |
240.0.0.0/4 |
RFC 5735 と RFC 1112 に記載されているとおり、将来の使用(クラス E)用に予約されています。 一部のオペレーティング システムではこの範囲を使用できません。この範囲を使用するサブネットを作成する前に、OS でサポートされていることを確認してください。 |
プライベートで使用されるパブリック IP アドレス範囲 | |
プライベートで使用されるパブリック IPv4 アドレス |
プライベートで使用されるパブリック IPv4 アドレス:
これらのアドレスをサブネット範囲として使用すると、Google Cloud はこれらのルートをインターネットに公開せず、インターネットからのトラフィックをルーティングしません。 お客様所有 IP アドレス(BYOIP)を使用して Google にパブリック IP アドレスをインポートした場合は、同じ VPC ネットワークで BYOIP 範囲とプライベートで使用されるパブリック IP アドレス範囲を重複させることはできません。 VPC ネットワーク ピアリングの場合、パブリック IP アドレスのサブネット ルートは自動的に交換されません。デフォルトでは、サブネット ルートは自動的にエクスポートされますが、使用するにはピア ネットワークを明示的に構成する必要があります。 |
禁止されている IPv4 サブネット範囲
次の表のように、禁止されたサブネット範囲には、Google のパブリック IP アドレスと一般的に予約されている RFC 範囲が含まれます。これらの範囲は、サブネット範囲に使用できません。
範囲 | 説明 |
---|---|
Google Cloud Netblock を含む Google API とサービスのパブリック IP アドレス。 | これらの IP アドレスは、https://gstatic.com/ipranges/goog.txt で確認できます。 |
199.36.153.4/30
と 199.36.153.8/30 |
限定公開の Google アクセス固有の仮想 IP アドレス |
0.0.0.0/8 |
現在の(ローカル)ネットワーク RFC 1122 |
127.0.0.0/8 |
ローカルホスト RFC 1122 |
169.254.0.0/16 |
リンクローカル RFC 3927 |
224.0.0.0/4 |
マルチキャスト(クラス D)RFC 5771 |
255.255.255.255/32 |
ブロードキャストの宛先アドレスの制限(RFC 8190 と RFC 919) |
IPv4 サブネット範囲で使用できないアドレス
Google Cloud は、各サブネットのプライマリ IPv4 アドレス範囲内の最初の 2 つと最後の 2 つの IPv4 アドレスを使用して、サブネットをホストします。Google Cloud では、セカンダリ IPv4 範囲内のすべてのアドレスを使用できます。
使用できない IPv4 アドレス | 説明 | 例 |
---|---|---|
ネットワーク アドレス | プライマリ IPv4 範囲内の最初のアドレス | 範囲 10.1.2.0/24 内の 10.1.2.0 |
デフォルト ゲートウェイ アドレス | プライマリ IPv4 範囲内の 2 番目のアドレス | 範囲 10.1.2.0/24 内の 10.1.2.1 |
最後から 2 番目のアドレス | プライマリ IPv4 範囲内の最後から 2 番目のアドレス この範囲は、将来使用するために Google Cloud によって予約されています。 |
範囲 10.1.2.0/24 内の 10.1.2.254 |
ブロードキャスト アドレス | プライマリ IPv4 範囲内の最後のアドレス | 範囲 10.1.2.0/24 内の 10.1.2.255 |
自動モードの IPv4 範囲
次の表に、自動モード VPC ネットワークで自動的に作成されるサブネットの IPv4 範囲を示します。このサブネットの IP 範囲は 10.128.0.0/9
CIDR ブロック内にあります。自動モード VPC ネットワークはリージョンごとに 1 つのサブネットで構築され、新しいリージョンで新しいサブネットを自動的に受信します。10.128.0.0/9
の未使用部分は Google Cloud で今後使用するために予約されています。
リージョン | IP 範囲(CIDR) | デフォルト ゲートウェイ | 使用可能なアドレス(両端を含む) |
---|---|---|---|
africa-south1 | 10.218.0.0/20 | 10.218.0.1 | 10.218.0.2~10.218.15.253 |
asia-east1 | 10.140.0.0/20 | 10.140.0.1 | 10.140.0.2~10.140.15.253 |
asia-east2 | 10.170.0.0/20 | 10.170.0.1 | 10.170.0.2~10.170.15.253 |
asia-northeast1 | 10.146.0.0/20 | 10.146.0.1 | 10.146.0.2~10.146.15.253 |
asia-northeast2 | 10.174.0.0/20 | 10.174.0.1 | 10.174.0.2~10.174.15.253 |
asia-northeast3 | 10.178.0.0/20 | 10.178.0.1 | 10.178.0.2~10.178.15.253 |
asia-south1 | 10.160.0.0/20 | 10.160.0.1 | 10.160.0.2~10.160.15.253 |
asia-south2 | 10.190.0.0/20 | 10.190.0.1 | 10.190.0.2~10.190.15.253 |
asia-southeast1 | 10.148.0.0/20 | 10.148.0.1 | 10.148.0.2~10.148.15.253 |
asia-southeast2 | 10.184.0.0/20 | 10.184.0.1 | 10.184.0.2~10.184.15.253 |
australia-southeast1 | 10.152.0.0/20 | 10.152.0.1 | 10.152.0.2~10.152.15.253 |
australia-southeast2 | 10.192.0.0/20 | 10.192.0.1 | 10.192.0.2~10.192.15.253 |
europe-central2 | 10.186.0.0/20 | 10.186.0.1 | 10.186.0.2~10.186.15.253 |
europe-north1 | 10.166.0.0/20 | 10.166.0.1 | 10.166.0.2~10.166.15.253 |
europe-west1 | 10.132.0.0/20 | 10.132.0.1 | 10.132.0.2~10.132.15.253 |
europe-west2 | 10.154.0.0/20 | 10.154.0.1 | 10.154.0.2~10.154.15.253 |
europe-west3 | 10.156.0.0/20 | 10.156.0.1 | 10.156.0.2~10.156.15.253 |
europe-west4 | 10.164.0.0/20 | 10.164.0.1 | 10.164.0.2~10.164.15.253 |
europe-west6 | 10.172.0.0/20 | 10.172.0.1 | 10.172.0.2~10.172.15.253 |
europe-west8 | 10.198.0.0/20 | 10.198.0.1 | 10.198.0.2~10.198.15.253 |
europe-west9 | 10.200.0.0/20 | 10.200.0.1 | 10.200.0.2~10.200.15.253 |
europe-west10 | 10.214.0.0/20 | 10.214.0.1 | 10.214.0.2~10.214.15.253 |
europe-west12 | 10.210.0.0/20 | 10.210.0.1 | 10.210.0.2~10.210.15.253 |
europe-southwest1 | 10.204.0.0/20 | 10.204.0.1 | 10.204.0.2~10.204.15.253 |
me-central1 | 10.212.0.0/20 | 10.212.0.1 | 10.212.0.2~10.212.15.253 |
me-central2 | 10.216.0.0/20 | 10.216.0.1 | 10.216.0.2~10.216.15.253 |
me-west1 | 10.208.0.0/20 | 10.208.0.1 | 10.208.0.2~10.208.15.253 |
northamerica-northeast1 | 10.162.0.0/20 | 10.162.0.1 | 10.162.0.2~10.162.15.253 |
northamerica-northeast2 | 10.188.0.0/20 | 10.188.0.1 | 10.188.0.2~10.188.15.253 |
southamerica-east1 | 10.158.0.0/20 | 10.158.0.1 | 10.158.0.2~10.158.15.253 |
southamerica-west1 | 10.194.0.0/20 | 10.194.0.1 | 10.194.0.2~10.194.15.253 |
us-central1 | 10.128.0.0/20 | 10.128.0.1 | 10.128.0.2~10.128.15.253 |
us-east1 | 10.142.0.0/20 | 10.142.0.1 | 10.142.0.2~10.142.15.253 |
us-east4 | 10.150.0.0/20 | 10.150.0.1 | 10.150.0.2~10.150.15.253 |
us-east5 | 10.202.0.0/20 | 10.202.0.1 | 10.202.0.2~10.202.15.253 |
us-south1 | 10.206.0.0/20 | 10.206.0.1 | 10.206.0.2~10.206.15.253 |
us-west1 | 10.138.0.0/20 | 10.138.0.1 | 10.138.0.2~10.138.15.253 |
us-west2 | 10.168.0.0/20 | 10.168.0.1 | 10.168.0.2~10.168.15.253 |
us-west3 | 10.180.0.0/20 | 10.180.0.1 | 10.180.0.2~10.180.15.253 |
us-west4 | 10.182.0.0/20 | 10.182.0.1 | 10.182.0.2~10.182.15.253 |
その他の考慮事項
すべてのサブネットのプライマリおよびセカンダリの IPv4 アドレス範囲が、VM 内で実行されるソフトウェアが使用する IPv4 アドレス範囲と競合しないようにしてください。一部の Google プロダクトやサードパーティ プロダクトでは、ゲスト オペレーティング システム内でのルーティングに 172.17.0.0/16
が使用されます。たとえば、デフォルトの Docker ブリッジ ネットワークではこの範囲が使用されます。172.17.0.0/16
を使用するプロダクトに依存している場合は、サブネットのプライマリおよびセカンダリの IPv4 アドレス範囲でこの範囲を使用しないでください。
IPv6 サブネット範囲
VPC ネットワークのサブネットで IPv6 を有効にするときは、サブネットの IPv6 アクセスタイプを選択します。IPv6 アクセスタイプによって、サブネットが内部 IPv6 アドレスまたは外部 IPv6 アドレスのどちらで構成されるかが決まります。
内部 IPv6 アドレスは、VPC ネットワーク内の VM 間の通信に使用されます。ルーティングは VPC ネットワークのスコープ内でのみ行えます。インターネットにはルーティングできません。
外部 IPv6 アドレスは、VPC ネットワーク内の VM 間通信に使用でき、インターネットでもルーティング可能です。
VM インターフェースが IPv6 サブネット範囲を持つサブネットに接続されている場合は、VM に IPv6 アドレスを構成できます。サブネットの IPv6 アクセスタイプによって、VM に内部 IPv6 アドレスを割り当てるか、外部 IPv6 アドレスを割り当てるかが決まります。
IPv6 の仕様
IPv6 サブネット範囲は、リージョン リソースです。
内部および外部の IPv6 サブネット範囲は、すべてのリージョンで使用できます。
IPv6 サブネット範囲には、
/64
の範囲が自動的に割り当てられます。サブネットの IPv6 アクセスタイプ(内部または外部)は変更できません。
IPv6 アクセスタイプが内部の場合、デュアル スタックのサブネットをシングルスタックに変更することはできません。
内部 IPv6 の仕様
内部 IPv6 範囲は、ユニーク ローカル アドレス(ULA)を使用します。
IPv6 の ULA は、IPv4 での RFC 1918 アドレスのようなものです。ULA はインターネットからアクセスできず、パブリック ルーティングはできません。
内部 IPv6 範囲を持つサブネットを作成するには、まず VPC ネットワークに内部 IPv6 範囲を割り当てます。
/48
IPv6 範囲が割り当てられます。内部 IPv6 範囲を持つサブネットを作成すると、サブネットの/64
範囲は VPC ネットワークの範囲から割り当てられます。VPC ネットワークの内部 IPv6 範囲は、Google Cloud 内で一意です。
Google に VPC ネットワークの内部 IPv6 範囲を割り当てさせるか、自分で特定の範囲を選択できます。VPC ネットワークが Google Cloud 以外のネットワークに接続している場合は、それらの環境で使用されている範囲と重複しない範囲を選択してください。
VPC ネットワークにある
/48
の内部 IPv6 範囲の割り当ては、永続的なものです。無効にすることも、後で変更することもできません。
他の VPC ネットワークは同じ範囲を使用できず、VPC ネットワーク ピアリングの使用時に IPv6 サブネット範囲が重複する可能性がなくなります。
外部 IPv6 仕様
外部 IPv6 アドレス範囲では、グローバル ユニキャスト アドレス(GUA)が使用されます。
外部 IPv6 アドレスは、VPC ネットワーク内の VM 間通信に使用でき、インターネットでもルーティング可能です。インターネットの下り(外向き)と上り(内向き)を制御するには、ファイアウォール ルールまたは階層型ファイアウォール ポリシーを構成します。インターネットへの IPv6 ルーティングを完全に無効にするには、VPC ネットワーク内の IPv6 デフォルト ルートを削除します。
外部 IPv6 アドレスは、プレミアム ティアでのみ使用できます。
IPv6 範囲の割り当て
IPv6 範囲は、ネットワーク、サブネット、仮想マシン インスタンス(VM)に割り当てることができます。
リソースの種類 | 範囲サイズ | 詳細 |
---|---|---|
VPC ネットワーク | /48 |
サブネットで内部 IPv6 を有効にするには、まず VPC ネットワークで内部 IPv6 範囲を割り振る必要があります。
|
サブネット | /64 |
IPv6 アクセスタイプの設定で IPv6 アドレスが内部か外部かが制御されます。 サブネットには、内部 IPv6 アドレスまたは外部 IPv6 アドレスのいずれかを使用できます。
IPv6 を有効にすると、次のようになります。
|
仮想マシン インスタンス(VM) | /96 |
VM で IPv6 を有効にすると、VM には接続先のサブネットから VM が内部 IPv6 アドレスまたは外部 IPv6 アドレスのどちらを取得するかは構成しません。VM では、接続しているサブネットから IPv6 アクセスタイプが継承されます。 |
次のステップ
使ってみる
Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Cloud NAT のパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
Cloud NAT の無料トライアル