GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
IPCALC(1) IPCALC(1)

ipcalc - Perform simple operations on IP addresses and networks

ipcalc [OPTION]... IP address[/prefix] [netmask]

ipcalc 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.

By default or when the --info or --all-info parameters are specified the information provided is free form and human readable. Otherwise the output is JSON formatted when -j is specified, or when specific options are given (e.g., --prefix) the output is in the VAR=VALUE format.

The various options specify what information ipcalc 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.

  • -c, --check Validate the IP address under the specified family.
  • -i, --info Display generic information on the provided network in human readable format. This is the default option if no other options are provided.
  • --all-info Display verbose information on the provided network and addresses in human readable format. That includes GeoIP information.
  • -S, --split 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 (--no-decorate), the split networks will be printed in raw form. Example "ipcalc -S 26 192.168.1.0/24".
  • -d, --deaggregate 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 (--no-decorate), the networks are printed in raw form.
  • -r, --random-private 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., --network) to display specific information in VAR=VALUE format.
  • -h, --hostname Display the hostname for the given IP address. The variable exposed is HOSTNAME.
  • -o, --lookup-host Display the IP address for the given hostname. The variable exposed is ADDRESS.
  • -4, --ipv4 Explicitly specify the IPv4 address family.
  • -6, --ipv6 Explicitly specify the IPv6 address family.
  • -b, --broadcast Display the broadcast address for the given IP address and netmask. The variable exposed is BROADCAST (if available).
  • -a, --address Display the IP address for the given input. The variable exposed is ADDRESS (if available).
  • -g, --geoinfo 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).
  • -m, --netmask 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.
  • -p, --prefix Show the prefix for the given mask/IP address. The variable exposed is PREFIX.
  • --class-prefix Assign the netmask of the provided IPv4 address based on the address class. This was the default in previous versions of this software.
  • -n, --network Display the network address for the given IP address and netmask. The variable exposed is NETWORK.
  • --reverse-dns Display the reverse DNS for the given IP address and netmask. The variable exposed is REVERSEDNS.
  • --minaddr Display the minimum host address in the provided network. The variable exposed is MINADDR.
  • --maxaddr Display the maximum host address in the provided network. The variable exposed is MAXADDR.
  • --addresses Display the number of host addresses in the provided network. The variable exposed is ADDRESSES.
  • --addrspace Display address space allocation information for the provided network. The variable exposed is ADDRSPACE.
  • --no-decorate Print only the requested information. That when combined with split networks option, will only print the networks without any additions for readability.
  • -j, --json When used with -i or -S, print the info as a JSON object instead of the usual output format.
  • -s, --silent Don´t ever display error messages.

$ 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

$ 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"

$ 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

$ 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"
}

$ ipcalc --lookup-host localhost --no-decorate
::1

$ ipcalc --lookup-host localhost --no-decorate -4
127.0.0.1

$ ipcalc -h 127.0.0.1 --no-decorate
localhost

    Nikos Mavrogiannopoulos <nmav@redhat.com>
    Erik Troan <ewt@redhat.com>
    Preston Brown <pbrown@redhat.com>
    David Cantrell <dcantrell@redhat.com>

Report bugs at https://gitlab.com/ipcalc/ipcalc/issues

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.
June 2021

Search for    or go to Top of page |  Section 1 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.