Network Load Balancer 接聽程式 - Elastic Load Balancing

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Network Load Balancer 接聽程式

接聽程式是檢查連線請求的程序,必須使用您已設定的通訊協定與連接埠。開始使用 Network Load Balancer 之前,您必須新增至少一個接聽程式。如果負載平衡器沒有接聽程式,就無法接收來自用戶端的流量。您為接聽程式定義的規則決定負載平衡器如何將請求路由至您註冊的目標,例如 EC2 執行個體。

接聽程式組態

接聽程式支援下列通訊協定與連接埠:

  • 通訊協定:TCP、TLS、UDP、TCP_UDP

  • Ports (連接埠):1-65535

您可以使用 TLS 接聽程式將加密和解密的工作卸載至負載平衡器,讓您的應用程式可以專注於其業務邏輯。如果接聽程式通訊協定是 TLS,則您必須在接聽程式上僅部署一個 SSL 伺服器憑證。如需詳細資訊,請參閱伺服器憑證

如果您必須確保目標解密 TLS 流量而非負載平衡器,您可以在連接埠 443 上建立 TCP 接聽程式,而不是建立 TLS 接聽程式。透過 TCP 接聽程式,負載平衡器會將加密流量傳遞至目標,而不會解密。

若要在同一連接埠上同時支援 UDP TCP和 Word,請建立 TCP_UDP 接聽程式。TCP_UDP 接聽程式的目標群組必須使用 TCP_UDP 通訊協定。

雙堆疊負載平衡器的 UDP 接聽程式需要 IPv6 目標群組。

您可以搭配接聽程式使用 WebSockets 。

傳送至設定之接聽程式的所有網路流量皆分類為預期流量。對於已設定的接聽程式,任何不匹配的網路流量皆分類為非預期流量。類型 3 以外的 ICMP 請求也被視為非預期流量。Network Load Balancer 會捨棄非預期流量,而不會將其轉送至任何目標。傳送到已設定接聽程式連接埠的 TCP 資料封包,而該接聽程式不是新的連線,或作為作用中 TCP 連線的一部分,則會以 TCP 重設 (RST) 拒絕。

如需詳細資訊,請參閱 Elastic Load Balancing User Guide 中的 Request routing

接聽程式屬性

以下是 Network Load Balancer 的接聽程式屬性:

tcp.idle_timeout.seconds

Tcp 閒置逾時值,以秒為單位。有效範圍為 60-6000 秒。預設值為 350 秒。

如需詳細資訊,請參閱更新閒置逾時

接聽程式規則

當您建立接聽程式後,可指定路由請求的規則。此規則將轉發請求到指定的目標群組。若要更新此規則,請參閱 更新 Network Load Balancer 的接聽程式

安全接聽程式

若要使用 TLS 接聽程式,您必須在負載平衡器上部署至少一個伺服器憑證。負載平衡器使用伺服器憑證終止前端連接,然後解密用戶端的請求,再將它們傳送到目標。請注意,如果您需要將加密的流量傳遞至目標,而不讓負載平衡器解密,請在連接埠 443 上建立 TCP 接聽程式,而不是建立 TLS 接聽程式。負載平衡器會依現狀傳遞請求至目標,而不會將其解密。

Elastic Load Balancing 使用稱為安全政策的 TLS 交涉組態,在用戶端與負載平衡器之間交涉 TLS 連線。安全政策為通訊協定與加密的組合。通訊協定會在用戶端與伺服器之間建立安全連線,並確保在用戶端與負載平衡器之間傳遞的所有資料為私有。隨碼是一項加密演算法,使用加密金鑰來建立編碼的訊息。通訊協定使用多個加密來加密透過網際網路的資料。在連線交涉程序期間,用戶端與負載平衡器會出示它們分別支援的加密和通訊協定的清單 (以偏好的順序)。系統會針對安全連線選取伺服器清單上符合任何用戶端加密的第一個加密。

Network Load Balancer 不支援 TLS 重新交涉或相互 TLS 身分驗證 (mTLS)。對於 mTLS 支援,請建立 TCP 接聽程式而非 TLS 接聽程式。負載平衡器會照原樣傳遞請求,因此您可以在目標上執行 mTLS。

如需相關示範,請參閱 Network Load Balancer 上的 TLS SupportNetwork Load Balancer 上的 SNI Support

ALPN 政策

Application-Layer Protocol Negotiation (ALPN) 是在初始 TLS 交握問候訊息上傳送的 TLS 擴充功能。ALPN 可讓應用程式層交涉哪些通訊協定應透過安全連線使用,例如 HTTP/1 和 HTTP/2。

當用戶端啟動 ALPN 連線時,負載平衡器會將用戶端的 ALPN 偏好設定清單與其 ALPN 政策進行比較。如果用戶端支援來自 ALPN 政策的通訊協定,負載平衡器會根據 ALPN 政策的偏好設定清單建立連線。否則,負載平衡器不會使用 ALPN。

支援的 ALPN 政策

以下是支援的 ALPN 政策:

HTTP1Only

僅協商 HTTP/1.*。ALPN 偏好設定清單為 http/1.1、http/1.0。

HTTP2Only

僅交涉 HTTP/2。ALPN 偏好設定清單為 h2。

HTTP2Optional

透過 HTTP/2 偏好 HTTP/1.* (對於 HTTP/2 測試可能很有用)。ALPN 偏好設定清單為 http/1.1、http/1.0、h2。

HTTP2Preferred

透過 HTTP/1.* 偏好 HTTP/2。ALPN 偏好設定清單為 h2、http/1.1、http/1.0。

None

請勿交涉 ALPN。此為預設值。

啟用 ALPN 連線

您可以在建立或修改 ALPN 接聽程式時啟用 TLS 連線。如需詳細資訊,請參閱 新增接聽程式更新 ALPN 政策