arrow_back

多個虛擬私有雲網路

登录 加入
欢迎加入我们的社区,一起测试和分享您的知识!
done
学习 700 多个动手实验和课程并获得相关技能徽章

多個虛擬私有雲網路

实验 1 小时 10 分钟 universal_currency_alt 5 积分 show_chart 中级
info 此实验可能会提供 AI 工具来支持您学习。
欢迎加入我们的社区,一起测试和分享您的知识!
done
学习 700 多个动手实验和课程并获得相关技能徽章

GSP211

Google Cloud 自修研究室標誌

總覽

有了虛擬私有雲 (VPC) 網路,您可以在較大的雲端架構中維護獨立環境,精細控管資料保護、網路存取權和應用程式安全防護機制。

在本研究室中,您將建立多個虛擬私有雲網路和 VM 執行個體,並測試網路之間的連線能力。具體來說,您會建立兩個含有防火牆規則和 VM 執行個體的自訂模式網路 (managementnetprivatenet),如下列網路圖表所示:

網路圖表

本實驗室已預先建立 mynetwork 網路,當中含有防火牆規則和兩個 VM 執行個體 (mynet-vm-1mynet-vm-2)。

目標

在這個研究室中,您可學習如何執行下列工作:

  • 建立含有防火牆規則的自訂模式虛擬私有雲網路
  • 使用 Compute Engine 建立 VM 執行個體
  • 瞭解各個虛擬私有雲網路的 VM 執行個體連線能力
  • 建立具備多個網路介面的 VM 執行個體

設定和需求

點選「Start Lab」按鈕前的須知事項

請詳閱以下操作說明。研究室活動會計時,而且中途無法暫停。點選「Start Lab」 後就會開始計時,讓您瞭解有多少時間可以使用 Google Cloud 資源。

您將在真正的雲端環境中完成實作研究室活動,而不是在模擬或示範環境。為達此目的,我們會提供新的暫時憑證,讓您用來在研究室活動期間登入及存取 Google Cloud。

如要完成這個研究室活動,請先確認:

  • 您可以使用標準的網際網路瀏覽器 (Chrome 瀏覽器為佳)。
注意:請使用無痕模式或私密瀏覽視窗執行此研究室。這可以防止個人帳戶和學生帳戶之間的衝突,避免個人帳戶產生額外費用。
  • 是時候完成研究室活動了!別忘了,活動一開始將無法暫停。
注意:如果您擁有個人 Google Cloud 帳戶或專案,請勿用於本研究室,以免產生額外費用。

如何開始研究室及登入 Google Cloud 控制台

  1. 按一下「Start Lab」(開始研究室) 按鈕。如果研究室會產生費用,畫面中會出現選擇付款方式的彈出式視窗。左側的「Lab Details」窗格會顯示下列項目:

    • 「Open Google Cloud console」按鈕
    • 剩餘時間
    • 必須在這個研究室中使用的暫時憑證
    • 完成這個實驗室所需的其他資訊 (如有)
  2. 點選「Open Google Cloud console」;如果使用 Chrome 瀏覽器,也能按一下滑鼠右鍵,然後選取「在無痕式視窗中開啟連結」

    接著,實驗室會啟動相關資源並開啟另一個分頁,當中顯示「登入」頁面。

    提示:您可以在不同的視窗中並排開啟分頁。

    注意:如果頁面中顯示「選擇帳戶」對話方塊,請點選「使用其他帳戶」
  3. 如有必要,請將下方的 Username 貼到「登入」對話方塊。

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

    您也可以在「Lab Details」窗格找到 Username

  4. 點選「下一步」

  5. 複製下方的 Password,並貼到「歡迎使用」對話方塊。

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

    您也可以在「Lab Details」窗格找到 Password

  6. 點選「下一步」

    重要事項:請務必使用實驗室提供的憑證,而非自己的 Google Cloud 帳戶憑證。 注意:如果使用自己的 Google Cloud 帳戶來進行這個實驗室,可能會產生額外費用。
  7. 按過後續的所有頁面:

    • 接受條款及細則。
    • 由於這是臨時帳戶,請勿新增救援選項或雙重驗證機制。
    • 請勿申請免費試用。

