Z důvodů pořešení nějakých bezpečnostních praktik jsem potřeboval nějak blíže geolokalizovat IP přihlašovaného uživatele, respektive záškodníka, abych věděl odkud se fyzicky přihlašuje:
NodeJS: geolokalizace IP adresy
'use strict'; const request = require('request'); function getIpGeolocation(ip, callBack) { request(`http://ipinfo.io/${ip}/json`, (error, response, body) => { if (!error && body) { callBack(null, JSON.parse(body)); } else { callBack(error, null); } }); } // TESTOVACI SEKCE // Pro spuseteni na prikazove radce, kde 1. argumentem je hledana IP adresa if (require.main === module) { if (process.argv.length < 3) { console.log('Spatny pocet argumentu: 1.argument = IP adresa'); } else { getIpGeolocation(process.argv[2], (err, info) => { if (!err && info) { console.log(JSON.stringify(info, null, 4)); } }); } }
Python: geolokalizace IP adresy
#!/usr/local/bin/python import json from urllib2 import urlopen from sys import argv, exit def get_ip_geolocation(ip): return json.load(urlopen('http://ipinfo.io/{0}/json'.format(ip))) if __name__ == "__main__": if len(argv) < 2: ip = raw_input("IP: ") else: ip = argv[1] info = get_ip_geolocation(ip) info["ip"] = ip for i in info: print("{:10}: {}".format(i, info[i]))