ipaddrcheck =========== ## Using An IPv4 and IPv6 validation utility for use in scripts Depends on libcidr by Matthew Fuller (http://www.over-yonder.net/~fullermd/projects/libcidr) and libpcre. ``` Usage: ./src/ipaddrcheck [STRING] Address checking options: --is-valid Check if STRING is a valid IPv4 or IPv6 address with or without prefix length --is-any-cidr Check if STRING is a valid IPv4 or IPv6 address with prefix length --is-any-single Check if STRING is a valid single IPv4 or IPv6 address --is-any-host Check if STRING is a valid IPv4 or IPv6 host address --is-any-net Check if STRING is a valid IPv4 or IPv6 network address --is-ipv4 Check if STRING is a valid IPv4 address with mask --is-ipv4-cidr Check if STRING is a valid CIDR-formatted address --is-ipv4-single Check if STRING is a valid single address (i.e. with no mask) --is-ipv4-host Check if STRING is a host address --is-ipv4-net Check if STRING is a network address --is-ipv4-broadcast Check if STRING is a broadcast address --is-ipv4-multicast Check if STRING is a multicast address --is-ipv4-loopback Check if STRING is a loopback address --is-ipv4-link-local Check if STRING is a link-local address --is-ipv4-rfc1918 Check if STRING is a private (RFC1918) address --is-ipv6 Check if STRING is a valid IPv6 address --is-ipv6-cidr Check if STRING is a CIDR-formatted IPv6 address --is-ipv6-single Check if STRING is an IPv6 address with no mask --is-ipv6-host Check if STRING is an IPv6 host address --is-ipv6-net Check if STRING is an IPv6 network address --is-ipv6-multicast Check if STRING is an IPv6 multicast address --is-ipv6-link-local Check if STRING is an IPv6 link-local address --is-valid-intf-address Check if STRING is an IPv4 or IPv6 address that can be assigned to a network interface --is-ipv4-range Check if STRING is a valid IPv4 address range --is-ipv6-range Check if STRING is a valid IPv6 address range Behavior options: --allow-loopback When used with --is-valid-intf-address, makes IPv4 loopback addresses pass the check --range-prefix-length When used with --is-ipv4-range or --is-ipv6-range, requires the range boundaries to lie within a prefix of given length Other options: --version Print version information and exit --help Print help message and exit Exit codes: 0 if check passed, 1 if check failed, 2 if a problem occured (wrong option, internal error etc.) ``` ## Building Building from source: ``` autoreconf -i ./configure make && make install ``` Running unit tests: ``` make check ```