簡體   English   中英

在機架式負載均衡器后面使用自托管Web API獲取客戶端IP

[英]Obtaining client IP using self-hosted web API behind rackspace hosted load balancer

我有一個負載平衡的API,它使用Microsoft自托管的Web API並在托管的Rackspace負載均衡器后面的HTTPS上運行。 負載平衡器不會終止HTTPS,而是將HTTPS直接轉發到服務主機。 即SSL證書位於處理請求的每台服務器上。

如果繞過負載平衡,則可以使用request.Properties.ContainsKey(RemoteEndpointMessageProperty.Name)正確提取客戶端IP。

如果我通過負載均衡器,則無法獲取客戶端IP,而無法獲取負載均衡器的IP。

我一直在搜索並嘗試各種方法來獲取實際的客戶端IP都無濟於事。 在調試時,我仔細查看了請求的屬性列表,以為某處必須引用原始客戶端IP。 再次無濟於事。

似乎沒有太多改變可以幫助將RackSpace Web Manager用於負載均衡器。

在這種情況下,是否可以提取原始客戶端IP,或者在遍歷負載均衡器之后是否僅存在此信息?

提前謝謝了。

西蒙

使用未由托管負載均衡器終止的HTTPS意味着它無法將任何內容添加到加密流中。 這意味着負載平衡器無法將原始IP傳遞給Web服務器本身。

我在亞馬遜也有同樣的問題。 檢查它發送的標頭,它應該包含標頭“ X-Forwarded-For”,其中包含客戶端的IP地址。

這也可能會有所幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM