IP2Location IP Geolocation C Library

IP2Location IP Geolocation C library enables the user to find the country, region, city, coordinates, ZIP code, time zone, ISP, domain name, connection type, area code, weather, MCC, MNC, mobile brand name, elevation and usage type that any IP address or hostname originates from. It has been optimized for speed and memory utilization. Developers can use the API to query all IP2Location™ binary databases for IPv4 and IPv6 address.

Installation
Unix/Linux
  1. Decompress the archive.
  2. Navigate to working directory.
    cd IP2Location-C-Library-master
  3. Run the following commands:
    autoreconf -i -v --force
    ./configure
    make
    make install
    cd data
    perl ip-country.pl
  4. To test it, go to test folder.
    cd test
  5. And run the sample application
    test-IP2Location


Windows
  1. Decompress the archive.
  2. Open command prompt and navigate to Microsoft Visual Studio Visual C directory and execute vcvarsall.bat or vcvars32.bat. (Alternatively, open Visual Studio Command Prompt located in the start menu under Microsoft Visual Studio\Visual Studio Tools)
  3. Navigate to working directory.
    cd IP2Location-C-Library-master
  4. Run the following commands:
    nmake Makefile.win
    cd data
    perl ip-country.pl
  5. To test it, go to test folder.
    cd test
  6. And run the sample application
    test-IP2Location


MacOS
  1. Decompress the archive.
  2. Navigate to working directory.
    cd IP2Location-C-Library-master
  3. Run the following commands:
    autoreconf -i -v --force
    export CFLAGS=-I/usr/include/malloc
    ./configure
    make
    make install
    cd data
    perl ip-country.pl
  4. To test it, go to test folder.
    cd test
  5. And run the sample application
    test-IP2Location
Sample Codes
#include "IP2Location.h"

IP2Location *IP2LocationObj = IP2Location_open("../data/IP-COUNTRY-REGION-CITY-LATITUDE-LONGITUDE-ZIPCODE-TIMEZONE-ISP-DOMAIN-NETSPEED-AREACODE-WEATHER-MOBILE-ELEVATION-USAGETYPE-ADDRESSTYPE-CATEGORY-SAMPLE.BIN");
IP2LocationRecord *record = IP2Location_get_all(IP2LocationObj, "161.11.12.13");
printf("%s %s %s %s %s %f %f %s %s %s %s %s %s %s %s %s %s %s %f %s %s %s\n",
   record->country_short,
   record->country_long,
   record->region,
   record->city,
   record->isp,
   record->latitude,
   record->longitude,
   record->domain,
   record->zipcode,
   record->timezone,
   record->netspeed,
   record->iddcode,
   record->areacode,
   record->weatherstationcode,
   record->weatherstationname,
   record->mcc,
   record->mnc,
   record->mobilebrand,
   record->elevation,
   record->usagetype,
   record->address_type,
   record->category);
IP2Location_free_record(record);
IP2Location_close(IP2LocationObj);
CLI

Query an IP address and display the result.

ip2location -d [IP2LOCATION BIN DATA PATH] --ip [IP ADDRESS]

Query all IP addresses from an input file and display the result.

ip2location -d [IP2LOCATION BIN DATA PATH] -i [INPUT FILE PATH]

Query all IP addresses from an input file and display the result in XML format.

ip2location -d [IP2LOCATION BIN DATA PATH] -i [INPUT FILE PATH] --format XML
Sample IP2Location Databases (BIN)
Sample Packages - BIN File IPv4 IPv6
IP2Location DB1 Download (1,002.46 kB) Download (1.03 MB)
IP2Location DB2 Download (31.68 MB) Download (32.43 MB)
IP2Location DB3 Download (21.08 MB) Download (21.16 MB)
IP2Location DB4 Download (50.93 MB) Download (51.02 MB)
IP2Location DB5 Download (31.77 MB) Download (31.87 MB)
IP2Location DB6 Download (61.13 MB) Download (61.25 MB)
IP2Location DB7 Download (56.89 MB) Download (57.03 MB)
IP2Location DB8 Download (67.43 MB) Download (67.59 MB)
IP2Location DB9 Download (36.54 MB) Download (36.72 MB)
IP2Location DB10 Download (73.09 MB) Download (73.23 MB)
IP2Location DB11 Download (37.30 MB) Download (37.42 MB)
IP2Location DB12 Download (73.73 MB) Download (73.90 MB)
IP2Location DB13 Download (35.99 MB) Download (36.13 MB)
IP2Location DB14 Download (75.03 MB) Download (75.30 MB)
IP2Location DB15 Download (40.49 MB) Download (40.67 MB)
IP2Location DB16 Download (79.73 MB) Download (79.88 MB)
IP2Location DB17 Download (43.55 MB) Download (43.69 MB)
IP2Location DB18 Download (87.25 MB) Download (87.46 MB)
IP2Location DB19 Download (70.37 MB) Download (70.51 MB)
IP2Location DB20 Download (89.72 MB) Download (90.05 MB)
IP2Location DB21 Download (44.03 MB) Download (44.19 MB)
IP2Location DB22 Download (93.83 MB) Download (94.06 MB)
IP2Location DB23 Download (70.82 MB) Download (71.05 MB)
IP2Location DB24 Download (95.10 MB) Download (95.31 MB)
IP2Location DB25 Download (97.46 MB) Download (97.55 MB)
IP2Location DB26 Download (104.13 MB) Download (104.48 MB)
Pop Up Box

Discover Your User Locations

Retrieve geolocation data for FREE now!