68 lines
3.7 KiB
Markdown
68 lines
3.7 KiB
Markdown
```ruby
|
|
██████╗ ███╗ ██╗███████╗██╗ ██████╗ ██████╗ ██╗ ██╗██╗ ██╗██████╗
|
|
██╔══██╗████╗ ██║██╔════╝██║ ██╔═══██╗██╔═══██╗██║ ██╔╝██║ ██║██╔══██╗
|
|
██║ ██║██╔██╗ ██║███████╗██║ ██║ ██║██║ ██║█████╔╝ ██║ ██║██████╔╝
|
|
██║ ██║██║╚██╗██║╚════██║██║ ██║ ██║██║ ██║██╔═██╗ ██║ ██║██╔═══╝
|
|
██████╔╝██║ ╚████║███████║███████╗╚██████╔╝╚██████╔╝██║ ██╗╚██████╔╝██║
|
|
╚═════╝ ╚═╝ ╚═══╝╚══════╝╚══════╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝
|
|
```
|
|
|
|
[](https://github.com/CarterPerez-dev/Cybersecurity-Projects/tree/main/PROJECTS/beginner/dns-lookup)
|
|
[](https://www.python.org)
|
|
[](https://www.gnu.org/licenses/agpl-3.0)
|
|
[](https://pypi.org/project/dnslookup-cli/)
|
|
|
|
> Professional DNS query CLI with Rich terminal output, reverse lookups, and WHOIS integration.
|
|
|
|
*This is a quick overview — security theory, architecture, and full walkthroughs are in the [learn modules](#learn).*
|
|
|
|
**[Screenshots & demo →](DEMO.md)**
|
|
|
|
## What It Does
|
|
|
|
- Query A, AAAA, MX, NS, TXT, CNAME, and SOA records with colored table output
|
|
- Reverse DNS lookup to resolve IP addresses back to hostnames
|
|
- Trace DNS resolution path from root servers to authoritative nameservers
|
|
- Batch lookups with concurrent queries for processing domain lists
|
|
- WHOIS integration for domain registration information
|
|
- JSON export for scripting and pipeline integration
|
|
|
|
## Quick Start
|
|
|
|
```bash
|
|
uv tool install dnslookup-cli
|
|
dnslookup query example.com
|
|
```
|
|
|
|
> [!TIP]
|
|
> This project uses [`just`](https://github.com/casey/just) as a command runner. Type `just` to see all available commands.
|
|
>
|
|
> Install: `curl -sSf https://just.systems/install.sh | bash -s -- --to ~/.local/bin`
|
|
|
|
## Commands
|
|
|
|
| Command | Description |
|
|
|---------|-------------|
|
|
| `dnslookup query` | Query DNS records for a domain with colored table output |
|
|
| `dnslookup reverse` | Resolve an IP address back to its hostname |
|
|
| `dnslookup trace` | Trace the DNS resolution path from root to authoritative servers |
|
|
| `dnslookup batch` | Query multiple domains concurrently from a file |
|
|
| `dnslookup whois` | Retrieve WHOIS registration information for a domain |
|
|
|
|
## Learn
|
|
|
|
This project includes step-by-step learning materials covering security theory, architecture, and implementation.
|
|
|
|
| Module | Topic |
|
|
|--------|-------|
|
|
| [00 - Overview](learn/00-OVERVIEW.md) | Prerequisites and quick start |
|
|
| [01 - Concepts](learn/01-CONCEPTS.md) | Security theory and real-world breaches |
|
|
| [02 - Architecture](learn/02-ARCHITECTURE.md) | System design and data flow |
|
|
| [03 - Implementation](learn/03-IMPLEMENTATION.md) | Code walkthrough |
|
|
| [04 - Challenges](learn/04-CHALLENGES.md) | Extension ideas and exercises |
|
|
|
|
|
|
## License
|
|
|
|
AGPL 3.0
|