Google Cloud 控制台稍後會在這個分頁開啟。

注意:如要查看列出 Google Cloud 產品和服務的選單,請點選左上角的「導覽選單」「導覽選單」圖示

啟動 Cloud Shell

Cloud Shell 是搭載多項開發工具的虛擬機器,提供永久的 5 GB 主目錄,而且在 Google Cloud 中運作。Cloud Shell 提供指令列存取權,方便您使用 Google Cloud 資源。

  1. 點按 Google Cloud 控制台上方的「啟用 Cloud Shell」圖示 「啟動 Cloud Shell」圖示

連線完成即代表已通過驗證,且專案已設為您的 PROJECT_ID。輸出內容中有一行宣告本工作階段 PROJECT_ID 的文字:

您在本工作階段中的 Cloud Platform 專案會設為「YOUR_PROJECT_ID」

gcloud 是 Google Cloud 的指令列工具,已預先安裝於 Cloud Shell,並支援 Tab 鍵自動完成功能。

  1. (選用) 您可以執行下列指令來列出使用中的帳戶:
gcloud auth list
  1. 點按「授權」

  2. 輸出畫面應如下所示:

輸出內容:

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (選用) 您可以使用下列指令來列出專案 ID:
gcloud config list project

輸出內容:

[core] project = <project_ID>

輸出內容範例:

[core] project = qwiklabs-gcp-44776a13dea667a6 附註:如需有關 gcloud 的完整說明,請前往 Google Cloud 並參閱「gcloud CLI overview guide」(gcloud CLI 總覽指南)。

工作 1:建立含有防火牆規則的自訂模式虛擬私有雲網路

建立 managementnetprivatenet 這兩個自訂網路,並設定防火牆規則來允許 SSHICMPRDP ingress 流量。

建立 managementnet 網路

使用 Cloud 控制台建立 managementnet 網路。

  1. 依序點選 Cloud 控制台中的「導覽選單」圖示 「Navigation menu」(導覽選單) 圖示 >「虛擬私有雲網路」>「虛擬私有雲網路」

導覽選單

  1. 請留意 defaultmynetwork 網路及其子網路。

    各項 Google Cloud 專案一開始時都含有 default 網路。另外,系統已為您預先建立了 mynetwork 網路,如網路圖表所示。

  2. 按一下「建立虛擬私有雲網路」

  3. 在「名稱」中輸入 managementnet

  4. 在「子網路建立模式」部分,按一下「自訂」

  5. 設定下方的值,其他值均保留預設值:

    屬性 值 (依指示輸入值或選取選項)
    名稱 managementsubnet-1
    區域
    IPv4 範圍 10.130.0.0/20
  6. 按一下「完成」

  7. 按一下「對等指令列」

    您也可以依據這些指令,透過 Cloud Shell 指令列建立網路和子網路。稍後建立 privatenet 網路時,您會使用這些指令,並設定類似的參數。

  8. 按一下「關閉」

  9. 按一下「建立」

測試已完成的工作

按一下「Check my progress」,確認工作已完成。如果已成功建立 managementnet 網路,您就會看見評估分數。

建立 managementnet 網路

建立 privatenet 網路

透過 Cloud Shell 指令列建立 privatenet 網路。

  1. 執行下列指令來建立 privatenet 網路:
gcloud compute networks create privatenet --subnet-mode=custom
  1. 執行下列指令,建立 privatesubnet-1 子網路:
gcloud compute networks subnets create privatesubnet-1 --network=privatenet --region={{{project_0.default_region | Region_1 }}} --range=172.16.0.0/24
  1. 執行下列指令,建立 privatesubnet-2 子網路:
