CN111447292B - IPv6 geographical position positioning method, device, equipment and storage medium - Google Patents

IPv6 geographical position positioning method, device, equipment and storage medium Download PDF

Info

Publication number
CN111447292B
CN111447292B CN202010112845.5A CN202010112845A CN111447292B CN 111447292 B CN111447292 B CN 111447292B CN 202010112845 A CN202010112845 A CN 202010112845A CN 111447292 B CN111447292 B CN 111447292B
Authority
CN
China
Prior art keywords
ipv6
ipv6 address
geographical
geographical position
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010112845.5A
Other languages
Chinese (zh)
Other versions
CN111447292A (en
Inventor
黄小红
李丹丹
张沛
谢坤
李金睿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN202010112845.5A priority Critical patent/CN111447292B/en
Publication of CN111447292A publication Critical patent/CN111447292A/en
Application granted granted Critical
Publication of CN111447292B publication Critical patent/CN111447292B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/69Types of network addresses using geographic information, e.g. room number
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/659Internet protocol version 6 [IPv6] addresses

Abstract

One or more embodiments of the present specification provide an IPv6 geographical position location method, apparatus, device, and storage medium, where the method includes: acquiring an IPv6 address to be positioned; determining a zone bit code of the IPv6 address to be positioned based on the IPv6 address to be positioned; and determining the IPv6 geographical position corresponding to the IPv6 address to be positioned according to a pre-established correspondence table of the zone bit codes and the geographical positions based on the zone bit codes of the IPv6 address to be positioned. The flag bit codes of the IPv6 addresses to be positioned are determined, and then IPv6 geographical position positioning is carried out based on the flag bit codes and the geographical position corresponding relation table, and the number of the landmark points and the geographical position distribution are not depended on, so that domestic IPv6 geographical position positioning is realized.

Description

IPv6 geographical position positioning method, device, equipment and storage medium
Technical Field
One or more embodiments of the present specification relate to the field of communications technologies, and in particular, to an IPv6 geographic location positioning method, apparatus, device, and storage medium.
Background
IP location technology determines the geographic location of a device by its IP address. The existing IPv6 address positioning research is to apply the traditional IPv4 address positioning method to IPv6 addresses, the method is mainly classic network delay measurement, namely, a 'delay-geographic distance' mathematical model is constructed through the network delay measurement and multipoint positioning is carried out.
The network delay measurement is very dependent on the number of landmark points and the geographical location distribution thereof, however, on one hand, the conditions of low IPv6 address utilization rate and few active addresses exist in China at present; on the other hand, only 29 landmark points are used in the existing research on a global scale.
Therefore, the existing IPv6 address positioning method is coarse in granularity, only in the national level and not suitable for domestic IPv6 geographical position positioning.
Disclosure of Invention
In view of the above, an object of one or more embodiments of the present specification is to provide an IPv6 geolocation method, apparatus, device and storage medium to implement domestic IPv6 geolocation.
In view of the above, a first aspect of one or more embodiments of the present specification provides an IPv6 geographic location positioning method, including:
acquiring an IPv6 address to be positioned;
determining a zone bit code of the IPv6 address to be positioned based on the IPv6 address to be positioned;
and determining the IPv6 geographical position corresponding to the IPv6 address to be positioned according to a pre-established correspondence table of the zone bit codes and the geographical positions based on the zone bit codes of the IPv6 address to be positioned.
Optionally, the method for establishing the flag bit coding and geographical location correspondence table includes:
respectively preprocessing each IPv6 address in a pre-established IPv6 address-geographical position table to obtain each preprocessed IPv6 address; the IPv6 address-geographical position table comprises geographical positions corresponding to all IPv6 addresses;
entropy analysis is carried out on each preprocessed IPv6 address respectively to obtain alternative geographical position zone bits of each IPv6 address;
clustering and dividing all IPv6 addresses in the IPv6 address-geographical position table according to geographical positions to obtain geographical position classifications of all IPv6 addresses in the IPv6 address-geographical position table;
determining the geographical location flag bit of each IPv6 address in the IPv6 address-geographical location table based on the alternative geographical location flag bit of each IPv6 address and the geographical location classification of each IPv6 address;
determining the zone bit codes of all IPv6 addresses in the IPv6 address-geographical location table based on the geographical location zone bits of all IPv6 addresses, and establishing the zone bit code and geographical location corresponding relation table based on the geographical locations corresponding to all IPv6 addresses in the IPv6 address-geographical location table.
Optionally, the method for establishing the IPv6 address-geographic location table includes:
acquiring website data of a plurality of webpages with known geographic positions; the data of each website respectively comprises the IPv6 address of a webpage with a known geographic position;
acquiring real IPv6 data of a plurality of clients; the real IPv6 data of each client respectively comprise a real IPv6 address and longitude and latitude corresponding to each client;
establishing the IPv6 address-geographic location table based on website data for web pages of the plurality of known geographic locations and the plurality of client real IPv6 data.
Optionally, the method further comprises:
and determining the distribution geographical position and the routing geographical position corresponding to the IPv6 address to be positioned according to a pre-established IPv6 address block-geographical position table based on the IPv6 address to be positioned.
Optionally, the method for establishing the IPv6 address block-geographic location table includes:
acquiring IPv6 distribution data based on an APNIC Whois database; wherein the IPv6 allocation data comprises an allocation authority name and an allocation authority geographical location of a plurality of IPv6 address blocks;
acquiring a plurality of IPv6 routing data; each IPv6 routing data respectively comprises IPv6 routing information, IPv6 address blocks related to the IPv6 routing information and geographical positions of the IPv6 address blocks;
establishing the IPv6 address block-geographic location table based on the IPv6 allocation data and the plurality of IPv6 routing data.
A second aspect of one or more embodiments of the present specification provides an IPv6 geographical position locating apparatus, the apparatus including:
the acquisition module is used for acquiring the IPv6 address to be positioned;
the zone bit code determining module is used for determining the zone bit code of the IPv6 address to be positioned based on the IPv6 address to be positioned;
and the geographic position determining module is used for determining the IPv6 geographic position corresponding to the IPv6 address to be positioned according to a pre-established table of corresponding relationship between the zone bit codes and the geographic positions based on the zone bit codes of the IPv6 address to be positioned.
Optionally, the apparatus further includes an establishing module of a flag bit code and geographical location correspondence table, specifically configured to:
respectively preprocessing each IPv6 address in a pre-established IPv6 address-geographical position table to obtain each preprocessed IPv6 address; the IPv6 address-geographical position table comprises geographical positions corresponding to all IPv6 addresses;
entropy analysis is carried out on each preprocessed IPv6 address respectively to obtain alternative geographical position zone bits of each IPv6 address;
clustering and dividing all IPv6 addresses in the IPv6 address-geographical position table according to geographical positions to obtain geographical position classifications of all IPv6 addresses in the IPv6 address-geographical position table;
determining the geographical location flag bit of each IPv6 address in the IPv6 address-geographical location table based on the alternative geographical location flag bit of each IPv6 address and the geographical location classification of each IPv6 address;
determining the zone bit codes of all IPv6 addresses in the IPv6 address-geographical location table based on the geographical location zone bits of all IPv6 addresses, and establishing the zone bit code and geographical location corresponding relation table based on the geographical locations corresponding to all IPv6 addresses in the IPv6 address-geographical location table.
Optionally, the apparatus further includes an IPv6 address-geographic location table establishing module, specifically configured to:
acquiring website data of a plurality of webpages with known geographic positions; the data of each website respectively comprises the IPv6 address of a webpage with a known geographic position;
acquiring real IPv6 data of a plurality of clients; the real IPv6 data of each client respectively comprise a real IPv6 address and longitude and latitude corresponding to each client;
establishing the IPv6 address-geographic location table based on website data for web pages of the plurality of known geographic locations and the plurality of client real IPv6 data.
Optionally, the device further includes an allocation and routing geographic position determining module, configured to determine, based on the IPv6 address to be located, an allocation geographic position and a routing geographic position corresponding to the IPv6 address to be located according to a pre-established IPv6 address block-geographic position table.
Optionally, the apparatus further includes an IPv6 address block-geographic location table establishing module, specifically configured to:
acquiring IPv6 distribution data based on an APNIC Whois database; wherein the IPv6 allocation data comprises an allocation authority name and an allocation authority geographical location of a plurality of IPv6 address blocks;
acquiring a plurality of IPv6 routing data; each IPv6 routing data respectively comprises IPv6 routing information, IPv6 address blocks related to the IPv6 routing information and geographical positions of the IPv6 address blocks;
establishing the IPv6 address block-geographic location table based on the IPv6 allocation data and the plurality of IPv6 routing data.
A third aspect of one or more embodiments of the present specification provides an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor, wherein the processor executes the program to implement the method according to any one of the first aspect of the present specification.
A fourth aspect of one or more embodiments of the present specification provides a non-transitory computer-readable storage medium storing computer instructions for causing a computer to perform the method of any one of the first aspects of the present specification.
As can be seen from the above description, in the IPv6 geographic location method, apparatus, device, and storage medium provided in one or more embodiments of the present specification, when locating an IPv6 geographic location, first obtain an IPv6 address to be located, then determine a flag bit code of the IPv6 address to be located, and further determine an IPv6 geographic location corresponding to the IPv6 address to be located, based on the flag bit code of the IPv6 address to be located and a table of correspondence between the flag bit code and the geographic location, that is, perform IPv6 geographic location. The flag bit codes of the IPv6 addresses to be positioned are determined, and then IPv6 geographical position positioning is carried out based on the flag bit codes and the geographical position corresponding relation table, and the number of the landmark points and the geographical position distribution are not depended on, so that domestic IPv6 geographical position positioning is realized.
Further, the IPv6 geographic location positioning method, apparatus, device, and storage medium provided in one or more embodiments of the present specification further acquire and analyze IPv6 allocation data, IPv6 routing data, website data, and real IPv6 data of the client, construct an IPv6 address block-geographic location table based on the IPv6 allocation data and the IPv6 routing data, and construct an IPv6 address-geographic location table based on the website data and the real IPv6 data of the client, thereby reducing errors caused by relying on single type data; starting from an IPv6 address hierarchical structure, entropy analysis and cluster division are carried out on IPv6 addresses without depending on the physical space of IPv6 addresses, geographical position zone bits of IPv6 addresses are determined, a zone bit coding and geographical position corresponding relation table is established, and the problem that the granularity of an IPv6 address positioning method in the prior art is coarse is solved.
Drawings
In order to more clearly illustrate one or more embodiments or prior art solutions of the present specification, the drawings that are needed in the description of the embodiments or prior art will be briefly described below, and it is obvious that the drawings in the following description are only one or more embodiments of the present specification, and that other drawings may be obtained by those skilled in the art without inventive effort from these drawings.
Fig. 1 is a flowchart illustrating an IPv6 geolocation positioning method according to one or more embodiments of the present disclosure;
fig. 2 is a schematic flowchart of a method for establishing a corresponding relationship table between a flag bit code and a geographic location according to one or more embodiments of the present disclosure;
FIG. 3 is a schematic structural diagram of an IPv6 geolocation positioning device as provided in one or more embodiments of the present specification;
fig. 4 is a schematic diagram of a more specific hardware structure of an electronic device according to one or more embodiments of the present disclosure.
Detailed Description
For the purpose of promoting a better understanding of the objects, aspects and advantages of the present disclosure, reference is made to the following detailed description taken in conjunction with the accompanying drawings.
It is to be noted that unless otherwise defined, technical or scientific terms used in one or more embodiments of the present specification should have the ordinary meaning as understood by those of ordinary skill in the art to which this disclosure belongs. The use of "first," "second," and similar terms in one or more embodiments of the specification is not intended to indicate any order, quantity, or importance, but rather is used to distinguish one element from another. The word "comprising" or "comprises", and the like, means that the element or item listed before the word covers the element or item listed after the word and its equivalents, but does not exclude other elements or items. The terms "connected" or "coupled" and the like are not restricted to physical or mechanical connections, but may include electrical connections, whether direct or indirect.
IP location technology determines the geographic location of a device by its IP address. The existing IPv4 geographical position positioning method is mainly researched and experimented from the aspects of network delay, AS path, registration information, commercial database, user data and the like, and has the national level accuracy rate of 99.99 percent and the provincial accuracy rate of more than 90 percent. At present, IPv4 positioning is mature, and the method is widely applied to the fields of network management, targeted advertisement delivery, social networks and the like.
IPv6 geolocation is the physical spatial location of IPv6 addresses by measurement or other technical means. With the wide use of the current IPv6 in the global scope and the high importance of China on the IPv6 deployment, the IPv6 geographical position positioning has very important application prospect and value in multiple aspects. For example: content localization, advertisement delivery, content distribution networks, network fault diagnosis, network attack tracing, and the like.
The existing IPv6 address positioning research is to apply the traditional IPv4 address positioning method to IPv6 addresses, the method is mainly classic network delay measurement, namely, a 'delay-geographic distance' mathematical model is constructed through the network delay measurement and multipoint positioning is carried out.
The network delay measurement is very dependent on the number of landmark points and the geographical position distribution, but at first, the domestic IPv6 address has low utilization rate and few active addresses, and does not have the condition of large-scale network detection; secondly, only 29 landmark points are used in the existing research in the global scope, and the positioning granularity is coarse and is only in the national level; and thirdly, the data is single in type.
In order to solve the above problems, this specification provides an IPv6 geographic location method, an apparatus, a device, and a storage medium, where when locating an IPv6 geographic location, an IPv6 address to be located is first obtained, a flag bit code of the IPv6 address to be located is then determined, and an IPv6 geographic location corresponding to the IPv6 address to be located is further determined based on the flag bit code of the IPv6 address to be located and a table of correspondence between the flag bit code and the geographic location, that is, the IPv6 geographic location is performed. The method and the device can be applied to various electronic devices such as mobile phones and tablet computers, and are not limited specifically.
For the convenience of understanding, the IPv6 geographical location positioning method is described in detail below with reference to the accompanying drawings.
It should be noted that the IPv6 address mentioned below is a domestic IPv6 address, and the IPv6 address block is a domestic IPv6 address block.
Fig. 1 is a schematic flow chart of an IPv6 geographical location positioning method provided in this specification, where the method includes:
s01, acquiring the IPv6 address to be positioned.
In this embodiment, the IPv6 address to be located refers to an IPv6 address that needs to be located at a geographic location. In practical application, the IPv6 address to be located may be one or more IPv6 addresses, or one or more IPv6 address blocks, and is not limited specifically.
In order to perform IPv6 geographical location positioning based on an IPv6 address, an electronic device (hereinafter referred to as the electronic device) executing the method needs to first acquire an IPv6 address to be positioned.
S02, determining the zone bit code of the IPv6 address to be positioned based on the IPv6 address to be positioned.
In this embodiment, the flag bit refers to the number of bits of the code indicating the geographical location of the IPv6 address in the IPv6 address code, for example, the number of bits may be 10 to 15 bits in the IPv6 address code, or may be 12 to 17 bits in the IPv6 address code, and the like, which is not limited specifically.
The zone bit code refers to the code at the zone bit of the IPv6 address code indicating the geographical position of the IPv6 address. The flag bit codes of different IPv6 addresses can be the same or different, and when the flag bit codes of two IPv6 addresses are the same, the geographical positions of the two IPv6 addresses are the same.
In order to locate the geographical position of the to-be-located IPv6 address, after the to-be-located IPv6 address is acquired, the flag bit code of the to-be-located IPv6 address can be further determined.
The geographical position flag bits of the domestic IPv6 addresses are basically the same under the general condition, which is deduced through experiments on a large number of IPv6 addresses and the corresponding geographical positions thereof. Therefore, the geographical location flag of the IPv6 address can be firstly determined according to the IPv6 addresses of a large number of geographical locations covering provinces, cities and counties in China. After the IPv6 address to be positioned is obtained, the zone bit code of the IPv6 address to be positioned can be directly obtained according to the code of the IPv6 address to be positioned.
S03, determining the IPv6 geographical position corresponding to the IPv6 address to be positioned according to the pre-established flag bit code and geographical position corresponding relation table based on the flag bit code of the IPv6 address to be positioned.
In this embodiment, the correspondence between the flag bit code of the IPv6 address and the geographical position of the IPv6 address is recorded in the table of correspondence between the flag bit code and the geographical position; in practical application, a large number of IPv6 addresses of geographical positions covering provinces, cities and counties in China can be obtained in advance, then the zone bit codes of all IPv6 addresses are determined respectively, and further a corresponding relation table of the zone bit codes and the geographical positions is established.
The following detailed description will be made about the establishment process of the flag bit code and geographical location correspondence table, and will not be described herein again.
After the zone bit code of the IPv6 address to be positioned is obtained, the geographical position relation corresponding to the zone bit code can be determined based on the zone bit code and geographical position corresponding relation table, namely the geographical position of the IPv6 address to be positioned is determined.
It can be understood that the flag bit codes of the IPv6 addresses to be positioned are determined, and then the IPv6 geographical position positioning is carried out based on the flag bit codes and the geographical position corresponding relation table, and the domestic IPv6 geographical position positioning is realized independent of the number of landmark points and the geographical position distribution thereof.
In practical application, in order to locate the IPv6 address to be located, a corresponding relation table between the flag bit codes and the geographic locations may be pre-established; then, fig. 2 is a schematic flowchart of a method for establishing a corresponding relationship table between a flag bit code and a geographic location provided in this specification, as shown in fig. 2, in some possible embodiments, the method for establishing the corresponding relationship table between the flag bit code and the geographic location includes:
s21, respectively preprocessing each IPv6 address in a pre-established IPv6 address-geographical position table to obtain each preprocessed IPv6 address; the IPv6 address-geographical position table comprises geographical positions corresponding to all IPv6 addresses;
s22, entropy analysis is carried out on each preprocessed IPv6 address respectively to obtain alternative geographical position zone bits of each IPv6 address;
s23, clustering and dividing all IPv6 addresses in the IPv6 address-geographical position table according to geographical positions to obtain geographical position classifications of all IPv6 addresses in the IPv6 address-geographical position table;
s24, determining the geographical position zone bit of each IPv6 address in the IPv6 address-geographical position table based on the alternative geographical position zone bit of each IPv6 address and the geographical position classification of each IPv6 address;
s25, determining the zone bit codes of all IPv6 addresses in an IPv6 address-geographical position table based on the geographical position zone bits of all IPv6 addresses, and establishing a zone bit code and geographical position corresponding relation table based on the geographical positions corresponding to all IPv6 addresses in the IPv6 address-geographical position table.
In practical application, the IPv6 address-geographic location table can be established in advance according to website data of web pages with known geographic locations and real IPv6 data of clients, and the IPv6 address-geographic location table includes a large number of IPv6 addresses and geographic locations thereof.
The IPv6 address-geographic location table establishing method will be described in detail later, and will not be described in detail herein.
Firstly, preprocessing each IPv6 address in an IPv6 address-geographical position table respectively, uniformly converting the format of each IPv6 address into a 32-bit nibble format, and removing ":"; for example, the IPv6 address "2401: ec00:3002:1: 2ad3: aa1 a" will become "2401 ec0030020001000000002ad3aa1 a" after pretreatment.
Then, entropy analysis is applied to entropy of each preprocessed IPv6 address, and a formula is as follows:
Figure GDA0003239041590000091
wherein, H (X)i) Entropy value, X, representing the ith nibble positioni∈{x1,…,xk};P(xj) Denotes the value of the ith nibble bit as xjThe probability of (c).
After entropy is carried out on each preprocessed IPv6 address, each preprocessed IPv6 address is divided from a nibble bit which simultaneously meets the following two conditions:
first, H (X)i) And H (X)i-1) Compared with the prior art, the method has the advantages that any threshold value in the threshold value set T is crossed, wherein T belongs to T, T is more than 0 and less than 1, and the threshold values are arranged from small to large;
secondly, calculating an absolute value d of the difference of the entropy values of two adjacent nibble positions, wherein d needs to satisfy the following formula:
|H(Xi)-H(Xi-1)|>Th
wherein, ThThe minimum limit of the absolute value d of the difference value of the entropy values of two adjacent nibble positions is defined; e.g. ThThe value of (b) may be 0.05, and is not particularly limited.
In practical application, T and ThThe value of (a) can be adjusted correspondingly according to the actual data in the IPv6 address-geographic location table to obtain the correct zone bit.
After entropy analysis is carried out on each preprocessed IPv6 address, the alternative geographical position zone bits of each IPv6 address in the IPv6 address-geographical position table can be obtained.
Correspondingly, each preprocessed IPv6 address needs to be classified according to provinces and cities based on the geographical location corresponding to each address. Aiming at the alternative geographical position zone bits of all IPv6 addresses in the IPv6 address-geographical position table, further determining that the zone bits encode the same bit number under the same geographical position classification, namely the geographical position zone bits of all IPv6 addresses in the IPv6 address-geographical position table; it should be noted that, as deduced through experiments on a large number of IPv6 addresses and corresponding geographic locations thereof, the geographic location flag bits of the domestic IPv6 addresses are basically the same under normal conditions, and therefore, after the geographic location flag bits of the IPv6 addresses in the IPv6 address-geographic location table are determined, the geographic location flag bits are the same as the geographic location flag bits of the domestic IPv6 addresses.
After the geographical position zone bits of all IPv6 addresses in the IPv6 address-geographical position table are determined, zone bit codes of all IPv6 addresses in the IPv6 address-geographical position table can be determined according to the geographical position zone bits of all IPv6 addresses, and then the mapping relation between the zone bit codes and the geographical positions is established according to the geographical positions corresponding to all IPv6 addresses in the IPv6 address-geographical position table, namely the zone bit code and geographical position corresponding relation table is established.
It can be understood that starting from an IPv6 address hierarchical structure, entropy analysis and cluster division are carried out on IPv6 addresses without depending on the physical space of IPv6 addresses, geographical position zone bits of IPv6 addresses are determined, a zone bit coding and geographical position corresponding relation table is established, geographical position location of IPv6 addresses is carried out based on the zone bit coding and geographical position corresponding relation table, and the problem of coarse granularity of IPv6 address location methods in the prior art is solved.
In some possible embodiments, the method for establishing the IPv6 address-geographic location table includes:
acquiring website data of a plurality of webpages with known geographic positions; the data of each website respectively comprises the IPv6 address of a webpage with a known geographic position;
acquiring real IPv6 data of a plurality of clients; the real IPv6 data of each client respectively comprise a real IPv6 address and longitude and latitude corresponding to each client;
and establishing an IPv6 address-geographic position table based on the website data of the webpages with the known geographic positions and the real IPv6 data of the clients.
In practical application, on one hand, a large number of domain name lists which cover domestic provinces and cities and comprise domestic famous website domain names, college website domain names, government website domain names and the like can be obtained through the webpage crawler; then, searching whether each domain name in the domain name list has an AAAA record by using nslookup, if so, recording a record value of the AAAA record, wherein the record value of the AAAA record is the IPv6 address of the webpage corresponding to the domain name with the AAAA record; then crawling a website with an IPv6 address, and analyzing the webpage title, the webpage content and the like to obtain the geographical position information of the website; further establishing a domain name address table, and storing website data such as the IPv6 address of each website, the domain name of the website, the content of the website, the geographical location of the website, and the like, which are not limited specifically.
On the other hand, a large amount of real IPv6 data covering the clients of various provinces and cities in China can be collected, the real IPv6 data of each client respectively includes the client IPv6 address and longitude and latitude information associated with the data, and then the corresponding geographic location information is obtained through the longitude and latitude query application program interface, for example, the country, province, city, county, and the like, which is not limited specifically. In practical applications, the application program interface may be a Baidu map application program interface or a Gade map application program interface, and is not limited specifically.
The website data comprises the IPv6 address and the geographic position corresponding to the website, the real IPv6 data of the client comprises the IPv6 address and the longitude and latitude information of the client which are related to the real IPv6 data of the client, and an IPv6 address-geographic position table can be established according to the website data of a plurality of webpages with known geographic positions and the real IPv6 data of the plurality of clients.
It can be appreciated that errors generated by relying on a single kind of data are reduced by building an IPv6 address-geographic location table using website data and client real IPv6 data.
As a possible implementation, the method further includes:
and based on the IPv6 address to be positioned, determining the distribution geographical position and the routing geographical position corresponding to the IPv6 address to be positioned according to a pre-established IPv6 address block-geographical position table.
In practical application, the IPv6 address block-geographical location table may be established in advance according to IPv6 allocation data and IPv6 routing data, and the IPv6 address block-geographical location table includes the distribution mechanism name, the distribution mechanism geographical location, and the routing geographical location of a large number of IPv6 address blocks.
It can be understood that after the IPv6 address to be positioned is obtained, the assigned geographic position and the routing geographic position of the IPv6 address to be positioned can be further obtained according to the IPv6 address block-geographic position table, which is beneficial to obtaining more positioning information about the IPv6 address to be positioned.
In one possible implementation, the method for establishing the IPV6 address block-geographic location table includes:
acquiring IPv6 distribution data based on an APNIC Whois database; wherein the IPv6 allocation data comprises the allocation mechanism name and the allocation mechanism geographical position of a plurality of IPv6 address blocks;
acquiring a plurality of IPv6 routing data; each IPv6 routing data respectively comprises IPv6 routing information, IPv6 address blocks related to the IPv6 routing information and geographical positions of the IPv6 address blocks;
and establishing an IPv6 address block-geographical position table based on the IPv6 distribution data and a plurality of IPv6 routing data.
The APNIC Whois database is a publicly searchable database that specifies the APNIC's digital Internet resource records, i.e., IP address assignments and AS numbers, within the administrative domain of the Asia-Pacific region. Each record contains many different objects, for example: AS number, IPv6 address field, person, etc. Objects may reference other objects. The inet6num object mainly describes the allocation and assignment information of the IPv6 address block, and the object comprises a plurality of attributes such as count, descr, admin-c, tech-c, mnt-by and the like.
In practical application, on one hand, the IPv6 distribution data may be first obtained through the APNIC Whois database, and the obtaining process is as follows:
an IPv6 address block allocation information table and an IPv6 address block allocation address table are established. Analyzing each inet6num object in the APNIC Whois database, wherein each inet6num object corresponds to an IPv6 address block and related distribution information thereof. Analyzing the country attribute, and searching a country code to obtain the English name of the country; analyzing the descr attribute to obtain mechanism information, and extracting mechanism geographical position related information in the descr attribute. The admin-contact attribute in the inet6num object represents a management contact, the attribute refers to a person or role object, when the attribute is analyzed, the address attribute in the person or role object is analyzed, and the possibly existing organization name and organization geographical position information are extracted; analyzing the e-mail attribute, and extracting the possibly existing organization name and organization geographical position information; and analyzing the attribute of the phone, wherein the attribute is mostly fixed phone, and searching the number rule to obtain the geographical position information of the organization. The mnt-by attribute of the inet6num object refers to the mntner object, analyzes the descr attribute in the mntner object, and extracts the organization name and the organization geographical location information that may exist therein. The mnt-irt attribute of the inet6num object refers to the irt object, analyzes the address, phone and other attributes of the irt object, and extracts the name and geographical location information of the organization which may exist in the attribute. The org attribute of the inet6num object refers to the organization object, and analyzes the attributes of address, phone, etc. of the organization object. The name of the organization and the geographical location information of the organization possibly existing in the name of the organization are extracted.
After the inet6num objects of all IPv6 address blocks in the APNIC Whois database are analyzed, all attribute information obtained in the analysis process is stored under the corresponding IPv6 address blocks in a pre-established IPv6 address block distribution information table; meanwhile, various organization names and organization geographical position information obtained by analyzing the attributes are stored under the corresponding IPv6 address blocks in the IPv6 address block distribution address table.
Analyzing an IPv6 address block distribution address table, recording a plurality of corresponding mechanism names and mechanism geographical position information for the same IPv6 address block, judging whether the mechanism names are the same family or not through text analysis, and judging whether the mechanism geographical positions are the same or not; and if the authority names and the authority geographical position information are the same, saving the authority names and the authority geographical position information as the final distribution mechanism names and the final distribution mechanism geographical position information. And if the names of the mechanisms are judged not to be the same or the geographical positions of the mechanisms are judged to be different, selecting the mechanism name and the mechanism geographical position with the largest occurrence frequency as the distribution mechanism name and the distribution mechanism geographical position according to the proportion of the mechanism name information and the mechanism geographical position information. If the analyzed result shows that the address block in the IPv6 address block allocation address table does not record organization name information and geographical location information, the inet6num _ descr in the IPv6 address block allocation information table is used as the name information of the allocation organization and the inet6num _ count is used as the geographical location information.
On the other hand, a plurality of IPv6 routing data may be acquired by:
the geographical positions, namely the longitude and latitude, of all IPv4 addresses in the same AS number are calibrated through an IPv4 positioning library, the geographical position range covered by each autonomous region is outlined, the geographic position range is called AS an autonomous region territory, and an autonomous region territory table is constructed; the autonomous region territory table records the corresponding relation between the AS number and the geographic position. Then downloading a routing table through an RIPE NCC database, obtaining a plurality of IPv6 routing information through the routing table, and determining an AS number announcing an IPv6 address block according to the ASPATH attributes under each IPv6 routing information; and then determining the autonomous domain territory corresponding to the AS number announcing the IPv6 address block according to the autonomous domain territory table, namely determining the autonomous domain territory where each IPv6 address block is located, namely the geographic position of each IPv6 address block.
The IPv6 distribution data comprises distribution mechanism names and distribution mechanism geographical positions of a plurality of IPv6 address blocks, the IPv6 routing data comprises IPv6 routing information, IPv6 address blocks related to the IPv6 routing information and the geographical positions of the IPv6 address blocks, and an IPv6 address block-geographical position table can be established according to the IPv6 distribution data and the plurality of IPv6 routing data.
It can be appreciated that by using IPv6 distribution data and IPv6 routing data to build an IPv6 address block-geographical location table, errors arising from relying on a single type of data are reduced.
It should be noted that the method of one or more embodiments of the present disclosure may be performed by a single device, such as a computer or server. The method of the embodiment can also be applied to a distributed scene and completed by the mutual cooperation of a plurality of devices. In such a distributed scenario, one of the devices may perform only one or more steps of the method of one or more embodiments of the present disclosure, and the devices may interact with each other to complete the method.
The foregoing description has been directed to specific embodiments of this disclosure. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.
FIG. 3 is a schematic structural diagram of an IPv6 geolocation locating device as provided herein; as shown in fig. 3, the apparatus includes:
the acquiring module 31 is configured to acquire an IPv6 address to be located;
the zone bit code determining module 32 is used for determining the zone bit code of the IPv6 address to be positioned based on the IPv6 address to be positioned;
and the geographic position determining module 33 is configured to determine, based on the flag bit code of the IPv6 address to be located, the IPv6 geographic position corresponding to the IPv6 address to be located according to the pre-established flag bit code and geographic position correspondence table.
As an embodiment, the apparatus further includes a module (not shown in the figure) for establishing a table of correspondence between the flag bit codes and the geographic locations, and is specifically configured to:
respectively preprocessing each IPv6 address in a pre-established IPv6 address-geographical position table to obtain each preprocessed IPv6 address; the IPv6 address-geographical position table comprises geographical positions corresponding to all IPv6 addresses;
entropy analysis is carried out on each preprocessed IPv6 address respectively to obtain alternative geographical position zone bits of each IPv6 address;
clustering and dividing all IPv6 addresses in the IPv6 address-geographical position table according to geographical positions to obtain geographical position classifications of all IPv6 addresses in the IPv6 address-geographical position table;
determining the geographical position zone bits of all IPv6 addresses in an IPv6 address-geographical position table based on the alternative geographical position zone bits of all IPv6 addresses and the geographical position classification of all IPv6 addresses;
and determining the zone bit codes of all IPv6 addresses in an IPv6 address-geographical position table based on the geographical position zone bits of all IPv6 addresses, and establishing a corresponding relation table of the zone bit codes and the geographical positions based on the geographical positions corresponding to all IPv6 addresses in an IPv6 address-geographical position table.
In some possible embodiments, the apparatus further includes an IPv6 address-geographic location table establishing module (not shown in the figure), specifically configured to:
acquiring website data of a plurality of webpages with known geographic positions; the data of each website respectively comprises the IPv6 address of a webpage with a known geographic position;
acquiring real IPv6 data of a plurality of clients; the real IPv6 data of each client respectively comprise a real IPv6 address and longitude and latitude corresponding to each client;
and establishing an IPv6 address-geographic position table based on the website data of the webpages with the known geographic positions and the real IPv6 data of the clients.
As an implementation manner, the device further includes an allocation and routing geographic position determining module (not shown in the figure) for determining, based on the IPv6 address to be located, an allocation geographic position and a routing geographic position corresponding to the IPv6 address to be located according to a pre-established IPv6 address block-geographic position table.
In some possible embodiments, the apparatus further includes an IPv6 address block-geographic location table establishing module (not shown in the figure), specifically configured to:
acquiring IPv6 distribution data based on an APNIC Whois database; wherein the IPv6 allocation data comprises the allocation mechanism name and the allocation mechanism geographical position of a plurality of IPv6 address blocks;
acquiring a plurality of IPv6 routing data; each IPv6 routing data respectively comprises IPv6 routing information, IPv6 address blocks related to the IPv6 routing information and geographical positions of the IPv6 address blocks;
establishing an IPv6 address block-geographic location table based on the IPv6 allocation data and the plurality of IPv6 routing data.
For convenience of description, the above devices are described as being divided into various modules by functions, and are described separately. Of course, the functionality of the modules may be implemented in the same one or more software and/or hardware implementations in implementing one or more embodiments of the present description.
The apparatus of the foregoing embodiment is used to implement the corresponding method in the foregoing embodiment, and has the beneficial effects of the corresponding method embodiment, which are not described herein again.
The embodiment of the present specification further provides an electronic device, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, and when the processor executes the computer program, the processor implements the IPv6 geographic location positioning method described in any one of the above.
Fig. 4 is a schematic diagram illustrating a more specific hardware structure of an electronic device according to this embodiment, where the electronic device may include: a processor 1010, a memory 1020, an input/output interface 1030, a communication interface 1040, and a bus 1050. Wherein the processor 1010, memory 1020, input/output interface 1030, and communication interface 1040 are communicatively coupled to each other within the device via bus 1050.
The processor 1010 may be implemented by a general-purpose CPU (Central Processing Unit), a microprocessor, an Application Specific Integrated Circuit (ASIC), or one or more Integrated circuits, and is configured to execute related programs to implement the technical solutions provided in the embodiments of the present disclosure.
The Memory 1020 may be implemented in the form of a ROM (Read Only Memory), a RAM (Random Access Memory), a static storage device, a dynamic storage device, or the like. The memory 1020 may store an operating system and other application programs, and when the technical solution provided by the embodiments of the present specification is implemented by software or firmware, the relevant program codes are stored in the memory 1020 and called to be executed by the processor 1010.
The input/output interface 1030 is used for connecting an input/output module to input and output information. The i/o module may be configured as a component in a device (not shown) or may be external to the device to provide a corresponding function. The input devices may include a keyboard, a mouse, a touch screen, a microphone, various sensors, etc., and the output devices may include a display, a speaker, a vibrator, an indicator light, etc.
The communication interface 1040 is used for connecting a communication module (not shown in the drawings) to implement communication interaction between the present apparatus and other apparatuses. The communication module can realize communication in a wired mode (such as USB, network cable and the like) and also can realize communication in a wireless mode (such as mobile network, WIFI, Bluetooth and the like).
Bus 1050 includes a path that transfers information between various components of the device, such as processor 1010, memory 1020, input/output interface 1030, and communication interface 1040.
It should be noted that although the above-mentioned device only shows the processor 1010, the memory 1020, the input/output interface 1030, the communication interface 1040 and the bus 1050, in a specific implementation, the device may also include other components necessary for normal operation. In addition, those skilled in the art will appreciate that the above-described apparatus may also include only those components necessary to implement the embodiments of the present description, and not necessarily all of the components shown in the figures.
The present specification embodiments also provide a non-transitory computer readable storage medium storing computer instructions for causing the computer to perform any one of the IPv6 geolocation positioning methods described above.
Computer-readable media of the present embodiments, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device.
Those of ordinary skill in the art will understand that: the discussion of any embodiment above is meant to be exemplary only, and is not intended to intimate that the scope of the disclosure, including the claims, is limited to these examples; within the spirit of the present disclosure, features from the above embodiments or from different embodiments may also be combined, steps may be implemented in any order, and there are many other variations of different aspects of one or more embodiments of the present description as described above, which are not provided in detail for the sake of brevity.
In addition, well-known power/ground connections to Integrated Circuit (IC) chips and other components may or may not be shown in the provided figures, for simplicity of illustration and discussion, and so as not to obscure one or more embodiments of the disclosure. Furthermore, devices may be shown in block diagram form in order to avoid obscuring the understanding of one or more embodiments of the present description, and this also takes into account the fact that specifics with respect to implementation of such block diagram devices are highly dependent upon the platform within which the one or more embodiments of the present description are to be implemented (i.e., specifics should be well within purview of one skilled in the art). Where specific details (e.g., circuits) are set forth in order to describe example embodiments of the disclosure, it should be apparent to one skilled in the art that one or more embodiments of the disclosure can be practiced without, or with variation of, these specific details. Accordingly, the description is to be regarded as illustrative instead of restrictive.
While the present disclosure has been described in conjunction with specific embodiments thereof, many alternatives, modifications, and variations of these embodiments will be apparent to those of ordinary skill in the art in light of the foregoing description. For example, other memory architectures (e.g., dynamic ram (dram)) may use the discussed embodiments.
It is intended that the one or more embodiments of the present specification embrace all such alternatives, modifications and variations as fall within the broad scope of the appended claims. Therefore, any omissions, modifications, substitutions, improvements, and the like that may be made without departing from the spirit and principles of one or more embodiments of the present disclosure are intended to be included within the scope of the present disclosure.

