arrow_back

VPC ネットワーキング: スタートガイド

ログイン 参加
700 以上のラボとコースにアクセス

VPC ネットワーキング: スタートガイド

ラボ 1時間 universal_currency_alt クレジット: 5 show_chart 入門
info このラボでは、学習をサポートする AI ツールが組み込まれている場合があります。
700 以上のラボとコースにアクセス

概要

Google Cloud Virtual Private Cloud(VPC)は、Compute Engine 仮想マシン(VM)インスタンス、Kubernetes Engine コンテナ、App Engine フレキシブル環境にネットワーキング機能を提供しています。つまり、VPC ネットワークがなければ VM インスタンス、コンテナ、App Engine アプリケーションを作成することはできません。そのため、新しい Google Cloud プロジェクトには、すぐに使えるようにデフォルト ネットワークが用意されています。

VPC ネットワークは、Google Cloud 内で仮想化されているという点を除き、物理ネットワークと同じように考えることができます。VPC ネットワークは、データセンター内のリージョン仮想サブネットワーク(サブネット)のリストで構成されるグローバルリソースであり、サブネットはすべてグローバルな広域ネットワーク(WAN)で接続されています。VPC ネットワークは、Google Cloud 内で互いに論理的に隔離されています。

このラボでは、ファイアウォール ルールを含む自動モードの VPC ネットワークと、2 つの VM インスタンスを作成します。また、それらの VM インスタンスの接続性について見ていきます。

目標

このラボでは、次のタスクについて学びます。

  • デフォルトの VPC ネットワークについて確認する

  • ファイアウォール ルールを含む自動モードのネットワークを作成する

  • Compute Engine を使用して VM インスタンスを作成する

  • VM インスタンスの接続性について詳しく確認する

設定と要件

各ラボでは、新しい Google Cloud プロジェクトとリソースセットを一定時間無料で利用できます。

  1. Qwiklabs にシークレット ウィンドウでログインします。

  2. ラボのアクセス時間(例: 1:15:00)に注意し、時間内に完了できるようにしてください。
    一時停止機能はありません。必要な場合はやり直せますが、最初からになります。

  3. 準備ができたら、[ラボを開始] をクリックします。

  4. ラボの認証情報(ユーザー名パスワード)をメモしておきます。この情報は、Google Cloud Console にログインする際に使用します。

  5. [Google Console を開く] をクリックします。

  6. [別のアカウントを使用] をクリックし、このラボの認証情報をコピーしてプロンプトに貼り付けます。
    他の認証情報を使用すると、エラーが発生したり、料金の請求が発生したりします。

  7. 利用規約に同意し、再設定用のリソースページをスキップします。

タスク 1. デフォルト ネットワークについて確認する

各 Google Cloud プロジェクトは デフォルト ネットワークを備えています。このネットワークには、サブネット、ルート、ファイアウォール ルールが含まれています。

サブネットを確認する

デフォルトネットワークには、各 Google Cloud リージョンのサブネットが含まれています。

  • Cloud Console のナビゲーション メニューNavigation menu icon)で [VPC ネットワーク] > [VPC ネットワーク] の順にクリックします。
    デフォルト ネットワークとそのサブネットが表示されます。
    各サブネットは Google Cloud リージョンとプライベート RFC 1918 CIDR ブロックに関連付けられています。この CIDR ブロックは内部 IP アドレス範囲ゲートウェイに使用されます。

ルートを表示する

ルートは、VM インスタンスと VPC ネットワークに対して、インスタンスから宛先(ネットワーク内部または Google Cloud の外部)にトラフィックを送信する方法を通知するものです。各 VPC ネットワークにはいくつかのデフォルト ルートが用意されており、サブネット間でのトラフィックのルーティングや、適切なインスタンスからインターネットへのトラフィックの送信ができます。

  • 左側のペインで [ルート] をクリックします。
    各サブネットのルートと、デフォルト インターネット ゲートウェイ(0.0.0.0/0)のルートが表示されます。
    これらのルートは状況に応じて自動的に管理されますが、カスタムの静的ルートを作成して一部のパケットを特定の宛先に送信することもできます。たとえば、ルートを作成して、NAT ゲートウェイとして構成されたインスタンスにすべての送信トラフィックを送るように設定することも可能です。

ファイアウォール ルールを表示する

各 VPC ネットワークは、構成可能な分散仮想ファイアウォールを実装しています。ファイアウォール ルールを使用すると、どのパケットをどの宛先に送信できるようにするかをコントロールすることができます。また、あらゆる VPC ネットワークには、すべての受信接続をブロックし、すべての送信接続を許可するという 2 つの暗黙ファイアウォール ルールが存在します。

  • 左側のペインで、[ファイアウォール] をクリックします。
    デフォルト ネットワークには、次の 4 つの上り(内向き)のファイアウォール ルールがあります。
    • default-allow-icmp
    • default-allow-rdp
    • default-allow-ssh
    • default-allow-internal
メモ: これらのファイアウォール ルールにより、任意の送信元(0.0.0.0/0)からの ICMP、RDP、SSH の上り(内向き)トラフィックと、このネットワーク(10.128.0.0/9)内の TCP、UDP、ICMP のすべてのトラフィックが許可されます。[ターゲット]、[フィルタ]、[プロトコル / ポート]、[アクション] の各列に、これらのルールの説明があります。

ファイアウォール ルールを削除する

  1. 左側のペインで、[ファイアウォール] をクリックします。
  2. デフォルト ネットワークのファイアウォール ルールをすべて選択します。
  3. [削除] をクリックします。
  4. [削除] をもう一度クリックして、ファイアウォール ルールの削除を確定します。

delete_firewalls.png

デフォルト ネットワークを削除する

  1. 左側のペインで [VPC ネットワーク] をクリックします。
  2. デフォルト ネットワークを選択します。
  3. [VPC ネットワークを削除] をクリックします。
  4. [削除] をクリックして、デフォルト ネットワークの削除を確定します。
    ネットワークが削除されるまで待ってから次に進みます。
  5. 左側のペインで [ルート] をクリックします。
    ルートが表示されていないことを確認します。これを表示するには、[更新] をクリックする必要がある場合があります。
  6. 左側のペインで、[ファイアウォール] をクリックします。
    ファイアウォール ルールが表示されていないことを確認します。
メモ: VPC ネットワークがない場合は、ルートもファイアウォール ルールもありません。

VM インスタンスを作成してみる

VPC ネットワークがない場合は VM インスタンスを作成できないことを確認します。

  1. ナビゲーション メニューNavigation menu icon)で、[Compute Engine] > [VM インスタンス] をクリックします。
  2. [インスタンスを作成] をクリックします。
  3. デフォルト値をそのまま使用して [作成] をクリックします。エラーが表示されます。
  4. 警告ボックスで、[問題に移動] をクリックします。詳細を表示するには、下にスクロールする必要がある場合があります。このプロジェクトにはネットワークもサブネットワークもありません。
  5. [キャンセル] をクリックします。
メモ: 想定どおり、VPC ネットワークがないと VM インスタンスを作成できません。

タスク 2. VPC ネットワークと VM インスタンスを作成する

VM インスタンスを作成するために、まず VPC ネットワークを作成します。

ファイアウォール ルールを持つ自動モードの VPC ネットワークを作成する

自動モードのネットワークを作成して default ネットワークを再現します。

  1. ナビゲーション メニューナビゲーション メニュー)で、[VPC ネットワーク] > [VPC ネットワーク] をクリックします。
  2. [VPC ネットワークを作成] をクリックします。
  3. [名前] に「mynetwork」と入力します。
  4. [サブネット作成モード] で [自動] をクリックします。
    自動モードのネットワークは、各リージョンのサブネットを自動的に作成します。
  5. [ファイアウォール] で、選択可能なすべてのルールのチェックボックスをオンにします。
    これらのルールは、デフォルト ネットワークに含まれている標準のファイアウォール ルールと同じです。
    deny-all-ingress ルールと allow-all-egress ルールも表示されますが、これらは暗黙のルールなので、選択したり無効にしたりすることはできません。この 2 つのルールは優先度が低いため(値が大きいほど優先度が低い)、ICMP、Custom、RDP、SSH の許可ルールが先に検討されます。
  6. [作成] をクリックします。
    新しいネットワークの準備ができたら、各リージョンにサブネットが作成されたことを確認します。
  7. us-central1europe-west4 のサブネットの IP アドレス範囲を書き留めておいてください。
    次の手順で、これらの IP アドレス範囲を参照します。
