本頁說明如何排解 Cloud Interconnect 的 MACsec 問題。
嘗試建立新金鑰時,Cloud Interconnect 顯示錯誤訊息
如果您有現有的 MACsec 金鑰,但沒有開始時間,且您嘗試建立新金鑰,Cloud Interconnect 會顯示錯誤。如要解決這項錯誤,請更新現有機碼的開始時間。
Cloud Interconnect 連線的 MACsec 運作中斷
您已在 Cloud Interconnect 連線和地端部署路由器上成功啟用 MACsec,但 MACsec 工作階段顯示 Cloud Interconnect 連線連結的運作狀態為「關閉」。問題可能由下列原因造成:
- 地端部署路由器和 Google 邊緣路由器上的有效金鑰不相符。
- 地端部署路由器與 Google 邊緣路由器之間的 MACsec 協定不符。
如要解決 MACsec 狀態問題,請按照下列步驟操作:
如要確認 Cloud Interconnect 連線已啟用 MACsec,請選取下列其中一個選項:
控制台
前往 Cloud de Confiance 控制台的 Cloud Interconnect「實體連線」分頁。
選取要查看的 Cloud Interconnect 連線。
在「MACsec」分頁中,確認「MACsec 設定」顯示下列其中一項:
已啟用 (無法開啟):連結已啟用 MACsec 加密。 如果兩端之間未建立 MACsec 加密,則連結會在沒有加密的情況下運作。
已啟用 (無法關閉):連結已啟用 MACsec 加密功能。如果兩端之間未建立 MACsec 加密連線,連結就會失敗。
gcloud
gcloud compute interconnects describe INTERCONNECT_CONNECTION_NAME將
INTERCONNECT_CONNECTION_NAME改成 Cloud Interconnect 連線的名稱。輸出結果大致如下。確認畫面顯示「
macsecEnabled: true」:adminEnabled: true availableFeatures: - IF_MACSEC circuitInfos: - customerDemarcId: fake-peer-demarc-0 googleCircuitId: LOOP-0 googleDemarcId: fake-local-demarc-0 creationTimestamp: '2021-10-05T03:39:33.888-07:00' customerName: Fake Company description: something important googleReferenceId: '123456789' id: '12345678987654321' interconnectAttachments: - https://www.googleapis.com/compute/v1/projects/my-project1/regions/us-central1/interconnectAttachments/interconnect-123456-987654321-0 interconnectType: IT_PRIVATE kind: compute#interconnect labelFingerprint: 12H17262736_ linkType: LINK_TYPE_ETHERNET_10G_LR location: https://www.googleapis.com/compute/v1/projects/my-project1/global/interconnectLocations/cbf-zone2-65012 macsec: failOpen: false preSharedKeys: - name: key1 startTime: 2023-07-01T21:00:01.000Z macsecEnabled: true name: INTERCONNECT_CONNECTION_NAME operationalStatus: OS_ACTIVE provisionedLinkCount: 1 requestedFeatures: - IF_MACSEC requestedLinkCount: 1 selfLink: https://www.googleapis.com/compute/v1/projects/my-project1/global/interconnects/INTERCONNECT_CONNECTION_NAME selfLinkWithId: https://www.googleapis.com/compute/v1/projects/my-project1/global/interconnects/12345678987654321 state: ACTIVE如要檢查 Cloud Interconnect 連接埠狀態、MACsec 運作狀態和有效金鑰名稱,請使用下列任一選項:
控制台
前往 Cloud de Confiance 控制台的 Cloud Interconnect「實體連線」分頁。
選取要查看的 Cloud Interconnect 連線。
在「Link circuit info」(連結電路資訊) 中,確認所有連結的「Link state」(連結狀態) 都顯示「Active」(運作中)。
確認「MACsec 金鑰名稱」會為所有連結顯示金鑰名稱,且每個金鑰名稱都會顯示「這個連結的 MACsec 已開始運作」或「這個連結的 MACsec 已停止運作」。
gcloud
gcloud compute interconnects get-diagnostics INTERCONNECT_CONNECTION_NAME \ --project=PROJECT_NAME將
PROJECT_NAME替換為您的Cloud de Confiance 專案名稱。輸出結果大致如下。確認
links.lacpStatus.state顯示ACTIVE、links.macsec.ckn顯示值,且links.operationalStatus顯示LINK_OPERATIONAL_STATUS_UP:bundleAggregationType: BUNDLE_AGGREGATION_TYPE_STATIC bundleOperationalStatus: BUNDLE_OPERATIONAL_STATUS_UP links: - circuitId: LOOP-0 googleDemarc: fake-local-demarc-0 lacpStatus: googleSystemId: '00:11:22:33:44:55' neighborSystemId: '55:44:33:22:11:00' state: ACTIVE macsec: ckn: 0101010189abcdef...0123456789abcdef operational: false operationalStatus: LINK_OPERATIONAL_STATUS_UP receivingOpticalPower: state: OK value: -2.49 transmittingOpticalPower: state: OK value: -0.88 macAddress: 00:11:22:33:44:55如果沒有顯示
links.macsec.ckn的值,請聯絡Cloud de Confiance by S3NS 支援團隊尋求協助。如要驗證有效金鑰的 CAK 和 CKN 值,以及金鑰的開始時間,請選取下列其中一個選項:
控制台
在「MACsec」分頁中,前往「預先共用金鑰」部分,然後按一下有效金鑰旁的「查看」。如果沒有顯示 CKN 值,請與 Cloud de Confiance by S3NS 支援團隊聯絡以尋求協助。
在 預先共用金鑰 部分,確認有效金鑰列出的開始時間與您的地端部署路由器上的開始時間相符。執行下列其中一個步驟:
如果值不相符,請參閱路由器的手冊,更新路由器上的值,然後確認是否可以建立 MACsec 工作階段。
如果值相符,但 MACsec 工作階段在連結上仍處於運作中斷狀態,請繼續下一個步驟。
gcloud
執行
gcloud compute interconnects get-diagnostics指令,顯示有效金鑰的 CKN 值。如果設定了多個金鑰,系統會選取開始時間最近且未來的金鑰做為有效金鑰。Google 邊緣路由器會拒絕任何嘗試使用舊金鑰的新 MACsec 工作階段。
取得 MACsec 設定,然後記下與先前顯示的 CKN 值對應的 CAK 值和金鑰的開始時間:
gcloud compute interconnects macsec get-config INTERCONNECT_CONNECTION_NAME將
INTERCONNECT_CONNECTION_NAME替換為 Cloud Interconnect 連線的名稱。輸出結果會與下列內容相似;請尋找
ckn:preSharedKeys: - name: key1 ckn: 0101010189abcdef...0123456789abcdef cak: 0123456789abcdef...0123456789abcdef startTime: 2023-07-01T12:12:12Z - name: key2 ckn: 0202020289abcdef...0123456789abcdef cak: 0123456789abcdef...0123456789abcdef startTime: 2023-08-01T12:12:12Z確認地端部署路由器上的有效 CKN、CAK 和開始時間,與 Cloud Interconnect 的 MACsec 顯示的值相符。執行下列其中一個步驟:
如果值不相符,請參閱路由器的手冊,更新路由器上的值,然後確認是否可以建立 MACsec 工作階段。
如果值相符,但 MACsec 工作階段在連結上仍處於運作中斷狀態,請繼續下一個步驟。
查看指標,判斷封包是否在 Cloud Interconnect 連線的輸入或輸出端遭到捨棄。如要瞭解如何查看指標,請參閱「監控連線」。
如要決定後續步驟,請按照下列步驟操作:
如果
network/interconnect/link/macsec/received_errors_count正在遞增,表示封包因錯誤而遭到捨棄,導致 Cloud Interconnect 連線輸入流量減少。這表示地端部署路由器和 Google 邊緣路由器之間的通訊協定不符。檢查地端部署路由器的記錄,以進行疑難排解。如果下列任一計數器遞增,請與支援團隊聯絡,尋求進一步協助:Cloud de Confiance by S3NS
network/interconnect/link/macsec/received_dropped_packets_countnetwork/interconnect/link/macsec/send_errors_countnetwork/interconnect/link/macsec/send_dropped_packets_count
如果下列計數器都沒有遞增,表示封包在您的地端部署路由器輸出端遭到捨棄。檢查地端部署路由器的記錄,以便疑難排解。
network/interconnect/receive_errors_countnetwork/interconnect/received_unicast_packets_countnetwork/interconnect/link/macsec/received_control_packets_countnetwork/interconnect/link/macsec/received_data_packets_countnetwork/interconnect/link/macsec/received_errors_countnetwork/interconnect/link/macsec/received_dropped_packets_count
MACsec 運作中,但發生封包遺失
您已成功為 Cloud Interconnect 啟用 MACsec,且 MACsec 運作正常,但發生封包遺失問題。
如果 MACsec 連線正常運作,但 Cloud Interconnect 的連結聚合控制通訊協定 (LACP) 狀態為 Detached,請確認地端部署路由器已啟用安全通道 ID (SCI)。詳情請參閱設定地端部署路由器。
查看指標,判斷封包是否在 Cloud Interconnect 連線的輸入或輸出端遭到捨棄。如要瞭解如何查看指標,請參閱「監控連線」。如果 Cloud Interconnect 連線未顯示任何封包錯誤或遺失,請繼續檢查 MACsec 路由器:
如果
network/interconnect/link/macsec/received_errors_count正在遞增,表示封包因錯誤而遭捨棄,位置在 Cloud Interconnect 連線的輸入端。這表示地端部署路由器與 Google 邊緣路由器之間存在通訊協定不符的問題。檢查地端部署路由器的記錄,以排解問題。如果下列任一計數器遞增,請與 Cloud de Confiance by S3NS 支援團隊聯絡,尋求進一步協助:
network/interconnect/link/macsec/received_dropped_packets_countnetwork/interconnect/link/macsec/send_errors_countnetwork/interconnect/link/macsec/send_dropped_packets_count
如果下列計數器都沒有遞增,表示封包在您的地端部署路由器的輸出端遭到捨棄。檢查地端部署路由器記錄,以進行疑難排解。
network/interconnect/receive_errors_countnetwork/interconnect/received_unicast_packets_countnetwork/interconnect/link/macsec/received_control_packets_countnetwork/interconnect/link/macsec/received_data_packets_countnetwork/interconnect/link/macsec/received_errors_countnetwork/interconnect/link/macsec/received_dropped_packets_count
啟用容錯開放行為時,排解 MACsec 問題
如果您啟用 Cloud Interconnect 的 MACsec,並採用故障開放行為,即使無法成功建立 MACsec 工作階段,Cloud Interconnect 連線仍會繼續轉送流量。強烈建議您避免在正式版 Cloud Interconnect 連線上使用故障開放行為,以免以明文傳輸封包。
如要判斷 MACsec 連線的設定和狀態,請執行下列操作:
如要驗證 Cloud Interconnect 連線狀態,請選取下列任一選項:
控制台
前往 Cloud de Confiance 控制台的 Cloud Interconnect「實體連線」分頁。
選取要查看的 Cloud Interconnect 連線。
在「MACsec」分頁中,確認「MACsec configuration」(MACsec 設定) 顯示「Enabled, fail open」(已啟用,失敗時開啟)。
gcloud
gcloud compute interconnects describe INTERCONNECT_CONNECTION_NAME將
INTERCONNECT_CONNECTION_NAME改成 Cloud Interconnect 連線的名稱。輸出內容會與下列內容類似;請找出設為
true的macsec failOpen,以及設為true的macsecEnabled:availableFeatures: - IF_MACSEC adminEnabled: true circuitInfos: - customerDemarcId: fake-peer-demarc-0 googleCircuitId: LOOP-0 googleDemarcId: fake-local-demarc-0 creationTimestamp: '2021-10-05T03:39:33.888-07:00' customerName: Fake Customer description: <something> googleReferenceId: '123456789' id: '12345678987654321' interconnectAttachments: - https://www.googleapis.com/compute/prod/projects/my-project1/regions/us-central1/interconnectAttachments/interconnect-123456-123456789-0 interconnectType: IT_PRIVATE kind: compute#interconnect labelFingerprint: 42WmSpB8rSM= linkType: LINK_TYPE_ETHERNET_10G_LR location: https://www.googleapis.com/compute/prod/projects/my-project1/global/interconnectLocations/cbf-zone2-65012 macsec: failOpen: true preSharedKeys: - name: key3 startTime: '2023-07-01T21:00:01.000Z' macsecEnabled: true name: INTERCONNECT_CONNECTION_NAME operationalStatus: OS_ACTIVE provisionedLinkCount: 1 requestedFeatures: - IF_MACSEC requestedLinkCount: 1 selfLink: https://www.googleapis.com/compute/prod/projects/my-project1/global/interconnects/INTERCONNECT_CONNECTION_NAME selfLinkWithId: https://www.googleapis.com/compute/prod/projects/my-project1/global/interconnects/INTERCONNECT_CONNECTION_NAME/12345678987654321 state: ACTIVE在本範例中,
macsec.failopen會顯示true,而macsecEnabled則會顯示true。如要查看 Cloud Interconnect 連線的連接埠狀態、MACsec 運作狀態和有效金鑰名稱,請選取下列其中一個選項:
控制台
前往 Cloud de Confiance 控制台的 Cloud Interconnect「實體連線」分頁。
選取要查看的 Cloud Interconnect 連線。
在「Link circuit info」(連結電路資訊) 中,確認所有連結的「Link state」(連結狀態) 都顯示「Active」(運作中)。
確認「MACsec 金鑰名稱」會為所有連結顯示金鑰名稱,且每個金鑰名稱都會顯示「這個連結的 MACsec 已開始運作」或「這個連結的 MACsec 已停止運作」。
gcloud
gcloud compute interconnects get-diagnostics INTERCONNECT_CONNECTION_NAME \ --project=PROJECT_NAME將
PROJECT_NAME替換為您的Cloud de Confiance 專案名稱。輸出內容會與下列內容相似;請尋找設為
BUNDLE_OPERATIONAL_STATUS_UP的bundleOperationalStatus、設為ACTIVE的state,以及設為false的macseccknoperational:bundleAggregationType: BUNDLE_AGGREGATION_TYPE_LACP bundleOperationalStatus: BUNDLE_OPERATIONAL_STATUS_UP links: - circuitId: LOOP-0 googleDemarc: fake-local-demarc-0 lacpStatus: googleSystemId: '00:11:22:33:44:55' neighborSystemId: '55:44:33:22:11:00' state: ACTIVE macsec: ckn: 0101010189abcdef...0123456789abcdef operational: false operationalStatus: LINK_OPERATIONAL_STATUS_UP receivingOpticalPower: state: OK value: -2.49 transmittingOpticalPower: state: OK value: -0.88 macAddress: 00:11:22:33:44:55在這個例子中:
bundleOperationalStatus: BUNDLE_OPERATIONAL_STATUS_UP表示套件運作正常。links.lacpStatus.state: ACTIVE表示 LACP 成員連結已啟動。links.macsec.operational: false表示 MACsec 運作中斷。
在本例中,由於已啟用故障開放行為,因此不會捨棄 LACP 控制封包。
如果沒有顯示
links.macsec.ckn的值,請聯絡Cloud de Confiance by S3NS 支援團隊尋求協助。gcloud compute interconnects get-diagnostics指令會顯示有效金鑰的 CKN 值。如果您設定了多個金鑰,系統會選取開始時間最新的金鑰做為有效金鑰。Google 的邊緣路由器會拒絕任何嘗試使用舊金鑰的新 MACsec 工作階段。如要取得 MACsec 設定,然後記下與先前顯示的 CKN 值對應的 CAK 值和金鑰的開始時間,請選取下列其中一個選項:
控制台
在「MACsec」分頁中,前往「預先共用金鑰」部分,然後按一下有效金鑰旁的「查看」。如果未顯示金鑰的 CAK 和 CKN 值,請與 Cloud de Confiance by S3NS 支援團隊聯絡以尋求協助。
在「預先共用金鑰」部分,確認有效金鑰的列出開始時間,與地端部署路由器上的開始時間相符。
gcloud
執行下列指令:
gcloud compute interconnects macsec get-config INTERCONNECT_CONNECTION_NAME輸出結果會與下列內容相似;請尋找
preSharedKeysnameckn:preSharedKeys: - name: key1 ckn: 0101010189abcdef...0123456789abcdef cak: 0123456789abcdef...0123456789abcdef startTime: 2023-07-01T12:12:12Z - name: key2 ckn: 0202020289abcdef...0123456789abcdef cak: 0123456789abcdef...0123456789abcdef startTime: 2023-08-01T12:12:12Z確認地端部署路由器上的有效 CKN、CAK 和開始時間,與 Cloud Interconnect 的 MACsec 顯示的值相符。
執行下列其中一個步驟:
如果值不相符,請參閱路由器的手冊,更新路由器上的值,然後確認現在是否可以建立 MACsec。
如果值相符,但 MACsec 工作階段在連結上仍處於運作中斷狀態,請繼續下一個步驟。
查看指標,觀察 Cloud Interconnect 連線的封包計數器。如要進一步瞭解如何查看指標,請參閱「監控連線」。
啟用 MACsec 故障開放行為後,下列計數器會遞增:
network/interconnect/sent_unicast_packets_countnetwork/interconnect/received_unicast_packets_count
啟用 MACsec 故障開放行為後,下列計數器不會遞增:
network/interconnect/link/macsec/received_control_packets_countnetwork/interconnect/link/macsec/received_data_packets_countnetwork/interconnect/link/macsec/sent_control_packets_countnetwork/interconnect/link/macsec/sent_data_packets_count
如要決定後續步驟,請按照下列步驟操作:
如果
network/interconnect/link/macsec/received_errors_count正在遞增,表示封包因錯誤而遭到捨棄,導致 Cloud Interconnect 連線輸入流量減少。這表示地端部署路由器和 Google 邊緣路由器之間的通訊協定不符。檢查地端部署路由器的記錄,以進行疑難排解。如果下列任一計數器遞增,請與支援團隊聯絡,尋求進一步協助:Cloud de Confiance by S3NS
network/interconnect/link/macsec/received_dropped_packets_countnetwork/interconnect/link/macsec/send_errors_countnetwork/interconnect/link/macsec/send_dropped_packets_count
如果下列任何計數器都沒有遞增,可能表示封包在內部部署路由器輸出端遭到捨棄。檢查地端部署路由器的記錄,以便疑難排解。
network/interconnect/receive_errors_countnetwork/interconnect/received_unicast_packets_countnetwork/interconnect/link/macsec/received_errors_countnetwork/interconnect/link/macsec/received_dropped_packets_count