本頁面說明如何使用動態轉送建立傳統版 VPN 閘道,以及一個使用邊界閘道通訊協定 (BGP) 的通道。
有了動態轉送,您就不需要指定本機或遠端流量選取器,而是可以使用 Cloud Router。路徑資訊會動態交換。
如要進一步瞭解 Cloud VPN,請參閱下列資源:
如要瞭解設定 Cloud VPN 前應考慮的最佳做法,請參閱「最佳做法」。
如要進一步瞭解 Cloud VPN,請參閱 Cloud VPN 總覽。
如需本頁所用詞彙的定義,請參閱「重要術語」。
需求條件
一般指南
- 查看動態轉送在 Google Cloud中運作的相關資訊。
- 確認對等互連 VPN 閘道支援 BGP。
- 查看傳統版 VPN 拓撲範例。
在 Compute Engine VM 上安裝第三方 VPN 軟體
建立含有動態轉送功能的傳統版 VPN 通道時,您為對等 VPN 閘道介面指定的 IP 位址必須指派給 Compute Engine VM。
因此,您必須先在 Compute Engine VM 上安裝第三方 VPN 軟體,才能建立任何 Classic VPN 通道。設定傳統 VPN 通道時,請將 Compute Engine VM 的外部 IP 位址指定為對等 VPN 閘道介面。
此外,對等互連 VPN 閘道介面的 IP 位址必須從 Google 擁有的區域外部 IPv4 位址集區中分配。IP 位址不得屬於 Bring your own IP address (BYOIP) 範圍。
建立 Cloud Router
如要建立使用動態轉送功能的傳統版 VPN 通道,您必須使用 Cloud Router。您可以建立新的 Cloud Router,也可以使用現有的 Cloud Router 搭配現有的 Cloud VPN 通道或 VLAN 連結。不過,由於 VLAN 連結有特定的 ASN 需求,因此您使用的 Cloud Router 不得已管理與合作夥伴互連網路連線相關聯的 VLAN 連結 BGP 工作階段。
事前準備
在 Google Cloud 中設定下列項目,以便設定 Cloud VPN:
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
如果您使用的是 Google Cloud CLI,請使用下列指令設定專案 ID。這個頁面的
gcloud
操作說明假設您已在發出指令之前設定專案 ID。gcloud config set project PROJECT_ID
-
您也可以執行下列指令,查看已設定的專案 ID:
gcloud config list --format='text(core.project)'
- 如要建立自訂模式的虛擬私有雲網路 (建議),請參閱「建立自訂模式的虛擬私有雲網路」。
- 如要建立子網路,請參閱「使用子網路」一文。
- 前往 Google Cloud 控制台的 VPN 頁面。
前往 VPN 頁面- 如果您是首次建立閘道,請選取「建立 VPN 連線」按鈕。
- 選取「VPN 設定精靈」。
- 選取「傳統版 VPN」圓形按鈕。
- 按一下「繼續」。
- 在「建立 VPN 連線」頁面中指定下列閘道設定:
- 名稱 — VPN 閘道的名稱。名稱一經設定即無法變更。
- 說明:視需要新增說明。
- 網路:指定要建立 VPN 閘道和通道的現有 VPC 網路。
- 地區 — Cloud VPN 閘道與通道是地區物件。選擇閘道所在的 Google Cloud區域。「不同地區」中的執行個體和其他資源可依照路徑順序,將通道用於輸出流量。如要獲得最佳效能,請將閘道和通道置於與相關 Google Cloud 資源相同的地區。
- 「IP 位址」:建立或選擇現有地區外部 IP 位址。
針對新通道項目,在「通道」部分指定下列內容:
- 名稱 — VPN 通道的名稱。名稱一經設定即無法變更。
- 說明 — 視需要輸入說明。
- 遠端對等互連 IP 位址:指定對等互連 VPN 閘道的外部 IP 位址。
IKE 版本:選擇對等互連 VPN 閘道支援的適當 IKE 版本。如果對等裝置支援 IKEv2,建議選擇這個版本。
共用密鑰 — 提供用於驗證的預先共用金鑰。Cloud VPN 通道的共用密鑰必須與您在對等互連 VPN 閘道中設定對應通道時使用的密鑰相符。您可以遵循這些指示,產生高強度加密的共用密鑰。
路由選項:選取「Dynamic (BGP)」。您只能使用動態路由連線至在 Google Cloud VM 執行個體中執行的第三方 VPN 閘道軟體。
Cloud Router:如果您尚未建立 Cloud Router,請按照下方所述的選項建立新的 Cloud Router。或者,如果 Cloud Router 尚未管理與合作夥伴互連網路相關聯的互連網路連結 BGP 工作階段,您可以使用現有的 Cloud Router。如果您選擇現有的 Cloud Router,您仍將建立新的 BGP 工作階段,但 Google ASN 仍然相同。如要建立新的 Cloud Router,請指定下列詳細資料:
- 名稱 — Cloud Router 的名稱。名稱一經設定即無法變更。
- 說明 — 視需要輸入說明。
- Google ASN:選擇私人 ASN (
64512
到65534
、4200000000
到4294967294
)。這個 Google ASN 會用於 Cloud Router 管理的所有 BGP 工作階段。ASN 一經設定即無法變更。 - 按一下 [儲存並繼續]。
BGP 工作階段:按一下鉛筆圖示,然後指定下列詳細資料。完成後,按一下「儲存並繼續」:
- 名稱 — BGP 工作階段的名稱。一經設定即無法變更。
- 對等 ASN:對等互連 VPN 閘道使用的公用或私人 (
64512
到65534
、4200000000
到4294967294
) ASN。 - 公告路徑優先順序 - (選用) Cloud Router 在公告「至Google Cloud」路徑時使用的基本優先順序。詳情請參閱「公告的前置字串和優先順序」。對等互連 VPN 閘道會將這些項目匯入為 MED 值。
- Cloud Router BGP IP 與 BGP 對等 IP — 這兩個 BGP 介面 IP 位址必須是屬於
169.254.0.0/16
區塊的一般/30
CIDR 的「連結-本機」IP 位址。每個 BGP IP 都會定義各自的連結本機 IP,可用來變更路徑資訊。例如,169.254.1.1
和169.254.1.2
屬於一般/30
區塊。
如果您需要在同一個閘道中建立更多通道,請按一下 [新增通道],然後重複上一個步驟。您稍後可以新增更多通道。
按一下 [建立]。
- 將
PROJECT_ID
替換為專案的 ID。 - 將
NETWORK
替換為您的 Google Cloud 網路名稱。 - 將
REGION
替換為您需要建立閘道與通道所在的 Google Cloud地區。 - (選用)
--target-vpn-gateway-region
是傳統版 VPN 閘道運作的地區。其值應與--region
相同。如果未指定,系統會自動設定這個選項。這個選項會覆寫此指令叫用作業的預設 compute/region 屬性值。 - 將
GW_NAME
替換為閘道的名稱。 - 將
GW_IP_NAME
替換為閘道使用的外部 IP「名稱」。 為 Cloud VPN 閘道建立資源:
建立「目標 VPN 閘道」物件。
gcloud compute target-vpn-gateways create GW_NAME \ --network NETWORK \ --region REGION \ --project PROJECT_ID
預約地區外部 (靜態) IP 位址:
gcloud compute addresses create GW_IP_NAME \ --region REGION \ --project PROJECT_ID
記下 IP 位址 (以便您在設定對等互連 VPN 閘道時使用):
gcloud compute addresses describe GW_IP_NAME \ --region REGION \ --project PROJECT_ID \ --format='flattened(address)'
建立三個「轉送規則」。這些規則可指示 Google Cloud 將 ESP (IPsec)、UDP 500 與 UDP 4500 流量傳送至閘道。
gcloud compute forwarding-rules create fr-GW_NAME-esp \ --load-balancing-scheme=EXTERNAL \ --ip-protocol ESP \ --address GW_IP_NAME \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
gcloud compute forwarding-rules create fr-GW_NAME-udp500 \ --load-balancing-scheme=EXTERNAL \ --ip-protocol UDP \ --ports 500 \ --address GW_IP_NAME \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
gcloud compute forwarding-rules create fr-GW_NAME-udp4500 \ --load-balancing-scheme=EXTERNAL \ --ip-protocol UDP \ --ports 4500 \ --address GW_IP_NAME \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
如果您尚未建立 Cloud Router,請完成下列指令。請按照下方說明替換選項。或者,您也可以使用現有的 Cloud Router,前提是 Cloud Router 尚未管理與合作夥伴互連網路相關聯的互連網路連結。
- 將
ROUTER_NAME
替換為 Cloud Router 的名稱。 - 將
GOOGLE_ASN
替換為私人 ASN (64512
到65534
、4200000000
到4294967294
)。Google ASN 會用於同一個 Cloud Router 的所有 BGP 工作階段,且設定後即無法再變更。
gcloud compute routers create ROUTER_NAME \ --asn GOOGLE_ASN \ --network NETWORK \ --region REGION \ --project PROJECT_ID
- 將
使用下列詳細資料建立 Cloud VPN 通道:
- 將
TUNNEL_NAME
替換為通道的名稱。 - 將
ON_PREM_IP
替換為對等 VPN 閘道的外部 IP 位址。 - 針對 IKEv1,將
IKE_VERS
替換為1
,針對 IKEv2 則替換為2
。 - 將
SHARED_SECRET
替換為共用密鑰。Cloud VPN 通道的共用密鑰必須與您在對等 VPN 閘道中設定對應通道時使用的密鑰相符。您可以遵循這些指示,產生高強度加密的共用密鑰。 將
ROUTER_NAME
替換為您要用來管理 Cloud VPN 通道路徑的 Cloud Router 的名稱。在您建立通道「之前」,Cloud Router 就必須存在。gcloud compute vpn-tunnels create TUNNEL_NAME \ --peer-address ON_PREM_IP \ --ike-version IKE_VERS \ --shared-secret SHARED_SECRET \ --router ROUTER_NAME \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
- 將
建立介面與 BGP 對等點,為 Cloud Router 設定 BGP 工作階段:選擇下列其中一種做法:
讓 Google Cloud 自動選擇連結本機 BGP IP 位址:
將新介面新增至 Cloud Router。替換
INTERFACE_NAME
以提供介面的名稱。gcloud compute routers add-interface ROUTER_NAME \ --interface-name INTERFACE_NAME \ --vpn-tunnel TUNNEL_NAME \ --region REGION \ --project PROJECT_ID
將 BGP 對等點新增至該介面。將
PEER_NAME
替換為對等點的名稱,並將PEER_ASN
替換為針對對等點 VPN 閘道設定的 ASN。gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name PEER_NAME \ --peer-asn PEER_ASN \ --interface INTERFACE_NAME \ --region REGION \ --project PROJECT_ID
如要為對等端定義自訂已知路徑,請新增
--set-custom-learned-route-ranges
標記。您也可以視需要使用--custom-learned-route-priority
標記,為路線設定介於0
和65535
(含) 之間的優先順序值。每個 BGP 工作階段可有一個優先順序值,套用至您為工作階段設定的所有自訂已知路徑。如要進一步瞭解這項功能,請參閱「自訂學習路線」。gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME_0 \ --peer-asn=PEER_ASN \ --interface=ROUTER_INTERFACE_NAME_0 \ --region=REGION \ --set-custom-learned-route-ranges=IP_ADDRESS_RANGES \ --custom-learned-route-priority=PRIORITY
列出 Cloud Router 選擇的 BGP IP 位址。如果您將新介面新增至現有 Cloud Router,新介面的 BGP IP 位址應以最高的索引編號列出。「對等互連 IP 位址」是您用來設定對等互連 VPN 閘道的 BGP IP。
gcloud compute routers get-status ROUTER_NAME \ --region REGION \ --project PROJECT_ID \ --format='flattened(result.bgpPeerStatus[].ipAddress, \ result.bgpPeerStatus[].peerIpAddress)'
管理單一 Cloud VPN 通道 (索引
0
) 的預期 Cloud Router 輸出看起來像以下這樣,其中GOOGLE_BGP_IP
代表 Cloud Router 介面的 BGP IP,ON_PREM_BGP_IP
代表其對等點的 BGP IP。result.bgpPeerStatus[0].ipAddress: GOOGLE_BGP_IP result.bgpPeerStatus[0].peerIpAddress: ON_PREM_BGP_IP
如要指派與Google Cloud BGP 介面和對等點關聯的 BGP IP 位址:
在
169.254.0.0/16
範圍的/30
區塊中決定一對連結本機 BGP IP 位址。您會在下一個指令中替換GOOGLE_BGP_IP
,將其中一個 BGP IP 指派給 Cloud Router。另一個 BGP IP 位址可用於您的對等互連 VPN 閘道。您必須設定讓裝置使用該位址,並在以下的最後一個指令中替換ON_PREM_BGP_IP
。將新介面新增至 Cloud Router。替換
INTERFACE_NAME
以指定介面的名稱。gcloud compute routers add-interface ROUTER_NAME \ --interface-name INTERFACE_NAME \ --vpn-tunnel TUNNEL_NAME \ --ip-address GOOGLE_BGP_IP \ --mask-length 30 \ --region REGION \ --project PROJECT_ID
將 BGP 對等點新增至該介面。將
PEER_NAME
替換為對等點的名稱,並將PEER_ASN
替換為針對對等點 VPN 閘道設定的 ASN。gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name PEER_NAME \ --peer-asn PEER_ASN \ --interface INTERFACE_NAME \ --peer-ip-address ON_PREM_BGP_IP \ --region REGION \ --project PROJECT_ID
如要為對等端定義自訂已知路徑,請新增
--set-custom-learned-route-ranges
標記。您也可以選擇使用--custom-learned-route-priority
標記,為路線設定介於0
和65535
(含頭尾) 之間的優先順序值。每個 BGP 工作階段可有一個優先順序值,套用至您為工作階段設定的所有自訂已知路徑。如要進一步瞭解這項功能,請參閱「自訂學習路線」。gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME_0 \ --peer-asn=PEER_ASN \ --interface=ROUTER_INTERFACE_NAME_0 \ --region=REGION \ --set-custom-learned-route-ranges=IP_ADDRESS_RANGES \ --custom-learned-route-priority=PRIORITY
- 在 Google Cloud VM 執行個體上使用第三方 VPN 軟體,完成對等互連 VPN 閘道的設定。並在閘道中設定對應通道。您只能使用動態轉送功能搭配傳統版 VPN,才能連線至在 Google Cloud中執行的第三方 VPN 軟體。
- 如需某些 VPN 裝置的特定設定指南,請參閱「使用第三方 VPN」。
- 如需一般設定參數,請參閱「設定對等互連 VPN 閘道」一文。
- 視需要在 Google Cloud 和對等網路中設定防火牆規則。
- 檢查 VPN 通道和轉送規則的狀態。
- 如要控制對等互連 VPN 閘道可使用的 IP 位址,請參閱「限制對等互連 VPN 閘道 IP 位址」。
- 如要使用高可用性和高總處理量情境或多個子網路情境,請參閱「進階設定」。
- 如要解決使用 Cloud VPN 時可能遇到的常見問題,請參閱疑難排解。
建立自訂虛擬私有雲網路和子網路
在建立 Classic VPN 閘道和通道之前,請在 Classic VPN 閘道所在的地區建立虛擬私人雲端 (VPC) 網路和至少一個子網路:
建立閘道和通道
主控台
設定閘道
設定隧道
gcloud
在下列指令中:
完成下列指令序列,建立 Google Cloud閘道:
完成設定程序
您必須完成下列步驟,才能使用新的 Cloud VPN 閘道及其相關聯的 VPN 通道: