.02 Подсчет количества адресов в сети
Ошибка.
Попробуйте повторить позже
В терминологии сетей TCP/IP маской подсети называется 32-разрядное двоичное число, определяющее, какие именно разряды IP-адреса компьютера являются общими для всей подсети – в этих разрядах маски стоит 1. Обычно маски записываются в виде четверки десятичных чисел – по тем же правилам, что и IP-адреса. Для некоторой подсети используется маска 255.255.192.0. Сколько различных адресов компьютеров теоретически допускает эта маска, если два адреса (адрес сети и широковещательный) не используют?
Решение руками:
- Так как первые два числа маски равны 255, то в двоичном виде они записываются как 16 единиц, а значит, первые два числа определяют адрес сети.
-
Запишем число 192 в двоичном виде:
.
В этом числе стоят 6 нулей, еще 8 нулей мы получаем из последнего числа маски. Итого у нас есть 14 двоичных разрядов для того, чтобы записать адрес компьютера.
- Тогда
, но, так как два адреса не используются, получаем
адресов.
Решение Python:
Для определения количества адресов компьютеров в подсети необходимо учитывать маску сети, которая определяет, какие разряды IP-адреса являются общими для всей подсети. Адреса, относящиеся к хостам, вычисляются на основе оставшихся разрядов, не занятых маской. В Python для работы с IP-адресами и масками удобно использовать модуль ipaddress. Создаём объект сети с помощью функции ip_network(), указывая маску подсети. Метод num_addresses возвращает общее количество адресов в сети. Чтобы получить количество допустимых адресов для компьютеров, из общего числа вычитаются два служебных адреса: адрес сети и широковещательный адрес. В конце программа выводит число адресов, доступных для использования компьютерами.
from ipaddress import * # Определяем адрес сети с маской 255.255.192.0 network = ip_network(’0.0.0.0/255.255.192.0’) # Общее количество адресов в сети (без адреса сети и широковещательного) total_hosts = network.num_addresses - 2 print(total_hosts)
Специальные программы

Программа
лояльности v2.0
Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!
Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.

Бесплатное онлайн-обучение
Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.

Налоговые вычеты
Узнай, как получить налоговый вычет при оплате обучения в «Школково».

Специальное предложение
для учителей
Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!

Вернём деньги за курс
за твою сотку на ЕГЭ
Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!