Что такое маска подсети (subnet mask) и зачем это нужно знать QA-инженеру?

«Что такое маска подсети (subnet mask) и зачем это нужно знать QA-инженеру?» — вопрос из категории Сети, который задают на 24% собеседований AQA / Automation. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Маска подсети — это 32-битное число (для IPv4), которое определяет, какая часть IP-адреса идентифицирует сеть, а какая — конкретное устройство (хост) внутри этой сети. Она "маскирует" сетевую часть адреса.

Зачем это QA? Понимание основ сетей, включая маски подсетей, необходимо для:

  1. Тестирования сетевых функций приложения: настройка доступа по IP, работа с firewall правилами.
  2. Расследования проблем с подключением: понимание, находятся ли тестовые стенды, серверы и рабочие станции в одной сети или разных.
  3. Работы с виртуальными и изолированными тестовыми окружениями, которые часто используют специфические диапазоны IP-адресов.
  4. Настройки и диагностики тестовой инфраструктуры, например, при конфигурации виртуальных машин или контейнеров.

Простой пример:

  • IP-адрес устройства: 192.168.1.10
  • Маска подсети: 255.255.255.0 (или /24 в префиксной записи CIDR).
  • Сетевая часть (определяется единицами в маске): 192.168.1.
  • Хостовая часть (определяется нулями в маске): .10.

Все устройства с IP-адресами 192.168.1.1192.168.1.254 принадлежат одной подсети и могут общаться напрямую на канальном уровне (при прочих равных).

Практический кейс для QA: При тестировании функционала, который ограничивает доступ только для IP-адресов офиса (например, 192.168.10.0/24), QA должен проверить:

  • Позитивный сценарий: доступ с адреса внутри диапазона (например, 192.168.10.50).
  • Негативный сценарий: доступ с адреса вне диапазона (например, 192.168.20.5). Для этого может потребоваться настройка VPN или использование прокси с другим IP.