IP Address to Country/State (for CommunityServer) using www.hostip.info

June 15, 2005 | Uncategorized | 1 comment

I am about to begin overhauling a pretty big site (DTS)
and I’ve been collecting user resolution data to determine if we can do
a 1024×768 layout. While browsing for IP-to-country databases, I
stumbled upon http://www.hostip.info/,
a site which keeps up-to-date data of IP addresses and their country
codes and state information. They offer a free download of the database
(about 25 MB, 500 MB unzipped!) as well as a simple GET page where you
can retrieve the info programmatically.  I wrote a quick ASP.NET
sample script to pull the data:

string ipUrl = "http://www.hostip.info/api/get.html?ip=" + Request.UserHostAddress;

WebClient webClient = new WebClient();
Byte[] ipInfoBytes = webClient.DownloadData(ipUrl);
UTF8Encoding encoding = new UTF8Encoding();
string ipInfo = encoding.GetString(ipInfoBytes);

Response.Write(ipInfo);

Long term, it’d probably be better to download the data and use your
own local copy, but their response time was pretty zippy and it works
for now.

Then I thought it would be cool to hook it up to CommunityServer‘s new CSModule
event model and pull user’s locations when a new account is created so
that the Location property is automatically filled in. This could also
be done every time a user logged in (the UserValidated event) which
would make things very interesting!

Here’s a link to the CSModule code:

If you want to use it out of the box, download the second file, compile it, and
copy RefreshDevelopment.CommunityServer.Modules.UserIpLocation.dll into
your /bin/ folder. Then add the following line to your
CommunityServer.config file between the tag.


One response to “IP Address to Country/State (for CommunityServer) using www.hostip.info”

  1. Dilip Kumar Sittu says:

    Thank u so much.

    its really very good for me
    I m very Happy because we try much-much but not geting exact value but now I have value as I want.

    Thanks a lot
    Dilip Kumar

Leave a Reply

Hi, I'm John Dyer. In my day job, I build websites and create online seminary software for a seminary in Dallas. I also like to release open source tools including a pretty popular HTML5 video player and build tools that help people find best bible commentaries and do bible study. And just for fun, I also wrote a book on the theology of technology and media.

Fork me on GitHub

Social Widgets powered by AB-WebLog.com.