IP to Country
IP to Country is a module for detecting country information of IP addresses without any API call.
Installation
npm install iptocountry
Usage
REST API
npm start # See http://localhost:12080/search?ip=74.125.225.71 # See http://localhost:12080/search?ip=74.125.225.71,98.138.253.109
Download IP database
var ip2co = ; ifip2co ip2co;// done!
Search IP addresses
var ip2co = ; var ipSearch = ip2co;if!ipSearcherror console; else console;; /*{ "data": { "74.125.225.71": { "ip": "74.125.225.71", "ipNum": 1249763655, "registery": "arin", "assigned": "1173744000", "coCode2": "US", "coCode3": "USA", "country": "United States", "time": "2007-03-13 00:00:00", "found": true }, "98.138.253.109": { "ip": "98.138.253.109", "ipNum": 1653276013, "registery": "arin", "assigned": "1196985600", "coCode2": "US", "coCode3": "USA", "country": "United States", "time": "2007-12-07 00:00:00", "found": true } }, "warnings": [], "timeE": 51}*/
Listen HTTP requests
var ip2co = ; ip2co;ip2co; // See http://localhost:12080/search?ip=74.125.225.71
For performance test; ab -n 1000 http://localhost:12080/search?ip=74.125.225.71
Notes
- It uses Webnet77 for IP database file. It represents the over 4 billion IPV4 numbers as well as the virtually inexhaustible IPV6 range (3.4e+38). There is limit for downloads, for more information see FAQ
Implementations
- IPv4
- IPv6
License
Licensed under The MIT License (MIT)
For the full copyright and license information, please view the LICENSE.txt file.