Claims (7)

1. An IPv6 geolocation positioning method, characterized in that said method comprises:
acquiring an IPv6 address to be positioned;
determining a zone bit code of the IPv6 address to be positioned based on the IPv6 address to be positioned;
based on the zone bit code of the IPv6 address to be positioned, determining the IPv6 geographical position corresponding to the IPv6 address to be positioned according to a pre-established zone bit code and geographical position corresponding relation table;
the method for establishing the corresponding relation table of the zone bit codes and the geographic positions comprises the following steps:
respectively preprocessing each IPv6 address in a pre-established IPv6 address-geographical position table to obtain each preprocessed IPv6 address; the IPv6 address-geographical position table comprises geographical positions corresponding to all IPv6 addresses;
entropy analysis is carried out on each preprocessed IPv6 address respectively to obtain alternative geographical position zone bits of each IPv6 address;
clustering and dividing all IPv6 addresses in the IPv6 address-geographical position table according to geographical positions to obtain geographical position classifications of all IPv6 addresses in the IPv6 address-geographical position table;
determining the geographical location flag bit of each IPv6 address in the IPv6 address-geographical location table based on the alternative geographical location flag bit of each IPv6 address and the geographical location classification of each IPv6 address;
determining the zone bit codes of all IPv6 addresses in the IPv6 address-geographical location table based on the geographical location zone bits of all IPv6 addresses, and establishing the zone bit code and geographical location corresponding relation table based on the geographical locations corresponding to all IPv6 addresses in the IPv6 address-geographical location table.
2. The IPv6 geolocation method according to claim 1, wherein said IPv6 address-geolocation table establishing method comprises:
acquiring website data of a plurality of webpages with known geographic positions; the data of each website respectively comprises the IPv6 address of a webpage with a known geographic position;
acquiring real IPv6 data of a plurality of clients; the real IPv6 data of each client respectively comprise a real IPv6 address and longitude and latitude corresponding to each client;
establishing the IPv6 address-geographic location table based on website data for web pages of the plurality of known geographic locations and the plurality of client real IPv6 data.
3. The IPv6 geographical position location method of any one of claims 1-2, further comprising:
and determining the distribution geographical position and the routing geographical position corresponding to the IPv6 address to be positioned according to a pre-established IPv6 address block-geographical position table based on the IPv6 address to be positioned.
4. The IPv6 geolocation positioning method according to claim 3, wherein said IPv6 address block-geolocation table establishing method comprises:
acquiring IPv6 distribution data based on an APNIC Whois database; wherein the IPv6 allocation data comprises an allocation authority name and an allocation authority geographical location of a plurality of IPv6 address blocks;
acquiring a plurality of IPv6 routing data; each IPv6 routing data respectively comprises IPv6 routing information, IPv6 address blocks related to the IPv6 routing information and geographical positions of the IPv6 address blocks;
establishing the IPv6 address block-geographic location table based on the IPv6 allocation data and the plurality of IPv6 routing data.
5. An IPv6 geolocation locating device, said device comprising:
the acquisition module is used for acquiring the IPv6 address to be positioned;
the zone bit code determining module is used for determining the zone bit code of the IPv6 address to be positioned based on the IPv6 address to be positioned;
the geographic position determining module is used for determining the IPv6 geographic position corresponding to the IPv6 address to be positioned according to a pre-established table of corresponding relationship between the zone bit codes and the geographic positions based on the zone bit codes of the IPv6 address to be positioned;
the device also comprises a module for establishing a corresponding relation table of the zone bit codes and the geographic positions, which is specifically used for:
respectively preprocessing each IPv6 address in a pre-established IPv6 address-geographical position table to obtain each preprocessed IPv6 address; the IPv6 address-geographical position table comprises geographical positions corresponding to all IPv6 addresses;
entropy analysis is carried out on each preprocessed IPv6 address respectively to obtain alternative geographical position zone bits of each IPv6 address;
clustering and dividing all IPv6 addresses in the IPv6 address-geographical position table according to geographical positions to obtain geographical position classifications of all IPv6 addresses in the IPv6 address-geographical position table;
determining the geographical location flag bit of each IPv6 address in the IPv6 address-geographical location table based on the alternative geographical location flag bit of each IPv6 address and the geographical location classification of each IPv6 address;
determining the zone bit codes of all IPv6 addresses in the IPv6 address-geographical location table based on the geographical location zone bits of all IPv6 addresses, and establishing the zone bit code and geographical location corresponding relation table based on the geographical locations corresponding to all IPv6 addresses in the IPv6 address-geographical location table.
6. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the method according to any of claims 1 to 4 when executing the program.
7. A non-transitory computer readable storage medium storing computer instructions for causing a computer to perform the method of any one of claims 1 to 4.
CN202010112845.5A 2020-02-24 2020-02-24 IPv6 geographical position positioning method, device, equipment and storage medium Active CN111447292B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010112845.5A CN111447292B (en) 2020-02-24 2020-02-24 IPv6 geographical position positioning method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010112845.5A CN111447292B (en) 2020-02-24 2020-02-24 IPv6 geographical position positioning method, device, equipment and storage medium

