Elastic Load Balancing 傳送至我的 Web 伺服器的流量的來源 IP 地址是什麼?

1 分的閱讀內容
0

我對 Web 伺服器使用 Elastic Load Balancing。我想知道負載平衡器用於將流量轉送到我的 Web 伺服器的 IP 地址。

簡短描述

解析負載平衡器的 DNS 名稱,以確定與內部或網際網路對向負載平衡器相關聯的 IP 地址。這些是用戶端向負載平衡器傳送請求的 IP 地址。ELB 節點會使用與其彈性網路介面相關聯的私有 IP 地址作為向伺服器轉發請求的來源 IP 地址。對於 Network Load Balancer,這些請求的來源 IP 地址取決於其目標群組的組態。

您可以將這些 IP 地址用於多種用途,例如允許 Web 伺服器上的負載平衡器流量以及用於處理請求。最佳實務是使用在 Web 伺服器安全群組傳入規則上參照的安全群組。這允許使用來自 Classic Load BalancerApplication Load Balancer 的負載平衡器流量。但是, Network Load Balancer 不支援安全群組,而且必須以目標群組組態為基礎。必須在 Web 伺服器的安全群組上允許使用用戶端 IP 地址或與 Network Load Balancer 相關聯的私人 IP 地址。

使用下列選項來尋找與負載平衡器彈性網路介面相關聯的私人 IP 地址:

  • 使用 AWS 管理主控台
  • AWS Command Line Interface (AWS CLI)

解決方法

Classic Load Balancer 和 Application Load Balancer 的 IP 地址會隨著時間而變更。請勿使用此資訊將應用程式靜態設定為指向這些 IP 地址。

注意: 如果您在執行 AWS CLI 命令時收到錯誤訊息,請確認您使用的是最新版本的 AWS CLI

AWS 管理主控台

  1. 開啟 Amazon Elastic Compute Cloud (Amazon EC2) 主控台
  2. 在導覽窗格的負載平衡中,選擇負載平衡器
  3. 在 [負載平衡器] 下,複製您要尋找其 IP 地址之負載平衡器的名稱。
  4. 在導覽窗格的網路與安全下,選擇網路介面
  5. 將您複製的負載平衡器名稱貼到搜尋方塊中。篩選結果會顯示與該負載平衡器相關聯的所有彈性網路介面。您可以在主要私人 IPv4 IP 欄查找各彈性網路介面的主要私人 ID 地址。

AWS CLI

執行下列命令:

aws ec2 describe-network-interfaces --filters Name=description,Values="ELB elb-name" --query 'NetworkInterfaces[*].PrivateIpAddresses[*].PrivateIpAddress' --output text

以下列其中一項取代 elb-name

  • 對於 Classic Load Balancer: 負載平衡器的名稱
  • 對於 Application Load Balancer:app/load-balancer-name/load-balancer-id
  • 對於 Network Load Balancer:net/load-balancer-name/load-balancer-id

對於 Application Load Balancer 和 Network Load Balancer,請執行下列命令尋找 load-balancer-id

aws elbv2 describe-load-balancers --names load-balancer-name

load-balancer-id 是 ARN 中依負載平衡器名稱結尾後方斜線後的最後一個字元欄位。

AWS 官方
AWS 官方已更新 8 個月前