В терминологии сетей TCP/IP маской сети называется двоичное число, определяющее, какая часть IP-адреса узла сети относится к адресу сети, а какая — к адресу самого узла в этой сети. Обычно маска записывается по тем же правилам, что и IP-адрес. Адрес сети получается в результате применения поразрядной конъюнкции к заданному IP-адресу узла и маске.
По заданным IP-адресу узла и маске определите адрес сети.
IP-адрес узла: 224.37.249.32
Маска: 255.255.224.0
При записи ответа выберите из приведенных в таблице чисел четыре элемента IP-адреса и запишите в нужном порядке соответствующие им буквы, без использования точек.
| A | B | C | D | E | F | G | H |
| 255 | 249 | 240 | 224 | 37 | 32 | 8 | 0 |
Пример.
Пусть искомый IP-адрес 192.168.128.0 и дана таблица:
| A | B | C | D | E | F | G | H |
| 128 | 168 | 255 | 8 | 127 | 0 | 17 | 192 |
В этом случае правильный ответ будет записан в виде: HBAF.
1. Запишем числа маски сети в двоичной системе счисления:
2. Адрес сети получается в результате поразрядной конъюнкции чисел маски и чисел адреса узла (в двоичном коде). Поскольку конъюнкция
3. Рассмотрим конъюнкцию
Результатом конъюнкции является
4. Сопоставим варианты ответа получившимся числам 224, 37, 224, 0: DEDH.
Ответ: DEDH.
Приведём решение Ильи Андрианова на языке Python.
from ipaddress import *
net = ip_network('224.37.249.32/255.255.224.0', 0)
print(net)

