Все задачи №10
№10

Два узла в одной сети

Узлы с IP-адресами 10.20.133.17 и 10.20.141.200 находятся в одной сети. Каково наибольшее возможное количество единиц в маске этой сети?

Учебная задача

Ответвпиши то, что вывела программа
Показать разбор
  1. Перебери число единиц в маске m от 0 до 32.
  2. Для каждого m построй сети обоих узлов с аргументом False.
  3. Если сети совпали, запомни m.
  4. Чем длиннее маска, тем труднее узлам быть в одной сети, поэтому ответ это последний подошедший m.
from ipaddress import ip_network

a, b = '10.20.133.17', '10.20.141.200'
for m in range(0, 33):
    n1 = ip_network(f'{a}/{m}', False)
    n2 = ip_network(f'{b}/{m}', False)
    if n1 == n2:
        last_same = m
print(last_same)