一、命令简介
ipcalc命令的全称是:Calculate IP information for a host(计算主机的IP信息),ipcalc命令是一个简单的ip地址计算器,可以完成简单的IP地址计算任务。通过ipcalc命令我们可以获取一个IP地址的掩码、网络地址、广播地址、掩码位数、地址对应主机名,还可以验证输入IP地址是否为一个合法的IP地址。通过此命令我们可以快速的验证一个IP地址是否合法输入,也可以获取快速获取IP地址对应的掩码、网络地址、广播地址等其他信息,在我们编写shell脚本时通过一个命令解决。
二、使用示例
1、检查输入地址是否正确
IP地址输入不正确是报错提示bad IP地址,无输出表示IP地址正确。
[root@test1 ~]# ipcalc -c 1.2.3
ipcalc: bad IPv4 address: 1.2.3
[root@test1 ~]# ipcalc -c 1.2.3.300
ipcalc: bad IPv4 address: 1.2.3.300
[root@test1 ~]# ipcalc -c 192.168.0.1
2、计算IP地址的广播地址
计算广播地址需要输入IP地址和掩码。
[root@test1 ~]# ipcalc -b 192.168.0.100 255.255.255.128
BROADCAST=192.168.0.127
3、查看IP地址对应主机名
查看IP地址对应主机名实际上市查找/etc/hosts文件。
[root@test1 ~]# ipcalc -h 192.168.0.124
HOSTNAME=s124
[root@test1 ~]# ipcalc -h 192.168.0.1
HOSTNAME=gateway
[root@test1 ~]# ipcalc -h 192.168.0.100
ipcalc: cannot find hostname for 192.168.0.100: Unknown host
4、计算IP地址掩码
计算地址掩码需要输入IP地址及网络地址位数,如果未输入网络地址位数则按照A/B/C/D/E类地址进行计算掩码。
[root@test1 ~]# ipcalc -m 172.16.0.1/18
NETMASK=255.255.192.0
[root@test1 ~]# ipcalc -m 192.168.0.1/25
NETMASK=255.255.255.128
[root@test1 ~]# ipcalc -m 192.168.0.1
NETMASK=255.255.255.0
5、计算IP地址网络地址
计算网络地址是可以使用地址+掩码或者地址+网络前缀位数方式。
[root@test1 ~]# ipcalc -n 192.168.1.100 255.255.255.192
NETWORK=192.168.1.64
[root@test1 ~]# ipcalc -n 192.168.1.100/25
NETWORK=192.168.1.0
6、计算IP地址的网络前缀位数
[root@test1 ~]# ipcalc -p 192.168.1.100 255.255.255.0
PREFIX=24
[root@test1 ~]# ipcalc -p 192.168.1.100 255.255.255.192
PREFIX=26
三、使用语法及参数说明
1、使用语法
用法:ipcalc [参数] 地址 [掩码]
2、参数说明
参数 | 参数说明 |
---|---|
-c ,–check | 验证IP地址是否为正确的IP地址 |
-4 ,–ipv4 | 验证ipv4,默认 |
-6 ,–ipv6 | 验证ipv6 |
-b, --broadcast | 由给定的IP地址和网络掩码计算出广播地址 |
-h , --hostname | 显示给定IP地址所对应的主机名 |
-m, --netmask | 由给定的IP地址计算器网络掩码 |
-p, --prefix | 显示给定的掩码或IP地址的前缀 |
-n, --network | 由给定的IP地址和网络掩码计算网络地址 |
-s , --silent | 安静模式 |
-?,–help | 显示帮助信息 |