Маской подсети называется 32-разрядное двоичное число, которое определяет, какая часть IP-адреса компьютера относится к адресу сети, а какая часть IP-адреса определяет адрес компьютера в подсети. В маске подсети старшие биты, отведенные в IP-адресе компьютера для адреса сети, имеют
Если маска подсети 255.255.255.192 и IP-адрес компьютера в сети 10.18.134.220, то номер компьютера в сети
1. Поскольку первые три октета (октет — число маски, содержит
2. Запишем
3. Запишем последний октет IP-адреса компьютера в сети:
4. Сопоставим последний октет маски и адреса компьютера в сети:
11000000,
11011100.
Жирным выделена нужная нам часть. Переведем её в десятичную систему счисления:
Ответ: 28.
Приведём решение Данила Шарлова на языке Python.
from ipaddress import ip_network, ip_address
ip = '10.18.134.220'
mask = '255.255.255.192'
net = ip_network(f'{ip}/{mask}',0)
print(int(ip_address(ip))-int(net.network_address))