gcloud compute networks subnets create privatesubnet-2 --network=privatenet --region={{{project_0.default_region_2 | Region_2 }}} --range=172.20.0.0/20

測試已完成的工作

按一下「Check my progress」,確認工作已完成。如果已成功建立 privatenet 網路,您就會看見評估分數。

建立 privatenet 網路
  1. 執行下列指令,列出可用的虛擬私有雲網路:
gcloud compute networks list

輸出內容應如下所示:

NAME: default SUBNET_MODE: AUTO BGP_ROUTING_MODE: REGIONAL IPV4_RANGE: GATEWAY_IPV4: NAME: managementnet SUBNET_MODE: CUSTOM BGP_ROUTING_MODE: REGIONAL IPV4_RANGE: GATEWAY_IPV4: ... 注意:defaultmynetwork 均為自動模式網路,managementnetprivatenet 則是自訂模式網路。自動模式網路會自動在每個區域中建立子網路,自訂模式網路一開始則沒有任何子網路,方便您完整控管是否建立子網路
  1. 執行下列指令,列出可用的虛擬私有雲子網路 (按照虛擬私有雲網路排序):
gcloud compute networks subnets list --sort-by=NETWORK

輸出內容應如下所示:

NAME: default REGION: {{{project_0.default_region | Region_1}}} NETWORK: default RANGE: 10.128.0.0/20 STACK_TYPE: IPV4_ONLY IPV6_ACCESS_TYPE: INTERNAL_IPV6_PREFIX: EXTERNAL_IPV6_PREFIX: ... 注意:一如預期,defaultmynetwork 網路為自動模式網路,因此每個區域 (可用區/區域可能會因實驗室要求而有出入) 都有子網路。managementnetprivatenet 網路是自訂模式網路,因此只有您建立的子網路。
  1. 依序點選 Cloud 控制台中的「導覽選單」圖示 >「虛擬私有雲網路」>「虛擬私有雲網路」
  2. 您會發現 Cloud 控制台列出了相同的網路和子網路。

建立 managementnet 的防火牆規則

建立防火牆規則,允許 SSHICMPRDP ingress 流量傳送至 managementnet 網路中的 VM 執行個體。

  1. 依序點選 Cloud 控制台中的「導覽選單」圖示 「Navigation menu」(導覽選單) 圖示 >「虛擬私有雲網路」>「防火牆」

  2. 按一下「+ 建立防火牆規則」

  3. 設定下方的值,其他屬性均保留預設值:

    屬性 值 (依指示輸入值或選取選項)
    名稱 managementnet-allow-icmp-ssh-rdp
    網路 managementnet
    目標 網路中的所有執行個體
    來源篩選器 IPv4 範圍
    來源 IPv4 範圍 0.0.0.0/0
    通訊協定和通訊埠 指定通訊協定和通訊埠,先勾選「TCP」並輸入「22, 3389」,然後勾選「其他通訊協定」並輸入「icmp」。
注意事項:請務必在「來源 IPv4 範圍」中加入 /0 來指定所有網路。
  1. 按一下「對等指令列」

    您也可以依據這些指令,透過 Cloud Shell 指令列建立防火牆規則。之後建立 privatenet 的防火牆規則時,您會使用這些指令,並設定類似的參數。

  2. 按一下「關閉」

  3. 按一下「建立」

測試已完成的工作

按一下「Check my progress」,確認工作已完成。如果已成功建立 managementnet 網路的防火牆規則,您就會看見評估分數。

建立 managementnet 的防火牆規則

建立 privatenet 的防火牆規則

使用 Cloud Shell 指令列建立 privatenet 網路的防火牆。

  1. 在 Cloud Shell 中執行下列指令,藉此建立 privatenet-allow-icmp-ssh-rdp 防火牆規則:
