arrow_back

VPC ネットワーキングと Google Compute Engine を使ってみる

ログイン 参加
Quick tip: Review the prerequisites before you run the lab
Use an Incognito or private browser window to run this lab. This prevents any conflicts between your personal account and the student account, which may cause extra charges incurred to your personal account.
知識をテストして、コミュニティで共有しましょう
done
700 を超えるハンズオンラボ、スキルバッジ、コースへのアクセス

VPC ネットワーキングと Google Compute Engine を使ってみる

ラボ 40分 universal_currency_alt クレジット: 5 show_chart 入門
info このラボでは、学習をサポートする AI ツールが組み込まれている場合があります。
知識をテストして、コミュニティで共有しましょう
done
700 を超えるハンズオンラボ、スキルバッジ、コースへのアクセス

概要

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

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

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

目標

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

  • default VPC ネットワークについて確認する
  • ファイアウォール ルールを含む自動モードのネットワークを作成する
  • Compute Engine を使用して VM インスタンスを作成する
  • VM インスタンスの接続性について確認する

設定と要件

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

  1. [ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側の [ラボの詳細] パネルには、以下が表示されます。

    • [Google Cloud コンソールを開く] ボタン
    • 残り時間
    • このラボで使用する必要がある一時的な認証情報
    • このラボを行うために必要なその他の情報(ある場合)
  2. [Google Cloud コンソールを開く] をクリックします(Chrome ブラウザを使用している場合は、右クリックして [シークレット ウィンドウで開く] を選択します)。

    ラボでリソースが起動し、別のタブで [ログイン] ページが表示されます。

    ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。

    注: [アカウントの選択] ダイアログが表示されたら、[別のアカウントを使用] をクリックします。
  3. 必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。

    {{{user_0.username | "Username"}}}

    [ラボの詳細] パネルでもユーザー名を確認できます。

  4. [次へ] をクリックします。

  5. 以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。

    {{{user_0.password | "Password"}}}

    [ラボの詳細] パネルでもパスワードを確認できます。

  6. [次へ] をクリックします。

    重要: ラボで提供された認証情報を使用する必要があります。Google Cloud アカウントの認証情報は使用しないでください。 注: このラボでご自身の Google Cloud アカウントを使用すると、追加料金が発生する場合があります。
  7. その後次のように進みます。

    • 利用規約に同意してください。
    • 一時的なアカウントなので、復元オプションや 2 要素認証プロセスは設定しないでください。
    • 無料トライアルには登録しないでください。

その後、このタブで Google Cloud コンソールが開きます。

注: Google Cloud のプロダクトやサービスのリストを含むメニューを表示するには、左上のナビゲーション メニューをクリックするか、[検索] フィールドにサービス名またはプロダクト名を入力します。

タスク 1. default ネットワークについて確認する

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

サブネットを確認する

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

  1. Google Cloud コンソールのナビゲーション メニュー)で [VPC ネットワーク] > [VPC ネットワーク] の順にクリックします。

  2. [default] をクリックします。

  3. [サブネット] をクリックします。

default ネットワークとそのサブネットが表示されます。
各サブネットはそれぞれ 1 つの Google Cloud リージョンとプライベート RFC 1918 CIDR ブロックに関連付けられています。この CIDR ブロックは内部 IP アドレス範囲ゲートウェイに使用されます。

ルートを表示する

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

  1. 左側のペインで [ルート] をクリックします。

  2. [適用されているルート] で [ネットワーク] をクリックし、[default] を選択します。

  3. [リージョン] をクリックして、Qwiklabs によって割り当てられたラボのリージョンを選択します。

  4. [表示] をクリックします。

    各サブネットのルートが表示されます。
    これらのルートは自動的に管理されますが、カスタムの静的ルートを作成して一部のパケットを特定の宛先に送信することもできます。たとえば、NAT ゲートウェイとして構成されたインスタンスにすべての送信トラフィックを送るルートを作成することも可能です。

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

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

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

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

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

default ネットワークを削除する

  1. Cloud コンソールのナビゲーション メニュー)で [VPC ネットワーク] > [VPC ネットワーク] の順にクリックします。
  2. default ネットワークを選択します。
  3. [VPC ネットワークの削除] をクリックします。
  4. [削除] をクリックして、default ネットワークの削除を確定します。
    ネットワークが削除されるまで待ってから次に進みます。
  5. 左側のペインで [ルート] をクリックします。
    ルートが表示されていないことを確認します。
  6. 左側のペインで、[ファイアウォール] をクリックします。
    ファイアウォール ルールが表示されていないことを確認します。
注: VPC ネットワークがない場合は、ルートもファイアウォール ルールもありません。

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

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

  1. ナビゲーション メニュー)で、[Compute Engine] > [VM インスタンス] をクリックします。
  2. [インスタンスを作成] をクリックします。
  3. デフォルト値をそのまま使用して [作成] をクリックします。 [ネットワーキング] タブにエラーが表示されます。
  4. [問題に移動] をクリックします。
  5. [ネットワーク インターフェース] で、ネットワークを追加する必要があることを示すエラー メッセージを確認します。
  6. [キャンセル] をクリックします。
注: 想定どおり、VPC ネットワークがないと VM インスタンスを作成できません。

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

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

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

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

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

