浏览器IP地址

我有2个应用程序

1 Ruby(不是由我编写的。我对Ruby一无所知)和其他ASP.Net

Ruby应用程序确定用户的IP地址(我告诉“使用在HTTP_X_FORWARDED中找到的第一个IP”)并将其散列版本传递给ASP.Net应用程序。

然后ASP.Net应用程序再次确定客户端的IP地址(使用Request.UserHostAddress)并散列值。

然后比较哈希。

通常这些哈希对我们所有的客户都是相同的(如您所料)。

但是,我们有1个新客户,但事实并非如此……

他工作场所的每台计算机显然都会产生不相等的哈希值

怎么会这样?

这取决于他们正在经历的代理。

X-Forwarded-For标题的Wikipedia页面在这方面提供了丰富的信息。

如果希望哈希匹配,则应从同一标头中获取数据。 UserHostAddress由REMOTE_ADDR服务器变量确定(我相信)。