Networking Tool · Retired
Ping
The original ping tool on this site sent ICMP echo requests from a shared server. Modern serverless platforms — including Cloudflare Workers, where this site now runs — don't expose raw sockets, so a real ping isn't possible from the edge. Here's how to do it properly today.
From the command line
Every operating system ships with a built-in ping:
ping example.com # macOS, Linux
ping -c 5 example.com # send 5 packets and stop (macOS, Linux)
ping example.com # Windows (sends 4 by default)
For a richer view, mtr (My Traceroute) combines
ping and traceroute and updates in
real time:
mtr example.com # macOS (brew install mtr), Linux
mtr -r -c 100 example.com # report mode, 100 cycles From a browser
Browsers can't send ICMP either, but you can approximate round-trip time with an HTTP probe. Useful for measuring whether a service is up and how slow it feels — not the same as ICMP RTT, but closer to what your real users see.
For multi-region probes, services like check-host.net and Uptrends ping from dozens of locations.
Why we can't host it here
ICMP echo (the protocol behind ping) needs raw
socket access. Cloudflare Workers — and the equivalent platforms
from Vercel, Netlify, AWS Lambda, Deno Deploy — only expose
HTTP and (in some cases) TCP. ICMP isn't on the menu, by design:
opening raw sockets to arbitrary IPs from a multi-tenant runtime
would be a denial-of-service amplifier.
We could proxy to a small VPS that can ping, but results would only ever come from a single origin location — less useful than the multi-region probes above.