Hey 403 - CLI Edition
⚡ A Command-Line DNS Accessibility Testing Tool ⚡
Hey 403 is a powerful Python-based CLI utility designed to diagnose domain accessibility issues across multiple DNS providers. Whether you're a developer, network administrator, or security enthusiast, Hey 403 helps you quickly identify geo-restrictions, DNS inconsistencies, and connectivity problems.
Key Features
- Global DNS Testing: Test domain accessibility with 15+ preconfigured DNS servers from providers like Google, Cloudflare, and more.
- Error Detection: Detect 403 Forbidden, censorship blocks, and other HTTP errors.
- Performance Insights: Measure and compare DNS resolution times across providers.
- DNS Management: Set or unset DNS configurations directly from the CLI.
- Parallel Execution: Run concurrent tests for faster results.
- Rich Output: Enjoy colorful, formatted output with the
richlibrary.
Installation
Install Hey 403 easily via PyPI:
pip install hey403
Requirements
- Python 3.8+
- Dependencies:
rich,requests,dnspython(automatically installed via pip)
Quick Start
After installation, check the available options:
hey403 --help
Test a domain right away:
hey403 example.com
Usage Examples
Here’s how you can use Hey 403:
Test Domain Accessibility
Check how a domain resolves across multiple DNS providers:
hey403 example.com
Set the Best DNS
Automatically set the fastest working DNS for your system:
hey403 example.com --set
View Current DNS
Display your system’s current DNS settings:
hey403 -c
Unset Custom DNS
Revert to your system’s default DNS:
hey403 --unset
Command-Line Options
| Option | Description |
|---|---|
-h, --help |
Show help message and exit |
-c, --current-dns |
Display current DNS settings |
--set |
Set the fastest DNS from successful tests |
--unset |
Remove custom DNS and revert to default |
--url URL |
Specify an alternate URL to test |
Run hey403 --help for full details.
Why Hey 403?
- Instant Diagnostics: Identify DNS issues in seconds.
- Global Reach: Test with DNS servers worldwide.
- User-Friendly: Clean, colorful CLI output.
- Customizable: Manage DNS settings on the fly.
Contributing
We welcome contributions! To get started:
- Install the package in editable mode with dev dependencies:
pip install -e .[dev]
- Run tests:
pytest tests/ -v
- Submit your changes via a pull request on GitHub.
See our Contributing Guide for more details.
License
Hey 403 is licensed under the MIT License. Feel free to use, modify, and distribute it responsibly.
Notes
- Responsible Use: Always comply with local laws and regulations when testing domains.
- Feedback: Have suggestions? Open an issue on GitHub!
Metadata
Release files for hey403 1.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| hey403-1.2.0.tar.gz | 14.2 kB | Without provenance | Details for hey403-1.2.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| hey403-1.2.0-py3-none-any.whl | Python 3 | none | any | Details for hey403-1.2.0-py3-none-any.whl |
Total release size: 26.7 kB
Release files / hey403-1.2.0.tar.gz
| Download URL | hey403-1.2.0.tar.gz |
|---|---|
| Size | 14.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
30ad2b0385c074f80f65ddfe934ce2d865450d3c7b6956690fe28bcdb22af5cd
|
|
BLAKE2b-256 checksum How to use checksums |
1e42e990a4325bd10df057d508a00738377630643716957fc025f74fcb353850
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.0
|
Release files / hey403-1.2.0-py3-none-any.whl
| Download URL | hey403-1.2.0-py3-none-any.whl |
|---|---|
| Size | 12.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9fd2020d66ac89013a54c33adf35eed334ed322e8a8719195a2f119343278339
|
|
BLAKE2b-256 checksum How to use checksums |
dc1b2e4fcc8e2e4a355f79a23362b1b6a98342d355f41ac14eff27f0a584e17c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.0
|
Security for hey403 1.2.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.