Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 

Repository files navigation

Multi-DNS Internet Connectivity & Latency Monitor

Fixed and maintained by Farzad Doosti

A lightweight Windows Batch script that checks your internet stability by pinging 10 of the most reliable, widely-used public DNS servers and reports color-coded latency and jitter for each one.

Instead of relying on a single checkpoint, this tool gives you a broader look at your network's status.

Features

  • Multi-Target Ping: Tests Google, Cloudflare, Quad9, Cisco OpenDNS, AdGuard, Yandex.DNS, DNS.WATCH, CleanBrowsing, Comodo Secure DNS, and Alternate DNS.
  • Fast Diagnostics: Uses a short 1200ms per-packet timeout instead of Windows' default 4000ms, so an unreachable server is reported OFFLINE much faster.
  • Color-Coded Latency:
    • 🟢 Green — average latency under 70 ms (excellent)
    • 🟠 Orange — average latency between 70–200 ms (acceptable)
    • 🔴 Red — average latency above 200 ms (poor)
  • Jitter / Stability Check: measures how much the round-trip time varies between consecutive pings, not just the average — a connection can have a "good" average latency and still feel unstable if jitter is high.
    • 🟢 Green — jitter under 10 ms (very stable)
    • 🟠 Orange — jitter 10–30 ms (noticeable variation)
    • 🔴 Red — jitter above 30 ms (unstable)
  • Neon "ONLINE" indicator: the online/offline status is always shown in a distinct phosphor-green color, separate from the latency color, so the two never get mixed up.
  • No Installation: Pure Windows Batch script, zero dependencies.

Tested DNS Servers

Provider IP
Google DNS 8.8.8.8
Cloudflare DNS 1.1.1.1
Quad9 DNS 9.9.9.9
Cisco OpenDNS 208.67.222.222
AdGuard DNS 94.140.14.14
Yandex.DNS (Basic) 77.88.8.8
DNS.WATCH 84.200.69.80
CleanBrowsing (Security) 185.228.168.9
Comodo Secure DNS 8.26.56.26
Alternate DNS 76.76.19.19

Configuration

All test behavior is controlled by variables at the top of ping_tool.bat — edit these directly, no need to touch the rest of the script:

Variable Default Meaning
PING_COUNT 6 Packets sent per server. More packets = more accurate jitter, but slower.
PING_TIMEOUT 1200 Per-packet timeout in ms before a lost packet is assumed.
GOOD_MAX 70 Latency (ms) below this is shown green.
OK_MAX 200 Latency (ms) above this is shown red; between GOOD_MAX and this is orange.
JITTER_GOOD_MAX 10 Jitter (ms) below this is shown green.
JITTER_OK_MAX 30 Jitter (ms) above this is shown red; between the two is orange.

How to Use

  1. Download ping_tool.bat.
  2. Double-click the file to execute (or run it from cmd.exe).
  3. Review the terminal output: each server shows ONLINE/OFFLINE plus color-coded average latency and jitter.
  4. At the end, press R to run the test again, or Q to quit.

Known limitations

  • The script matches the English string Average and time=/time<1ms in ping's output. On a non-English Windows locale (e.g. a Persian-language Windows install), ping's output text is translated and the script will report every server as OFFLINE even though it's reachable. If this happens, run the script inside an English-locale cmd.exe.
  • Some antivirus/Defender tools may flag .bat files for creating temp files or making network calls. This is a common false positive for batch scripts — the full source is open here for review.

Changelog

  • v1.5.0 — Added a repeat-test loop: after the results and credit line, the script now shows Press [R] to run the test again, or [Q] to quit. Pressing R re-runs the full test without closing and reopening the window; pressing Q exits. Implemented with a simple top-level label and choice command (no goto inside nested if blocks) to avoid the label-lookup crash from an earlier internal experiment.
  • v1.4.1 — Reduced ping timeout from the Windows default (4000ms) to 1200ms so offline servers are detected faster. Added a maintainer credit line at the end of the output.
  • v1.4.0 — Expanded from 5 to 10 DNS targets (added Yandex.DNS, DNS.WATCH, CleanBrowsing, Comodo Secure DNS, Alternate DNS). Verisign was intentionally excluded — the free service was discontinued in 2025.
  • v1.3.0 — Added Jitter measurement (mean absolute difference between consecutive round-trip times), with its own independent color coding. Increased packets per server from 2 to 6 for accurate variance calculation.
  • v1.2.0 — Fixed a startup crash caused by an unescaped & in the window title. Fixed a latency-parsing bug where a trailing comma made Windows' IF fall back to string comparison instead of numeric, causing latency colors to be wrong. Refactored 5 duplicated blocks into a single :TestDNS subroutine.
  • v1.1.0 — Added ANSI color coding for latency thresholds and ONLINE/OFFLINE status.
  • v1.0.2 — Added average round-trip latency measurement per server.
  • v1.0.1 — Expanded from a single Google DNS ping to 5 major public DNS servers.
  • v1.0.0 — Initial release.

License

This project is open-source and available under the MIT License.

About

A Windows Batch tool for testing latency, jitter, and connection stability across 10 major public DNS resolvers

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages