Lookup IPv4 and IPv6 addresses for a hostname. Only prints addresses on
stdout (one per line), errors to stderr, and hard errors can be
detected through inspecting the exit code.
It uses the resolv crate (specifically the query method), which
uses libresolv.so which is typically configured via /etc/resolv.conf
to do DNS resolution.
Install from crates.io with
cargo install alookup.
alookup mail.google.com
alookup [FLAGS] <NAME>
FLAGS:
-4 Query only IPv4 records (A)
-6 Query only IPv6 records (AAAA)
-s, --sort Sort (and deduplicate) addresses
-h, --help Prints help information
-V, --version Prints version information
ARGS:
<NAME> Name to lookup
0: success (orNODATA). You might want to treat an empty address set (no output) as failure too (similar toNXDOMAIN).1: name not found (NXDOMAIN). If an empty address set is ok for you, you might want to ignore this exit code.2:SRVFAIL, timeouts, failed parsing response, generic resolver failure...3: failed parsing a specific answer record (might have printed partial result, but breaks on first broken record)
Other exit codes should be treated as failures too; a non-zero exit code
always should show an error on stderr, and every time an error is
printed to stderr there should be a non-zero exit code.