title: How to get a user's client IP address in ASP.NET?
body: <p>We have <code>Request.UserHostAddress</code> to get the IP address in ASP.NET, but this is usually the user's ISP's IP address, not exactly the user's machine IP address who for example clicked a link. How can I get the real IP Address?</p>
  
  <p>For example, in a Stack Overflow user profile it is: <strong>"Last account activity: 4 hours ago from 86.123.127.8"</strong>, but my machine IP address is a bit different. How does Stack Overflow get this address? </p>
  
  <p>In some web systems there is an IP address check for some purposes. For example, with a certain IP address, for every 24 hours can the user just have only 5 clicks on download links? This IP address should be unique, not for an ISP that has a huge range of clients or Internet users.</p>
  
  <p>Did I understand well?</p>