IPGeoLocation - A tool to retrieve IP Geolocation information

Monday, April 25, 2016


A tool to retrieve IP Geolocation information
Powered by ip-api

Requirements
Python 3.x

Features
  • Retrieve IP or Domain Geolocation.
  • Retrieve your own IP Geolocation.
  • Retrieve Geolocation for IPs or Domains loaded from file. Each target in new line.
  • Define your own custom User Agent string.
  • Select random User-Agent strings from file. Each User Agent string in new line.
  • Proxy support.
  • Select random proxy from file. Each proxy URL in new line.
  • Open IP geolocation in Google Maps using the default browser.
  • Export results to csv, xml and txt format.

Geolocation Information
  • ASN
  • City
  • Country
  • Country Code
  • ISP
  • Latitude
  • Longtitude
  • Organization
  • Region Code
  • Region Name
  • Timezone
  • Zip Code

Usage
$ ./ip2geolocation.py
usage: ipgeolocation.py [-h] [-m] [-t TARGET] [-T file] [-u User-Agent]
                        [-U file] [-g] [--noprint] [-v] [--nolog] [-x PROXY]
                        [-X file] [-e file] [-ec file] [-ex file]

IPGeolocation 2.0.3

--[ Retrieve IP Geolocation information from ip-api.com
--[ Copyright (c) 2015-2016 maldevel (@maldevel)
--[ ip-api.com service will automatically ban any IP addresses doing over 150 requests per minute.

optional arguments:
  -h, --help            show this help message and exit
  -m, --my-ip           Get Geolocation info for my IP address.
  -t TARGET, --target TARGET
                        IP Address or Domain to be analyzed.
  -T file, --tlist file
                        A list of IPs/Domains targets, each target in new line.
  -u User-Agent, --user-agent User-Agent
                        Set the User-Agent request header (default: IP2GeoLocation 2.0.3).
  -U file, --ulist file
                        A list of User-Agent strings, each string in new line.
  -g                    Open IP location in Google maps with default browser.
  --noprint             IPGeolocation will print IP Geolocation info to terminal. It is possible to tell IPGeolocation n
ot to print results to terminal with this option.
  -v, --verbose         Enable verbose output.
  --nolog               IPGeolocation will save a .log file. It is possible to tell IPGeolocation not to save those log
files with this option.
  -x PROXY, --proxy PROXY
                        Setup proxy server (example: http://127.0.0.1:8080)
  -X file, --xlist file
                        A list of proxies, each proxy url in new line.
  -e file, --txt file   Export results.
  -ec file, --csv file  Export results in CSV format.
  -ex file, --xml file  Export results in XML format.

Examples
Retrieve your IP Geolocation
  • ./ip2geolocation.py -m
Retrieve IP Geolocation
  • ./ip2geolocation.py -t x.x.x.x
Retrieve Domain Geolocation
  • ./ip2geolocation.py -t example.com
Do not save .log files
  • ./ip2geolocation.py -t example.com --nolog
Custom User Agent string
  • ./ip2geolocation.py -t x.x.x.x -u "Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko"
Using Proxy
Using random Proxy
  • ./ip2geolocation.py -t x.x.x.x -X /path/to/proxies/filename.txt
Pick User-Agent string randomly
  • ./ip2geolocation.py -t x.x.x.x -U /path/to/user/agent/strings/filename.txt
Retrieve IP geolocation and open location in Google maps with default browser
  • ./ip2geolocation.py -t x.x.x.x -g
Export results to CSV file
  • ./ip2geolocation.py -t x.x.x.x --csv /path/to/results.csv
Export results to XML file
  • ./ip2geolocation.py -t x.x.x.x --xml /path/to/results.xml
Export results to TXT file
  • ./ip2geolocation.py -t x.x.x.x -e /path/to/results.txt
Retrieve IP Geolocation for many targets
  • ./ip2geolocation.py -T /path/to/targets/targets.txt
Retrieve IP Geolocation for many targets and export results to xml
  • ./ip2geolocation.py -T /path/to/targets/targets.txt --xml /path/to/results.xml
Do not print results to terminal
  • ./ip2geolocation.py -m -e /path/to/results.txt --noprint




Subscribe via e-mail for updates!