geoip

package module
v1.0.20200806 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 6, 2020 License: MIT Imports: 7 Imported by: 0

README

geoip - fastest geoip country library

godoc release goreport coverage

Getting Started

try on https://play.golang.org/p/0quZRSXdTjq

package main

import (
	"fmt"
	"net"
	"github.com/phuslu/geoip"
)

func main() {
	fmt.Printf("%s", geoip.Country(net.IP{1,1,1,1}))
}

// Output: US
Command Tool
$ go get github.com/phuslu/geoip/cmd/geoip
$ geoip 2001:4860:4860::8888
US
Benchmarks
BenchmarkGeoIpCountryForIPv4-8   	20.8 ns/op	       0 B/op	       0 allocs/op
BenchmarkGeoIpCountryForIPv6-8   	38.2 ns/op	       0 B/op	       0 allocs/op
Acknowledgment

This site or product includes IP2Location LITE data available from http://www.ip2location.com.

How often are the database(geo_db.go) updated?

Following IP2Location Lite Database, usually monthly.

Documentation

Overview

Package geoip provides fastest GeoIP Country library for Go.

package main

import (
	"fmt"
	"net"
	"github.com/phuslu/geoip"
)

func main() {
	fmt.Printf("%s", geoip.Country(net.ParseIP("2001:4860:4860::8888")))
}

// Output: US

Index

Constants

View Source
const Version = "v1.0.20200806"

Variables

This section is empty.

Functions

func Country

func Country(ip net.IP) (country []byte)

Country return ISO 3166-1 alpha-2 country code of IP.

Types

This section is empty.

Directories

Path Synopsis
cmd

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL