从 Windows Azure 服务获取客户端 IP 地址

本文关键字:客户端 IP 地址 获取 服务 Windows Azure | 更新日期: 2023-09-27 17:56:22

我们有几个使用服务堆栈构建的Web服务,并作为自托管可执行文件部署到多个Windows Azure服务器。此设置是从 Amazon EC2 迁移而来的。

我们面临的问题是服务大量使用 IP 地址地理分辨率(即将 IP 地址映射到国家/地区)。但是,在 Azure 设置下,所有请求似乎都来自服务器自己的外部 IP,即 LAN IP。

例如,如果虚拟机的 IP 地址为 10.0.0.4,则所有 HTTP 似乎都源自 10.0.0.4。

有大量的设置和功能使用与亚马逊不同的术语。我们已经尝试研究几件事(例如直接服务器返回),但到目前为止,我们还做得不够。

实现最简单的"端口转发"的正确方法是什么,以便直接打开服务端口并且请求似乎来自其实际来源?

从 Windows Azure 服务获取客户端 IP 地址

我已经取消删除了这个问题并回答了它,因为事实证明它毕竟是一个小的 ServiceStack 陷阱,并且将来可能会帮助其他人:

不要使用UserHostAddress,而是使用RemoteIp