Crates.io | cdnx |
lib.rs | cdnx |
version | 0.2.1 |
source | src |
created_at | 2024-09-29 12:25:42.934904 |
updated_at | 2024-09-29 12:45:06.040128 |
description | high-performance and configurable tool to cut CDN domains and exclude them from HTTP port-scanning process. |
homepage | https://github.com/itsyasssin/cdnx |
repository | https://github.com/itsyasssin/cdnx |
max_upload_size | |
id | 1390830 |
size | 64,510 |
cdnx
is a fast and simple tool to cut CDN domains and exclude them from HTTP port-scanning process. also you can use it as normal A record resolver.
cargo install cdnx
$ cdnx -h
Usage: cdnx [OPTIONS] [PORTS]
Arguments:
[PORTS] comma-sperated ports (e.g 80,443,8000)
Options:
-t <THREAD> number of threads
-m <MILISECONDS> timeout in miliseconds
-a append CDN hosts (only with default HTTP ports when ran with a comma-seperated port list)
-v verbose mode
-h, --help Print help
$ cat hosts.txt
noneexists.zzz
medium.com
ford.com
$ cat hosts.txt | cdnx
ford.com
$ cat hosts.txt | cdnx -a "80,443,8000,5000"
ford.com:80
ford.com:443
ford.com:8000
ford.com:5000
medium.com:80
medium.com:443
$ cat hosts.txt | cdnx -a "80,443,8000,5000" | httpx
[OUTPUT]
$ cat urls.txt
http://non-cdn.com/.env
http://cdn.com/.env
$ cat urls.txt | cdnx
http://non-cdn.com/.env
$ cat urls.txt | cdnx | httpx
[OUTPUT]
puredns
in large data:$ cat large-1_000_000-data.txt | puredns resolve | cdnx
The configuration file located in ~/.config/cdnx/config.yaml
is in YAML format and contains three main sections:
providers
: A lists of URLs that provide IP ranges for various CDNs. These are fetched periodically to update the list of CDN IPs.interval
: This field specifies how often (in hours) the application should fetch updates from the providers. The default is set to 48 hours (2 days).resolvers
: A lists of DNS resolvers to use for IP lookups. These are specified in the format IP:PORT
.You can modify the providers, interval, or resolvers as needed for your use case.