Documentation
¶
Overview ¶
This ip2location package provides a fast lookup of country, region, city, latitude, longitude, ZIP code, time zone, ISP, domain name, connection type, IDD code, area code, weather station code, station name, MCC, MNC, mobile brand, elevation, usage type, address type, IAB category, district, autonomous system number (ASN) and autonomous system (AS) from IP address by using IP2Location database.
Index ¶
- func Api_version() string
- func Close()deprecated
- func Open(dbpath string)deprecated
- func Printrecord(x IP2Locationrecord)
- type CI
- type CountryInfoRecord
- type DB
- func (d *DB) Close() error
- func (d *DB) DatabaseVersion() string
- func (d *DB) Get_addresstype(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_all(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_areacode(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_as(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_asn(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_category(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_city(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_country_long(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_country_short(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_district(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_domain(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_elevation(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_iddcode(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_isp(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_latitude(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_longitude(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_mcc(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_mnc(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_mobilebrand(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_netspeed(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_region(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_timezone(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_usagetype(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_weatherstationcode(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_weatherstationname(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) Get_zipcode(ipaddress string) (IP2Locationrecord, error)
- func (d *DB) PackageVersion() string
- type DBReader
- type IP2LocationCreditResult
- type IP2LocationResult
- type IP2Locationrecord
- type IPTools
- func (t *IPTools) CIDRToIPv4(CIDR string) ([]string, error)
- func (t *IPTools) CIDRToIPv6(CIDR string) ([]string, error)
- func (t *IPTools) CompressIPv6(IP string) (string, error)
- func (t *IPTools) DecimalToIPv4(IPNum *big.Int) (string, error)
- func (t *IPTools) DecimalToIPv6(IPNum *big.Int) (string, error)
- func (t *IPTools) ExpandIPv6(IP string) (string, error)
- func (t *IPTools) IPv4ToCIDR(IPFrom string, IPTo string) ([]string, error)
- func (t *IPTools) IPv4ToDecimal(IP string) (*big.Int, error)
- func (t *IPTools) IPv6ToCIDR(IPFrom string, IPTo string) ([]string, error)
- func (t *IPTools) IPv6ToDecimal(IP string) (*big.Int, error)
- func (t *IPTools) IsIPv4(IP string) bool
- func (t *IPTools) IsIPv6(IP string) bool
- type RI
- type RegionInfoRecord
- type WS
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Close
deprecated
func Close()
Close will close the file handle to the BIN file.
Deprecated: No longer being updated.
func Printrecord ¶
func Printrecord(x IP2Locationrecord)
Printrecord is used to output the geolocation data for debugging purposes.
Types ¶
type CI ¶
type CI struct {
// contains filtered or unexported fields
}
The CI struct is the main object used to read the country information CSV.
func OpenCountryInfo ¶
OpenCountryInfo initializes with the path to the country information CSV file.
func (*CI) GetCountryInfo ¶
func (c *CI) GetCountryInfo(countryCode ...string) ([]CountryInfoRecord, error)
GetCountryInfo returns the country information for the specified country or all countries if not specified
type CountryInfoRecord ¶
type CountryInfoRecord struct { Country_code string Country_name string Country_alpha3_code string Country_numeric_code string Capital string Country_demonym string Total_area string Population string Idd_code string Currency_code string Currency_name string Currency_symbol string Lang_code string Lang_name string Cctld string }
The CountryInfoRecord struct stores all of the available country info found in the country information CSV file.
type DB ¶
type DB struct {
// contains filtered or unexported fields
}
func OpenDB ¶
Open takes the path to the IP2Location BIN database file. It will read all the metadata required to be able to extract the embedded geolocation data, and return the underlining DB object.
func OpenDBWithReader ¶
OpenDBWithReader takes a DBReader to the IP2Location BIN database file. It will read all the metadata required to be able to extract the embedded geolocation data, and return the underlining DB object.
func (*DB) DatabaseVersion ¶
DatabaseVersion returns the database version.
func (*DB) Get_addresstype ¶
func (d *DB) Get_addresstype(ipaddress string) (IP2Locationrecord, error)
Get_addresstype will return the address type based on the queried IP address.
func (*DB) Get_all ¶
func (d *DB) Get_all(ipaddress string) (IP2Locationrecord, error)
Get_all will return all geolocation fields based on the queried IP address.
func (*DB) Get_areacode ¶
func (d *DB) Get_areacode(ipaddress string) (IP2Locationrecord, error)
Get_areacode will return the area code based on the queried IP address.
func (*DB) Get_as ¶
func (d *DB) Get_as(ipaddress string) (IP2Locationrecord, error)
Get_as will return the autonomous system (AS) based on the queried IP address.
func (*DB) Get_asn ¶
func (d *DB) Get_asn(ipaddress string) (IP2Locationrecord, error)
Get_asn will return the autonomous system number (ASN) based on the queried IP address.
func (*DB) Get_category ¶
func (d *DB) Get_category(ipaddress string) (IP2Locationrecord, error)
Get_category will return the category based on the queried IP address.
func (*DB) Get_city ¶
func (d *DB) Get_city(ipaddress string) (IP2Locationrecord, error)
Get_city will return the city name based on the queried IP address.
func (*DB) Get_country_long ¶
func (d *DB) Get_country_long(ipaddress string) (IP2Locationrecord, error)
Get_country_long will return the country name based on the queried IP address.
func (*DB) Get_country_short ¶
func (d *DB) Get_country_short(ipaddress string) (IP2Locationrecord, error)
Get_country_short will return the ISO-3166 country code based on the queried IP address.
func (*DB) Get_district ¶
func (d *DB) Get_district(ipaddress string) (IP2Locationrecord, error)
Get_district will return the district name based on the queried IP address.
func (*DB) Get_domain ¶
func (d *DB) Get_domain(ipaddress string) (IP2Locationrecord, error)
Get_domain will return the domain name based on the queried IP address.
func (*DB) Get_elevation ¶
func (d *DB) Get_elevation(ipaddress string) (IP2Locationrecord, error)
Get_elevation will return the elevation in meters based on the queried IP address.
func (*DB) Get_iddcode ¶
func (d *DB) Get_iddcode(ipaddress string) (IP2Locationrecord, error)
Get_iddcode will return the International Direct Dialing code based on the queried IP address.
func (*DB) Get_isp ¶
func (d *DB) Get_isp(ipaddress string) (IP2Locationrecord, error)
Get_isp will return the Internet Service Provider name based on the queried IP address.
func (*DB) Get_latitude ¶
func (d *DB) Get_latitude(ipaddress string) (IP2Locationrecord, error)
Get_latitude will return the latitude based on the queried IP address.
func (*DB) Get_longitude ¶
func (d *DB) Get_longitude(ipaddress string) (IP2Locationrecord, error)
Get_longitude will return the longitude based on the queried IP address.
func (*DB) Get_mcc ¶
func (d *DB) Get_mcc(ipaddress string) (IP2Locationrecord, error)
Get_mcc will return the mobile country code based on the queried IP address.
func (*DB) Get_mnc ¶
func (d *DB) Get_mnc(ipaddress string) (IP2Locationrecord, error)
Get_mnc will return the mobile network code based on the queried IP address.
func (*DB) Get_mobilebrand ¶
func (d *DB) Get_mobilebrand(ipaddress string) (IP2Locationrecord, error)
Get_mobilebrand will return the mobile carrier brand based on the queried IP address.
func (*DB) Get_netspeed ¶
func (d *DB) Get_netspeed(ipaddress string) (IP2Locationrecord, error)
Get_netspeed will return the Internet connection speed based on the queried IP address.
func (*DB) Get_region ¶
func (d *DB) Get_region(ipaddress string) (IP2Locationrecord, error)
Get_region will return the region name based on the queried IP address.
func (*DB) Get_timezone ¶
func (d *DB) Get_timezone(ipaddress string) (IP2Locationrecord, error)
Get_timezone will return the time zone based on the queried IP address.
func (*DB) Get_usagetype ¶
func (d *DB) Get_usagetype(ipaddress string) (IP2Locationrecord, error)
Get_usagetype will return the usage type based on the queried IP address.
func (*DB) Get_weatherstationcode ¶
func (d *DB) Get_weatherstationcode(ipaddress string) (IP2Locationrecord, error)
Get_weatherstationcode will return the weather station code based on the queried IP address.
func (*DB) Get_weatherstationname ¶
func (d *DB) Get_weatherstationname(ipaddress string) (IP2Locationrecord, error)
Get_weatherstationname will return the weather station name based on the queried IP address.
func (*DB) Get_zipcode ¶
func (d *DB) Get_zipcode(ipaddress string) (IP2Locationrecord, error)
Get_zipcode will return the postal code based on the queried IP address.
func (*DB) PackageVersion ¶
PackageVersion returns the database type.
type IP2LocationCreditResult ¶
type IP2LocationCreditResult struct {
Response int `json:"response"`
}
The IP2LocationCreditResult struct stores the credit balance for the IP2Location Web Service.
type IP2LocationResult ¶
type IP2LocationResult struct { Response string `json:"response"` CountryCode string `json:"country_code"` CountryName string `json:"country_name"` RegionName string `json:"region_name"` CityName string `json:"city_name"` Latitude float64 `json:"latitude"` Longitude float64 `json:"longitude"` ZipCode string `json:"zip_code"` TimeZone string `json:"time_zone"` Isp string `json:"isp"` Domain string `json:"domain"` NetSpeed string `json:"net_speed"` IddCode string `json:"idd_code"` AreaCode string `json:"area_code"` WeatherStationCode string `json:"weather_station_code"` WeatherStationName string `json:"weather_station_name"` Mcc string `json:"mcc"` Mnc string `json:"mnc"` MobileBrand string `json:"mobile_brand"` Elevation int `json:"elevation"` UsageType string `json:"usage_type"` AddressType string `json:"address_type"` Category string `json:"category"` CategoryName string `json:"category_name"` Geotargeting struct { Metro string `json:"metro"` } `json:"geotargeting"` Continent struct { Name string `json:"name"` Code string `json:"code"` Hemisphere []string `json:"hemisphere"` } `json:"continent"` Country struct { Name string `json:"name"` Alpha3Code string `json:"alpha3_code"` NumericCode string `json:"numeric_code"` Demonym string `json:"demonym"` Flag string `json:"flag"` Capital string `json:"capital"` TotalArea string `json:"total_area"` Population string `json:"population"` Currency struct { Code string `json:"code"` Name string `json:"name"` Symbol string `json:"symbol"` } `json:"currency"` Language struct { Code string `json:"code"` Name string `json:"name"` } `json:"language"` IddCode string `json:"idd_code"` Tld string `json:"tld"` IsEu bool `json:"is_eu"` } `json:"country"` CountryGroupings []struct { Acronym string `json:"acronym"` Name string `json:"name"` } `json:"country_groupings"` Region struct { Name string `json:"name"` Code string `json:"code"` } `json:"region"` City struct { Name string `json:"name"` } `json:"city"` TimeZoneInfo struct { Olson string `json:"olson"` CurrentTime string `json:"current_time"` GmtOffset int `json:"gmt_offset"` IsDst string `json:"is_dst"` Sunrise string `json:"sunrise"` Sunset string `json:"sunset"` } `json:"time_zone_info"` CreditsConsumed int `json:"credits_consumed"` }
The IP2LocationResult struct stores all of the available geolocation info found in the IP2Location Web Service.
type IP2Locationrecord ¶
type IP2Locationrecord struct { Country_short string Country_long string Region string City string Isp string Latitude float32 Longitude float32 Domain string Zipcode string Timezone string Netspeed string Iddcode string Areacode string Weatherstationcode string Weatherstationname string Mcc string Mnc string Mobilebrand string Elevation float32 Usagetype string Addresstype string Category string District string Asn string As string }
The IP2Locationrecord struct stores all of the available geolocation info found in the IP2Location database.
type IPTools ¶
type IPTools struct {
// contains filtered or unexported fields
}
The IPTools struct is the main object to access the IP address tools
func (*IPTools) CIDRToIPv4 ¶
CIDRToIPv4 returns the IPv4 range for the supplied CIDR.
func (*IPTools) CIDRToIPv6 ¶
CIDRToIPv6 returns the IPv6 range for the supplied CIDR.
func (*IPTools) CompressIPv6 ¶
CompressIPv6 returns the compressed form of the supplied IPv6 address.
func (*IPTools) DecimalToIPv4 ¶
DecimalToIPv4 returns the IPv4 address for the supplied IP number.
func (*IPTools) DecimalToIPv6 ¶
DecimalToIPv6 returns the IPv6 address for the supplied IP number.
func (*IPTools) ExpandIPv6 ¶
ExpandIPv6 returns the expanded form of the supplied IPv6 address.
func (*IPTools) IPv4ToCIDR ¶
IPv4ToCIDR returns the CIDR for the supplied IPv4 range.
func (*IPTools) IPv4ToDecimal ¶
IPv4ToDecimal returns the IP number for the supplied IPv4 address.
func (*IPTools) IPv6ToCIDR ¶
IPv6ToCIDR returns the CIDR for the supplied IPv6 range.
func (*IPTools) IPv6ToDecimal ¶
IPv6ToDecimal returns the IP number for the supplied IPv6 address.
type RI ¶
type RI struct {
// contains filtered or unexported fields
}
The RI struct is the main object used to read the region information CSV.
func OpenRegionInfo ¶
OpenRegionInfo initializes with the path to the region information CSV file.
type RegionInfoRecord ¶
The RegionInfoRecord struct stores all of the available region info found in the region information CSV file.
type WS ¶
type WS struct {
// contains filtered or unexported fields
}
The WS struct is the main object used to query the IP2Location Web Service.
func (*WS) GetCredit ¶
func (w *WS) GetCredit() (IP2LocationCreditResult, error)
GetCredit will return the web service credit balance.