Publications (2)

Publication Number Publication Date
CN111447292A CN111447292A (en) 2020-07-24
CN111447292B true CN111447292B (en) 2021-10-01

Family

ID=71627156

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010112845.5A Active CN111447292B (en) 2020-02-24 2020-02-24 IPv6 geographical position positioning method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN111447292B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112383644B (en) * 2020-10-21 2022-08-05 北京邮电大学 Heuristic IPv6 address scanning target generation method and related equipment
CN114221932B (en) * 2021-10-26 2022-09-30 北京邮电大学 IPv6 active address security evaluation method and electronic equipment
CN114301874B (en) * 2021-11-10 2022-11-18 北京邮电大学 IPv6 address positioning method based on IPv4 address geographical position information and electronic equipment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101383855A (en) * 2007-09-04 2009-03-11 沈阳 Method for obtaining computer accurate geological position information based on IP address information
CN102055817A (en) * 2010-12-30 2011-05-11 中国人民解放军信息工程大学 Method for gathering homologous address beam and homologous gathering network route system
CN110769079A (en) * 2019-10-30 2020-02-07 杭州迪普科技股份有限公司 Method and device for retrieving geographic position corresponding to IP

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8856281B2 (en) * 2010-03-22 2014-10-07 At&T Intellectual Property I, L.P. Internet protocol version 6 content routing
CN110650219B (en) * 2019-09-06 2022-03-08 北京伯光时科技有限公司 IPv6 address allocation method and device, electronic equipment and storage medium
CN110704566B (en) * 2019-09-30 2022-05-13 深圳前海环融联易信息科技服务有限公司 Data acquisition method and device based on geographic position and computer equipment

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101383855A (en) * 2007-09-04 2009-03-11 沈阳 Method for obtaining computer accurate geological position information based on IP address information
CN102055817A (en) * 2010-12-30 2011-05-11 中国人民解放军信息工程大学 Method for gathering homologous address beam and homologous gathering network route system
CN110769079A (en) * 2019-10-30 2020-02-07 杭州迪普科技股份有限公司 Method and device for retrieving geographic position corresponding to IP

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"A Novel Efficient Address Mutation Scheme for IPv6 Networks";Shen Yan,Xiaohong Huang,Maodo Ma,Pei Zhang,Yan Ma;《IEEE Access》;20161216;第5卷;全文 *
"IPv6融合树结构存储及快速查找";张沛,陈文龙,唐晓岚;《小型微型计算机系统》;20181231;第39卷(第12期);全文 *
"基于IPv6协议的Tapestry查询机制的改进";黎娅,吕靖;《信阳师范学院学报》;20090131;第22卷(第1期);全文 *

