ЕГЭ · Информатикаподготовка по заданиям
Задание 10 из 27Цифровая грамотность

Цифровая грамотность · 1 балл

IP-адреса и маски

Подсети

Найти адрес сети, широковещательный адрес, маску или количество хостов по IP и маске.

Цифровая грамотность число или IP-адрес новая тема 2027
2027

В 2027 тема задания изменена: теперь маски подсетей. В 2026 задание проверяло информационный поиск в текстовом процессоре.

Что проверяет

Сетевые протоколы, адресация в Интернете, разделение IP-сети на подсети масками.

Основание: проект спецификации и кодификатора КИМ 2027. Открыть документы

Теория

Что нужно знать

В 2027 году задание 10 проверяет адресацию IPv4 и маски подсетей. В демоверсии дан адрес узла 192.168.159.86 и маска 255.255.252.0: нужно найти адрес сети и записать сумму его октетов. В банке задач формулировки шире — адрес сети, широковещательный адрес, наибольший или наименьший адрес для компьютера, количество хостов, маска по известному адресу сети, подсчёт адресов с условием на биты и неизвестный октет A. Почти всё сводится к двоичной записи четырёх октетов, поэтому теория здесь компактная: адрес, маска, побитовое И и границы блока.

Минимум для задания 10

  • что такое IPv4 и почему в адресе ровно 32 бита
  • как переводить октеты в двоичный вид и обратно
  • что такое маска и префикс /n
  • какие значения октетов маски допустимы
  • как работает побитовое И
  • как найти адрес сети по IP и маске
  • как найти широковещательный адрес
  • сколько в сети адресов и сколько хостов
  • как восстановить маску по IP и адресу сети
  • как считать адреса с условием на единицы, нули и подстроки
  • как перебирать неизвестный октет A
  • что именно складывать в ответе «сумма октетов»

Как устроено задание 10

В 2027 году задание 10 относится к разделу «Цифровая грамотность» и оценивается в 1 первичный балл. В демоверсии требуется найти адрес сети по IP узла и маске и вернуть сумму четырёх октетов этого адреса. В открытом банке встречаются и обратные задачи: по IP и адресу сети восстановить маску, найти широковещательный адрес, посчитать количество хостов или отобрать адреса по битовому условию. Во всех случаях нужно аккуратно работать с 32-битной записью.

  • Ответ — число, IP-адрес по октетам или значение одного байта маски.
  • Адрес сети и широковещательный адрес зарезервированы: компьютерам их не назначают.
  • Формулировка «для всех IP-адресов сети» означает, что проверять нужно каждый адрес блока.
  • Формулировка «для узлов» обычно исключает адрес сети и широковещательный адрес.
  • Решать можно вручную по битам или программой через модуль ipaddress.

IPv4: 32 бита и четыре октета

IP-адрес IPv4 — это 32 бита, записанные четырьмя октетами через точку. Каждый октет занимает 8 бит и принимает значение от 0 до 255. В двоичной записи октет всегда содержит ровно восемь разрядов, поэтому ведущие нули не отбрасывают: 86 — это 01010110, а не 1010110.

  • 192.168.159.86 = 11000000.10101000.10011111.01010110.
  • Веса разрядов октета: 128, 64, 32, 16, 8, 4, 2, 1.
  • 255 = 11111111, 0 = 00000000, 252 = 11111100.
  • Перевод в десятичную запись: сложите веса единичных разрядов.
  • В ответе октеты записываются десятичными числами через точку.
128 64 32 16 8 4 2 1255 = 11111111

Маска и префикс /n

Маска сети — 32-битное число, в котором сначала идут n единиц, а затем 32 − n нулей. Её записывают четырьмя октетами или коротко /n. Число n называется префиксом и равно количеству единиц в маске. Маска не может быть произвольной: запись 255.255.200.0 невозможна, потому что после нулей в третьем октете снова идёт единица.

  • /24 = 255.255.255.0: 24 единицы и 8 нулей.
  • /22 = 255.255.252.0: 22 единицы и 10 нулей.
  • /26 = 255.255.255.192: 26 единиц и 6 нулей.
  • Допустимые октеты маски: 0, 128, 192, 224, 240, 248, 252, 254, 255.
  • Последний октет маски равен 256 − размер блока.
/n: n единиц, затем 32 − n нулейblock = 256 − mask_octet

Адрес сети: побитовое И

Адрес сети получается в результате поразрядной конъюнкции IP-адреса узла и маски. Там, где в маске стоят единицы, биты IP сохраняются; там, где стоят нули, биты обнуляются. Поэтому в адресе сети все биты хоста равны нулю, и он является первым адресом блока.

  • 192 & 255 = 192, 168 & 255 = 168, 159 & 252 = 156, 86 & 0 = 0.
  • 192.168.159.86 при маске 255.255.252.0 даёт сеть 192.168.156.0.
  • Меняется только тот октет, в котором маска не 0 и не 255.
  • Адрес сети всегда кратен размеру блока в «своём» октете.
  • Проверка: побитовое И адреса сети и маски должно дать тот же адрес.
адрес сети = IP & маскаnetwork_octet = ip_octet & mask_octet

Быстрый счёт по блоку

Вручную не нужно переводить все 32 бита. Найдите октет, где маска принимает промежуточное значение, и посчитайте размер блока: block = 256 − значение этого октета маски. Затем округлите значение IP в этом октете вниз до кратного block. Остальные октеты просто копируются или обнуляются.

  • Маска 255.255.252.0: block = 256 − 252 = 4.
  • 159 → 156, потому что 159 = 39 · 4 + 3.
  • Маска 255.255.248.0: block = 8, поэтому 228 → 224.
  • Маска 255.255.255.192: block = 64, поэтому 230 → 192.
  • Если октет маски равен 255, значение IP не меняется; если 0 — становится нулём.
network_octet = (ip_octet // block) * blockblock = 256 − mask_octet

Широковещательный адрес и адреса узлов

Широковещательный (broadcast) адрес — последний адрес блока: в нём все биты хоста заменены единицами. Адрес сети и широковещательный адрес зарезервированы, поэтому их не назначают компьютерам. Наименьший адрес узла — network + 1, наибольший — broadcast − 1.

  • Сеть 192.168.156.0/22: broadcast 192.168.159.255.
  • Первый адрес узла — 192.168.156.1, последний — 192.168.159.254.
  • «Наибольший адрес, который можно назначить» — это broadcast − 1.
  • «Наименьший адрес узла» — это network + 1.
  • В ответе «сумма октетов» складывают ровно четыре числа.
broadcast = network + 2^(32−n) − 1first host = network + 1last host = broadcast − 1

Количество адресов и хостов

В сети 2^(32−n) адресов. Если два служебных адреса не используются, количество хостов равно 2^(32−n) − 2. Внимательно читайте формулировку: «количество IP-адресов в сети» может включать адрес сети и broadcast, а «количество компьютеров, которым можно назначить адрес» — нет.

  • /22: 2^10 = 1024 адреса и 1022 хоста.
  • /24: 256 адресов и 254 хоста.
  • /26: 64 адреса и 62 хоста.
  • /30: 4 адреса и 2 хоста.
  • Хостов с нечётными номерами ровно половина: (2^(32−n) − 2) / 2.
  • Для /31 и /32 стандартная формула «минус два» даёт 0 или отрицательное число; в школьных задачах такие маски почти не встречаются.
addresses = 2^(32−n)hosts = 2^(32−n) − 2odd hosts = hosts / 2

Обратная задача: маска по IP и адресу сети

Если известны IP узла и адрес сети, маску можно восстановить неоднозначно. Сравните двоичные записи. Маска может закрывать только те биты, где IP и адрес сети совпадают. Минимальный префикс определяется последней единицей адреса сети, максимальный — первым различающимся битом IP и адреса сети.

  • IP 168.224.22.193 и сеть 168.224.16.0: возможны префиксы /20 и /21, наименьший — /20.
  • Маска /20 — это 255.255.240.0.
  • IP 130.140.241.137 и сеть 130.140.240.0: возможны /20…/23, наибольший — /23.
  • Маска /23 — это 255.255.254.0.
  • Число различных подходящих масок равно max − min + 1.
  • Если просят один байт маски, берут соответствующий октет найденной маски.
n_min — позиция последней единицы адреса сетиn_max — позиция перед первым различием IP и адреса сетиподходящие n: n_min … n_max

Неизвестный октет A и условия на все адреса

В задачах с буквой A один октет IP или маски неизвестен. Если условие должно выполняться для всех адресов сети, проще всего перебрать A от 0 до 255, построить сеть и проверить каждый адрес. Такой перебор короткий и надёжный; вручную анализируют биты только для экономии времени.

  • Для IP 154.127.A.230 и маски 255.255.255.192 максимальное A равно 192.
  • Для IP 16.32.A.48 и маски 255.255.240.0 минимальное A равно 112.
  • При проверке только узлов пропускайте адрес сети и широковещательный адрес.
  • Условие «для всех» — это all(...), условие «существует» — any(...).
  • Если A стоит в октете маски, проверяйте, что маска остаётся допустимой.
for A in range(256):all(condition(ip) for ip in network)

Подсчёт адресов по битовому условию

В задачах «сколько в сети таких IP-адресов» перебирают все адреса сети и проверяют двоичную запись. Для количества единиц достаточно count('1'). Для количества нулей и для поиска подстрок используйте 32-битную запись f'{int(ip):032b}': иначе ведущие нули будут потеряны и ответ изменится.

  • Сеть 192.168.32.128/26: чётное количество единиц у 32 адресов.
  • Сеть 165.44.96.0/21: три подряд идущие единицы у 1121 адреса.
  • Сеть 136.36.240.16/29: подстрока 101 не встречается у 4 адресов.
  • Сеть 136.108.34.160/28: подстрока 1001 не встречается у 11 адресов.
  • «IP-адресов в сети» включает адрес сети и broadcast; «узлов» — исключает.
  • Для проверки одного октета переводите его отдельно: f'{octet:08b}'.
f'{int(ip):032b}'binary.count('1')'111' in binary'101' not in binary

Формат ответа и проверка

В задании 10 ответ короткий, но ошибка в формате стоит балла. Проверьте, что именно просят: адрес сети или broadcast, сумму октетов или сам адрес, количество адресов или количество хостов, префикс или десятичную маску.

  • Сумма октетов: 192 + 168 + 156 + 0 = 516.
  • Адрес в ответе — четыре десятичных числа через точку.
  • Если ответ вводят по октетам в клетки, каждое число от 0 до 255.
  • Префикс /22 и маска 255.255.252.0 — разные формы записи одного числа.
  • Проверьте ответ вторым способом: вручную и через ipaddress.
ip_network('192.168.159.86/255.255.252.0', strict=False)

Разбор примера

Учебный пример: адрес сети, broadcast и сумма октетов

Разберём демоверсию 2027 целиком: найдём адрес сети, широковещательный адрес и количество хостов, а затем сумму октетов адреса сети.

Демоверсия 2027: узел 192.168.159.86, маска 255.255.252.0
ОктетIP узлаIP в двоичном видеМаскаАдрес сетиBroadcast
119211000000255192192
216810101000255168168
315910011111252156159
4860101011000255
  1. Маска 255.255.252.0 — это /22: 22 бита адреса сети и 10 битов хоста.
  2. Побитовое И: 192 & 255 = 192, 168 & 255 = 168.
  3. В третьем октете 252 = 11111100, поэтому 159 & 252 = 10011100 = 156.
  4. В четвёртом октете маска 0, поэтому все биты обнуляются: 86 & 0 = 0.
  5. Адрес сети 192.168.156.0. Broadcast: заменяем 10 битов хоста единицами — 192.168.159.255.
  6. Хостов 2^10 − 2 = 1022. Сумма октетов адреса сети: 192 + 168 + 156 + 0 = 516.

Ответ516 (адрес сети 192.168.156.0, broadcast 192.168.159.255, 1022 хоста).

Способы решения

Выберите метод под формулировку

Методы собраны по решениям задания 10 из базы Kompege. Начните с того, что именно нужно найти в условии.

01

когда даны IP и маска

Адрес сети через побитовое И

Когда использовать: Нужно найти адрес сети, а затем сумму его октетов или другую величину.

  1. Переведите октеты IP и маски в двоичный вид по 8 бит.
  2. Выполните И для каждого разряда: 1 & 1 = 1, иначе 0.
  3. Соберите четыре октета адреса сети.
  4. Проверьте, что в адресе сети все биты хоста равны нулю.
  5. Если просят сумму, сложите четыре десятичных октета.

Пример

Демоверсия 2027: 192.168.159.86 и 255.255.252.0. В третьем октете 159 & 252 = 156, остальные октеты не меняются или обнуляются. Адрес сети 192.168.156.0, сумма 192 + 168 + 156 + 0 = 516.

from ipaddress import ip_network

net = ip_network('192.168.159.86/255.255.252.0', strict=False)
print(net.network_address)
print(sum(map(int, str(net.network_address).split('.'))))

Ответ516.

Демоверсия ЕГЭ 2027, задание 10 (база Kompege, задача № 31507).

02

когда маска записана четырьмя октетами

Быстрый счёт по блоку октета

Когда использовать: Нужно считать вручную и не переводить все 32 бита.

  1. Найдите октет, где маска не 0 и не 255.
  2. Посчитайте block = 256 − значение этого октета маски.
  3. Округлите IP в этом октете вниз до кратного block.
  4. Остальные октеты: где маска 255 — как в IP, где 0 — нули.
  5. Проверьте результат побитовым И.

Пример

Маска 255.255.248.0, IP 64.237.228.143. block = 256 − 248 = 8; 228 = 28 · 8 + 4, поэтому третий октет сети равен 224. Адрес сети 64.237.224.0, сумма октетов 64 + 237 + 224 + 0 = 525.

ip_octet = 228
mask_octet = 248
block = 256 - mask_octet
network_octet = ip_octet // block * block
print(network_octet)

Ответ525.

По мотивам задачи № 31221 (база Kompege).

03

когда спрашивают broadcast или крайние адреса

Широковещательный адрес и адреса узлов

Когда использовать: Нужно найти широковещательный адрес, наибольший или наименьший адрес для компьютера.

  1. Сначала найдите адрес сети.
  2. Broadcast — адрес сети, в котором все биты хоста заменены на единицы.
  3. Первый адрес узла = network + 1.
  4. Последний адрес узла = broadcast − 1.
  5. Не назначайте компьютерам адрес сети и broadcast.

Пример

IP 146.180.173.153, маска 255.192.0.0 (/10). Адрес сети 146.128.0.0, broadcast 146.191.255.255, наибольший адрес узла 146.191.255.254. Сумма его октетов: 146 + 191 + 255 + 254 = 846.

from ipaddress import ip_network

net = ip_network('146.180.173.153/255.192.0.0', strict=False)
print(net.network_address, net.broadcast_address)
print(net.broadcast_address - 1)

Ответ846.

По мотивам задач № 31185, 31331 и 31446 (база Kompege).

04

когда спрашивают «сколько»

Количество адресов и хостов

Когда использовать: Нужно узнать, сколько всего адресов в сети или сколько из них можно назначить компьютерам.

  1. Определите префикс /n.
  2. Посчитайте адреса: 2^(32−n).
  3. Если нужны только узлы, вычтите адрес сети и broadcast: 2^(32−n) − 2.
  4. Для нечётных номеров хостов возьмите половину: (2^(32−n) − 2) / 2.
  5. Проверьте, не спрашивают ли про адреса, а не про хосты.

Пример

IP 49.26.38.163, маска 255.255.255.224 (/27). Адресов 2^5 = 32, хостов 30, из них с нечётными номерами 15.

from ipaddress import ip_network

net = ip_network('49.26.38.163/255.255.255.224', strict=False)
print(net.num_addresses)
print(net.num_addresses - 2)
print(len([ip for ip in net.hosts() if int(ip) % 2 == 1]))

Ответ32 адреса, 30 хостов, 15 нечётных.

По мотивам задачи № 10110 (база Kompege).

05

когда маска неизвестна

Маска по IP и адресу сети

Когда использовать: Даны IP узла и адрес сети; нужно найти маску, префикс, байт маски или количество возможных масок.

  1. Запишите IP и адрес сети по октетам в двоичном виде.
  2. Найдите последнюю единицу адреса сети — это минимальный префикс.
  3. Найдите первый бит, где IP и адрес сети различаются; маска не может заходить за него — это максимальный префикс.
  4. Все префиксы между ними возможны.
  5. Переведите выбранный префикс в маску или нужный октет.

Пример

IP 168.224.22.193 и сеть 168.224.16.0. Последняя единица сети — 16 в третьем октете, поэтому минимум /20. Первое различие — бит 4 в третьем октете, поэтому максимум /21. Возможны /20 и /21; наименьшая маска 255.255.240.0. В задаче № 11765 для пары 130.140.241.137 и 130.140.240.0 возможны /20…/23, наибольшая маска 255.255.254.0.

from ipaddress import ip_address, ip_network

ip = ip_address('168.224.22.193')
net = ip_address('168.224.16.0')
for n in range(33):
    network = ip_network(f'{ip}/{n}', strict=False)
    if network.network_address == net:
        print(n, network.netmask)

ОтветНаименьший префикс /20, маска 255.255.240.0.

По мотивам задач № 11764, 11765, 11768 и 11785 (база Kompege).

06

когда у двух IP одна маска

Два узла в разных подсетях

Когда использовать: Нужно найти наименьшее или наибольшее количество единиц в маске, при котором два узла попадают в разные подсети.

  1. Запишите оба IP в двоичном виде.
  2. Найдите первый различающийся бит.
  3. Если узлы должны быть в разных подсетях, маска обязана закрыть этот бит.
  4. Если в одной подсети — маска должна закончиться до него.
  5. Проверьте, что оба адреса не являются адресом сети или broadcast.

Пример

IP 145.207.153.178 и 145.207.153.165. Они различаются в четвёртом октете: 178 = 10110010, 165 = 10100101, первый разный бит — 16. Значит, маска должна включать как минимум 24 + 4 = 28 единиц. Ответ 28.

from ipaddress import ip_network

a, b = '145.207.153.178', '145.207.153.165'
for n in range(33):
    na = ip_network(f'{a}/{n}', strict=False).network_address
    nb = ip_network(f'{b}/{n}', strict=False).network_address
    if na != nb:
        print(n)
        break

Ответ28.

По мотивам задач № 11175 и № 14650 (база Kompege).

07

когда в условии есть буква A

Неизвестный октет A

Когда использовать: IP или маска содержит неизвестное число A, а условие должно выполняться для всех адресов сети.

  1. Выпишите, в каком октете стоит A и какой диапазон допустим: 0…255.
  2. Переберите A.
  3. Для каждого A постройте сеть.
  4. Проверьте условие для каждого адреса или только для узлов.
  5. Выберите минимальное или максимальное подходящее A.

Пример

IP 154.127.A.230, маска 255.255.255.192. Условие: у всех адресов сети единиц в левых двух байтах больше, чем в правых. Перебор даёт максимальное A = 192. В задаче № 31246 для IP 16.32.A.48 и маски 255.255.240.0 минимальное A = 112.

from ipaddress import ip_address, ip_network

for A in range(256):
    ip = ip_address(f'154.127.{A}.230')
    net = ip_network(f'{ip}/255.255.255.192', strict=False)
    if ip in (net.network_address, net.broadcast_address):
        continue
    if all(f'{int(x):032b}'[:16].count('1') > f'{int(x):032b}'[16:].count('1') for x in net):
        print(A)

Ответ192.

По мотивам задач № 11621, 11835, 14649 и 31246 (база Kompege).

08

когда спрашивают «сколько адресов»

Подсчёт адресов с условием на биты

Когда использовать: Нужно посчитать адреса с чётным числом единиц, кратным числом нулей, подстрокой 111, отсутствием 101 и т. п.

  1. Постройте сеть по IP и маске.
  2. Определите, входят ли в подсчёт адрес сети и broadcast.
  3. Для каждого адреса получите 32-битную строку.
  4. Проверьте условие и увеличьте счётчик.
  5. Сверьте ответ с ручной оценкой по свободным битам.

Пример

Сеть 192.168.32.128/26. Адресов 64, чётное количество единиц у 32 адресов. В задаче № 11772 в сети 165.44.96.0/21 три подряд идущие единицы встречаются у 1121 адреса.

from ipaddress import ip_network

net = ip_network('192.168.32.128/255.255.255.192', strict=False)
count = 0
for ip in net:
    binary = f'{int(ip):032b}'
    if binary.count('1') % 2 == 0:
        count += 1
print(count)

Ответ32.

По мотивам задач № 11772, 12922, 14948 и 18061 (база Kompege).

09

перед записью ответа

Проверка и типичные ловушки

Когда использовать: Ответ уже получен, но нужно быстро найти обидную ошибку.

  • Маска допустима? 255.255.200.0 — нет: после нулей не может идти единица.
  • Сеть или broadcast? В задачах спрашивают разные адреса одного блока.
  • Хосты или все адреса? Для хостов вычитают 2.
  • Для количества нулей используйте 32-битную запись: f'{int(ip):032b}'.
  • net.hosts() не включает адрес сети и broadcast, а цикл for ip in net включает.
  • ip_network(...) по умолчанию требует строгую сеть; используйте strict=False или второй аргумент 0.
  • f'{ip:b}' отбрасывает ведущие нули — для подсчёта нулей это ошибка.
  • A в маске и A в IP проверяются по-разному.
  • Сумма октетов — это четыре числа, включая нули.
  • Проверьте ответ обратным счётом: сеть + broadcast + хосты.

Шпаргалка: формулировка → метод

В условииЧто делать
«найдите адрес сети»IP & маска или счёт по блоку
«сумма октетов адреса сети»найти сеть и сложить четыре октета
«широковещательный адрес»все биты хоста заменить на единицы
«наибольший адрес для компьютера»broadcast − 1
«наименьший адрес узла»network + 1
«количество хостов»2^(32−n) − 2
«количество IP-адресов в сети»2^(32−n)
«маска по IP и адресу сети»префиксы от n_min до n_max
«наименьшее/наибольшее число единиц в маске»минимальный/максимальный префикс
«чему равен байт маски»соответствующий октет найденной маски
«сколько различных масок»n_max − n_min + 1
«два узла в разных подсетях»первый различающийся бит; префикс не меньше его позиции
«неизвестный октет A»перебрать A, построить сеть, проверить все адреса
«чётное/нечётное число единиц или нулей»32-битная строка и count('1') / count('0')
«подряд идущие единицы или нули»поиск подстроки в 32-битной строке
«сколько адресов с условием»цикл по сети и счётчик
«узел и маска»ip_network(..., strict=False)
«сеть и broadcast»network_address и broadcast_address

По базе Kompege: в нумерации до 2027 года тема масок хранилась под № 13 — 1 009 задач, 115 решений и 160 видеоразборов; новые задачи с широковещательными адресами уже отмечены № 10. Для методов отобраны решения задач № 10110, 11232, 11621, 11764, 11765, 11835, 12922, 13885, 14649, 14650, 14948, 16260, 18061, 31185, 31221, 31246, 31331, 31359, 31379, 31446 и 31507; примеры переработаны в учебные.

Разборы из видео

Задачи, которые разбирают в курсе

Условия и код показаны в кадре в конце соответствующего фрагмента. Источники задач — КомпЕГЭ, сайт К. Полякова, ФИПИ и другие.

№ 9134

разбор из видео · 2027

IP-адрес сети и сумма октетов

Сеть задана IP-адресом 64.237.228.143 и маской 255.255.248.0. Найдите IP-адрес сети и запишите сумму числовых значений его октетов.

from ipaddress import *
net = ip_network('64.237.228.143/255.255.248.0', 0)
print(net[0])

Ответ525

Полный архив

Все фрагменты видеоразборов

По одному пункту на каждую главу: условие или код из кадра, ответ и ссылка. Источники задач — КомпЕГЭ, сайт К. Полякова, ФИПИ и другие; номер берётся из кадра. Текст с экрана распознан автоматически, служебные строки и артефакты удалены; если текст нечитаем, остаются название, таймкод и ссылка.

Показать все фрагменты (18)
2027 · 00:00 Приветствие

В этом фрагменте — теория или пояснение; решение показано в видео.

2027 · 03:35 Немного теории

В этом фрагменте — теория или пояснение; решение показано в видео.

2027 · 18:05 Адрес Сети

двоичное число, которое показывает, какая часть ТР-адреса узла сети относится к адресу сети, а какая - к адресу узла в этой сети, Адрес сети получается в результате применения поразрядной коньюнкиии к заданному адресу узла его маске. Широковещательным адресом называется специализированный адрес, в котором на месте нулей в маске стоят единииы. Адрес сети и широковещательный адрес не могут быть использованы для адресапии сетевых устройств/Сеть задана ГР-адресом одного из входяших в неё узлов 64.237.228.143 и сетевой маской 255.255.248.0, Найдите IP-aapec сети. В ответе укажите сумму числовых значений октетов найденного IP- "адреса. Например, если бы найденный адрес был равен 100.20.3.4, то B о

from ipaddress import *
net = ip_network( '64.237.228.143/255.255.248.0',0)
2027 · 26:10 Широковещательный адрес

двоичное число, которое показывает, какая часть ГР-адреса узла сети относится к адресу сети, а какая — к адресу узла в этой сети. Например, если бы найденный адрес был равен 111.22.3.44, 10 "следовало бы записать: (№ 8614) В терминологии сетей ТСР/IP маской сети называют двоичное число, которое показывает, какая часть IP-asipeca узла сети относится к адресу сети, а какая — к адресу узла в этой сети. Сеть залана ГР-адресом одного из входяших неё узлов 126.200.136.14 и сетевой маской 255.255.240.0. компьютеру, такой что число единии в двоич

2027 · 28:05 Max IP адрес узла

„двоичное число, которое показывает, какая часть ГР-адреса узла сети адресом одного из входящих в не узлов 191.128.66.83 1 сетевой маской Найдите в данной сети наибольший 1Р-адрес, который может радделителей. Например, если бы найденный адрес был равен 111.22.3.44, 10 "следовало бы записать:

from ipaddress import *
print(net[-2])
2027 · 31:25 Min IP адрес узла 3612

„двоичное число, которое показывает, какая часть ГР-адреса узла сети относится к адресу сети, a какая — к адресу узла в этой сети. Сеть залана IP- адресом одного из входящих в не узлов 191.128.66.83 п сетевой маской Найдите в данной сети наибольший IP-axpec, который может "быть назначен компьютеру. В ответе укажите найденный ГР-адрес без разделителей. Например, если бы найденный адрес был равен 111.22.3.44, то "следовало бы записать:

from ipaddress import * ty
print(net[-2])
from ipaddress import *
2027 · 33:20 Max число единиц в маске 8915

число, которое показывает, какая часть ТР-адреса узла сети относится к адресу сети, a какая — к адресу узла в этой сети. Шпроковещательным адресом называется специальный адрес, в котором на месте нулевых битов в маске стоят единицы. Для узла с ТР-адресом 195.154.162.96 адрес сети равен Определите наибольшее возможное количество единии в

from ipaddress import *
for mask in range(33):
net = ip_network(f'195.154.162.96/{mask}',0)
if str(net[0])=='195.154.162.0':
print(net)
2027 · 39:15 Min число единиц в маске

двоичное число, которое показывает, какая часть ТР-адреса узла сети относится к адресу сети, a какая - к адресу узла в этой сети, Адрес сети получается в результате применения поразрядной коньюнкиии к заданному Чему равно наименьшее возможное значение последнего (самого Ишимов) В терминологии сетей ТСР/IP маской сети называют относится к адресу сети, а какая - к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной коньюнкиии к заданному адресу узла и маске сети. Сеть задана ТР-адресом 124.8.0.0 и маской сети Определите максимальное количество нулей в двоичной записи

2027 · 40:35 Min байт маски
from ipaddress import *
for mask in range(33):
net = ip_network(f'111.7.92.52/{mask}',0)
if str(net[])=='111.7.92.32':
print(net.netmask)
2027 · 45:05 Max число нулей в маске 7037
from ipaddress import *
for mask in range(33):
net = ip_network(f'111.7.92.52/{mask}',0)
print(net.netmask)
2027 · 49:45 Число подходящих значений маски 1177
for mask in range(33):
net = ip_network(f'251.211.38.240/{mask}',0)
2027 · 50:45 Max число адресов в Сети 1057

В терминологии сетей ТСР/IP маской сети называют двоичное число, которое к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла и маске сети. Два узла, находящиеся в одной сети, имеют IP-agpeca 165.112.200.70 и Найдите наибольшее возможное количество единиц в "двоичной записи маски подсети. Базовый) °K к адресу узла в этой сети. Два узла, находящиеся в разных подсетях, имеют IP-anpeca 10.96.180.231 и Найдите наибольшее возможное количество нулей в двоичной записи маски

2027 · 56:45 Два узла в одной Сети 1057

В терминологии сетей ТСР/IP маской сети называют двоичное число, которое: к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла и маске сети. Два узла, находящиеся в одной сети, имеют IP-agpeca 165.112.200.70 и.80, Найдите наибольшее возможное количество единиц в двоичной записи маски подсети.

from ipaddress import *
for mask in range(33):
neti = ip_network(f'165.112.200.70/{mask}' ,0)
net2 = ip_network(f'165.112.175.80/{mask}',0)
print(mask)
2027 · 59:40 Два узла в разных Сетях 10577

В терминологии сетей ТСРЛР маской сети называют двоичное число, которое показывает, какая часть 1Р-адреса узла сети относится к адресу сети, а какая - к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла и маске сети. Два узла, находящиеся в одной сети, имеют IP-agpeca 165.112.200.70 и Найдите наибольшее возможное количество единиц в двоичной записи маски подсети.

if neti==net2:
print(mask)
2027 · 1:01:15 Перебор IP адресов I

В этом фрагменте — теория или пояснение; решение показано в видео.

2027 · 1:05:45 Перебор IP адресов II

называют двоичное число, которое показывает, какая часть ГР-адреса узла сети относится к адресу сети, а какая - кадресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкиии к заданному узла маске сети. Сеть задана ГР-адресом 172.16.96.0 и маской сети Сколько в этой сети IP-apecos, для которых количество единиц в их двоичной записи кратно 2? В ответе укажите только число.

from ipaddress import *
net = ip_network('172.16.96.0/255.255.224.0',0)
for ip in net:
b = f'{ip:b}'
print(k)
2027 · 1:06:35 Перебор IP адресов III 7610

двоичное число, которое показывает, какая часть ТР-адреса узла сети относится к адресу сети, а какая — к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла п ero маске. Сеть задана ГР-адресом 94.253.128.0 и сетевой Сколько в этой сети ТР-адресов, для которых количество единии в двоичной записи ТР-адреса не кратно 6, а сама двоичная запись оканчивается на 101?

net = ip_network( '94.253.128.0/255.255.128.0',0)
for ip in net:
print(k)
2027 · 1:08:20 Окончание и напутствие 7610

двоичное число, которое показывает, какая часть IP-aupeca узла сети относится к адресу сети, а какая — к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкции к заданному Сколько в этой сети ГР-адресов, для которых количество единии в двоичной записи 1Р-адреса не кратно 6, а сама двоичная запись оканчивается на 101?

from ipaddress import *
net = ip_network( '94.253.128.0/255.255.128.0',0)
for ip in net:
print(k)

Типичные ошибки

  • путаются адрес сети и broadcast
  • неверное число бит маски
  • ошибка в двоичном переводе
  • забыто вычитание двух адресов
  • количество адресов путают с количеством хостов
  • при подсчёте нулей теряются ведущие нули октета
  • маска восстанавливается только одним значением, хотя возможны несколько
  • адрес сети и broadcast включаются в число назначаемых адресов

Ключевые формулы

  • адрес сети = IP & маска
  • broadcast = network + 2^(32−n) − 1
  • адресов = 2^(32−n), хостов = 2^(32−n) − 2
  • маска: n единиц, затем 32 − n нулей

Практика

Навигатор и методические рекомендации опубликованы в 2026 году: номера заданий в них могут отличаться от нумерации 2027 года. Ориентируйтесь на тему.