v1.3.0
Machine-readable output for scripts and frontends, and reliable exit codes:
--jsonOutput: Add--jsonto-sor-pfor one JSON object per line (start,host,host_detail,port,summary,error). Scripts and frontends such as NetScannerDesktop no longer have to scrape the human-readable text. Hostnames and manufacturer names are JSON-escaped. See docs/README.md for the format.- Exit Codes: Invalid input now exits with status 1 (it used to exit 0), so scripts can tell a failure from a scan that found nothing. A malformed subnet now gives a clear message instead of a raw error trace.
⚠️ Behavior change for scripts that relied on exit 0. - Redirected Output Fixed:
ns -s ... > hosts.txtno longer garbles the file. Every line used to be written at the start of the file, overwriting the previous one. Pipes and terminals were not affected. - macOS Builds:
zig buildno longer prints "replacing existing signature" on every run.
$ ns -s 192.168.1.0/24 --resolve --json
{"type":"start","mode":"subnet","cidr":"192.168.1.0/24","first":"192.168.1.0","last":"192.168.1.255"}
{"type":"host","ip":"192.168.1.10","source":"tcp"}
{"type":"host_detail","ip":"192.168.1.10","hostname":"nas-storage","mac":"00:11:32:11:22:33","vendor":"Synology Incorporated"}
{"type":"summary","hosts":1,"elapsed_ms":1843}
Assets Included
windows.zip: Windows x86_64 standalone executable (ns.exe)linux-x86_64.zip: Linux x86_64 standalone binary (ns)linux-arm64.zip: Linux ARM64 standalone binary (ns)macos-arm64.zip/macos-x86_64.zip: coming shortly. macOS binaries must be built and codesigned on a Mac; without the signature, macOS hides the ARP table.
SHA-256:
ff857ac662742996a71471c74b3a4e6275dcda7dbc913239cef27a38b9f21e1b windows.zip
2db9fb6fd063aace60af10806dcf421f99b0c0866acf53bf6a850e444f4f4ac7 linux-x86_64.zip
7dbe16b19f505e5517b9c199e150010f6d43592050998f6e37840d290f4e0017 linux-arm64.zip
Full changelog: v1.2.2...v1.3.0