For the last few months, I've been building Network Doctor.
It's a cross-platform terminal application for answering a deceptively simple question:
Where is this connection actually breaking?
When something on the network fails, the normal troubleshooting process tends to look like this:
- Run
ping - Run
dig - Try
curl - Check the proxy
- Try another DNS server
- Run a traceroute
- Check TLS
- Try another network
Eventually, if you're experienced enough and collect enough evidence, you figure out whether the problem is your machine, your local network, DNS, the path, a proxy, or the service itself.
I wanted one tool that could reason across those layers instead of making the user interpret each command independently.
That became Network Doctor.
Today it runs on Linux, macOS, and Windows and checks things like:
- interfaces and local connectivity
- DNS
- public and encrypted DNS
- TCP
- TLS
- HTTP and HTTPS
- proxies
- routing
- path MTU
- service-specific connectivity
It also has Watch Mode for intermittent failures, diagnostic snapshots, remote diagnosis, two-sided diagnosis, service profiles, and a network simulator with deliberately broken networks.
I just released v1.17.3.
But this release also marks a different milestone for me.
The project has made $0
I've spent a lot of time building Network Doctor.
People use it. People star it. People contribute to it. It's available through package managers.
Other projects have even started pointing their own users toward it for network troubleshooting.
But financially, it has made me $0.
I don't want to turn the useful parts of Network Doctor into paid features just because I want the project to become sustainable.
So I'm trying something else.
Paid help, not a paid binary
Network Doctor can generate a sanitized support snapshot locally:
netdoc --support support.ndoc example.com
Top comments (0)