This package wraps the libgeoip C library for access from Go (golang).
Install with go get github.com/abh/geoip
and use godoc
geoip to read the documentation.
There's a small example in the ex/
subdirectory.
You can download the free GeoLite Country database or you can subscribe to updates.
file := "/usr/share/GeoIP/GeoIP.dat"
gi, err := geoip.Open(file)
if err != nil {
fmt.Printf("Could not open GeoIP database\n")
}
if gi != nil {
country, netmask := gi.GetCountry("207.171.7.51")
}
// Setup gi6 by opening the optional IPv6 database and then...
country := gi6.GetCountry_v6("2607:f238:2::5")
fmt.Println(country)
Copyright 2012-2013 Ask Bjørn Hansen ask@develooper.com. The package is MIT licensed, see the LICENSE file. Originally based on example code from blasux@blasux.ru.