Задача об IP-адресах и забывчивых сотрудниках

Задача об IP-адресах и забывчивых сотрудниках

Любовь Руденко
Любовь Руденко Системный администратор
4 февраля 2025

Задача для всех, кто увлекается темой сетей и логикой.

Изображение записи

Условие

Руководство компании придумало, как повысить эффективность департамента, и разделило его на отделы поменьше. Так появилось четыре команды: автоматизации, эксплуатации, дебаггинга и общего администрирования.

На еженедельной встрече руководитель рассказал сотрудникам, кто и в какую команду переходит. Но шестеро коллег все забыли: Аркадий, Елисей, Ангелина, Юрий, Яна и Мирон. Они знают только свои новые IP-адреса, записанные на стикерах.

  • 10.41.2.176/29 — Юрий; 
  • 10.10.9.222/29 — Аркадий;
  • 10.10.9.218/29 — Яна;
  • 10.35.87.8/25 — Ангелина;
  • 10.41.2.178/29 — Мирон;
  • 10.10.9.227/29 — Елисей.

Также известно, что в администрировании оказалось два человека, один из которых неправильно записал последнюю цифру своего адреса. В эксплуатацию попали двое, а в дебаге — девушка.

Задача

Помогите определить, в какие команды попали сотрудники компании.

Решение

Для начала возьмем префикс /29, который встречается в большинстве адресов. Он указывает на то, что для сети используются 29 битов. Это означает, что оставшиеся три бита используются для адресации устройств в этой подсети (32 — 29 = 3).

Выясним количество адресов в подсети с этим префиксом. Для расчета нужно использовать формулу 2 в степени 𝑛, где 𝑛 — количество оставшихся битов:

Формула: количество адресов = два в степени n.

Количество адресов будет равно двум в третьей степени, то есть их восемь штук. Первый равен адресу подсети, а последний — широковещательный для данной подсети, он не назначается для ПК. Маска подсети /29 в десятичном формате будет выглядеть так: 255.255.255.248.

Теперь возьмем первое условие нашей задачи: в администрирование попали два человека, один из которых неправильно записал свой адрес. Находим в списке представленных адресов попарно похожие:

  • 10.10.9.222/29 у Аркадия и 10.10.9.218/29 у Яны;
  • 10.41.2.178/2 у Мирона и 10.41.2.176/29 у Юрия. 

Выясняем адрес подсети, в которой находится адрес Аркадия, для этого переписываем его в двоичном коде:


    10.10.9.222 → 00001010.00001010.00001001.11011110

Маска подсети 255.255.255.248 будет такой:


    11111111.11111111.11111111.11111000

Чтобы получить адрес подсети, нужно выполнить побитовую операцию «И» между IP-адресом и сетевой маской:


    00001010.00001010.00001001.11011110 (IP-адрес)

И

11111111.11111111.11111111.11111000 (Сетевая маска)

--------------------------------------------------------

00001010.00001010.00001001.11011000 (Адрес подсети)

Переводим адрес подсети в десятичный формат: 10.10.9.216.

Первый адрес 10.10.9.216, а 10.10.9.223 — последний (широковещательный). В диапазон 10.10.9.216–10.10.9.223 подсети 10.10.9.216/24 попадают адреса Аркадия (10.10.9.222/29) и Яны (10.10.9.218/29). Они оба верны, значит, ребята попали в команду эксплуатации.

Переходим к Мирону — 10.41.2.178/29. Повторяем те же действия, чтобы узнать адрес его подсети, и получаем 10.41.2.176/29.

Значение совпадает с адресом Юрия (10.41.2.176/29) — значит, молодой человек ошибся. Из условия мы знаем, что в администрирование попали два человека, один из которых неправильно записал последнюю цифру своего адреса. Все совпадает: получается, в этой команде работают Юрий и Мирон.

Остались Елисей и Ангелина, команда дебага и команда автоматизации. Мы знаем, что в дебаггинг попала девушка, значит, это Ангелина. Получается, Елисей перешел в автоматизацию.

Ответ

  • Юрий и Мирон — администрирование;
  • Аркадий и Яна — эксплуатация;
  • Ангелина — команда дебаггинга;
  • Елисей — автоматизация.

Другие задачи про сети