Version: v0.6.18 Latest Latest

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

Go to latest
Published: Jun 24, 2021 License: AGPL-3.0 Imports: 12 Imported by: 1




This section is empty.


This section is empty.


func PrimitiveNetworkProximity

func PrimitiveNetworkProximity(from net.IP, to net.IP, ipVersion uint8) int

PrimitiveNetworkProximity calculates the numerical distance between two IP addresses. Returns a proximity value between 0 (far away) and 100 (nearby).

func ReloadDatabases

func ReloadDatabases() error

ReloadDatabases reloads the geoip database, if they are in use.


type Location

type Location struct {
	Continent struct {
		Code string `maxminddb:"code"`
	} `maxminddb:"continent"`
	Country struct {
		ISOCode string `maxminddb:"iso_code"`
	} `maxminddb:"country"`
	Coordinates struct {
		AccuracyRadius uint16  `maxminddb:"accuracy_radius"`
		Latitude       float64 `maxminddb:"latitude"`
		Longitude      float64 `maxminddb:"longitude"`
	} `maxminddb:"location"`
	AutonomousSystemNumber       uint   `maxminddb:"autonomous_system_number"`
	AutonomousSystemOrganization string `maxminddb:"autonomous_system_organization"`

Location holds information regarding the geographical and network location of an IP address

func GetLocation

func GetLocation(ip net.IP) (record *Location, err error)

GetLocation returns Location data of an IP address

func (*Location) EstimateNetworkProximity

func (l *Location) EstimateNetworkProximity(to *Location) (proximity int)

EstimateNetworkProximity aims to calculate the distance between two network locations. Returns a proximity value between 0 (far away) and 100 (nearby).

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto