Не до смеха: IP-адреса APIPA могут замедлить работу вашей сети

Опубликовано: 18 Марта, 2023
Не до смеха: IP-адреса APIPA могут замедлить работу вашей сети

Вы знаете эти забавные IP-адреса, начинающиеся с 169.254, которые вы время от времени видите в системах или в DNS? У них есть еще более забавное название — APIPA, что означает автоматическая частная IP-адресация. И хотя они могут показаться забавными и безобидными, на самом деле они могут вызывать проблемы в вашей сети, начиная от задержки входа в систему и заканчивая периодическими сбоями. Скорее всего, у вас есть по крайней мере некоторые из них в вашей сети, вызывающие проблемы у ваших пользователей. В этом посте мы рассмотрим, что на самом деле представляет собой IP-адрес APIPA, для чего он предназначен, почему это происходит в вашей сети и что вы можете с этим поделать.

Что такое АПИПА?

IETF зарезервировала блок адресов IPv4 169.254.0.0/16 для использования для назначения IP-адресов локального канала и кодифицировала это в RFC 3927. Они также охватывают локальную адресацию IPv6 в RFC 2462 и выделили fe80::/64. подсеть к этому, но это не используется для APIPA.

Почему существует APIPA?

Microsoft включила поддержку APIPA в свои операционные системы, начиная с Windows 98, с благородным намерением предоставить системам возможность взаимодействовать друг с другом в локальной сети, когда таких служб, как DHCP, не существовало. У Microsoft есть статья базы знаний 220874, в которой определены три случая, когда APIPA может быть полезен.

  1. Нет предыдущего IP-адреса и нет DHCP-сервера
  2. Предыдущий IP-адрес и отсутствие DHCP-сервера
  3. Срок аренды истекает, а DHCP-сервер отсутствует

Любой хост Windows сегодня автоматически предоставит адрес APIPA, если верно следующее.

  • Работает служба DHCP-клиента, которая является настройкой по умолчанию и также необходима для динамической регистрации в DNS.
  • Сетевая карта имеет ссылку, но не имеет статически настроенного IP-адреса.
  • Широковещательные рассылки DHCP Discover не получают ответа.

Когда это произойдет, операционная система выберет случайный IPv4-адрес в диапазоне 169.254.0.0/16, ARP, и если она не получит ответа на запрос ARP, предоставит это на соответствующей сетевой карте. Если операционная система имеет другую сетевую карту, связанную с действительной информацией, и все остальные значения по умолчанию установлены, она зарегистрирует не только свой действительный адрес, но и адрес APIPA в DNS.

Что хорошего в этом?

Честно? Помимо лабораторий, специально предназначенных для обучения APIPA, я реализовал его только один раз, еще в 2000 году, для полевой станции, у которой было несколько машин в рабочей группе и не было никаких сетевых ресурсов, кроме машины с общим подключением к Интернету. Без сервера казалось приемлемым способом позволить машинам подключаться друг к другу и обнаруживать прокси через WPAD. Меньше чем через год я установил сервер со службами DHCP, службами DNS, файлами и принтерами и многим другим. Я никогда не видел, чтобы это было реализовано где-либо еще преднамеренно и с хорошим эффектом. Но если у вас есть, пожалуйста, оставьте комментарий ниже и поделитесь некоторыми знаниями!

Почему это происходит со мной?

АПИПА? В моей сети? Это более вероятно, чем вы думаете. Задайте себе следующие вопросы.

  1. У моих серверов несколько сетевых карт?
  2. Подключает ли команда моего центра обработки данных мои серверы к своим коммутаторам?
  3. Есть ли какая-нибудь VLAN, в которой я не запускаю DHCP?
  4. Поддерживает ли мой DNS динамические обновления?

Если вы ответили утвердительно на все четыре вопроса, то, вероятно, у вас есть системы, которые не только имеют адреса APIPA, но и зарегистрировали их в DNS. А это означает, что при циклическом переборе DNS клиент иногда пытается подключиться к полностью недостижимому адресу 169.254.yz, и эта попытка подключения должна истечь по времени, прежде чем он попытается ввести действительный IP-адрес..адрес Чем больше ресурсов, таких как контроллеры домена, у вас есть для регистрации адресов APIPA, тем чаще это может происходить. И, по крайней мере, время от времени клиент будет получать несколько APIPA в ответе DNS, прежде чем он получит действительный адрес, из-за чего любое требуемое соединение будет занимать еще больше времени.

Когда дело доходит до функций, связанных с AD, клиенты, чей IP-адрес связан с сайтом Active Directory, никогда не увидят в этом проблемы, поскольку 169.254/16 не будет связан с сайтом. Но клиенты в подсетях, не связанных с сайтом, скорее всего, получат адрес APIPA в ответ на запрос контроллера домена, что приведет к задержкам при входе в систему, обработке сценариев входа, обработке объектов групповой политики и т. д. И кто из нас может утверждать, что ВСЕ IP-подсети, используемые в нашей сети, связаны с действительным сайтом AD? Действия, не зависящие от сайта, такие как подключение к общим ресурсам или подключенным дискам, одинаково влияют на всех, причем вероятность зависит от количества имен, зарегистрированных в DNS. Один сервер по имени с одним хорошим сетевым адаптером и одним сетевым адаптером APIPA будет регистрировать каждый IP-адрес в DNS, поэтому клиенты будут пытаться использовать адрес APIPA в половине случаев. В конце концов они потерпят неудачу и попробуют другой вариант, так что это будет проявляться в том, что все будет «медленно», а не неправильно сконфигурировано.

Что я должен делать?

Изображение 4575 Во-первых, посмотрите в DNS, есть ли у вас зарегистрированные адреса 169.254/16. Если вы это сделаете, вы должны сначала устранить источник регистрации APIPA, а затем удалить недействительную запись из DNS. Как вы можете устранить это? Один из следующих должен работать, в зависимости от ваших потребностей.

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

Разрушит ли APIPA вашу сеть? Нет, конечно нет. Приведет ли это к периодическим проблемам и общему ощущению медлительности? Абсолютно. Следует ли вам заняться этим вопросом? Еще бы! С приведенной выше информацией и имеющимися у вас вариантами это должно быть легко исправить, и все улучшится.

Иди, сделай это!

, Barcex