建立公開 advertise 的前置碼
您可以在 Google Cloud中使用自己的 IP 位址 (BYOIP)。驗證您擁有 IP 範圍,並將 IP 位址匯入Google Cloud後,即可將這些位址指派給支援的資源。
您可以匯入 IPv4 和 IPv6 位址範圍。IPv4 位址可用於大多數支援外部 IP 位址的 Google Cloud 資源。IPv6 位址只能搭配外部直通式網路負載平衡器使用。詳情請參閱「支援自備 IP 位址」。
如要使用自備 IP 位址,第一步是建立公開通告的前置字串。可用的選項如下:
設定 | 區域 (v2) | 區域 (第 1 版) | 全球 (第 1 版) |
---|---|---|---|
可用性 | 建議的區域設定 | 不建議用於新的區域設定 | 必須要求將專案加入許可清單 |
公開 advertise 前置碼佈建時間 | 大約 2 週 | 約 4 週 | 約 4 週 |
公開委派前置字串佈建時間 | 幾分鐘 | 4 週
可與公開 advertise 前置碼佈建時間重疊 |
4 週
可與公開 advertise 前置碼佈建時間重疊 |
子前置碼佈建時間 | 幾分鐘 | 幾分鐘 | 幾分鐘 |
BGP 公告 | 公開通告的前置字串佈建完成後,不會自動發布。您可以自行決定何時發布或撤回廣告。 | 佈建完成後,系統會自動發布公開通告的前置碼。 | 佈建完成後,系統會自動發布公開通告的前置碼。 |
IP 堆疊 |
|
IPv4 | IPv4 |
事前準備
- 如要將自有 IP 位址帶入 Google Cloud ,請務必審慎規劃。詳情請參閱「規劃自備 IP 位址」。
- 建議您使用機構,並建立專屬專案來管理 BYOIP 位址。詳情請參閱「專案架構」。
- 檢查要匯入的前置字元是否有任何部分已公開宣傳。如果是,請務必確保 Google Cloud 不會在其他來源宣傳該產品時,也宣傳該產品:
- 如果您要為區域性地址建立第 2 版公開通告的前置字串,可以控制前置字串的公告。您可以建立公開通告的前置字串和公開委派的前置字串,但請務必確認前置字串未在其他地方發布,再從Google Cloud發布。
- 如果您要為全域地址建立 v1 公開通告的前置字串,系統會在公開委派前置字串佈建完成後,自動發布該前置字串。請勿建立公開委派的前置字串,直到前置字串不再從其他來源發布為止。
角色
如要取得完成本指南中工作所需的權限,請要求管理員為您授予專案的Compute Public IP Admin (roles/compute.publicIpAdmin
) 身分與存取權管理角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
驗證前置字串擁有權
建立公開通告的前置字串時,您需要完成兩項工作,共同驗證您擁有這個前置字串: Google Cloud
- 為前置碼建立路徑來源授權 (ROA)。
- 為前置字元中的 IP 位址建立 PTR 記錄。
以下各節將詳細說明這些驗證工作。
驗證完成後,公開宣傳前置字串設定約需四週才能完成。
建立 ROA 要求
如要證明前置字串擁有權,請建立路徑來源授權 (ROA) 要求。
向區域註冊機構提交 ROA 要求,以宣傳您要宣傳的前置字串。Google Cloud 要求包含前置字串、前置字串長度和 Google Cloud的 ASN:396982
。
建立公開通告前置字串時,這個前置字串的 ROA 必須存在,且指向 Google Cloud 的 ASN,並在您刪除公開通告前置字串後的一段時間內保持有效。詳情請參閱「移除 ROA」。
建議您為相同的前置字元和前置字元長度提交另一個 ROA 要求,但使用自己的 ASN 做為來源。如果您需要宣傳前置字串,含有 ASN 的 ROA 可防止使用資源公開金鑰基礎架構 (RPKI) 的網路將前置字串視為無效,因為該前置字串也會透過 Google Cloud的來源 ASN 宣傳。
您所在區域的網際網路註冊機構會處理 ROA 要求。詳情請參閱您所在地區的連結:
建立公開 advertise 的前置碼
您可以為要帶入 Google Cloud的前置字串建立公開通告的前置字串。
如要變更公開通告的前置碼名稱,必須刪除並重新建立資源。因此,建議您建立不需要變更的通用名稱,例如 pap-203-0-113-0-24
,其中 pap
表示資源類型,203-0-113-0-24
則表示特定前置字串和前置字串長度。
如要使用公開通告的前置字串建立全域公開委派前置字串,必須將專案加入允許清單。詳情請參閱「全域公開委派前置字串」。
選擇未使用的 IP 位址進行 DNS 驗證。驗證時,您必須為這個 IP 位址設定新的 PTR 記錄,而且在建立公開通告的前置字串之前,您不會知道主機名稱。
主控台
前往 Google Cloud 控制台的「Bring your own IP」(自備 IP) 頁面。
按一下「新增 PAP」。
在「Name」部分,輸入公開 advertise 的前置碼名稱。
在「說明」中,輸入公開 advertise 前置碼的說明 (選填)。
在「IP version」(IP 版本) 部分,選取「IPv4」或「IPv6」。
輸入要匯入的前置字串。
如果要匯入 IPv4 前置字串,請為公開通告的前置字串選取「範圍」:區域或全域。
點選「下一步」。
檢查輸入的資訊。如要確認您擁有這個前置字元,請按一下「確認」。
在「IP address」(IP 位址) 部分,輸入您要新增的前置字串中未使用的 IP 位址。這個位址會用於 DNS 驗證,您必須在後續步驟中為該位址建立 PTR 記錄,並使用 Google Cloud提供的主機名稱。
按一下「Create」(建立)。「驗證」畫面會顯示這項要求的驗證狀態。
gcloud
使用 public-advertised-prefixes create
指令。
如要為全域位址建立公開通告的前置字串 (v1),請執行下列指令:
gcloud compute public-advertised-prefixes create PAP_NAME \ --range=PAP_IP_RANGE \ --dns-verification-ip=VERIFICATION_IP_ADDRESS
如要為區域位址建立公開通告的前置字串 (第 2 版),請執行下列指令:
gcloud compute public-advertised-prefixes create PAP_NAME \ --range=PAP_IP_RANGE \ --pdp-scope=REGIONAL \ --dns-verification-ip=VERIFICATION_IP_ADDRESS
不建議為區域位址建立公開通告的前置字串 (v1)。請改為建立第 2 版公開通告的前置字串。如要為區域位址建立第 1 版公開通告的前置字串,請執行下列指令:
gcloud compute public-advertised-prefixes create PAP_NAME \ --range=PAP_IP_RANGE \ --dns-verification-ip=VERIFICATION_IP_ADDRESS
更改下列內容:
PAP_NAME
:您要建立的公開宣傳前置字元名稱。PAP_IP_RANGE
:公開宣傳前置字串的 IP 位址範圍。範圍可以是 IPv4 或 IPv6 位址範圍。VERIFICATION_IP_ADDRESS
:從 PAP_IP_RANGE 中選擇的未使用 IP 位址。這個位址會用於 DNS 驗證,您必須在稍後的步驟中為這個位址建立 PTR 記錄,並使用 Google Cloud提供的主機名稱。
找出要用於 PTR 記錄的名稱
建立公開宣傳的前置字元時, Google Cloud 會產生名稱,供您在 PTR 驗證步驟中做為主機名稱使用。
主控台
前往 Google Cloud 控制台的「Bring your own IP」(自備 IP) 頁面。
找到要更新的前置字元,然後按一下「檢查狀態」。
用於 PTR 驗證的名稱和 IP 位址會顯示在「DNS 驗證」部分。
gcloud
如要從
sharedSecret
欄位取得名稱,請使用public-advertised-prefixes describe
指令。gcloud compute public-advertised-prefixes describe \ PAP_NAME --format='value(sharedSecret)'
如有需要,您可以擷取您為 DNS 驗證提供的 IP 位址。
gcloud compute public-advertised-prefixes describe \ PAP_NAME --format='value(dnsVerificationIp)'
在這兩個指令中,請將 PAP_NAME
替換為公開 advertise 的前置碼名稱。
建立 PTR 記錄
如要驗證您擁有要匯入Google Cloud的 IP 位址範圍,您必須在用於匯入 IP 位址範圍的 DNS 區域中,建立公開 PTR 記錄。
在 PTR 記錄中使用下列值:
- IP 位址:您建立公開通告前置字串時使用的驗證 IP 位址。
- 主機名稱:名稱 (
sharedSecret
), Google Cloud 由提供者提供。 - 網域名稱:與 DNS 區域相關聯的網域名稱,用於匯入的 IP 位址範圍。
範例:
IPv4:如果驗證 IP 位址為
203.0.113.144
,且203.0.113.0/24
的 DNS 網域為example.net
,而Google Cloud 提供的名稱為55kk88tt00
,則必要的 PTR 記錄如下所示:$ dig +noall +answer -x 203.0.113.144 144.113.0.203.in-addr.arpa. 21599 IN PTR 55kk88tt99.example.net
IPv6:如果驗證 IP 位址為
2001:db8::10
,且2001:db8::/32
的 DNS 網域為example.net
,而 Google Cloud提供的名稱為55kk88tt00
,則必要的 PTR 記錄會如下所示:$ dig +noall +answer -x 2001:db8::10 0.1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa 21599 IN PTR 55kk88tt99.example.net.
驗證 PTR 記錄
建立 PTR 記錄後,請更新公開通告的前置碼,觸發 PTR 記錄驗證。
主控台
前往 Google Cloud 控制台的「Bring your own IP」(自備 IP) 頁面。
找到要更新的前置字元,然後按一下「檢查狀態」。
在「DNS validation」(DNS 驗證) 部分中,選取「I have created this PTR record」(我已建立這項 PTR 記錄) 核取方塊,然後按一下「Validate」(驗證)。
gcloud
如要將公開通告的前置字串狀態變更為 PTR-CONFIGURED
,請使用 public-advertised-prefixes update
指令。
狀態變更會觸發 PTR 記錄的驗證。如果成功,狀態會變更為 VALIDATED
。如果失敗,狀態會變更為 REVERSE_DNS_LOOKUP_FAILED
。
gcloud compute public-advertised-prefixes update PAP_NAME --status=PTR-CONFIGURED
將 PAP_NAME
換成您已建立 PTR 記錄的公開通告前置字串。
查看公開宣傳前置字元的狀態
Google Cloud 佈建公開 advertise 的前置字串約需四週。你可以查看狀態,確認佈建是否完成。
主控台
前往 Google Cloud 控制台的「Bring your own IP」(自備 IP) 頁面。
找出要檢查的前置字元,然後按一下「查看狀態」。
查看「驗證」部分。
gcloud
如要說明公開通告的前置字串並取得其狀態,請使用 public-advertised-prefixes describe
指令。
gcloud compute public-advertised-prefixes describe PAP_NAME --format='value(status)'
請將 PAP_NAME
改為您要取得狀態資訊的公開 advertise 前置碼。
前置字串通過驗證後,狀態欄位會從 VALIDATED
變更為 PREFIX_CONFIGURATION_COMPLETE
。