メモ: default ネットワークを削除しても、上述のように自動モードのネットワークを作成すればすぐに作り直すことができます。

us-central1 に VM インスタンスを作成する

us-central1 リージョンに VM インスタンスを作成します。リージョンとゾーンを選択するとサブネットが決まり、そのサブネットの IP アドレス範囲から内部 IP アドレスが割り当てられます。

  1. ナビゲーション メニューNavigation menu icon)で、[Compute Engine] > [VM インスタンス] をクリックします。

  2. [インスタンスを作成] をクリックします。

  3. 次のように指定し、残りの設定はデフォルトのままにします。

    プロパティ 値(値を入力するか、指定されたオプションを選択)
    名前 mynet-us-vm
    リージョン us-central1
    ゾーン us-central1-c
    シリーズ N1
    マシンタイプ f1-micro(1 個の vCPU、614 MB のメモリ)
  4. [作成] をクリックします。

  5. 新しいインスタンスの [内部 IP] のアドレスが、us-central1 内のサブネットの IP アドレス範囲(10.128.0.0/20)から割り当てられていることを確認します。

    [内部 IP] のアドレスは 10.128.0.2 になっているはずです。10.128.0.1 はゲートウェイ用に予約されていて、このサブネットに他のインスタンスは構成されていないからです。

europe-west4 に VM インスタンスを作成する

europe-west4 リージョンに VM インスタンスを作成します。

  1. [インスタンスを作成] をクリックします。

  2. 次のように指定し、残りの設定はデフォルトのままにします。

    プロパティ 値(値を入力するか、指定されたオプションを選択)
    名前 mynet-eu-vm
    リージョン europe-west4
    ゾーン europe-west4-c
    シリーズ N1
    マシンタイプ f1-micro(1 個の vCPU、614 MB のメモリ)
  3. [作成] をクリックします。

  4. 新しいインスタンスの [内部 IP] のアドレスが、europe-west4 内のサブネットの IP アドレス範囲(10.164.0.0/20)から割り当てられていることを確認します。

    [内部 IP] のアドレスは 10.164.0.2 になっているはずです。10.164.0.1 はゲートウェイ用に予約されていて、このサブネットに他のインスタンスは構成されていないからです。

メモ: どちらの VM インスタンスでも、[外部 IP] のアドレスは一時的なもの(エフェメラル)です。インスタンスが停止すると、インスタンスに割り当てられているエフェメラル外部 IP アドレスは解放されて汎用の Compute Engine プールに戻され、他のプロジェクトで使用できるようになります。停止したインスタンスが再起動されると、インスタンスに新しいエフェメラル外部 IP アドレスが割り当てられます。または、静的な外部 IP アドレスを予約して、明示的に解放するまで無期限でプロジェクトに割り当てることもできます。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 VPC ネットワークと VM インスタンスを作成する

タスク 3. VM インスタンスの接続性について詳しく確認する

VM インスタンスの接続性について確認します。具体的には、tcp:22 を使用して SSH での VM インスタンスへの接続を試し、ICMP を使用して VM インスタンスの内部 IP アドレスと外部 IP アドレスに対して ping を実行します。さらに、ファイアウォール ルールを個別に削除して、接続性に対する影響を調べます。

VM インスタンスの接続を確認する

mynetwork で作成したファイアウォール ルールでは、mynetwork の内部(内部 IP)と外部(外部 IP)からの SSH と ICMP の上り(内向き)トラフィックが許可されます。

  1. ナビゲーション メニューNavigation menu icon)で、[Compute Engine] > [VM インスタンス] をクリックします。
    mynet-eu-vm の外部 IP アドレスと内部 IP アドレスをメモしておきます。
  2. mynet-us-vm で [SSH] をクリックしてターミナルを起動し、接続します。
