13. Организация компьютерных сетей. Адресация: #292139
В терминологии сетей TCP/IP маской сети называется двоичное число, определяющее, какая часть IP-адреса узла сети относится к адресу сети, а какая – к адресу самого узла в этой сети. Обычно маска записывается по тем же правилам, что и IP-адрес, – в виде четырёх байтов, причём каждый байт записывается в виде десятичного числа. При этом в маске сначала (в старших разрядах) стоят единицы, а затем с некоторого разряда – нули. Адрес сети получается в результате применения поразрядной конъюнкции к заданному IP-адресу узла и маске.
Например, если IP-адрес узла равен $231.32.255.131$, а маска равна $255.255.240.0$, то адрес сети равен $231.32.240.0$.
Для узла с IP-адресом $127.220.170.23$ адрес сети равен $127.220.168.0$. Каково наименьшее возможное количество единиц в разрядах маски?
Рассмотрим третьи байты IP-адреса и адреса сети:
- $170_{10}=10101010_2$;
- $168_{10}=10101000_2$.
Поскольку третий байт адреса сети не равен нулю, первые два байта маски полностью состоят из единиц. Это уже $16$ единиц.
Адрес сети получается поразрядной конъюнкцией: $170\mathbin{\&}M=168$, где $M$ – третий байт маски.
Байт маски должен состоять сначала из единиц, затем из нулей. Проверим наименьшие подходящие значения:
- $10101010_2\mathbin{\&}11110000_2=10100000_2=160$ – не подходит;
- $10101010_2\mathbin{\&}11111000_2=10101000_2=168$ – подходит.
Третий байт маски равен $11111000_2$, поэтому в нём $5$ единиц.
Общее количество единиц в маске: $16+5=21$.