网站搜索

如何使用 ipcalc 工具计算 IP 子网地址


管理网络时,毫无疑问需要处理子网划分问题。一些网络管理员能够在头脑中快速进行二进制数学计算,以确定子网掩码。然而,其他人可能需要一些帮助,这就是 ipcalc 工具派上用场的地方。

另请阅读:Linux 系统管理员网络管理、故障排除和调试指南

Ipcalc 实际上做了更多的事情 - 它需要 IP 地址和网络掩码并提供结果广播、网络、Cisco 通配符掩码和主机范围。您还可以将其用作教学工具,以易于理解的二进制值呈现子网划分结果。

ipcalc 的一些用途包括:

  • 验证 IP 地址
  • 显示计算出的广播地址
  • 显示通过 DNS 确定的主机名
  • 显示网络地址或前缀

如何在 Linux 中安装 ipcalc

要安装 ipcalc,只需根据您使用的 Linux 发行版运行以下命令之一即可。

sudo apt install ipcalc  

ipcalc 软件包应自动安装在 CentOS/RHEL/Fedora 下,并且它是 initscripts 软件包的一部分,但如果由于某种原因它是缺少,您可以使用以下命令安装它:

yum install initscripts     #RHEL/CentOS
dnf install initscripts     #Fedora

如何在 Linux 中使用 ipcalc

下面您可以看到一些使用 ipcalc 的示例。

获取有关网络地址的信息:

ipcalc 192.168.20.0
样本输出
Address:   192.168.20.0         11000000.10101000.00010100. 00000000
Netmask:   255.255.255.0 = 24   11111111.11111111.11111111. 00000000
Wildcard:  0.0.0.255            00000000.00000000.00000000. 11111111
=>
Network:   192.168.20.0/24      11000000.10101000.00010100. 00000000
HostMin:   192.168.20.1         11000000.10101000.00010100. 00000001
HostMax:   192.168.20.254       11000000.10101000.00010100. 11111110
Broadcast: 192.168.20.255       11000000.10101000.00010100. 11111111
Hosts/Net: 254                   Class C, Private Internet

计算 192.168.20.0/24 的子网。

ipcalc 192.168.20.0/24
样本输出
Address:   192.168.20.0         11000000.10101000.00010100. 00000000
Netmask:   255.255.255.0 = 24   11111111.11111111.11111111. 00000000
Wildcard:  0.0.0.255            00000000.00000000.00000000. 11111111
=>
Network:   192.168.20.0/24      11000000.10101000.00010100. 00000000
HostMin:   192.168.20.1         11000000.10101000.00010100. 00000001
HostMax:   192.168.20.254       11000000.10101000.00010100. 11111110
Broadcast: 192.168.20.255       11000000.10101000.00010100. 11111111
Hosts/Net: 254                   Class C, Private Internet

计算具有 10 台主机的单个子网:

ipcalc  192.168.20.0 -s 10
样本输出
Address:   192.168.20.0         11000000.10101000.00010100. 00000000
Netmask:   255.255.255.0 = 24   11111111.11111111.11111111. 00000000
Wildcard:  0.0.0.255            00000000.00000000.00000000. 11111111
=>
Network:   192.168.20.0/24      11000000.10101000.00010100. 00000000
HostMin:   192.168.20.1         11000000.10101000.00010100. 00000001
HostMax:   192.168.20.254       11000000.10101000.00010100. 11111110
Broadcast: 192.168.20.255       11000000.10101000.00010100. 11111111
Hosts/Net: 254                   Class C, Private Internet

1. Requested size: 10 hosts
Netmask:   255.255.255.240 = 28 11111111.11111111.11111111.1111 0000
Network:   192.168.20.0/28      11000000.10101000.00010100.0000 0000
HostMin:   192.168.20.1         11000000.10101000.00010100.0000 0001
HostMax:   192.168.20.14        11000000.10101000.00010100.0000 1110
Broadcast: 192.168.20.15        11000000.10101000.00010100.0000 1111
Hosts/Net: 14                    Class C, Private Internet

Needed size:  16 addresses.
Used network: 192.168.20.0/28
Unused:
192.168.20.16/28
192.168.20.32/27
192.168.20.64/26
192.168.20.128/25

如果要抑制二进制输出,可以使用 -b 选项,如下所示。

ipcalc -b 192.168.20.100
样本输出
Address:   192.168.20.100
Netmask:   255.255.255.0 = 24
Wildcard:  0.0.0.255
=>
Network:   192.168.20.0/24
HostMin:   192.168.20.1
HostMax:   192.168.20.254
Broadcast: 192.168.20.255
Hosts/Net: 254                   Class C, Private Internet

要查找有关 ipcalc 用法的更多信息,您可以使用:

ipcalc --help
man ipcalc

您可以在 http://jodies.de/ipcalc 上找到 ipcalc 官方网站。

结论

这是一个简单的教程,通过一些基本示例展示了如何使用 ipcalc 工具。如果您有任何问题或建议,请务必在下面的评论部分提交。