Scan a network and create a list of IPs and associated hostnames, including DNS-SD service instances, mDNS hostnames and other aliases.
Note
Windows has a runtime dependency on the Npcap packet capture library
Prebuilt binaries for Linux, MacOS, and Windows can be found on the releases page.
Install the latest version with the standalone installer:
# On 🍎 macOS and 🐧 Linux.
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/CramBL/mdns-scanner/releases/latest/download/mdns-scanner-installer.sh | sh# On 🖥️ Windows.
powershell -ExecutionPolicy Bypass -c "irm https://github.com/CramBL/mdns-scanner/releases/latest/download/mdns-scanner-installer.ps1 | iex"If installed via the standalone installer, mdns-scanner can update itself to the latest version:
mdns-scanner updatebrew install CramBL/tap/mdns-scannermdns-scanner is available via Cargo, but must be built from Git rather than crates.io due to its dependency on unpublished crates.
cargo install --git https://github.com/CramBL/mdns-scanner mdns-scannerSimply run it.
mdns-scanner will start scanning any non-loopback network interfaces for IPs with a host on the other end, and resolve the hostnames for those IPs.
Tip
Inform your resident sys admin that you're about to run hundreds of IP scans per second.
- View the default config file: ./docs/default_config.toml
- View the default keymap: ./docs/default_keymap.toml
... or dump the default configuration file to stdout, or add the -o/--output option to write it to a file.
mdns-scanner dump-default-config [--output <FILE>]
mdns-scanner dump-default-keymap [--output <FILE>]The config and keymap can be placed in the user config directory, dump the config or see the default_config.toml for where that is for your system.
The command-line arguments take precedence over configuration files, after looking for mdns-scanner.toml in the user config directory, any command-line arguments are applied to the final configuration.
Default keybindings are defined in the default keymap. You can override these defaults by creating a keymap.toml file in your user config directory.
You can check your keymap.toml file with
mdns-scanner check-keymap [--file <FILE>]if no path is specified, the default location in the user config directory is checked.
Important
When you define a custom keybinding for an action, the default keybinding for that action is automatically disabled. For example, if you bind ctrl-q to the quit action, the default q binding will no longer work.
To preserve multiple keybindings for the same action, you must explicitly define each one:
"<q>" = "quit"
"<ctrl-q>" = "quit"