ipcalc
我正在尝试在 CentOS 7.9 上使用:
# ipcalc 10.69.69.68/27
Usage: ipcalc [OPTION...]
-c, --check Validate IP address for specified address family
-4, --ipv4 IPv4 address family (default)
-6, --ipv6 IPv6 address family
-b, --broadcast Display calculated broadcast address
-h, --hostname Show hostname determined via DNS
-m, --netmask Display default netmask for IP (class A, B, or C)
-n, --network Display network address
-p, --prefix Display network prefix
-s, --silent Don't ever display error messages
Help options:
-?, --help Show this help message
--usage Display brief usage message
它在 Ubuntu 上的工作方式有所不同:
$ ipcalc 10.69.69.68/27
Address: 10.69.69.68 00001010.01000101.01000101.010 00100
Netmask: 255.255.255.224 = 27 11111111.11111111.11111111.111 00000
Wildcard: 0.0.0.31 00000000.00000000.00000000.000 11111
=>
Network: 10.69.69.64/27 00001010.01000101.01000101.010 00000
HostMin: 10.69.69.65 00001010.01000101.01000101.010 00001
HostMax: 10.69.69.94 00001010.01000101.01000101.010 11110
Broadcast: 10.69.69.95 00001010.01000101.01000101.010 11111
Hosts/Net: 30 Class A, Private Internet
$
答案1
CentOS 7.9 的二进制文件ipcalc
来自 initscripts 软件包,而 Ubuntu(我现在无法检查所有版本)以及 CentOS、RHEL、Almalinux 和 Rocky Linux 8 和 9 的二进制文件来自软件包ipcalc
本身。
对于 CentOS 7.9,您可以从 Ubuntu 获得最接近的输出如下:
ipcalc -nbmp 10.69.69.68/27
输出:
NETMASK=255.255.255.224
PREFIX=27
BROADCAST=10.69.69.68.95
NETWORK=10.69.69.64
ipcalc
CentOS 7 上没有提供您在 Ubuntu 上看到的输出的选项,并且它必须至少与其中一个选项一起使用,这就是为什么您会得到问题中的内容。
要获得您在 Ubuntu 中看到的内容,唯一的选择是从源代码构建最低版本 0.2.3 并将其添加到您的前面PATH
并使用该版本。