進階 VPC 概念

本頁提供有關虛擬私有雲 (VPC) 網路的其他詳細資料。閱讀本頁面之前,請先參閱「虛擬私有雲網路」一節。如果您想瞭解對等互連的虛擬私有雲網路,請參閱「虛擬私有雲網路對等互連」。

層級較低的 VPC 網路詳細資料

本節提供一些層級較低的 VPC 網路詳細資料。如需一般使用情形的資訊,您並不需要參閱這些資料,但這些資料可提供更多有關 VPC 網路運作方式的深入分析。下列圖表說明這些低層級的詳細資料,並在對應章節中提供詳細資訊。

虛擬私有雲網路。
虛擬私有雲網路 (按一下可放大)。

處理各項功能的方式

不同的 VPC 網路功能會由系統的不同部分處理。其中有些是記錄詳盡的標準網路功能,有些則是 VPC 網路的專屬功能。有些功能可以設定,有些則無法設定。虛擬私人雲端網路使用 Linux 的 VIRTIO 網路模組對乙太網路卡和路由器功能建模,但網路堆疊的較高層級 (例如 ARP 查詢) 則是透過標準網路軟體處理。

ARP 查詢
執行個體核心會發出 ARP 要求,而虛擬私有雲網路會發出 ARP 回覆。MAC 位址與 IP 位址之間的對應關係由執行個體核心處理。
MAC 對照表、IP 對照表、有效連線表
這些表格託管在基礎虛擬私有雲網路上,而且無法進行檢查或設定。
DNS 伺服器

每個執行個體的中繼資料伺服器可做為 DNS 伺服器使用。DNS 伺服器會儲存本機虛擬私人雲端網路中所有虛擬私人雲端網路 IP 位址的 DNS 項目,並呼叫 Google 的公開 DNS 伺服器,取得虛擬私人雲端網路外的項目。您無法設定這個 DNS 伺服器。系統會設定每個執行個體上的 DHCP 用戶端,以管理執行個體的 /etc/resolv.conf 檔案。

您可以修改 DHCP 政策,將自己的搜尋網域或網域名稱伺服器新增至執行個體的 /etc/resolv.conf。許多 Linux 發行版允許透過 /etc/dhcp/dhclient.conf 保留這些修改內容。詳情請參閱內部 DNS 說明文件。

虛擬私人雲端網路與外部之間的封包處理

進出虛擬私人雲端網路的封包是透過網路代碼進行處理,網路代碼會根據防火牆規則、外部 IP 對照表和有效連線表來檢查封包。虛擬私人雲端網路也會在進出虛擬私人雲端網路的封包上執行 NAT。

執行個體接收的封包

執行個體核心收到這些封包後,會將封包轉換成標準形式的串流。

執行個體傳送的封包

執行個體核心會以標準方式傳送封包。系統會透過 VIRTIO 網路模組建立介面和網路功能的模型。

連線的逐步操作詳細說明

以下內容詳細描述執行個體進行 VPC 網路呼叫時的情形。

執行個體進行呼叫:

  1. 如果目標位址是執行個體名稱或網址 (例如 www.google.com),執行個體會呼叫其中繼資料伺服器上的 DNS 服務,並取回符合的 IP 位址。您可以將執行個體設定為查詢其他 DNS 服務,但這樣您就無法解析執行個體名稱。
  2. 系統會根據子網路的 IP 位址範圍檢查目的地 IP 位址,每個執行個體均知道子網路的 IP 位址範圍。

    1. 如果 IP 位址不在目前的虛擬私有雲網路中,或不在使用 VPC 網路對等互連功能建立對等關係的虛擬私有雲網路中:

      1. 執行個體將封包傳送至子網路的閘道 MAC 位址,並將目的地設為封包的最終目的地。執行個體可能需要提出 ARP 要求來解析閘道的 MAC 位址。

      2. 虛擬私人雲端網路重寫 IP 標頭,將執行個體的外部 IP 位址宣告為來源。如果執行個體沒有外部 IP 位址,則無法呼叫,而且 VPC 網路會在不通知傳送者的情況下捨棄封包。

      3. 虛擬私人雲端網路記錄外送封包,並將來源和目的地新增至有效連線表。

      4. 虛擬私人雲端網路將封包傳送至其目的地。

      5. 目的地取得封包並視需要進行回應。

      6. 虛擬私人雲端網路收到回應並查詢有效連線表,在知道這是有效的連線後允許該連線。虛擬私人雲端網路會查詢其網路/外部 IP 對照表,並將執行個體的外部 IP 位址替換為相符的網路位址,然後將封包傳送至來源執行個體。

      7. 執行個體收到封包。

    2. 如果目的地 IP 位址在虛擬私有雲網路內,或位於透過 VPC 網路對等互連功能建立對等關係的 VPC 網路內:

      1. 系統使用具有 255.255.255.255 遮罩的 IP 來設定執行個體,因此執行個體會將封包傳送至子網路的閘道 MAC 位址。執行個體可能需要先發出 ARP 要求來解析閘道的 MAC 位址。

      2. Google Cloud 會將封包轉送至目前或對等的 VPC 網路內的目的地 IP 位址。

      3. 目標執行個體接收封包。目標執行個體會檢查輸入防火牆,判定是否允許該封包。如果不允許,則會在不發出通知的情況下捨棄該封包;如果允許,執行個體會處理該封包。

外部執行個體或電腦呼叫執行個體:

  1. 外部呼叫者將封包傳送至執行個體的外部 IP 位址,該位址的擁有者為虛擬私人雲端網路。

  2. 虛擬私人雲端網路根據有效連線表進行封包比對,以確認是否為現有的連線:

    1. 如果不是現有的連線,VPC 網路會尋找可允許連線的防火牆規則。
    2. 如果沒有任何防火牆規則,虛擬私人雲端網路會捨棄封包,而且不通知傳送者。
  3. 如有現有的連線或有效的防火牆規則,虛擬私人雲端網路會檢查其對照表,在封包中將外部 IP 替換為對應的內部 IP,並將傳入的封包記錄在有效連線表中,接著傳送封包至目標執行個體。

  4. 在網路範圍之外傳送封包時,執行個體會收到封包並進行回應,如同如果 IP 位址在虛擬私人雲端網路 IP 範圍之外一文的說明。

  5. 虛擬私人雲端網路收到回覆,並在有效連線表中尋找相符的傳入要求,接著允許封包通過。在傳送之前,虛擬私人雲端網路會將執行個體的內部 IP 替換為對照表中對應的外部 IP,以修改來源 IP 位址。

測量虛擬私有雲網路總處理量

如需操作說明,請參閱「計算網路傳輸量」。

後續步驟