Request.UserHostAddress
should do it.
Granted that carries a couple caveats, particularly in that it might not work if you're behind a proxy (reverse or otherwise). So be careful with using it. For instance, if someone from Microsoft clicked on your link, someone else from there might not be able to if they were going through the same router.
As a general rule, I'd say this is great if you're working with a limited subset of people (like if it's an intranet site), but you might want to find an alternative if you're going to be targeting everyone. You could look into using cookies, although that's really up to the user not clearing their cookies. The safest way would be through authentication, although I recognize that that can be a hassle for users if you don't already require them to do that.