(А. Михайлов) В терминологии сетей TCP/IP маской сети называют двоичное число, которое показывает, какая часть IP-адреса узла сети относится к адресу сети, а какая – к адресу узла в этой сети.
Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла и маске сети.
Для узла с IP-адресом 145.92.137.200 адрес сети равен 145.92.137.192.
Чему равно наибольшее значение суммы третьего и четвёртого слева байтов маски?
Например, если бы найденный адрес маски был равен 255.255.255.128, то в ответе следовало бы записать 383.
📌 IP узла 145.92.137.200, адрес сети 145.92.137.192.
from ipaddress import ip_address, ip_network
host = ip_address('145.92.137.200')
base = ip_address('145.92.137.192')
ans = 0
for m in range(33):
cur = ip_network(f'{host}/{m}', 0)
if cur.network_address == base:
octets = [int(x) for x in str(cur.netmask).split('.')]
ans = max(ans, octets[2] + octets[3])
print(ans)
📌 Оставляем маски с нужным network_address; лучшая — 255.255.255.240.
📌 Максимум суммы 3-го и 4-го октетов = 495.
Поверните телефон
Горизонтальный режим удобнее для таблицы и Python-кода