Сеть задана IP-адресом одного из входящих в нее узлов 102.162.200.51 и сетевой маской 255.255.255.0.
Найдите в данной сети наибольший IP-адрес, который может быть назначен компьютеру.
В ответе укажите сумму числовых значений октетов найденного IP-адреса.
Например, если бы найденный адрес был равен 100.20.3.4, то в ответе следовало бы записать: 127.
В терминологии сетей TCP/IP маской сети называют двоичное число, которое показывает, какая часть IP-адреса узла сети относится к адресу сети, а какая — к адресу узла в этой сети.
Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла и его маске.
Широковещательным адресом называется специализированный адрес, в котором на месте нулей в маске стоят единицы.
Адрес сети и широковещательный адрес не могут быть использованы для адресации сетевых устройств.
Сеть задана IP-адресом одного из входящих в нее узлов 102.162.200.51 и сетевой маской 255.255.255.0.
Найдите в данной сети наибольший IP-адрес, который может быть назначен компьютеру.
В ответе укажите сумму числовых значений октетов найденного IP-адреса.
Например, если бы найденный адрес был равен 100.20.3.4, то в ответе следовало бы записать: 127.
Решение 1 (ipaddress). Создаём сеть, берём широковещательный адрес минус 1 (наибольший адрес для компьютера), складываем октеты.
import ipaddress
ip = ipaddress.IPv4Address("102.162.200.51")
mask = ipaddress.IPv4Network("102.162.200.51/255.255.255.0", strict=False)
broadcast = mask.broadcast_address
max_ip = ipaddress.IPv4Address(int(broadcast) - 1)
result = sum(int(o) for o in str(max_ip).split("."))
print(result)Наибольший адрес: 102.162.200.254. Сумма октетов: 718.
Поверните телефон
Горизонтальный режим удобнее для таблицы и Python-кода