gcloud compute firewall-rules create privatenet-allow-icmp-ssh-rdp --direction=INGRESS --priority=1000 --network=privatenet --action=ALLOW --rules=icmp,tcp:22,tcp:3389 --source-ranges=0.0.0.0/0

輸出內容應如下所示:

Creating firewall...done. NAME: privatenet-allow-icmp-ssh-rdp NETWORK: privatenet DIRECTION: INGRESS PRIORITY: 1000 ALLOW: icmp,tcp:22,tcp:3389 DENY: DISABLED: False

測試已完成的工作

按一下「Check my progress」,確認工作已完成。如果已成功建立 privatenet 網路的防火牆規則,您就會看見評估分數。

建立 privatenet 的防火牆規則
  1. 執行下列指令,列出所有防火牆規則 (按照虛擬私有雲網路排序):
gcloud compute firewall-rules list --sort-by=NETWORK

輸出內容應如下所示:

NAME: default-allow-icmp NETWORK: default DIRECTION: INGRESS PRIORITY: 65534 ALLOW: icmp DENY: DISABLED: False NAME: default-allow-internal NETWORK: default DIRECTION: INGRESS PRIORITY: 65534 ALLOW: tcp:0-65535,udp:0-65535,icmp DENY: DISABLED: False ...

系統已為您建立 mynetwork 網路的防火牆規則。您可以在單一防火牆規則 (例如 privatenetmanagementnet 的規則) 中定義多個通訊協定和通訊埠,也可以在多項規則 (例如預設網路和 mynetwork 的規則) 中分別進行設定。

  1. 依序點選 Cloud 控制台中的「導覽選單」圖示 >「虛擬私有雲網路」>「防火牆」
  2. 您會發現 Cloud 控制台列出了相同的防火牆規則。

工作 2:建立 VM 執行個體

建立兩個 VM 執行個體:

  • 位於 managementsubnet-1managementnet-vm-1
  • 位於 privatesubnet-1privatenet-vm-1

建立 managementnet-vm-1 執行個體

使用 Cloud 控制台建立 managementnet-vm-1 執行個體。

  1. 前往 Cloud 控制台,依序點選「導覽選單」>「Compute Engine」>「VM 執行個體」

    系統已預先建立 mynet-vm-2mynet-vm-1,如網路圖表所示。

  2. 點選「建立執行個體」

  3. 設定下方的值,其他屬性均保留預設值:

    屬性 值 (依指示輸入值或選取選項)
    名稱 managementnet-vm-1
    區域
    可用區
    系列 E2
    機型 e2-micro
  4. 按一下「進階選項」中的「網路、磁碟、安全性、管理、單一用戶群」下拉式選單。

  5. 按一下「網路」

  6. 在「網路介面」部分,點選下拉式選單來進行編輯。

  7. 設定下方的值,其他值均保留預設值:

    屬性 值 (依指示輸入值或選取選項)
    網路 managementnet
    子網路 managementsubnet-1
  8. 點選「完成」

  9. 按一下「等效程式碼」

    您也能依據這項指令,透過 Cloud Shell 指令列建立 VM 執行個體。稍後建立 privatenet-vm-1 執行個體時,您會用到這些指令,並設定類似的參數。

  10. 點選「建立」

測試已完成的工作

按一下「Check my progress」,確認工作已完成。如果已成功在 managementnet 網路中建立 VM 執行個體,您就會看見評估分數。

建立 managementnet-vm-1 執行個體

建立 privatenet-vm-1 執行個體

使用 Cloud Shell 指令列建立 privatenet-vm-1 執行個體。

  1. 在 Cloud Shell 執行下列指令,建立 privatenet-vm-1 執行個體:
gcloud compute instances create privatenet-vm-1 --zone={{{project_0.default_zone}}} --machine-type=e2-micro --subnet=privatesubnet-1

