GeoIP binding for node

Usage no npm install needed!

<script type="module">
  import geoip from '';


GeoIP binding for nodejs(>=0.10) and iojs

NPM version Build status Dependencies Status Bitdeli Badge

Get geolocation information based on domain or IP address.


Since this module required to compile geoip c library during the installtion, due to the difficulty of compilifa this c library on windows, currenlty, this module can not be used on windows, yet.

I recommend that choosing a pure javascript implementation instead, node-geoip maybe your best candicate.

Technical Architecture


Memory leak issue

As up to the version 0.4.7 (commit 22dadd98646f75318412b54b3de90cc079d34b1d), there will be some memory leak when new a object from GeoIP class.

Here is the report, I'll update it frequently.

Fortunately, the number of leaked bytes is not huge, and you wont new a object very offen.

If you are willing to fix this but, please fork this project.

Need support special database?

Corrently, this package supports the most common databases from MaxMind.

But, it still a lot of special databases out there.

Since I am not a user of any product/service of maxmind, if you require this pacakge to support special db, please make sure you can delivery the testing db and the ip address/domain that can be used to against the db.


[sudo] npm install geoip [-g]


See usage doc.