Skip to main content

PyPI GitHub last commit CodeFactor GitHub issues GitHub branch checks state License

Domainia Scanner is an automated Open-source Intelligence (OSINT) tool that enumerates subdomains, all DNS records, IP addresses, related domains/subdomains, certificate details, site info, HTTP status, name servers (NS), domain whois, and etc. of a single domain or a list of domains by using the passive and active reconnaissance techniques.

❤ Support Domainia: GitHub Sponsors Liberapay patrons


How to Use

If you look for the changelog history, you can find it here.

1. Installation

1.1. Installation Through PyPi

PyPI

If you would like to install it as a Python package, run the following command.

pip install Domainia
# or
python -m pip install Domainia

1.2. Installation form the Source

First, clone the package from Github.

git clone https://github.com/namnamir/domainia.git

Then, by running the following command, install all required dependencies for the current user.

pip install -r requirements.txt --user
# or
python -m pip install -r requirements.txt --user

2. Add API Keys

Modify the file api_keys.py and add the API keys of the mentioned tools. Define APIs

3. Check the Configuration File

Open the file config.py and modify it if needed. For each section of it, there is an explanation as the comment.

There are many options can be modified in the config file. Here are a list of the options:

  • date_format to set the data and time format
  • scan_type to set the scan type
  • dns_records to set which DNS records should be enumerated
  • include_txt_records to set which TXT records should be written in the output file
  • dns_servers to set the DNS servers
  • delimiter to set the delimiters for each data to be written into the CSV file
  • whois to set which Whois detail should be written into the CSV file
  • ssl to set which SSL detail should be written into the CSV file
  • api to modify details of the APIs including the data/time format

4. Run the Script

The script can be run in 2 modes, loading the list of domains from a file or from the command.

  -h, --help
                        Show this help message and exit
  -f FILE, --file FILE  
                        Path to the list of domain names, e.g. domains.txt
  -d DOMAIN, --domain DOMAIN
                        The comma separated list of domains
  -w WHOIS, --whois WHOIS
                        Whois API; default "whoisxml".
                        Possible options: "whoisxml" and "whoxy"
-t TYPE, --type TYPE  
                       Type of the scan. If it is set, it will ignore the config file value for the scan type.
                       Possible options: "quick" and "deep"
  -o OUTPUT, --output OUTPUT
                        The name of the output CSV file, e.g. results.csv

Run Domainia Scanner

5. Results (CSV)

Result of the scan would be saved in a CSV file. You can manage the path of the output file by the argument -o or --output. Results in CSV Results in CSV

6. JSON Format

[
  "example.com": {
    "DNS": [
      {
        "record": "A",
        "value": "1.2.3.4",
      },
    ],
    "related_ip" : [
      {
        "name": "1.2.3.4",
        "version": "IPv4",
        "whois": {},
        "listed": [],
        "technologies" : [],
        "ports": [],
        "reverse_dns": [],
        "vulnerabilities": [],
      },
    ],
    "related_domains" : [
      {
        "name": "site.tld",
        "whois": {},
        "listed": [],
        "technologies" : [],
        "ports": [],
        "vulnerabilities": [],
        "http_headers": [],
        "html_meta": [],
        "subdomains": [],
        "related_domains": []
      },
    ],
    "html": {
      "meta": [
        {
          "name": "",
          "value": "",
        }
      ],
      "redirects": [],
      "status_code": 200,
      "title": "",
      "analytics": [
        {
          "name": "Google",
          "value": "UA-123"
        }
      ]
    },
    "http_headers": [
      {
        "name": "",
        "value": "",
      }
    ],
    "whois": {},
    "listed": [],
  }
]

⚖️ Copyright Domainia tool is released under copy left; there is no right. Just kidding, it is under MIT license; read more about it on the LICENSE page.

⚠️ Disclaimer Domainia tool is tool for legitimate purposes. Do not use it in any illegitimate or illegal activities.

Metadata

Release files for domainia 2.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for domainia 2.2.0
File Size Uploaded
domainia-2.2.0.tar.gz 51.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for domainia 2.2.0
File Interpreter ABI Platform
domainia-2.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 134.5 kB

Release files / domainia-2.2.0.tar.gz

Download URL domainia-2.2.0.tar.gz
Size 51.6 kB
Tags Source
SHA-256 checksum
How to use checksums
672abdc2a901ed7ffd1128c1f00be3df92ea7bf6090e2216993be4937ce27c0c
BLAKE2b-256 checksum
How to use checksums
52a099fece9ee56d7d1afe2f11068acaa73bdd8a670f7006f5651ee9ebaf7495
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.9

Release files / domainia-2.2.0-py3-none-any.whl

Download URL domainia-2.2.0-py3-none-any.whl
Size 82.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8fdfa7b744868489145a50fac73f980de6933b88e8efb769076279707028842f
BLAKE2b-256 checksum
How to use checksums
f74cdb9f3f2e67da47d88ff68247dfd84f4edd2b5dac3fadcd8bb69d4b4105ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.9

Release history Release notifications | RSS feed

This release

2.2.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page