メモ: allow-ssh ファイアウォール ルールによって、tcp:22 に対する内向きトラフィックがすべて許可(送信元は任意(0.0.0.0/0))されているため、SSH でインスタンスに接続できます。また、Compute Engine が SSH 認証鍵を自動的に作成して次のいずれかの場所に保存するため、SSH 接続はシームレスに機能します。
  • デフォルトでは、生成された鍵はプロジェクトまたはインスタンスのメタデータに追加されます。
  • OS ログインを使用するようにアカウントが設定されている場合、生成された鍵はユーザー アカウントとともに保存されます。

SSH 認証鍵を作成し、公開 SSH 認証鍵のメタデータを編集することで、Linux インスタンスへのアクセスを制御することもできます。

  1. 次のコマンドを実行して、mynet-eu-vm の内部 IP アドレスへの接続をテストします。コマンドのプレースホルダは、mynet-eu-vm の内部 IP に置き換えます。

ping -c 3 <mynet-eu-vm の内部 IP を入力>

allow-custom ファイアウォール ルールで許可されているため、mynet-eu-vm の内部 IP に ping が通ります。

  1. 次のコマンドを実行して、mynet-eu-vm の外部 IP アドレスへの接続をテストします。コマンドのプレースホルダは、mynet-eu-vm の外部 IP に置き換えます。

ping -c 3 <mynet-eu-vm の外部 IP を入力>

メモ: mynet-us-vm に SSH で接続し、mynet-eu-vm の内部 IP アドレスと外部 IP アドレスに対して期待どおりに ping を実行できます。同様に、mynet-eu-vm に SSH で接続し、mynet-us-vm の内部 IP アドレスと外部 IP アドレスに対して ping を実行することもできます。

allow-icmp ファイアウォール ルールを削除する

allow-icmp ファイアウォール ルールを削除しても mynet-eu-vm の内部 IP アドレスと外部 IP アドレスに対して ping が通るか試してみます。

  1. ナビゲーション メニューナビゲーション メニュー)で、[VPC ネットワーク] > [ファイアウォール] の順にクリックします。

  2. mynetwork-allow-icmp ルールを選択します。

  3. [削除] をクリックします。

  4. [削除] をクリックして削除を確定します。
    削除が完了するまで待ちます。

  5. mynet-us-vm の SSH ターミナルに戻ります。

  6. 次のコマンドを実行して、mynet-eu-vm の内部 IP アドレスへの接続をテストします。コマンドのプレースホルダは、mynet-eu-vm の内部 IP に置き換えます。

ping -c 3 <mynet-eu-vm の内部 IP を入力>

allow-custom ファイアウォール ルールで許可されているため、mynet-eu-vm の内部 IP に ping が通ります。

  1. 次のコマンドを実行して、mynet-eu-vm の外部 IP アドレスへの接続をテストします。コマンドのプレースホルダは、mynet-eu-vm の外部 IP に置き換えます。

ping -c 3 <mynet-eu-vm の外部 IP を入力>
メモ: 100% packet loss」と表示されます。これは、mynet-eu-vm の外部 IP アドレスに ping が通らないことを示しています。先ほど allow-icmp ファイアウォール ルールを削除したため、想定どおりの結果です。

allow-custom ファイアウォール ルールを削除する

allow-custom ファイアウォール ルールを削除しても、mynet-eu-vm の内部 IP アドレスに対して ping が通るかを試してみます。

  1. ナビゲーション メニューナビゲーション メニュー)で、[VPC ネットワーク] > [ファイアウォール] の順にクリックします。

  2. mynetwork-allow-custom ルールを選択します。

  3. [削除] をクリックします。

  4. [削除] をクリックして削除を確定します。
    削除が完了するまで待ちます。

  5. mynet-us-vm の SSH ターミナルに戻ります。

  6. 次のコマンドを実行して、mynet-eu-vm の内部 IP アドレスへの接続をテストします。コマンドのプレースホルダは、mynet-eu-vm の内部 IP に置き換えます。

ping -c 3 <mynet-eu-vm の内部 IP を入力>
メモ: 100% packet loss」と表示されます。これは、mynet-eu-vm の内部 IP アドレスに ping が通らないことを示しています。先ほど allow-custom ファイアウォール ルールを削除したため、想定どおりの結果です。
  1. SSH ターミナルを終了します。

exit

allow-ssh ファイアウォール ルールを削除する

allow-ssh ファイアウォール ルールを削除しても SSH で mynet-us-vm に接続できるかを試してみます。

  1. ナビゲーション メニューナビゲーション メニュー)で、[VPC ネットワーク] > [ファイアウォール] の順にクリックします。
  2. mynetwork-allow-ssh ルールを選択します。
  3. [削除] をクリックします。
  4. [削除] をクリックして削除を確定します。
  5. 削除が完了するまで待ちます。
  6. ナビゲーション メニューで、[Compute Engine] > [VM インスタンス] の順にクリックします。
  7. mynet-us-vm で [SSH] をクリックしてターミナルを起動し、接続します。
メモ: Connection failed」というメッセージが表示されます。このメッセージは、SSH で mynet-us-vm に接続できないことを示しています。先ほど allow-ssh ファイアウォール ルールを削除したからです。

タスク 4. まとめ

このラボでは、default ネットワークとそのサブネット、ルート、ファイアウォール ルールについて見てきました。default ネットワークを削除して、VPC ネットワークがないと VM インスタンスを作成できないことを確認し、サブネット、ルート、ファイアウォール ルール、2 つの VM インスタンスを持つ新しい自動モード VPC ネットワークを作成しました。また、VM インスタンスの接続性をテストし、接続性に対するファイアウォール ルールの影響を調べました。

ラボを終了する

ラボが完了したら、[ラボを終了] をクリックします。ラボで使用したリソースが Google Cloud Skills Boost から削除され、アカウントの情報も消去されます。

ラボの評価を求めるダイアログが表示されたら、星の数を選択してコメントを入力し、[送信] をクリックします。

星の数は、それぞれ次の評価を表します。

  • 星 1 つ = 非常に不満
  • 星 2 つ = 不満
  • 星 3 つ = どちらともいえない
  • 星 4 つ = 満足
  • 星 5 つ = 非常に満足

フィードバックを送信しない場合は、ダイアログ ボックスを閉じてください。

フィードバックやご提案の送信、修正が必要な箇所をご報告いただく際は、[サポート] タブをご利用ください。

Copyright 2020 Google LLC All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。

始める前に

  1. ラボでは、Google Cloud プロジェクトとリソースを一定の時間利用します
  2. ラボには時間制限があり、一時停止機能はありません。ラボを終了した場合は、最初からやり直す必要があります。
  3. 画面左上の [ラボを開始] をクリックして開始します

シークレット ブラウジングを使用する

  1. ラボで使用するユーザー名パスワードをコピーします
  2. プライベート モードで [コンソールを開く] をクリックします

コンソールにログインする

    ラボの認証情報を使用して
  1. ログインします。他の認証情報を使用すると、エラーが発生したり、料金が発生したりする可能性があります。
  2. 利用規約に同意し、再設定用のリソースページをスキップします
  3. ラボを終了する場合や最初からやり直す場合を除き、[ラボを終了] はクリックしないでください。クリックすると、作業内容がクリアされ、プロジェクトが削除されます

このコンテンツは現在ご利用いただけません

利用可能になりましたら、メールでお知らせいたします

ありがとうございます。

利用可能になりましたら、メールでご連絡いたします

1 回に 1 つのラボ

既存のラボをすべて終了して、このラボを開始することを確認してください

シークレット ブラウジングを使用してラボを実行する

このラボの実行には、シークレット モードまたはシークレット ブラウジング ウィンドウを使用してください。これにより、個人アカウントと受講者アカウントの競合を防ぎ、個人アカウントに追加料金が発生することを防ぎます。