Какое максимальное количество единиц может быть в масках двух подсетей, если два узла имеют IP-адреса 156.77.32.127

  • 23
Какое максимальное количество единиц может быть в масках двух подсетей, если два узла имеют IP-адреса 156.77.32.127 и 156.77.117.78, и количество единиц в масках обоих подсетей одинаково? Пожалуйста, объясните метод решения этого задания. Я понимаю, что биты 117 - 01110101 и 32 - 001, следовательно маска - 11. Но что делать дальше? 8 * 2 + 2 = 18 не подходит. Зачем нам дано последнее предложение про зарезервированные адреса, если мы ищем маску?
Морской_Капитан
57
Давайте разберемся с пошаговым решением этой задачи. Первым шагом является определение количества бит, которые должны быть закрыты в маске подсети, чтобы оба IP-адреса попали в одну и ту же подсеть.

В вашем примере IP-адреса равны 156.77.32.127 и 156.77.117.78. Чтобы узлы находились в одной подсети, биты адресов, начиная с самого левого, должны совпадать.

Давайте сконвертируем IP-адреса в двоичную систему. 156 становится 10011100, 77 - 01001101, 32 - 00100000, а 117 - 01110101. Получим следующее:

156.77.32.127 : 10011100.01001101.00100000.01111111
156.77.117.78 : 10011100.01001101.01110101.01001110

Теперь посмотрим на биты последовательно. Первые два байта (10011100.01001101) у обоих адресов совпадают. Первый бит третьего байта отличается (00100000 и 01110101). И в последнем байте (01111111 и 01001110) также есть отличия.

На этом этапе мы можем сделать вывод, что количество единиц в масках обоих подсетей должно быть не меньше, чем количество битов, совпадающих у обоих адресов с самого левого разряда. В данном случае это 16 битов (2 байта) - два самых левых байта.

Теперь остается определить максимальное количество единиц, которое может быть в масках подсетей. Если мы представим маску в виде строки из битов, то каждое единичное значение будет "закрывать" (совпадать) с соответствующим битом IP-адреса, а каждый нулевой бит будет "открыт" (отличаться).

Давайте приведем список возможных комбинаций для 16 битов:

0000000000000000
1000000000000000
1100000000000000
1110000000000000
...

И так далее, увеличивая количество единиц на одну единицу. Когда мы достигнем комбинации, имеющей 16 единиц, это будет нашей максимальной маской подсети.

Теперь вернемся к последнему предложению про зарезервированные адреса. Зарезервированные адреса - это определенные диапазоны IP-адресов, которые не могут использоваться для адресации компьютеров в сети. Хотя в задаче не требуется использовать зарезервированные адреса, это предложение может быть полезным напоминанием о том, что в IP-адресах есть определенные ограничения.

Итак, чтобы ответить на ваш вопрос, максимальное количество единиц в масках двух подсетей будет равно 16.