排解 BGP 路徑和路徑選取問題
本指南適用於排解與 BGP 路徑相關的 Cloud Router 問題,包括路徑選取、路徑傳播和路徑指標。
如需其他疑難排解資訊,請參閱下列文章:
已建立 IPv6 BGP 工作階段,但未交換 IPv4 路由
確認 VLAN 連結或高可用性 VPN 閘道是否具有
IPV4_IPV6的必要堆疊類型。如果 VLAN 連結的堆疊類型不正確,請修改 VLAN 連結。如果是高可用性 VPN 閘道,請重新建立高可用性 VPN 閘道及其通道。確認 Cloud Router 設定正確無誤。執行下列指令:
gcloud compute routers describe ROUTER-NAME在輸出中,檢查下列值:
- 「
bgpPeers.enableIpv4」這個價格true bgpPeers.ipv4NexthopAddress和bgpPeers.peerIpv4NexthopAddress都存在
- 「
無法連線至部分地端部署 IPv4 或 IPv6 前置碼
嘗試連線至 Cloud Router 學習到的前置字元內的地端部署 IPv4 或 IPv6 目的地時,如果發生流量遺失、ping 錯誤或其他問題,可能的原因有很多。
檢查是否有已停用的自訂已知路徑
如果無法使用已設定的自訂已知路由連線至地端部署目的地,請按照下列步驟操作:
- 確認 BGP 工作階段已正確設定路徑。
- 確認 BGP 工作階段是否在執行。
- 確認地端部署路由器是否正在篩選部分已知路由。
詳情請參閱「查看自訂學習路徑的狀態」。
檢查已篩選的已知路徑
如要查看是否已篩選出路徑,請執行下列指令:
gcloud compute routers get-status ROUTER_NAME \
--region=REGION
更改下列內容:
ROUTER_NAME:Cloud Router 的名稱。REGION:Cloud Router 所在的區域。
輸出結果會與下列內容相似;請找出設為 routeStatus 的 active:
kind: compute#routerStatusResponse
result:
bestRoutesForRouter:
- asPaths:
- asLists:
- 65200
pathSegmentType: AS_SEQUENCE
creationTimestamp: '2024-03-22T13:57:15.533-07:00'
destRange: 10.128.0.0/20
kind: compute#route
network: https://www.googleapis.com/compute/v1/projects/PROJECT/global/networks/VPC_NAME
nextHopIp: 169.254.73.246
nextHopVpnTunnel: https://www.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/vpnTunnels/VPN_NAME
priority: 100
routeStatus: ACTIVE
routeType: BGP
bgpPeerStatus:
- advertisedRoutes:
- destRange: 10.128.0.0/20
kind: compute#route
network: https://www.googleapis.com/compute/v1/projects/PROJECT/global/networks/aneta-vpc
nextHopIp: 169.254.73.245
nextHopVpnTunnel: https://www.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/vpnTunnels/VPN_NAME
priority: 100
routeType: BGP
enableIpv6: false
ipAddress: 169.254.73.245
linkedVpnTunnel: https://www.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/vpnTunnels/VPN_NAME
md5AuthEnabled: false
name: aneta-bgp
numLearnedRoutes: 1
peerIpAddress: 169.254.73.246
state: Established
status: UP
uptime: 10 hours, 11 minutes, 0 seconds
uptimeSeconds: '36660'
network: https://www.googleapis.com/compute/v1/projects/PROJECT/global/networks/VPC_NAME
bestRoutesForRouter.routeStatus 值會顯示執行中路徑的 ACTIVE,以及已篩選路徑的 DROPPED。
查看配額與限制
請確認 Cloud Router 未超過已知路徑的配額。如要查看 Cloud Router 的已知路徑數量,請查看 Cloud Router 的狀態。
如要瞭解配額、相關記錄訊息和指標,以及如何解決問題,請參閱下表。
| 主題 | 指引 |
|---|---|
| 配額簡介 | 請參閱 Cloud Router 配額和已知路由示例。 |
| 記錄 | 當路徑用量達到任一配額的 75% 時,Cloud Router 會記錄警告。如果超出任一配額,系統會記錄錯誤並列出所有捨棄的路徑。這些事件會顯示在 router.googleapis.com/route_quota_events 的 Cloud Logging 中。如要瞭解記錄,請參閱 Cloud Router 說明文件中的「路徑配額事件記錄」。 |
| 指標 | 您也可以使用下列指標,瞭解目前的配額可用量和使用情形。這些指標會加上
這些指標可透過受監控的資源取得。 |
| 解決問題 | 如要解決路徑配額問題,請採取下列做法。如果路線數量大幅超過可用配額,建議同時採取以下做法:
|
已知路由 (從地端部署網路取得的路徑) 未傳播至其他虛擬私有雲網路
單一 Cloud Router 無法將從某個 BGP 對等點取得的路徑重新通告至其他 BGP 對等點,包括其他虛擬私有雲網路中的 Cloud Router。
舉例來說,在下列中樞和輪輻拓撲中,Cloud Router 無法支援多個 VPC 網路之間的路由通告。
在這種情況下,共用相同 VPC 網路的 Cloud Router 之間沒有 iBGP 工作階段,且 Cloud Router 只會通告 VPC 子網路和自訂設定的路徑。Cloud Router 不會通告虛擬私有雲網路的動態路徑。
如要查看 Cloud de Confiance網路拓撲的建議,請參閱「虛擬私有雲設計的最佳做法與參考架構」。
此外,如要在 Cloud de Confiance中建構及管理中樞和輪輻拓撲,可以使用 Network Connectivity Center。
IPv6 流量未經過轉送
如果無法順利連線至 IPv6 主機,請按照下列步驟操作:
確認 IPv4 路徑是否正確宣傳。先檢查 IPv4 流量,可以排除一般網路問題。如果未宣傳 IPv4 路由,請執行本文列出的一般疑難排解程序。
檢查防火牆規則,確保允許虛擬私有雲網路和地端部署網路之間的 IPv6 流量。
判斷您是否已超過已知路徑的可用配額。如果超過已知路徑的配額,系統會先捨棄 IPv6 前置字元,再捨棄 IPv4 前置字元。請參閱「檢查配額和限制」。
確認所有需要 IPv6 設定的元件都已正確設定。
虛擬私有雲子網路已設為使用
IPV4_IPV6堆疊類型。虛擬私有雲子網路已設為
--ipv6-access-typeINTERNAL。子網路上的 Compute Engine VM 已設定 IPv6 位址。
高可用性 VPN 閘道或 Dedicated Interconnect 的 VLAN 連結已設定為使用
IPV4_IPV6堆疊類型。BGP 工作階段已啟用,可宣傳 IPv6 路由,且下一個躍點是 IPv6 位址。
如要查看 Cloud Router 狀態和路徑,請參閱查看 Cloud Router 狀態和路徑。
如要查看 BGP 工作階段設定,請參閱「查看 BGP 工作階段設定」。
Cloud Router 未傳回 ICMPv6 連線偵測 (ping) 回應
Cloud Router BGP 位址不支援 ICMPv6 ping。如要測試 Cloud Router BGP 位址的第 3 層連線,請使用 ICMPv4 ping。
後續步驟
如要進一步瞭解如何使用 Cloud Logging 監控 Cloud Router,請參閱「查看記錄和指標」。
如需其他支援,請參閱「取得支援」。
如要瞭解 BGP 工作階段狀態,請參閱「BGP 工作階段狀態」。
如要瞭解與雙向轉送偵測 (BFD) 相關的診斷訊息和工作階段狀態,請參閱「BFD 診斷訊息和工作階段狀態」。
如要瞭解如何排解使用 Cloud Router 和路由器設備時發生的問題,請參閱 Network Connectivity Center 說明文件中的「排解路由器設備問題」。