how to get the user's ip address on web server

2020-03-31 03:29发布

问题:

I have a problem to get the user's ip address into web server. I am using this code..

//To get the local IP address 
            string sHostName = Dns.GetHostName();
            IPHostEntry ipE = Dns.GetHostByName(sHostName);
            IPAddress[] IpA = ipE.AddressList;
            for (int i = 0; i < IpA.Length; i++)
            {
                Console.WriteLine("IP Address {0}: {1} ", i, IpA[i].ToString());
                string IPAddress= IpA[i].ToString();//ip;// IPAddress;// strIPAddress;
            }

due to this I am getting user IP address into local host accurate but when I upload my website into web server than it's having all user's ip address same as server IP address... please guys help me.

回答1:

That code will get you the IP address of the server.

You can access the user's IP address with this property: Request.UserHostAddress



回答2:

Get users IP address

Request.ServerVariables("REMOTE_ADDR")
or
Request.UserHostAddress

To get the IP address of the machine and not the proxy use the following code

Request.ServerVariables["HTTP_X_FORWARDED_FOR"];

This link help you more..

http://www.codeproject.com/Questions/260872/How-to-get-client-IP-in-asp-net-Csharp



回答3:

The code you have used only work in case of windows application (Client server architecture) But to get the users ip address in web application you need to use

Request.UserHostAddress


回答4:

No matter how hard you try you can only get server IP using server side code in Asp.Net.However the method told in this article will let you access client ip using javascript.refer this https://www.c-sharpcorner.com/blogs/getting-client-ip-address-or-local-ip-address-in-javascript



标签: c# asp.net