在ASP.NET中防弹检测用户的IP地址

zee*_*emz 4 c# asp.net

我试过从下面提到的方法中获取ip

HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] & 
Request.UserHostAddress & Request.ServerVariables["REMOTE_ADDR"]
Run Code Online (Sandbox Code Playgroud)

问题是Request.ServerVariables["REMOTE_ADDR"]返回代理服务器IP并且 HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"]可以被篡改我想要一个万无一失的获取客户端IP的方法,这种方法无法被篡改,在这方面的任何帮助都将受到高度赞赏.

小智 9

我想要一个万无一失的获取客户端ip的方法,这种方法无法被篡改

不存在.抱歉.

问题是Request.ServerVariables ["REMOTE_ADDR"]返回Proxy ip

假设用户在公司代理后面.您将获得此代理IP,其中所有意图和目的都是最接近用户IP的内容.我的意思是,如果你得到用户的最终内部IP,如192.168.0.15那么对你有什么用处?

  • 我不认为你需要为互联网的运作方式道歉:P (7认同)