輸出內容大致如下所示:

Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-04-972c7275ce91/zones/"{{{project_0.default_zone}}}"/instances/privatenet-vm-1]. NAME: privatenet-vm-1 ZONE: {{{project_0.default_zone}}} MACHINE_TYPE: e2-micro PREEMPTIBLE: INTERNAL_IP: 172.16.0.2 EXTERNAL_IP: 34.135.195.199 STATUS: RUNNING

測試已完成的工作

按一下「Check my progress」,確認工作已完成。如果已成功在 privatenet 網路中建立 VM 執行個體,您就會看見評估分數。

建立 privatenet-vm-1 執行個體
  1. 執行下列指令,列出所有 VM 執行個體 (依可用區排序):
gcloud compute instances list --sort-by=ZONE

輸出內容大致如下所示:

NAME: mynet-vm-2 ZONE: {{{project_0.default_zone_2}}} MACHINE_TYPE: e2-micro PREEMPTIBLE: INTERNAL_IP: 10.164.0.2 EXTERNAL_IP: 34.147.23.235 STATUS: RUNNING NAME: mynet-vm-1 ZONE: {{{project_0.default_zone}}} MACHINE_TYPE: e2-micro PREEMPTIBLE: INTERNAL_IP: 10.128.0.2 EXTERNAL_IP: 35.232.221.58 STATUS: RUNNING ...
  1. 依序點選 Cloud 控制台中的「導覽選單」圖示 「導覽選單」圖示 >「Compute Engine」>「VM 執行個體」

  2. 您會發現 Cloud 控制台列出了相同的 VM 執行個體。

  3. 按一下「資料欄顯示選項」,然後選取「網路」。點選「確定」

    中有三個執行個體, 中有一個執行個體。不過,這些執行個體分散在三個虛擬私有雲網路中,分別是 managementnetmynetworkprivatenet,而且位於不同的可用區和網路。在下一節中,您會瞭解這項配置對內部連線能力的影響。

工作 3:瞭解 VM 執行個體之間的連線能力

瞭解 VM 執行個體之間的連線能力。具體而言,您將確認 VM 執行個體位於相同可用區,以及位於相同虛擬私有雲網路的影響。

對外部 IP 位址進行連線偵測 (ping)

對 VM 執行個體的外部 IP 位址進行連線偵測 (ping),藉此確認是否可以從公開網際網路存取這些執行個體。

  1. 前往 Cloud 控制台,依序點選「導覽選單」>「Compute Engine」>「VM 執行個體」

  2. 記下 mynet-vm-2managementnet-vm-1privatenet-vm-1 的外部 IP 位址。

  3. mynet-vm-1 部分,點選「SSH」來啟動終端機並連線。

  4. 執行下列指令來替換 mynet-vm-2 的外部 IP,藉此測試 mynet-vm-2 外部 IP 的連線能力:

ping -c 3 'Enter mynet-vm-2 external IP here'

連線偵測應會成功。

  1. 執行下列指令來替換 managementnet-vm-1 的外部 IP,藉此測試 managementnet-vm-1 外部 IP 的連線能力:
ping -c 3 'Enter managementnet-vm-1 external IP here'

連線偵測應會成功。

  1. 執行下列指令來替換 privatenet-vm-1 的外部 IP,藉此測試 privatenet-vm-1 外部 IP 的連線能力:
ping -c 3 'Enter privatenet-vm-1 external IP here'

連線偵測應會成功。

注意事項:您可以對所有 VM 執行個體的外部 IP 位址進行連線偵測 (ping),即便執行個體位於不同的可用區或虛擬私有雲網路也沒問題。由此可證,這些執行個體的公開存取權僅受您先前建立的 ICMP 防火牆規則控管。

對內部 IP 位址進行連線偵測 (ping)

