Тема . 13 Организация компьютерных сетей

.02 Подсчет количества адресов в сети

Вспоминай формулы по каждой теме
Решай новые задачи каждый день
Вдумчиво разбирай решения
ШКОЛКОВО.
Готовиться с нами - ЛЕГКО!
Подтемы раздела 13 организация компьютерных сетей
Решаем задачу:

Ошибка.
Попробуйте повторить позже

Задача 1#80016

В терминологии сетей TCP/IP маска сети – это двоичное число, меньшее 232  ; в маске сначала (в старших разрядах) стоят единицы, а затем с некоторого места нули. Маска определяет, какая часть IP-адреса узла сети относится к адресу сети, а какая — к адресу самого узла в этой сети. Обычно маска записывается по тем же правилам, что и IP-адрес — в виде четырех байт, причем каждый байт записывается в виде десятичного числа. Адрес сети получается в результате применения поразрядной конъюнкции к заданному IP-адресу узла и маске.

Например, если IP-адрес узла равен 131.32.255.131, а маска равна 255.255.240.0, то адрес сети равен 131.32.240.0.

Для узла с IP-адресом 149.127.136.165 адрес сети равен 149.127.136.160. Чему равно наименьшее количество возможных адресов в этой сети?

В ответе укажите только число.

Показать ответ и решение

Решение руками:

Переводим IP-адрес и адрес сети в двоичную систему счисления, а также найдём маску сети:

IP узла 10010101.01111111.10001000.10100101
IP маска 11111111.11111111.11111111.111xx000
IP сети 10010101.01111111.10001000.10100000

Получаем, что в последнем байте маска имеет неоднозначную запись: 111xx000  .

Так как по условию задачи нам необходимо найти минимальное количество возможных адресов, то на место символа «x» ставим цифру 1. Получаем искомое количество адресов:  3
2 = 8  .

Решение Python:

Необходимо определить минимальное количество возможных адресов в сети, если известен IP-адрес узла 149.127.136.165  и соответствующий ему адрес сети 149.127.136.160  .

Адрес сети всегда вычисляется с помощью маски подсети, применяемой к IP-адресу поразрядной конъюнкцией. Маска определяет, какая часть битов задаёт саму сеть, а какая — номер компьютера внутри неё.

Чтобы найти маску, при которой данный IP-адрес даёт в результате именно этот адрес сети, можно перебрать все возможные длины маски от 0  до 32  . Для каждой маски формируется сеть, проверяется её адрес, и если он совпадает с данным адресом сети, вычисляется общее количество адресов в такой сети.

Так как требуется наименьшее возможное количество адресов, то среди всех подходящих сетей выбирается сеть с минимальным размером. Это значение и будет ответом.

from ipaddress import *  # Импортируем модуль для работы с IP-адресами и сетями

# Создаем объект IP-адреса узла
ip = ip_address(’149.127.136.165’)

# Создаем объект IP-адреса, который должен быть адресом сети
net = ip_address(’149.127.136.160’)

# Перебираем все возможные маски подсети от /0 до /32
for mask in range(33):
    # Формируем сеть для данного IP-адреса с текущей маской
    network = ip_network(f’{ip}/{mask}’, 0)

    # Проверяем, совпадает ли вычисленный адрес сети с данным адресом
    if net == network.network_address:
        # Если совпадает, выводим количество адресов в сети
        # Это кандидат на минимальное возможное значение
        print(network.num_addresses)

Ответ: 8

Специальные программы

Все специальные программы

Программа
лояльности v2.0

Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!

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

Бесплатное онлайн-обучение

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

Налоговые вычеты

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

Специальное предложение
для учителей

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

Вернём деньги за курс
за твою сотку на ЕГЭ

Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!

cyberpunkMouse
cyberpunkMouse
Рулетка
Вы можете получить скидку в рулетке!