Определение первого доступного IP-адреса в сети

Определение первого доступного IP-адреса в сети

Предположим у нас имеется адрес сети 172.30.0.64/27. Требуется определить первый доступный адрес в сети.

В любой сети есть два зарезервированных IP-адреса: первый и последний.

Первый адрес любой сети — это адрес сети, последний — широковещательный адрес.

Переведем IP-адрес и маску в двоичный формат (если число двоичных разрядов будет меньше 8, то дополним нулями слева).

Переводим отдельно каждый октет IP-адреса в двоичную систему. ‭

Октет в десятичной системе счисления Октет в двоичной системе счисления Октет в двоичной системе счисления (с нулями слева)
172 1010110010101100
301111000011110
0 000000000
64 100000001000000

Далее определим маску в двоичном виде. Запись /27 после IP-адреса говорит о том что в маске 27 единиц и 5 нулей (32-27=5).

Запишем 27 единиц и 5 нулей, и разделим их на группы по 8 бит и получим маску в двоичном виде:

11111111.11111111.11111111.11100000

Далее, для наглядности, запишем IP-адрес и маску вместе (друг под другом)

10101100.00011110.00000000.01000000 — IP-адрес

11111111.11111111.11111111.11100000 — Маска

Биты IP-адреса, которым соответствуют «1» в маске определяют номер сети и они одинаковые для всех адресов одной сети.

Биты IP-адреса, которым соответствуют «0» в маске определяют номер хоста в сети и они разные для всех адресов одной сети.

В сети 172.30.0.64/27 номера хостов будут лежать в диапазоне 00000-11111.

Как мы говорили ранее самый первый номер (00000) зарезервирован для адреса сети, а самый последний (11111) зарезервирован для широковещательного адреса.

Получается, для присвоения хостам в сети доступны номера в диапазоне 00001-11110.

Для определения первого доступного IP-адреса нужно в адресе сети изменить биты, соответствующие номеру хоста на первый доступный номер хоста:

10101100.00011110.00000000.01000001

После этого, переведем биты в десятичный формат и получим первый доступный адрес: 172.30.0.65.

Добавить комментарий