They don't seem to work very well. Whenever a site "figures out" where I am based on my ISP's IP address, it's usually some little town a hundred miles away where their cable system taps into the Internet. And if someone is on dialup (e.g., AOL), who knows what IP address will be used, or how far away it is from where the user actually is. In other words, an IP address can only give you a very rough idea of where a user is, often no better than country level. I wouldn't bother with it.