> ## Content Index
> Fetch the complete content index at: https://darkwebinformer.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# ASNmap: Go CLI and Library for quickly mapping organization network ranges using ASN information
- URL: https://darkwebinformer.com/asnmap-go-cli-and-library-for-quickly-mapping-organization-network-ranges-using-asn-information/
- Published: 2025-08-01T19:24:30.000Z
- Updated: 2025-09-04T22:20:46.000Z
- Author: Dark Web Informer
- Tags: Tools

---

**GitHub:** <https://github.com/projectdiscovery/asnmap>

---

# Features

[](https://github.com/projectdiscovery/asnmap#features)

![](https://storage.ghost.io/c/6b/16/6b16ac9c-cd67-432f-b0f3-bbec941084ff/content/images/2025/08/9823756978236598723769851-2.png)

- **ASN to CIDR** Lookup
- **ORG to CIDR** Lookup
- **DNS to CIDR** Lookup
- **IP to CIDR** Lookup
- **ASN/DNS/IP/ORG** input
- **JSON/CSV/TEXT** output
- STD **IN/OUT** support

## Installation

[](https://github.com/projectdiscovery/asnmap#installation)

asnmap requires **Go 1.21** to install successfully. To install, just run the below command or download pre-compiled binary from [release page](https://github.com/projectdiscovery/asnmap/releases).

go install github.com/projectdiscovery/asnmap/cmd/asnmap@latest

## Usage

[](https://github.com/projectdiscovery/asnmap#usage)asnmap -h

This will display help for the tool. Here are all the flag it supports.

Usage:  
 ./asnmap \[flags\]  
  
Flags:  
INPUT:  
 \-a, -asn string\[\] target asn to lookup, example: -a AS5650  
 \-i, -ip string\[\] target ip to lookup, example: -i 100.19.12.21, -i 2a10:ad40::  
 \-d, -domain string\[\] target domain to lookup, example: -d google.com, -d facebook.com  
 \-org string\[\] target organization to lookup, example: -org GOOGLE  
 \-f, -file string\[\] targets to lookup from file  
  
CONFIGURATIONS:  
 \-config string path to the asnmap configuration file  
 \-r, -resolvers string\[\] list of resolvers to use  
  
UPDATE:  
 \-up, -update update asnmap to latest version  
 \-duc, -disable-update-check disable automatic asnmap update check  
  
OUTPUT:  
 \-o, -output string file to write output to  
 \-j, -json display json format output  
 \-c, -csv display csv format output  
 \-v6 display ipv6 cidr ranges in cli output  
 \-v, -verbose display verbose output  
 \-silent display silent output  
 \-version show version of the project

## Configuring ASNMap CLI

[](https://github.com/projectdiscovery/asnmap#configuring-asnmap-cli)

ASNMap CLI is built on top of the ASNMap API that requires API Token from [ProjectDiscovery Cloud Platform](https://cloud.projectdiscovery.io/?ref=api%5Fkey) that can be configured using environment variable or using interactive `-auth` option as shown below.

### Using environment variable

[](https://github.com/projectdiscovery/asnmap#using-environment-variable)export PDCP\_API\_KEY=\*\*\*\*\*\*\*\*\*\*\*\*\*

### Using auth option

[](https://github.com/projectdiscovery/asnmap#using-auth-option)asnmap -auth  
  
  
 \_\_\_ \_\_\_\_\_ \_\_   
 / \_ | / \_\_/ |/ /\_ \_ \_\_\_ \_\_\_\_   
 / \_\_ |\_\\ \\/ / ' \\/ \_ / \_ \\  
/\_/ |\_/\_\_\_/\_/|\_/\_/\_/\_/\\\_,\_/ .\_\_/  
 /\_/   
  
 projectdiscovery.io  
  
\[INF\] Get your free api key by signing up at https://cloud.projectdiscovery.io  
\[\*\] Enter PDCP API Key (exit to abort): \*\*\*\*\*\*\*\*\*\*\*\*\*  
\[INF\] Successfully logged in as (@user)

## Running asnmap

[](https://github.com/projectdiscovery/asnmap#running-asnmap)

**asnmap** support multiple inputs including **ASN**, **IP**, **DNS** and **ORG** name to query ASN/CIDR information.

| Input   | ASN     | DNS         | IP            | ORG    |
| ------- | ------- | ----------- | ------------- | ------ |
| Example | AS14421 | example.com | 93.184.216.34 | GOOGLE |

Input can be provided either using specific options or STDIN which accepts all the supported formats. Single, multiple (comma-separated) and file input is supported for all the options.

echo GOOGLE | ./asnmap -silent

Example input for asnmap:

asnmap -a AS45596 -silent  
asnmap -i 100.19.12.21 -silent  
asnmap -d hackerone.com -silent  
asnmap -org GOOGLE -silent

### Default Run

[](https://github.com/projectdiscovery/asnmap#default-run)

**asnmap** by default returns the CIDR range for given input.

echo GOOGLE | ./asnmap  
  
 \_\_\_ \_\_\_\_\_ \_\_   
 / \_ | / \_\_/ |/ /\_ \_ \_\_\_ \_\_\_\_   
 / \_\_ |\_\\ \\/ / ' \\/ \_ / \_ \\  
/\_/ |\_/\_\_\_/\_/|\_/\_/\_/\_/\\\_,\_/ .\_\_/  
 /\_/ v0.0.1  
 projectdiscovery.io  
  
Use with caution. You are responsible for your actions  
Developers assume no liability and are not responsible for any misuse or damage.  
  
8.8.4.0/24  
8.8.8.0/24  
8.35.200.0/21  
34.3.3.0/24  
34.4.4.0/24  
34.96.0.0/20  
34.96.32.0/19  
34.96.64.0/18  
34.98.64.0/18  
34.98.136.0/21  
34.98.144.0/21

### JSON Output

[](https://github.com/projectdiscovery/asnmap#json-output)

**asnmap** by default displays CIDR range, and all the information is always available in JSON format, for automation and post processing using `-json` output is most convenient option to use.

echo hackerone.com | ./asnmap -json -silent | jq{  
 "timestamp": "2022-09-19 12:14:33.267339314 +0530 IST",  
 "input": "hackerone.com",  
 "as\_number": "AS13335",  
 "as\_name": "CLOUDFLARENET",  
 "as\_country": "US",  
 "as\_range": \[  
 "104.16.0.0/14",  
 "104.20.0.0/16",  
 "104.21.0.0/17"  
 \]  
}  
{  
 "timestamp": "2022-09-19 12:14:33.457401266 +0530 IST",  
 "input": "hackerone.com",  
 "as\_number": "AS13335",  
 "as\_name": "CLOUDFLARENET",  
 "as\_country": "US",  
 "as\_range": \[  
 "2606:4700:8390::/44"  
 \]  
}

### CSV Output

[](https://github.com/projectdiscovery/asnmap#csv-output)

**asnmap** also support csv format output which has all the information just like JSON output

echo hackerone.com | ./asnmap -csv -silenttimestamp|input|as\_number|as\_name|as\_country|as\_range  
2022-09-19 12:15:04.906664007 +0530 IST|hackerone.com|AS13335|CLOUDFLARENET|US|104.16.0.0/14,104.20.0.0/16,104.21.0.0/17  
2022-09-19 12:15:05.201328136 +0530 IST|hackerone.com|AS13335|CLOUDFLARENET|US|2606:4700:9760::/44

### Using with other PD projects

[](https://github.com/projectdiscovery/asnmap#using-with-other-pd-projects)

Output of asnmap can be directly piped into other projects in workflow accepting stdin as input, for example:

- `echo AS54115 | asnmap | tlsx`
- `echo AS54115 | asnmap | dnsx -ptr`
- `echo AS54115 | asnmap | naabu -p 443`
- `echo AS54115 | asnmap | naabu -p 443 | httpx`
- `echo AS54115 | asnmap | naabu -p 443 | httpx | nuclei -id tech-detect`

## Use asnmap as a library

[](https://github.com/projectdiscovery/asnmap#use-asnmap-as-a-library)

Examples of using asnmap from Go code are provided in the [examples](https://github.com/projectdiscovery/asnmap/blob/main/examples) folder.

## Acknowledgements

[](https://github.com/projectdiscovery/asnmap#acknowledgements)

- [Frank Denis](https://github.com/jedisct1/) for maintaining free IPtoASN database.