This database provides a reference to determine the autonomous system and number (ASN). An autonomous system (AS) is a collection of connected Internet Protocol (IP) routing prefixes under the control of one or more network operators as a single administrative entity in routing policy.
It is free for personal or commercial use with attribution required by mentioning the use of this data as follows,
Let's explore this database which provides a valuable resource of geolocation data for free now!
Sign Up For FreeTranslates IP address to autonomous system (AS) and autonomous system number (ASN).
Current Version | November 2024 |
---|---|
IPv4 Database Size | 44.33 MB (603,954 Rows) |
IPv6 Database Size | 55.09 MB (474,161 Rows) |
Database Format | ASCII Text File (CSV) |
Name | Type | Description |
---|---|---|
ip_from | INT (10)† / DECIMAL (39,0)†† | First IP address show netblock. |
ip_to | INT (10)† / DECIMAL (39,0)†† | Last IP address show netblock. |
cidr | VARCHAR(43) | IP address range in CIDR. |
asn | INT(10) | Autonomous system number (ASN). |
as | VARCHAR(256) | Autonomous system (AS) name. |
† IPv4
†† IPv6
Below are the steps to set up the database for both IPv4 and IPv6 data.
CREATE DATABASE ip2location;
USE ip2location;
CREATE TABLE `ip2location_asn`(
`ip_from` INT(10) UNSIGNED,
`ip_to` INT(10) UNSIGNED,
`cidr` VARCHAR(43),
`asn` VARCHAR(10),
`as` VARCHAR(256),
PRIMARY KEY (`ip_to`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
LOAD DATA LOCAL
INFILE 'IP2LOCATION-LITE-ASN.CSV'
INTO TABLE
`ip2location_asn`
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
IGNORE 0 LINES;
CREATE DATABASE ip2location
GO
USE ip2location
GO
CREATE TABLE [ip2location].[dbo].[ip2location_asn](
[ip_from] bigint NOT NULL,
[ip_to] bigint NOT NULL,
[cidr] nvarchar(43) NOT NULL,
[asn] nvarchar(10) NOT NULL,
[as] nvarchar(256) NOT NULL
) ON [PRIMARY]
GO
CREATE CLUSTERED INDEX [ip_to] ON [ip2location].[dbo].[ip2location_asn]([ip_to]) ON [PRIMARY]
GO
BULK INSERT [ip2location].[dbo].[ip2location_asn]
FROM '{PATH TO IP2LOCATION-LITE-ASN.CSV}'
WITH
(
FORMATFILE = '{PATH TO ASN.FMT}'
)
GO
NOTE: You will need to copy the FMT code below and save it as a file named ASN.FMT on your computer.
12.0
6
1 SQLCHAR 0 1 "\"" 0 first_double_quote Latin1_General_CI_AI
2 SQLCHAR 0 20 "\",\"" 1 ip_from "",
3 SQLCHAR 0 20 "\",\"" 2 ip_to "",
4 SQLCHAR 0 43 "\",\"" 3 cidr Latin1_General_CI_AI,
5 SQLCHAR 0 10 "\",\"" 4 asn Latin1_General_CI_AI,
6 SQLCHAR 0 256 "\",\"" 5 as Latin1_General_CI_AI
CREATE DATABASE ip2location WITH ENCODING 'UTF8';
\c ip2location
CREATE TABLE ip2location_asn(
ip_from bigint NOT NULL,
ip_to bigint NOT NULL,
cidr character varying(43) NOT NULL,
asn character varying(10) NOT NULL,
as character varying(256) NOT NULL,
CONSTRAINT ip2location_db1_pkey PRIMARY KEY (ip_from, ip_to)
);
COPY ip2location_asn FROM 'IP2LOCATION-LITE-ASN.CSV' WITH CSV QUOTE AS '"';
CREATE DATABASE ip2location;
USE ip2location;
CREATE TABLE `ip2location_asn_ipv6`(
`ip_from` DECIMAL(39,0) UNSIGNED,
`ip_to` DECIMAL(39,0) UNSIGNED,
`cidr` VARCHAR(43),
`asn` VARCHAR(10),
`as` VARCHAR(256),
PRIMARY KEY (`ip_to`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
LOAD DATA LOCAL
INFILE 'IP2LOCATION-LITE-ASN.IPV6.CSV'
INTO TABLE
`ip2location_asn_ipv6`
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
IGNORE 0 LINES;
CREATE DATABASE ip2location
GO
USE ip2location
GO
CREATE TABLE [ip2location].[dbo].[ip2location_asn_ipv6](
[ip_from] char(39) NOT NULL,
[ip_to] char(39) NOT NULL,
[cidr] nvarchar(43) NOT NULL,
[asn] nvarchar(10) NOT NULL,
[as] nvarchar(256) NOT NULL
) ON [PRIMARY]
GO
CREATE CLUSTERED INDEX [ip_to] ON [ip2location].[dbo].[ip2location_asn_ipv6]([ip_to]) ON [PRIMARY]
GO
BULK INSERT [ip2location].[dbo].[ip2location_asn_ipv6]
FROM '{PATH TO IP2LOCATION-LITE-ASN.IPV6.CSV}'
WITH
(
FORMATFILE = '{PATH TO ASN.FMT}'
)
GO
NOTE: You will need to copy the FMT code below and save it as a file named ASN.FMT on your computer. The first line of the FMT code indicates the version of bcp. Please change the version as according to your MS-SQL installed.
12.0
6
1 SQLCHAR 0 1 "\"" 0 first_double_quote Latin1_General_CI_AI
2 SQLCHAR 0 39 "\",\"" 1 ip_from "",
3 SQLCHAR 0 39 "\",\"" 2 ip_to "",
4 SQLCHAR 0 43 "\",\"" 3 cidr Latin1_General_CI_AI,
5 SQLCHAR 0 10 "\",\"" 4 asn Latin1_General_CI_AI,
6 SQLCHAR 0 256 "\",\"" 5 as Latin1_General_CI_AI
CREATE DATABASE ip2location WITH ENCODING 'UTF8';
\c ip2location
CREATE TABLE ip2location_asn_ipv6(
ip_from decimal(39,0) NOT NULL,
ip_to decimal(39,0) NOT NULL,
cidr character varying(43) NOT NULL,
asn character varying(10) NOT NULL,
as character varying(256) NOT NULL,
CONSTRAINT ip2location_db1_pkey PRIMARY KEY (ip_from, ip_to)
);
COPY ip2location_asn_ipv6 FROM 'IP2LOCATION-LITE-ASN.IPV6.CSV' WITH CSV QUOTE AS '"';
Please review the General Terms and Conditions for the database licensing.
Enhance your applications with essential geolocation data by using our FREE databases.