Расчет сети с помощью ipcalc

Рассмотрим, как рассчитать IP-адрес подсети с помощью инструмента ipcalc.

При управлении сетью, несомненно, придется иметь дело с подсетями. Некоторые сетевые администраторы могут довольно быстро выполнять двоичные вычисления, чтобы определить маску подсети. Тем не менее, другим может потребоваться некоторая помощь, и здесь инструмент ipcalc очень пригодится.

Ipcalc на самом деле делает намного больше - он принимает на вход IP-адрес и маску сети и на выходе вы получаете адрес сети, Cisco wildcard маску, широковещательный адрес, минимальный и максимальный хост и общее количество хостов. Вы также можете использовать его в качестве учебного пособия для представления результатов подсетей в простых для понимания двоичных значениях.

Некоторые из применений ipcalc:

  • Проверить IP-адрес

  • Показать рассчитанный широковещательный адрес

  • Отображение имени хоста, определенного через DNS

  • Показать сетевой адрес или префикс

Как установить ipcalc в Linux

Чтобы установить ipcalc, просто запустите одну из приведенных ниже команд в зависимости от используемого дистрибутива Linux.

$ sudo apt install ipcalc  

Пакет ipcalc должен автоматически устанавливаться в CentOS / RHEL / Fedora, и он является частью пакета initscripts, но если по какой-то причине он отсутствует, вы можете установить его с помощью:

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

Как использовать ipcalc в Linux

Ниже вы можете увидеть несколько примеров использования 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

Last updated