№10 · решено
Адрес сети
В терминологии сетей TCP/IP маской сети называют двоичное число, которое показывает, какая часть IP-адреса узла сети относится к адресу сети, а какая – к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла и его маске. Даны адрес узла 192.168.159.86 и маска 255.255.252.0. Найдите адрес сети. В ответе укажите сумму числовых значений октетов найденного IP-адреса. Например, если бы найденный адрес был равен 100.20.3.4, то в ответе следовало бы записать: 127.
Источник: ФИПИ (Демо), № 31507
Ответвпиши то, что вывела программа
Показать разбор
- Создай сеть через ip_network по адресу узла и маске. Дан узел, а не адрес сети, поэтому второй аргумент False.
- Адрес сети лежит в net.network_address.
- Сложи четыре числа адреса через sum(ip.packed).
from ipaddress import ip_network
net = ip_network('192.168.159.86/255.255.252.0', False)
ip = net.network_address
print(sum(ip.packed))