に VM インスタンスを作成する

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

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

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

  3. 以下を指定します。

    プロパティ 値(値を入力するか、指定されたオプションを選択)
    名前 mynet-us-vm
    リージョン
    ゾーン
  4. [シリーズ] で [E2] を選択します。

  5. [マシンタイプ] で、[e2-micro(2 個の vCPU、1 GB メモリ)] を選択します。

  6. [作成] をクリックします。

に VM インスタンスを作成する

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

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

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

    プロパティ 値(値を入力するか、指定されたオプションを選択)
    名前 mynet-r2-vm
    リージョン
    ゾーン
  3. [シリーズ] で [E2] を選択します。

  4. [マシンタイプ] で、[e2-micro(2 個の vCPU、1 GB メモリ)] を選択します。

  5. [作成] をクリックします。

注: どちらの 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. ナビゲーション メニュー)で、[Compute Engine] > [VM インスタンス] をクリックします。
    mynet-r2-vm の外部 IP アドレスと内部 IP アドレスをメモしておきます。

  2. mynet-us-vm で、[SSH] をクリックし、ターミナルを起動して接続します。

  3. [承認] ポップアップが表示された場合、[承認] をクリックします。

注: allow-ssh ファイアウォール ルールによって、tcp:22 に対する任意の送信者(0.0.0.0/0)からの受信トラフィックがすべて許可されているため、SSH でインスタンスに接続できます。また、Compute Engine が SSH 認証鍵を自動的に作成して次のいずれかの場所に保存するため、SSH 接続はシームレスに機能します。

  • デフォルトでは、生成された鍵はプロジェクトまたはインスタンスのメタデータに追加されます。
  • OS Login を使用するようにアカウントが構成されている場合、生成された鍵はユーザー アカウントとともに保存されます。

SSH 認証鍵を作成し、公開 SSH 認証鍵のメタデータを編集することで、Linux インスタンスへのアクセスを制御することもできます。
  1. 次のコマンドを実行して、mynet-r2-vm の内部 IP アドレスへの接続性をテストします。コマンドのプレースホルダは、mynet-r2-vm の内部 IP アドレスに置き換えます。
ping -c 3 <mynet-r2-vm の内部 IP アドレスをこちらに入力>

allow-custom ファイアウォール ルールで許可されているため、mynet-r2-vm の内部 IP アドレスに ping を実行できます。

  1. 次のコマンドを実行して、mynet-r2-vm の外部 IP アドレスへの接続性をテストします。コマンドのプレースホルダは、mynet-r2-vm の外部 IP アドレスに置き換えます。
ping -c 3 <mynet-r2-vm の外部 IP アドレスをこちらに入力>

注: 想定どおり、mynet-r2-vm に SSH で接続し、mynet-r2-vm の内部 IP アドレスと外部 IP アドレスに対して ping を実行できます。同様に、mynet-r2-vm に SSH で接続し、mynet-r2-vm の内部 IP アドレスと外部 IP アドレスに対して ping を実行することもできます。

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

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

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

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

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

  4. [削除] をクリックして削除を確定します。
    ファイアウォール ルールの削除が完了するまで待ちます。

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

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

ping -c 3 <mynet-r2-vm の内部 IP アドレスをこちらに入力>

allow-custom ファイアウォール ルールで許可されているため、mynet-r2-vm の内部 IP アドレスに ping を実行できます。

  1. 次のコマンドを実行して、mynet-r2-vm の外部 IP アドレスへの接続性をテストします。コマンドのプレースホルダは、mynet-r2-vm の外部 IP アドレスに置き換えます。
ping -c 3 <mynet-r2-vm の外部 IP アドレスをこちらに入力> 注: 100% パケットロスであることが表示されます。これは、mynet-r2-vm の外部 IP アドレスに ping を実行できないことを示しています。先ほど allow-icmp ファイアウォール ルールを削除したため、想定どおりの結果です。

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

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

  1. ナビゲーション メニュー)で、[VPC ネットワーク] > [ファイアウォール] の順にクリックします。
  2. mynetwork-allow-custom ルールを選択します。
  3. [削除] をクリックします。
  4. [削除] をクリックして削除を確定します。
    ファイアウォール ルールの削除が完了するまで待ちます。
  5. mynet-us-vm の SSH ターミナルに戻ります。
  6. 次のコマンドを実行して、mynet-r2-vm の内部 IP アドレスへの接続性をテストします。コマンドのプレースホルダは、mynet-r2-vm の内部 IP アドレスに置き換えます。
ping -c 3 <mynet-r2-v の内部 IP をこちらに入力> 注: 100% パケットロスであることが表示されます。これは、mynet-r2-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] をクリックし、ターミナルを起動して接続します。
注: [接続できませんでした] というメッセージが表示されます。このメッセージは、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 の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。

Before you begin

  1. Labs create a Google Cloud project and resources for a fixed time
  2. Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
  3. On the top left of your screen, click Start lab to begin

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

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

ありがとうございます。

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

One lab at a time

Confirm to end all existing labs and start this one

Use private browsing to run the lab

Use an Incognito or private browser window to run this lab. This prevents any conflicts between your personal account and the Student account, which may cause extra charges incurred to your personal account.