Linux常用命令-ipcalc

命令

ipcalc

描述

perform simple manipulation of IP addresses
IP地址检查工具

用法

1
ipcalc [OPTION]... <IP address>[/prefix] [netmask]

选项

1
2
3
4
5
6
7
8
9
10
Options:
-c, --check 校验IP地址,支持校验ipv6地址
-4, --ipv4 IPv4 address family (default)
-6, --ipv6 IPv6 address family
-b, --broadcast 显示广播地址,以下选项均不支持ipv6
-h, --hostname 显示通过DNS解析的主机名
-m, --netmask 显示网络掩码
-n, --network 显示网络地址
-p, --prefix 显示网络前缀
-s, --silent 静默模式,不显示错误信息

注意

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# -c 校验IP地址
$ ipcalc -c 192.168.10.1
$ ipcalc -c 192.168.10.1111
ipcalc: bad IPv4 address: 192.168.10.1111
$ ipcalc -c 192.168.10.256
ipcalc: bad IPv4 address: 192.168.10.256
$ ipcalc -c 192.168.10
ipcalc: bad IPv4 address: 192.168.10
# 注意只是校验IP地址的格式是否正确
$ ipcalc -c 0.0.0.0
$ ipcalc -c 1.1.1.1/16
$ ipcalc -c4 1.1.1.1/33
ipcalc: bad prefix: 33
# 校验IPv6地址格式
$ ipcalc -c6 fe80::1
$ ipcalc -c6 fe80::1/64
$ ipcalc -c6 fe80::b8dc:f797:3375:e9a4/64
$ ipcalc -c6 fe80::b8dc:f797:3375:/64
ipcalc: bad IPv6 address: fe80::b8dc:f797:3375:
$ ipcalc -c6 fe80::1/128
$ ipcalc -c6 fe80::1/129
ipcalc: bad prefix: 129
# -b 显示广播地址
$ ipcalc -b 10.20.30.40/24
BROADCAST=10.20.30.255
# -m 显示网络掩码
$ ipcalc -m 10.20.30.40/24
NETMASK=255.255.255.0
# -n 显示网络地址
$ ipcalc -n 10.20.30.40/24
NETWORK=10.20.30.0
# -p 显示网络前缀
$ ipcalc -p 10.20.30.40/24
PREFIX=24
# 组合选项
$ ipcalc -bmnp 10.20.30.40/24
NETMASK=255.255.255.0
PREFIX=24
BROADCAST=10.20.30.255
NETWORK=10.20.30.0

# 其他示例
$ ipcalc -b 10.12.1.1/14
BROADCAST=10.15.255.255
$ ipcalc -b 172.16.10.10/20
BROADCAST=172.16.15.255

$ ipcalc -m 17.230.10.10
NETMASK=255.0.0.0
$ ipcalc -m 172.1.10.10
NETMASK=255.255.0.0
$ ipcalc -m 17.230.10.10/12
NETMASK=255.240.0.0

$ ipcalc -n 17.230.10.10/12
NETWORK=17.224.0.0
$ ipcalc -n 17.230.10.10/18
NETWORK=17.230.0.0
$ ipcalc -n 192.168.10.1/24
NETWORK=192.168.10.0

$ ipcalc -p 192.168.10.1 255.255.240.0
PREFIX=20
$ ipcalc -p 192.168.10.1 255.255.255.128
PREFIX=25
$ ipcalc -p 192.168.10.1 255.224.0.0
PREFIX=11

# -s 不显示错误信息
$ ipcalc -c 192.168.10.10/35
ipcalc: bad prefix: 35
$ ipcalc -cs 192.168.10.10/35
$ echo $?
1