對 VM 執行個體的內部 IP 位址進行連線偵測 (ping),藉此確認是否可以從虛擬私有雲網路存取這些執行個體。

  1. 前往 Cloud 控制台,依序點選「導覽選單」圖示 >「Compute Engine」>「VM 執行個體」
  2. 記下 mynet-vm-2managementnet-vm-1privatenet-vm-1 的內部 IP 位址。
  3. 返回 mynet-vm-1SSH 終端機。
  4. 執行下列指令來替換 mynet-vm-2 的內部 IP,藉此測試 mynet-vm-2 內部 IP 的連線能力:
ping -c 3 'Enter mynet-vm-2 internal IP here' 注意:mynet-vm-2 和連線偵測 (ping) 來源 mynet-vm-1 屬於同一個虛擬私有雲網路,因此即便這兩個 VM 執行個體位於不同的可用區、區域和大洲,您還是能對 mynet-vm-2 的內部 IP 位址執行連線偵測 (ping)。
  1. 執行下列指令來替換 managementnet-vm-1 的內部 IP,藉此測試 managementnet-vm-1 內部 IP 的連線能力:
ping -c 3 'Enter managementnet-vm-1 internal IP here 注意:輸出內容應會顯示「100% packet loss」,表示連線偵測失敗。
  1. 執行下列指令來替換 privatenet-vm-1 的內部 IP,藉此測試 privatenet-vm-1 內部 IP 的連線能力:
ping -c 3 'Enter privatenet-vm-1 internal IP here' 注意:輸出內容應會顯示「100% packet loss」,表示連線偵測失敗。managementnet-vm-1privatenet-vm-1 和連線偵測 (ping) 來源 mynet-vm-1 屬於不同的虛擬私有雲網路,因此即便這三個 VM 執行個體都位於相同區域 ,您還是無法對前兩者的內部 IP 位址執行連線偵測 (ping)。

根據預設,虛擬私有雲網路是獨立的私人網路網域。不過,除非設有虛擬私有雲對接或 VPN 等機制,否則不同網路之間不允許任何內部 IP 位址通訊。

注意事項:請考慮對下列工作使用 region_1 = region_2 =

工作 4:建立具備多個網路介面的 VM 執行個體

虛擬私有雲網路中的每個執行個體都有預設的網路介面。您可以建立連結至 VM 的額外網路介面。多個網路介面可讓您建立設定,將執行個體直接連結至多個虛擬私有雲網路 (最多 8 個介面,視執行個體類型而定)。

建立具備多個網路介面的 VM 執行個體

建立網路介面分別位於 privatesubnet-1managementsubnet-1mynetworkvm-appliance 執行個體。這些子網路的 CIDR 範圍不會重疊。如要建立具備多個網路介面控制器 (NIC) 的 VM,此為必要條件。

  1. 依序點選 Cloud 控制台中的「導覽選單」圖示 >「Compute Engine」>「VM 執行個體」

  2. 按一下「建立執行個體」

  3. 設定下方的值,其他屬性均保留預設值:

    屬性 值 (依指示輸入值或選取選項)
    名稱 vm-appliance
    區域
    可用區
    系列 E2
    機型 e2-standard-4
注意:執行個體的介面數量上限會因執行個體的機型和 vCPU 數量而異。e2-standard-4 最多可以建立 4 個網路介面。詳情請參閱 Google Cloud 指南的「網路介面數量上限」一節
  1. 按一下「進階選項」中的「網路、磁碟、安全性、管理、單一用戶群」下拉式選單。

  2. 按一下「網路」

  3. 在「網路介面」部分,點選下拉式選單來進行編輯。

  4. 設定下方的值,其他值均保留預設值:

    屬性 值 (依指示輸入值或選取選項)
    網路 privatenet
    子網路 privatesubnet-1
  5. 點選「完成」

  6. 按一下「新增網路介面」

  7. 設定下方的值,其他值均保留預設值:

    屬性 值 (依指示輸入值或選取選項)
    網路 managementnet
    子網路 managementsubnet-1
  8. 點選「完成」

  9. 按一下「新增網路介面」

  10. 設定下方的值,其他值均保留預設值:

    屬性 值 (依指示輸入值或選取選項)
    網路 mynetwork
    子網路 mynetwork
  11. 按一下「完成」

  12. 按一下「建立」

測試已完成的工作

按一下「Check my progress」,確認工作已完成。如果已成功建立具備多個網路介面的 VM 執行個體,您就會看見評估分數。

建立具備多個網路介面的 VM 執行個體

查看網路介面詳細資料

透過 Cloud 控制台和 VM 的終端機查看 vm-appliance 的網路介面詳細資料。

  1. 依序點選 Cloud 控制台中的「導覽選單」圖示 「Navigation menu」(導覽選單) 圖示 >「Compute Engine」>「VM 執行個體」
  2. vm-appliance 部分,點選「內部 IP」位址中的「nic0」,即可開啟「網路介面詳細資料」頁面。
  3. 確認 nic0 已連結至 privatesubnet-1、已獲派位於該子網路 (172.16.0.0/24) 的內部 IP 位址,並含有適用的防火牆規則。
  4. 點選「nic0」,然後選取「nic1」
  5. 確認 nic1 已連結至 managementsubnet-1、已獲派位於該子網路 (10.130.0.0/20) 的內部 IP 位址,並含有適用的防火牆規則。
  6. 點選「nic1」,然後選取「nic2」
  7. 確認 nic2 已連結至 mynetwork、已獲派位於該子網路 (10.128.0.0/20) 的內部 IP 位址,並含有適用的防火牆規則。
注意事項: 每個網路介面都有專屬的內部 IP 位址,以便 VM 執行個體與這些網路相互通訊。
  1. 依序點選 Cloud 控制台中的「導覽選單」圖示 >「Compute Engine」>「VM 執行個體」
  2. 在「vm-appliance」部分,按一下「SSH」來啟動終端機並建立連線。
  3. 執行下列指令,列出 VM 執行個體中的網路介面:
sudo ifconfig

