Discovery
otprobe
The command-line tool included with go-otfp: point it at an endpoint or a host and it tells you which OT protocol answers, with what confidence, and which device is behind it.
What it does
- otprobe detect 10.0.0.5:502 --identify probes one endpoint and reads the device identity; a bare host sweeps the well-known OT ports.
- tcp://, udp:// and tls:// targets, so BACnet/IP, PROFINET and EtherNet/IP over UDP and Modbus/TCP Security or wss:// over TLS are covered.
- --safe keeps to passive probes and paces them 250 ms apart, to stay under OT intrusion detection thresholds.
- Text output for people, --format table for one row per probe and --format json with a versioned schema for scripts.
- Stable exit codes for automation: 0 detected, 1 no match, 4 unreachable, 5 timeout, 7 matched below high confidence.
- --trace shows the raw probe and response bytes; shell completion for bash, zsh, fish and PowerShell.
- Prebuilt binaries on the go-otfp releases page, or go install github.com/otfabric/go-otfp/cmd/otprobe@latest.
The README on GitHub has the full feature list, examples and changelog.