本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 DNS 進行負載平衡,並將 IPs 浮動進行容錯移轉
支援 DNS SRV 功能的 IP 電話用戶端可以透過將用戶端負載平衡到不同的 SBCs/PBXs,有效率地使用基礎設施中內建的備援。

使用 DNS SRV 記錄來載入平衡 SIP 用戶端
上圖顯示客戶如何使用 SRV 記錄來平衡 SIP 流量。支援 SRV 標準的任何 IP 電話用戶端都會在 SRV 類型 DNS 記錄中尋找 sip. <transport protocol>
字首。在此範例中,來自 DNS 的答案區段包含兩個 PBXs兩者都在不同的 AWS 可用區域中執行。不過,除了端點 URIs之外,SRV 記錄還包含三個額外的資訊:
-
第一個數字是優先順序 (上述範例中為 1)。優先順序較低優先於較高。
-
第二個數字是 權重 (上述範例中為 10)。
-
第三個數字是要使用的連接埠 (5060)。
由於兩個 PBXs伺服器的優先順序相同 (1),因此用戶端會使用權重來平衡兩個 PBXs之間的負載。在這種情況下,由於權重相同,因此 SIP 流量應該在兩個 PBXs 之間平均地平衡負載。
DNS 可以是用戶端負載平衡的好解決方案,但透過變更/更新 DNS ‘A’ 記錄來實作容錯移轉呢? 由於在用戶端和中繼節點內的 DNS 快取行為中發現不一致,因此不建議使用此方法。SIP 節點叢集之間可用區域內容錯移轉的更好方法是使用 EC2 IP 重新指派,其中受損主機的 IP 地址會立即使用 EC2 API 重新指派給運作狀態良好的主機。搭配詳細的監控和運作狀態檢查解決方案,失敗節點的 IP 重新指派可確保流量及時移至運作狀態良好的主機,將最終使用者中斷降至最低。