The following snippet gets the IP address of the machine from which the client visited the website.
string ipaddress;//ASsigning a variable to store the IP address
ipaddress = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];//Explained below
if (ipaddress == "" || ipaddress == null)
ipaddress = Request.ServerVariables["REMOTE_ADDR"];
When users are behind any proxies or routers the REMOTE_ADDR returns the IP Address of the router and not the client user's machine. Hence first we need to check HTTP_X_FORWARDED_FOR, since when client user is behind a proxy server his machine's IP Address the Proxy Server's IP Address is appended to the client machine's IP Address. If there are multiple proxy servers the IP Addresses of all of them are appended to the client machine IP Address.
While running this application on your machine it will show IP Address 127.0.0.1 since your client and server is the same machine. So no need to worry deploy it on server you'll see the results.
Code for a login use the below link:
Hence we need to first check HTTP_X_FORWARDED_FOR and then REMOTE_ADDR.Suneel161, if this helps please login to Mark As Answer. | Alert Moderator