Укажите наименьшее возможное количество принадлежащих этой сети
Условие
В терминологии сетей TCP/IP маской сети называется двоичное число, определяющее, какая часть IP-адреса узла сети относится к адресу сети, а какая — к адресу самого узла в этой сети. При этом в маске сначала (в старших разрядах) стоят единицы, а затем с некоторого места — нули. Адрес сети получается в результате применения поразрядной конъюнкции к заданному IP-адресу узла и маске.
Например, если IP-адрес узла равен 231.32.255.131, а маска равна 255.255.240.0, то адрес сети равен 231.32.240.0.Известно, что в составе сети, которой принадлежит IP-адрес 147.222.199.75, есть узел, в IP-адресе которого первый байт совпадает с четвёртым, а второй — с третьим. Укажите наименьшее возможное количество принадлежащих этой сети IP-адресов, в двоичной записи которых ровно 14 единиц.
Ответ
Ответ и полный разбор откроются после входа
Посмотреть ответРешение по шагам
Как рассуждать
Решение. Запишем второй узел, в IP-адресе которого первый байт совпадает с четвёртым, а второй — с третьим: 147.222.222.147.Выпишем двоичное представление IP-адресов:147.222.199.75: 10010011.11011110.11000111.01001011,147.222.222.147: 10010011.11011110.11011110.10010011.Заметим, что IP-адреса различаются в третьем байте слева. Отличие в 4 бите слева. Соответственно маска будет выглядеть так:255.255.224.0: 11111111.11111111.11100000.00000000.В части IP-адресов, соответствующих 1 в маске содержится 12 единиц. По условию задачи, в двоичной записи IP-адресов должно быть ровно 14 единиц. Следовательно, на оставшиеся 13 бит адреса (биты, соответствующие 0 в маске) должно приходиться 2 единицы. Количество способов расставить 2 единицы по 13 местам равно: Наименьшее возможное количество принадлежащих этой сети IP-адресов, в двоичной записи которых ровно 14 единиц, равно
Осталось ещё 2 шага
Примечание. В маске после нуля идут только…
count = 0 if ip_address(ipu_modified) in…
Бесплатно · займёт минуту