Skip to main content

DNS Leak Test Dashboard

DNS-MNS includes a comprehensive DNS leak test dashboard inspired by dnsleaktest.com. The web dashboard features a modern purple-themed design matching the TUI’s visual identity, with real-time WebSocket updates, dark/light themes, and expanded leak detection capabilities.

What’s New in v7.0.0

Web Dashboard

Beautiful web interface with real-time WebSocket updates at http://localhost:8080

Dark/Light Theme

Toggle between dark and light modes with persistent preference

42 DNS Resolvers

Expanded from 12 to 42 resolvers for comprehensive testing

Privacy Score

0-100 score based on leak detection results

IPv6 Leak Test

Detect IPv6 traffic bypassing your VPN

WebRTC Leak Test

Identify browser-based IP leaks

Test History

SQLite-based persistent history with trends

Export Options

Export results as HTML, JSON, or Markdown

Quick Start

TUI Mode (Default)

# Launch interactive terminal dashboard
dns-mns leaktest

# Or use the full command name
dns-mns leak-test-dashboard

Web Dashboard Mode

# Start web dashboard on default port 8080
dns-mns leaktest --web

# Use custom port
dns-mns leaktest --web --port 9090
Then open http://localhost:8080 in your browser.

JSON Output Mode

# Run one-off test and output JSON
dns-mns leaktest --json

Web Dashboard Features

Interface Overview

The web dashboard provides a modern, responsive interface with:
  • Privacy Score Ring: Visual 0-100 score with color coding
  • Connection Info: Public IP, ISP, ASN, location, hostname
  • DNS Resolver Table: 42 resolvers with status, detected IP, and latency
  • Latency Charts: Visual comparison of resolver response times
  • Advanced Tests: IPv6, WebRTC, and EDNS leak detection
  • Test History: Previous test results with statistics

Theme Toggle

Click the moon/sun icon in the top-right corner to switch between dark and light modes. Your preference is saved in browser localStorage.
  • Background: #0a0812 (deep violet-black)
  • Cards: #1a1628 (dark purple)
  • Text: #f0ecf7 (soft white)
  • Accent: #a78bfa (vibrant lavender)

Exporting Results

Click the HTML or JSON buttons to download a report:
  • HTML: Formatted report suitable for sharing or printing
  • JSON: Raw data for programmatic processing
  • Markdown: Documentation-friendly format (via API)

TUI Dashboard Controls

KeyAction
rRun/refresh test
Tab / Shift+TabSwitch between tabs
1-4Quick navigate to tab
eExport results
hToggle history view
q / Esc / Ctrl+CQuit

TUI Tabs

  1. Overview: Connection info, summary, and status
  2. Resolvers: Detailed resolver test results table
  3. Advanced: IPv6, WebRTC, and EDNS test results
  4. History: Previous test results and statistics

Understanding Results

Privacy Score

The privacy score (0-100) is calculated based on:
ScoreStatusMeaning
90-100🟢 ExcellentNo leaks detected, strong privacy
70-89🟡 GoodMinor issues, generally secure
50-69🟠 FairModerate concerns, some leaks detected
0-49🔴 PoorSignificant leaks, immediate action needed
Score Calculation:
  • Start: 100 points
  • DNS leak: -30 points
  • IPv6 high-risk leak: -25 points
  • WebRTC leak: -20 points
  • Multiple unique IPs: -5 each
  • EDNS privacy risk: -5 to -10 points

Connection Information

FieldDescription
Public IPYour visible IP address
ISPInternet Service Provider name
ASNAutonomous System Number
LocationDetected city and country
TimezoneYour timezone
HostnameReverse DNS lookup result

DNS Resolver Results

The dashboard tests against 42 DNS resolvers including:
  • Cloudflare (1.1.1.1, 1.0.0.1)
  • Google (8.8.8.8, 8.8.4.4)
  • Quad9 (9.9.9.9, 149.112.112.112)
  • OpenDNS (208.67.222.222, 208.67.220.220)

Leak Status

StatusMeaning
No LeakAll resolvers see the same IP
🔴 DNS LeakDifferent resolvers see different IPs
🟡 IPv6 LeakIPv6 traffic bypassing VPN
🟠 WebRTC LeakBrowser exposing real IP

Advanced Leak Tests

IPv6 Leak Test

Detects if your IPv6 traffic is bypassing the VPN tunnel:
⚠️ IPv6 Detected - HIGH Risk
Addresses:
  2001:db8::1234
  2001:db8::5678
Fix: Disable IPv6 in your network settings or use a VPN with IPv6 support.

WebRTC Leak Test

Checks if your browser is exposing your real IP via WebRTC:
⚠️ WebRTC Leak Risk
Public IPs exposed:
  203.0.113.45 (Real IP)
Fix: Disable WebRTC in your browser or use browser extensions.

EDNS Client Subnet

Tests if your DNS queries include subnet information that reduces privacy:
ℹ️ EDNS Enabled - MEDIUM Risk
Subnet: 203.0.113.0/24

API Endpoints

When running in web mode, the following API is available:
EndpointMethodDescription
/GETWeb dashboard
/wsWSWebSocket for real-time updates
/api/testPOSTRun new test
/api/resultGETGet latest result
/api/historyGETGet test history
/api/export?format=json|html|mdPOSTExport results

JSON Export Format

{
  "timestamp": "2026-02-12T15:04:23Z",
  "version": "7.0.0",
  "score": 85,
  "connection": {
    "ip": "198.51.100.45",
    "isp": "Example VPN",
    "asn": "AS12345",
    "city": "London",
    "country": "UK",
    "hostname": "vpn.example.com"
  },
  "leak_detected": false,
  "leak_type": "none",
  "resolvers": [
    {
      "name": "Cloudflare",
      "ip": "1.1.1.1",
      "status": "ok",
      "sees_ip": "198.51.100.45",
      "sees_isp": "Example VPN",
      "latency_ms": 12
    }
  ],
  "ipv6_test": {
    "ipv6_detected": false,
    "leak_risk": "none"
  },
  "webrtc_test": {
    "leak_detected": false
  },
  "edns_info": {
    "supported": true,
    "privacy_risk": "low"
  },
  "unique_ips_seen": ["198.51.100.45"],
  "summary": "No DNS leak detected. Your DNS queries are properly routed."
}

Troubleshooting

”Test failed: JSON parse error”

The API returns NDJSON (newline-delimited). The dashboard handles this automatically. If you see this error, try refreshing the page.

”All resolvers failed”

  • Check internet connection
  • Verify DNS works: nslookup google.com
  • Check firewall rules

”Privacy Score is 0”

This is valid for severe leak situations. Check:
  • Is your VPN actually connected?
  • Are you using split tunneling?
  • Is IPv6 disabled?

WebSocket connection fails

  • Check if port is already in use
  • Try a different port: --port 9090
  • Check browser console for errors
If you detect DNS leaks while using a VPN, your VPN configuration needs adjustment. Consider using DNS-MNS’s encrypted DNS features (DoH/DoT proxy) to ensure all DNS queries are properly secured.
The dashboard requires internet access to test against public DNS resolvers. It does not work in offline mode.