alookup

Crates.ioalookup
lib.rsalookup
version0.2.0
sourcesrc
created_at2018-11-17 09:13:26.960788
updated_at2019-06-29 13:36:33.341687
descriptionLookup IPv4 and IPv6 addresses for a hostname.
homepagehttps://github.com/stbuehler/rust-alookup
repositoryhttps://github.com/stbuehler/rust-alookup
max_upload_size
id97204
size11,944
venus-developers (github:ipfs-force-community:venus-developers)

documentation

README

Travis Build Status crates.io MIT licensed

alookup

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

Install from crates.io with cargo install alookup.

Using it

Examples

alookup mail.google.com

Usage

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

Exit codes

  • 0: success (or NODATA). You might want to treat an empty address set (no output) as failure too (similar to NXDOMAIN).
  • 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.

Commit count: 12

cargo fmt