繁体   English   中英

ASP.NET 核心 - 获取客户端的 IP 地址而不是本地 IP 地址

[英]ASP.NET Core - Get client's IP address instead of local IP

我正在尝试在我的 .net 后端中检索客户端的 IP 地址,该后端在 Docker 中运行。

使用下面的代码片段,我希望得到客户端的 IP 地址,但我得到的是172.17.0.1 ,这是一些本地 IP 地址(可能是 Docker)。

public async Task Invoke(HttpContext context)
        {
            var clientIpContext = context.Connection.RemoteIpAddress?.MapToIPv4().ToString();

            ...
            
            await _next(context);
        }

我希望有人能帮帮忙:)

I'm not too familiar with docker, but most proxies forwarding on HTTP requests will populate the X-Forwarded-For header with the original originating IP address.

您可以检查该 header 的传入请求,以查看您的客户端 IP 地址是否存在。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM