Your friendly Swiss‑Army NOC toolkit—everything you need for quick diagnostics in one tiny, cross‑platform Go binary.
Need to ping a service, dig a DNS record, or peek at system details—but don’t want to juggle half‑a‑dozen tools that behave differently on every OS?
NOC2GO wraps the basics in a gorgeous little web UI and ships as one self‑contained executable for Windows, macOS, and Linux. Drop it onto a server, your home NAS, or a USB stick and you’re good to go. No installers, no baggage, just the essentials with a smile. 😊
| Web UI Tile | What it does | 
|---|---|
| Ping | IPv4/IPv6 ICMP with live graphs, custom packet size/TTL, DF‑bit toggle, and summary stats. | 
| DNS Lookup | A, AAAA, MX, NS, TXT, SRV, PTR—including reverse‑lookup helper, custom resolver support & caching. | 
| System Info | Hostname, OS/arch, kernel, uptime, interfaces, routes, DNS servers, proxy vars—handy for “what box is this again?” moments. | 
| Settings | Manage saved DNS servers & ping targets, change password, tweak privileged mode. | 
| TLS out‑of‑the‑box | Generates a self‑signed cert on first run and serves everything over HTTPS. | 
Under the hood you’ll also find:
- Single YAML config (
noc2go.yaml) that gets auto‑created on first launch. - Session cookies (secure & http‑only) with bcrypt password hashing.
 - Cross‑platform raw‑socket ping when running with elevated privileges (fallback to system 
pingotherwise). - No external dependencies—just Go’s standard library plus a handful of battle‑tested packages.
 
# 1. Grab a binary from the latest release page
#    (choose noc2go‑<version>‑windows_amd64.exe, noc2go‑darwin_arm64, etc.)
curl -L -o noc2go https://github.com/michaelklose/noc2go/releases/latest/download/noc2go-linux_amd64
chmod +x noc2go
# 2. Fire it up (first run creates config, cert & key in cwd)
./noc2go --port 8443
#  => Prints a one‑time admin password & HTTPS URL
# 3. Visit https://<host>:8443 in your browser
#    (accept the self‑signed cert if your browser asks)- Admin credentials are shown in the terminal the very first time. Change the password under Settings → Account afterwards.
 - Re‑run with 
--config /path/to/noc2go.yamlif you’d like to keep the config elsewhere. - Add 
--privilegedto enable raw‑socket goodies (requires root/Administrator). 
Requires Go 1.24+.
git clone https://github.com/michaelklose/noc2go.git
cd noc2go
go build -o noc2go ./...The output binary is fully static on Linux (CGO_ENABLED=0 by default) and contains embedded HTML templates, CSS & JS.
| Flag | Default | Description | 
|---|---|---|
--config | 
noc2go.yaml | 
Path to YAML config file. | 
--port | 
auto‑select | HTTPS port. 0 = pick default (8443) or next free. | 
--password | 
(random on first run) | Admin password seed when generating a fresh config. | 
--privileged | 
false | 
Enable raw‑socket features (needs root/Administrator). (coming soon) | 
--dns-server | 
none | Additional upstream resolver(s). Can be specified multiple times. | 
Got an idea—or spotted a bug 🐞? PRs and issues are warmly welcomed!
- Fork → hack → commit (use conventional commits if you can)
 go test ./...(tests coming soon)- Open a pull request—CI will run 
go vet,go test, and linting. (coming soon) 
NOC2GO is released under the GNU GPL v3.
See the LICENSE file for the full text.
  Made with ❤️ and go run . by Michael