輸出內容應如下所示:

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1460 inet 172.16.0.3 netmask 255.255.255.255 broadcast 172.16.0.3 inet6 fe80::4001:acff:fe10:3 prefixlen 64 scopeid 0x20<link> ether 42:01:ac:10:00:03 txqueuelen 1000 (Ethernet) RX packets 626 bytes 171556 (167.5 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 568 bytes 62294 (60.8 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1460 inet 10.130.0.3 netmask 255.255.255.255 broadcast 10.130.0.3 inet6 fe80::4001:aff:fe82:3 prefixlen 64 scopeid 0x20<link> ether 42:01:0a:82:00:03 txqueuelen 1000 (Ethernet) RX packets 7 bytes 1222 (1.1 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 17 bytes 1842 (1.7 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 eth2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1460 inet 10.128.0.3 netmask 255.255.255.255 broadcast 10.128.0.3 inet6 fe80::4001:aff:fe80:3 prefixlen 64 scopeid 0x20<link> ether 42:01:0a:80:00:03 txqueuelen 1000 (Ethernet) RX packets 17 bytes 2014 (1.9 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 17 bytes 1862 (1.8 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 注意:sudo ifconfig 指令會列出 Linux VM 的網路介面,以及各個介面的內部 IP 位址。

查看網路介面的連線能力

對位於 privatesubnet-1managementsubnet-1mynetwork 的 VM 執行個體執行連線偵測 (ping),實際確認 vm-appliance 執行個體已連至這三個子網路。

  1. 前往 Cloud 控制台,依序點選「導覽選單」>「Compute Engine」>「VM 執行個體」
  2. 記下 privatenet-vm-1managementnet-vm-1mynet-vm-1mynet-vm-2 的內部 IP 位址。
  3. 返回 vm-applianceSSH 終端機。
  4. 執行下列指令來替換 privatenet-vm-1 的內部 IP,藉此測試 privatenet-vm-1 內部 IP 的連線能力:
ping -c 3 'Enter privatenet-vm-1's internal IP here'

連線偵測成功!

  1. 執行下列指令,重複進行相同的測試:
ping -c 3 privatenet-vm-1 注意:您可以依據名稱對 privatenet-vm-1 進行連線偵測 (ping),這是因為虛擬私有雲網路具備內部 DNS 服務,可讓您依據 DNS 名稱 (而非內部 IP 位址) 指出執行個體。使用執行個體主機名稱執行內部 DNS 查詢時,該項查詢會解析為執行個體的主要介面 (nic0),因此在這個示例中,這樣的情況僅限於 privatenet-vm-1
  1. 執行下列指令來替換 managementnet-vm-1 的內部 IP,藉此測試 managementnet-vm-1 內部 IP 的連線能力:
ping -c 3 'Enter managementnet-vm-1's internal IP here'

連線偵測成功!

  1. 執行下列指令來替換 mynet-vm-1 的內部 IP,藉此測試 mynet-vm-1 內部 IP 的連線能力:
ping -c 3 'Enter mynet-vm-1's internal IP here'

連線偵測成功!

  1. 執行下列指令來替換 mynet-vm-2 的內部 IP,藉此測試 mynet-vm-2 內部 IP 的連線能力:
ping -c 3 'Enter mynet-vm-2's internal IP here' 注意:連線偵測失敗。在具備多個介面的執行個體中,每個介面都會取得所在子網路的路徑。另外,執行個體也會取得一個與主要介面 eth0 相關聯的預設路徑。除非您手動設定,否則流量從執行個體傳送至直接連線的子網路以外的任何目的地時,都會透過 eth0 的預設路徑傳出執行個體。
  1. 如要列出 vm-appliance 執行個體的路徑,請執行下列指令:
ip route

輸出內容應如下所示:

default via 172.16.0.1 dev eth0 10.128.0.0/20 via 10.128.0.1 dev eth2 10.128.0.1 dev eth2 scope link 10.130.0.0/20 via 10.130.0.1 dev eth1 10.130.0.1 dev eth1 scope link 172.16.0.0/24 via 172.16.0.1 dev eth0 172.16.0.1 dev eth0 scope link 注意:主要介面 eth0 會取得預設路徑 (default via 172.16.0.1 dev eth0),eth0、eth1 和 eth2 這三個介面也都會取得個別子網路的路徑。mynet-vm-2 的子網路 (10.132.0.0/20) 並未列入這個轉送表格,因此對這個執行個體進行的連線偵測 (ping) 會在 eth0 (位於其他虛擬私有雲網路) 從 vm-appliance 傳出。如要變更這項行為,您可以設定政策轉送機制,詳情請參閱 Google Cloud 指南中的「設定政策轉送」一節

恭喜!

在這個研究室中,您建立了具備三個網路介面的 VM 執行個體,並驗證了子網路 (連結至具備多個介面的 VM) 中 VM 執行個體的內部連線能力。

另外,您也瞭解了預設網路,以及預設網路的子網路、路徑和防火牆規則,還為新的自動模式虛擬私有雲網路建立了經過測試的連線。

後續步驟/瞭解詳情

如要進一步瞭解虛擬私有雲網路,請參閱使用虛擬私有雲網路相關說明。

Google Cloud 教育訓練與認證

協助您瞭解如何充分運用 Google Cloud 的技術。我們的課程會介紹專業技能和最佳做法,讓您可以快速掌握要領並持續進修。我們提供從基本到進階等級的訓練課程,並有隨選、線上和虛擬課程等選項,方便您抽空參加。認證可協助您驗證及證明自己在 Google Cloud 技術方面的技能和專業知識。

使用手冊上次更新日期:2024 年 10 月 11 日

實驗室上次更新日期:2024 年 10 月 11 日

Copyright 2024 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。

此内容目前不可用

一旦可用,我们会通过电子邮件告知您

太好了!

一旦可用,我们会通过电子邮件告知您