Also Published As

Publication number Publication date
CN111447292A (en) 2020-07-24

Similar Documents

Publication Publication Date Title
CN111447292B (en) IPv6 geographical position positioning method, device, equipment and storage medium
US10089653B2 (en) System and method for estimating mobile device locations
TWI654867B (en) Method and device for determining the location of a terminal
CN103220376B (en) Method for positioning IP (Internet Protocol) by position data of mobile terminal
CN109040343B (en) Domain name resolution method and device, computer readable storage medium and electronic equipment
US9571589B2 (en) Systems and methods for mapping IP-addresses to geolocations
TWI639324B (en) Method and device for determining IP address segment and its corresponding latitude and longitude
US10366113B2 (en) Method and system for generating a geocode trie and facilitating reverse geocode lookups
US8352480B2 (en) Methods, apparatuses and computer program products for converting a geographical database into a map tile database
CN108011987B (en) IP address positioning method and device, electronic equipment and storage medium
CA3064137A1 (en) Method and device for recommending information
CN107092623B (en) Interest point query method and device
US20130185429A1 (en) Processing Store Visiting Data
CN106777302B (en) Method and device for converting space geographic coordinates
CN107423037B (en) Application program interface positioning method and device
CN111639092B (en) Personnel flow analysis method and device, electronic equipment and storage medium
Jahanian et al. A formalism for monitoring real-time constraints at run-time
Dan et al. Improving IP geolocation using query logs
Huang et al. Rapid retrieval strategy for massive remote sensing metadata based on GeoHash coding
CN113268550A (en) Method and system for scheduling autonomous domain system, electronic device and storage medium
EP2281249A2 (en) Discovering co-located queries in geographic search logs
CN108009205B (en) Search result caching method based on position, search method, client and system
CN104281646B (en) Urban waterlogging detection method based on microblog data
CN107562832A (en) Information recommendation method, device, mobile terminal and storage medium
Luo et al. Sharing and exploring sensor streams over geocentric interfaces

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant