dns-leak
DNS leak detection and analysis for Kodachi OS
Version: 9.0.1 | Size: 2.9MB | Author: Warith Al Maawali
License: Proprietary | Website: https://digi77.com
File Information
| Property | Value |
|---|---|
| Binary Name | dns-leak |
| Version | 9.0.1 |
| Build Date | 2025-10-24T16:42:09.625682510Z |
| Rust Version | 1.88.0 |
| File Size | 2.9MB |
| JSON Data | View Raw JSON |
SHA256 Checksum
Features
| Feature | Description |
|---|---|
| Feature | Network interface discovery and validation |
| Feature | DNS leak detection via challenge-response testing |
| Feature | Geolocation-based leak analysis |
| Feature | Multi-interface simultaneous testing |
| Feature | Detailed test reporting with JSON export |
| Feature | System resolver configuration analysis |
Security Features
| Feature | Description |
|---|---|
| Authentication | Secure authentication for sensitive operations |
| Encryption | HTTPS for all external API communications |
| Inputvalidation | All interface names and IDs are sanitized and validated |
| Ratelimiting | Built-in retry limits and timeouts for DNS queries |
System Requirements
| Requirement | Value |
|---|---|
| OS | Linux (Debian-based, specifically Kodachi OS) |
| Privileges | root/sudo for network interface access |
| Dependencies | Network interfaces, DNS resolver access, Internet connectivity for leak testing |
Global Options
| Flag | Description |
|---|---|
-h, --help |
Print help information |
-v, --version |
Print version information |
-n, --info |
Display detailed information |
-e, --examples |
Show usage examples |
--json |
Output in JSON format |
-o, --output-format <FORMAT> |
Force output format (text |
--json-pretty |
Pretty-print JSON output |
--json-filter <FIELD1,FIELD2> |
Filter JSON output fields |
--verbose |
Enable verbose output |
--quiet |
Suppress non-essential output |
--no-color |
Disable colored output |
--config <FILE> |
Use custom configuration file |
--timeout <SECS> |
Set timeout (default: 30) |
--retry <COUNT> |
Retry attempts (default: 3) |
--fields <LIST> |
Select specific fields to include |
--limit <NUM> |
Limit number of results returned |
--offset <NUM> |
Skip first N results (pagination) |
--dns-timeout <SECS> |
DNS query timeout (default: 5) |
-i, --interface <IF> |
Specify network interface to test |
Commands
Network Discovery
discover
Discover network interfaces available for testing
Usage:
Options:
- -V, --verbose: Enable verbose output
Examples:
DNS Leak Testing
test
Run DNS leak test on specified interface or all interfaces
Usage:
Options:
- -i, --interface <INTERFACE>: Specify a network interface to test
Examples:
Reporting
report
Generate a detailed report of a previous test
Usage:
Options:
- -r, --id <ID>: Test ID to generate report for
Examples:
results
Display results from a previous DNS leak test
Usage:
Options:
- -f, --file <FILE>: Path to the results JSON file
Examples:
Examples
Basic Usage
Common operations
List all network interfaces available for DNS leak testing
Expected Output: List of all network interfacesList interfaces in JSON format for automation
Expected Output: JSON response with interface detailsTest all active interfaces for DNS leaks
Expected Output: Shows DNS leak status for each interfaceTest specific interface (eth0) for DNS leaks
Expected Output: DNS leak test results for eth0Test ethernet interface (ens33) for DNS leaks
Expected Output: DNS leak test results for ens33Test wireless interface for DNS leaks
Expected Output: DNS leak test results for wlan0Test USB wireless interface for DNS leaks
Expected Output: DNS leak test results for USB wireless adapterTest VPN tunnel interface for DNS leaks
Expected Output: DNS leak test results for VPN tunnelTest Tailscale VPN interface for DNS leaks
Expected Output: DNS leak test results for TailscaleTest PCIe ethernet interface for DNS leaks
Expected Output: DNS leak test results for PCIe ethernetTest secondary PCIe ethernet interface for DNS leaks
Expected Output: DNS leak test results for secondary PCIe ethernetTest onboard ethernet interface for DNS leaks
Expected Output: DNS leak test results for onboard ethernetTest bridge interface for DNS leaks
Expected Output: DNS leak test results for bridge interfaceRun tests with JSON output for automation
Expected Output: JSON response with structured dataAdvanced Usage
Complex operations
Generate HTML report from test results
Expected Output: HTML report saved to results directoryNote
Use the filename prefix (without .json) as the ID
Generate report with JSON output
Expected Output: JSON status of report generationNote
Will search for files containing the ID in results directory
Use custom timeout and retry settings
Expected Output: Test with custom timeout and retriesShow detailed program information
Expected Output: Program details and featuresDisplay results from a saved test file
Expected Output: Formatted test results displayNote
Searches in current dir and results directory
Display results as JSON
Expected Output: JSON formatted resultsNote
Can use just filename if file is in results directory
Automation Examples
Examples for automation and scripting
Extract leak detection status using jq
Expected Output: Boolean values indicating leak status per interfaceGet list of interface names for scripting
Expected Output: List of interface names suitable for loopsProgram Information
Getting information about the tool
Show version number
Expected Output: Version informationVersion in JSON format
Expected Output: Structured version dataShow detailed program information
Expected Output: Program features and requirementsProgram info in JSON format
Expected Output: Structured program informationShow help information
Expected Output: Usage instructionsHelp in JSON format
Expected Output: Structured help dataShow usage examples
Expected Output: Detailed examplesExamples in JSON format
Expected Output: Structured example dataConfiguration Options
Advanced configuration and timeout settings
Use custom timeout and retry settings
Expected Output: Test with custom timeout (30s) and retry count (3)Note
Timeout range: 1-300 seconds, Retry count: 1-20
Use custom DNS query timeout
Expected Output: Test with custom DNS timeout (10s)Note
DNS timeout range: 1-60 seconds
Enable verbose output for interface discovery
Expected Output: Detailed interface information with additional metadataNote
Use -VV for maximum verbosity
Run DNS leak test with verbose output
Expected Output: Detailed test output with debug informationEnvironment Variables
| Variable | Description | Default | Values |
|---|---|---|---|
RUST_LOG |
Set logging level | info | error |
NO_COLOR |
Disable all colored output when set | unset | 1 |
DNS_LEAK_CONFIG |
Path to configuration file | ~/.config/dns-leak/config.json | /path/to/config.json |
Exit Codes
| Code | Description |
|---|---|
| 0 | Success |
| 1 | General error |
| 2 | Invalid arguments |
| 3 | Permission denied |
| 4 | Network error |
| 5 | File not found |
| 6 | Authentication required |
| 7 | DNS leak detected |