mirror of
https://github.com/dguglielmi/sunny-overlay.git
synced 2025-12-06 18:12:39 +01:00
234 lines
8.3 KiB
Groff
234 lines
8.3 KiB
Groff
.\" generated with Ronn/v0.7.3
|
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
|
.
|
|
.TH "IPCALC" "1" "January 2023" "" ""
|
|
.
|
|
.SH "NAME"
|
|
\fBipcalc\fR \- Perform simple operations on IP addresses and networks
|
|
.
|
|
.SH "SYNOPSIS"
|
|
\fBipcalc\fR [OPTION]\.\.\. \fIIP address\fR[/prefix] [netmask]
|
|
.
|
|
.SH "Description"
|
|
\fBipcalc\fR provides a simple way to calculate IP information for a host or network\. Depending on the options specified, it may be used to provide IP network information in human readable format, in a format suitable for parsing in scripts, generate random private addresses, resolve an IP address, or check the validity of an address\.
|
|
.
|
|
.P
|
|
By default or when the \fB\-\-info\fR or \fB\-\-all\-info\fR parameters are specified the information provided is free form and human readable\. Otherwise the output is JSON formatted when \fB\-j\fR is specified, or when specific options are given (e\.g\., \fB\-\-prefix\fR) the output is in the \fBVAR=VALUE\fR format\.
|
|
.
|
|
.P
|
|
The various options specify what information \fBipcalc\fR should display on standard output\. Multiple options may be specified\. It is required to specify an IP address; several operations require a netmask or a CIDR prefix as well\.
|
|
.
|
|
.SH "Options"
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-c\fR, \fB\-\-check\fR Validate the IP address under the specified family\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-i\fR, \fB\-\-info\fR Display generic information on the provided network in human readable format\. This is the default option if no other options are provided\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-\-all\-info\fR Display verbose information on the provided network and addresses in human readable format\. That includes GeoIP information\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-S\fR, \fB\-\-split\fR Split the provided network using the specified prefix or netmask\. That is, split up the network into smaller chunks of a specified prefix\. When combined with no\-decorate mode (\fB\-\-no\-decorate\fR), the split networks will be printed in raw form\. Example "ipcalc \-S 26 192\.168\.1\.0/24"\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-d\fR, \fB\-\-deaggregate\fR Deaggregates the provided address range\. That is, print the networks that cover the range\. The range is given using the \'\-\' separator, e\.g\., "192\.168\.1\.3\-192\.168\.1\.23"\. When combined with no\-decorate mode (\fB\-\-no\-decorate\fR), the networks are printed in raw form\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-r\fR, \fB\-\-random\-private\fR Generate a random private address using the supplied prefix or mask\. By default it displays output in human readable format, but may be combined with other options (e\.g\., \fB\-\-network\fR) to display specific information in \fBVAR=VALUE\fR format\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-h\fR, \fB\-\-hostname\fR Display the hostname for the given IP address\. The variable exposed is HOSTNAME\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-o\fR, \fB\-\-lookup\-host\fR Display the IP address for the given hostname\. The variable exposed is ADDRESS\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-4\fR, \fB\-\-ipv4\fR Explicitly specify the IPv4 address family\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-6\fR, \fB\-\-ipv6\fR Explicitly specify the IPv6 address family\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-b\fR, \fB\-\-broadcast\fR Display the broadcast address for the given IP address and netmask\. The variable exposed is BROADCAST (if available)\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-a\fR, \fB\-\-address\fR Display the IP address for the given input\. The variable exposed is ADDRESS (if available)\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-g\fR, \fB\-\-geoinfo\fR Display geographic information for the given IP address\. This option requires libGeoIP/libmaxminddb to be available\. The variables exposed are COUNTRYCODE, COUNTRY, CITY and COORDINATES (when available)\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-m\fR, \fB\-\-netmask\fR Calculate the netmask for the given IP address\. If no mask or prefix is provided, in IPv6 a 128\-bit mask is assumed, while in IPv4 it assumes that the IP address is in a complete class A, B, or C network\. Note, however, that many networks no longer use the default netmasks in IPv4\. The variable exposed is NETMASK\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-p\fR, \fB\-\-prefix\fR Show the prefix for the given mask/IP address\. The variable exposed is PREFIX\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-\-class\-prefix\fR Assign the netmask of the provided IPv4 address based on the address class\. This was the default in previous versions of this software\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-n\fR, \fB\-\-network\fR Display the network address for the given IP address and netmask\. The variable exposed is NETWORK\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-\-reverse\-dns\fR Display the reverse DNS for the given IP address and netmask\. The variable exposed is REVERSEDNS\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-\-minaddr\fR Display the minimum host address in the provided network\. The variable exposed is MINADDR\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-\-maxaddr\fR Display the maximum host address in the provided network\. The variable exposed is MAXADDR\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-\-addresses\fR Display the number of host addresses in the provided network\. The variable exposed is ADDRESSES\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-\-addrspace\fR Display address space allocation information for the provided network\. The variable exposed is ADDRSPACE\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-\-no\-decorate\fR Print only the requested information\. That when combined with split networks option, will only print the networks without any additions for readability\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-j\fR, \fB\-\-json\fR When used with \-i or \-S, print the info as a JSON object instead of the usual output format\.
|
|
.
|
|
.IP "\(bu" 4
|
|
\fB\-s\fR, \fB\-\-silent\fR Don\'t ever display error messages\.
|
|
.
|
|
.IP "" 0
|
|
.
|
|
.SH "Examples"
|
|
.
|
|
.SS "Display all information of an IPv4"
|
|
.
|
|
.nf
|
|
|
|
$ ipcalc \-\-all\-info 193\.92\.150\.2/24
|
|
Address: 193\.92\.150\.2
|
|
Network: 193\.92\.150\.0/24
|
|
Netmask: 255\.255\.255\.0 = 24
|
|
Broadcast: 193\.92\.150\.255
|
|
Reverse DNS: 150\.92\.193\.in\-addr\.arpa\.
|
|
|
|
Address space: Internet
|
|
Address class: Class C
|
|
HostMin: 193\.92\.150\.1
|
|
HostMax: 193\.92\.150\.254
|
|
Hosts/Net: 254
|
|
|
|
Country code: GR
|
|
Country: Greece
|
|
.
|
|
.fi
|
|
.
|
|
.SS "Display information in key\-value format"
|
|
.
|
|
.nf
|
|
|
|
$ ipcalc \-pnmb \-\-minaddr \-\-maxaddr \-\-geoinfo \-\-addrspace 193\.92\.150\.2/255\.255\.255\.224
|
|
NETMASK=255\.255\.255\.224
|
|
PREFIX=27
|
|
BROADCAST=193\.92\.150\.31
|
|
NETWORK=193\.92\.150\.0
|
|
MINADDR=193\.92\.150\.1
|
|
MAXADDR=193\.92\.150\.30
|
|
ADDRSPACE="Internet"
|
|
COUNTRY="Greece"
|
|
.
|
|
.fi
|
|
.
|
|
.SS "Display all information of an IPv6"
|
|
.
|
|
.nf
|
|
|
|
$ ipcalc \-\-all\-info 2a03:2880:20:4f06:face:b00c:0:14/64
|
|
Full Address: 2a03:2880:0020:4f06:face:b00c:0000:0014
|
|
Address: 2a03:2880:20:4f06:face:b00c:0:14
|
|
Full Network: 2a03:2880:0020:4f06:0000:0000:0000:0000/64
|
|
Network: 2a03:2880:20:4f06::/64
|
|
Netmask: ffff:ffff:ffff:ffff:: = 64
|
|
Reverse DNS: 6\.0\.f\.4\.0\.2\.0\.0\.0\.8\.8\.2\.3\.0\.a\.2\.ip6\.arpa\.
|
|
|
|
Address space: Global Unicast
|
|
HostMin: 2a03:2880:20:4f06::
|
|
HostMax: 2a03:2880:20:4f06:ffff:ffff:ffff:ffff
|
|
Hosts/Net: 2^(64) = 18446744073709551616
|
|
|
|
Country code: IE
|
|
Country: Ireland
|
|
.
|
|
.fi
|
|
.
|
|
.SS "Display JSON output"
|
|
.
|
|
.nf
|
|
|
|
$ ipcalc \-\-all\-info \-j 2a03:2880:20:4f06:face:b00c:0:14/64
|
|
{
|
|
"FULLADDRESS":"2a03:2880:0020:4f06:face:b00c:0000:0014",
|
|
"ADDRESS":"2a03:2880:20:4f06:face:b00c:0:14",
|
|
"FULLNETWORK":"2a03:2880:0020:4f06:0000:0000:0000:0000",
|
|
"NETWORK":"2a03:2880:20:4f06::",
|
|
"NETMASK":"ffff:ffff:ffff:ffff::",
|
|
"PREFIX":"64",
|
|
"REVERSEDNS":"6\.0\.f\.4\.0\.2\.0\.0\.0\.8\.8\.2\.3\.0\.a\.2\.ip6\.arpa\.",
|
|
"ADDRSPACE":"Global Unicast",
|
|
"MINADDR":"2a03:2880:20:4f06::",
|
|
"MAXADDR":"2a03:2880:20:4f06:ffff:ffff:ffff:ffff",
|
|
"ADDRESSES":"18446744073709551616",
|
|
"COUNTRYCODE":"IE",
|
|
"COUNTRY":"Ireland",
|
|
"COORDINATES":"53\.000000,\-8\.000000"
|
|
}
|
|
.
|
|
.fi
|
|
.
|
|
.SS "Lookup of a hostname"
|
|
.
|
|
.nf
|
|
|
|
$ ipcalc \-\-lookup\-host localhost \-\-no\-decorate
|
|
::1
|
|
.
|
|
.fi
|
|
.
|
|
.SS "IPv4 lookup of a hostname"
|
|
.
|
|
.nf
|
|
|
|
$ ipcalc \-\-lookup\-host localhost \-\-no\-decorate \-4
|
|
127\.0\.0\.1
|
|
.
|
|
.fi
|
|
.
|
|
.SS "Reverse lookup of a hostname"
|
|
.
|
|
.nf
|
|
|
|
$ ipcalc \-h 127\.0\.0\.1 \-\-no\-decorate
|
|
localhost
|
|
.
|
|
.fi
|
|
.
|
|
.SH "Authors"
|
|
.
|
|
.IP "\(bu" 4
|
|
Nikos Mavrogiannopoulos \fIn\.mavrogiannopoulos@gmail\.com\fR
|
|
.
|
|
.IP "\(bu" 4
|
|
Erik Troan \fIewt@redhat\.com\fR
|
|
.
|
|
.IP "\(bu" 4
|
|
Preston Brown \fIpbrown@redhat\.com\fR
|
|
.
|
|
.IP "\(bu" 4
|
|
David Cantrell \fIdcantrell@redhat\.com\fR
|
|
.
|
|
.IP "" 0
|
|
.
|
|
.SH "Reporting Bugs"
|
|
Report bugs at https://gitlab\.com/ipcalc/ipcalc/issues
|
|
.
|
|
.SH "Copyright"
|
|
Copyright © 1997\-2020 Red Hat, Inc\. This is free software; see the source for copying conditions\. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE\.
|