Алгоритм решения задания 14. Часть 1
Учимся решать 15 задания первого типа
Читать
Для узла с IP-адресом 44.44.229.28 адрес сети равен 44.44.224.0. Каково наибольшее значение единиц в разрядах маски?
Правильный ответ:
21
from ipaddress import ip_network, ip_address
ip_net = ip_address('44.44.224.0')
ip_host = ip_address('44.44.229.28')
prefixlen = []
for mask in range(17, 32):
net = ip_network(f'{ip_host}/{mask}', False)
if ip_host in net.hosts() and net.network_address == ip_net:
prefixlen.append(net.prefixlen)
print(max(prefixlen))
