Поделиться через


Руководство по устранению неполадок DHCP

Попробуйте наш виртуальный агент . Это поможет вам быстро определить и устранить распространенные проблемы DHCP.

Чтобы иметь возможность работать в сети, устройствам необходимо назначить IP-адрес. Его можно назначить вручную или автоматически. Автоматическое назначение обрабатывается службой Протокола конфигурации динамических узлов (DHCP) (Майкрософт или сторонним сервером).

DHCP — это стандартный протокол, определенный RFC 1541 (который заменяет RFC 2131). DHCP позволяет серверу динамически распределять IP-адреса и сведения о конфигурации клиентам. Как правило, DHCP-сервер предоставляет клиенту по крайней мере следующие основные сведения:

  • IP-адрес
  • Маска подсети
  • Шлюз по умолчанию
  • Другие сведения, такие как адреса серверов службы доменных имен (DNS) и адреса серверов WINS (Windows Internet Name Service). Системный администратор настраивает DHCP-сервер с помощью параметров, которые анализируются в клиенте.

Дополнительные сведения см. в статье Основные сведения о DHCP.

Контрольный список по устранению неполадок

Прежде чем приступить к устранению неполадок, проверьте следующие элементы. Эти элементы помогут найти первопричину проблемы.

  • Когда появилась проблема?
  • Есть ли сообщения об ошибках?
  • Работал ли ранее DHCP-сервер или никогда не работал? Если это работало ранее, все изменилось до начала проблемы. Например, было установлено обновление? Были ли изменения в инфраструктуре?
  • Является ли проблема постоянной или периодический? Если это периодически, когда это произошло в последний раз?
  • Возникают ли сбои аренды адресов для всех клиентов или только для конкретных клиентов, таких как подсеть с одной областью?
  • Есть ли клиенты в той же подсети сети, что и DHCP-сервер?
  • Если клиенты находятся в одной подсети сети, они могут получить IP-адреса?
  • Если клиенты не находятся в той же подсети сети, правильно ли настроены маршрутизаторы или коммутаторы виртуальной локальной сети для использования агентов ретранслятора DHCP (также известных как вспомогательные IP-адреса)?
  • Является ли автономный DHCP-сервер или настроен ли он для обеспечения высокой доступности, например разделения области или отработки отказа DHCP?
  • Проверьте промежуточные устройства на наличие таких функций, как VRRP/HSRP, динамическая проверка ARP или dhcp-snooping, которые, как известно, вызывают проблемы.

Устранение неполадок DHCP-серверов

Для DHCP-серверов проверьте следующие устройства и параметры:

  • Служба DHCP-сервера запущена и работает. Чтобы проверить это, выполните команду net start и найдите DHCP-сервер.
  • DHCP-сервер является полномочным. См. статью Авторизация DHCP-сервера Windows в сценарии присоединения к домену.
  • Убедитесь, что аренда IP-адресов доступна в области DHCP-сервера для подсети, в которой находится DHCP-клиент. Для этого см. статистику для соответствующей области в консоли управления DHCP-сервером.
  • Проверьте, можно ли найти список BAD_ADDRESS в разделе "Аренды адресов".
  • Проверьте, имеют ли устройства в сети статические IP-адреса, которые не были исключены из области DHCP.
  • Убедитесь, что IP-адрес, с которым связан DHCP-сервер, находится в подсети областей, из которых должны быть арендованы IP-адреса. Это происходит, если агент ретрансляции недоступен. Для этого выполните командлет Get-DhcpServerv4Binding или Get-DhcpServerv6Binding.
  • Убедитесь, что только DHCP-сервер прослушивает порт UDP 67 и 68. Никакие другие процессы и другие службы (такие как WDS или PXE) не должны занимать эти порты. Для этого выполните следующую командуnetstat -anb.
  • Если вы работаете со средой, развернутой по протоколу IPsec, убедитесь, что добавлено исключение IPsec-сервера.
  • Убедитесь, что IP-адрес агента ретранслятора можно проверить с DHCP-сервера.
  • Перечисление и проверка настроенных политик и фильтров DHCP.

Устранение неполадок с DHCP-клиентами

Для DHCP-серверов проверьте следующие устройства и параметры:

  • Кабели подключены и работают.
  • Фильтрация MAC включена для коммутаторов, к которым подключен клиент.
  • Сетевой адаптер включен.
  • Установлен и обновлен правильный драйвер сетевого адаптера.
  • Служба DHCP-клиента запущена и работает. Чтобы проверить это, выполните команду net start и найдите DHCP-клиент.
  • На клиентском компьютере нет портов блокировки брандмауэра 67 и 68.

Использование сетевого трассирования для устранения неполадок DHCP

После подтверждения параметров на dhcp-клиенте и сервере можно использовать Wireshark, чтобы проверить, успешно ли выполнен процесс DHCP DORA или если какие-либо удаления пакетов не позволяют DHCP-клиентам получать IP-адрес с сервера.

Действия по сбору трассировки сети

Чтобы устранить неполадки DHCP с помощью трассировок сети, выполните следующие действия.

  1. Установите Wireshark как на затронутом DHCP-клиенте, так и на DHCP-сервере.

  2. Запустите Wireshark от имени администратора как на клиенте, так и на сервере.

  3. Выберите сетевой интерфейс, используемый для DHCP на обоих устройствах, дважды щелкнув их в Wireshark.

  4. Запустите запись пакетов с помощью Wireshark как на клиенте, так и на сервере.

  5. Воспроизведите проблему. Активируйте проблему DHCP (например, запустите ipconfig /renew на клиенте). Дождитесь возникновения сценария сбоя.

  6. Остановите запись пакетов на обоих устройствах с помощью красной кнопки в Wireshark.

    Остановить захват Wireshark.

  7. Сохраните захваченные пакеты в указанном расположении, выбрав "Сохранить файл>как".

  8. Примените фильтр DHCP для просмотра транзакций DHCP:

    • При захвате клиента примените фильтр отображения для dhcp.

    • В записи сервера используйте фильтр "dhcp.id == <идентификатор> транзакции" для отслеживания конкретной клиентской транзакции. Идентификатор транзакции можно получить из записи на стороне клиента и применить его в фильтре на стороне сервера.

      Идентификатор транзакции из записи на стороне клиента.

  9. Анализ транзакций DHCP:

    • Проверьте запись на стороне клиента для всех четырех пакетов DHCP (DISCOVER, OFFER, REQUEST, ACK). Если все присутствует, процесс DORA, скорее всего, успешно выполнен.
    • Если отсутствуют какие-либо пакеты (например, отображаются только пакеты DISCOVER), это указывает на потенциальное падение.
  10. Определение сетевых падений. Найдите эти индикаторы падения сети:

    • Запись клиента показывает пакеты DISCOVER, но запись сервера не выполняется.
    • Запись клиента показывает пакеты DISCOVER и сервер, где отображается предложение, отправленное, но на клиенте не отображается ПРЕДЛОЖЕНИЕ.
    • Запись клиента показывает DISCOVER, OFFER и REQUEST, но сервер отображает только ОБНАРУЖЕНИЕ и ПРЕДЛОЖЕНИЕ.
    • Запись клиента показывает DISCOVER, OFFER и REQUEST, но сервер показывает все четыре пакета завершены (DISCOVER, OFFER, REQUEST, ACK) без ACK, который не отображается на клиенте.
  11. После подтверждения удаления включайте группу сети для изучения и устранения проблемы с удалением.

Эти действия обеспечивают тщательное устранение неполадок с помощью Wireshark, чтобы определить, где связь DHCP прерывается, обеспечивая более быстрое разрешение проблем с конфигурацией DHCP или сетью.

Заявление об отказе от ответственности за сведения о продуктах сторонних производителей

В этой статье упомянуты программные продукты независимых производителей. Корпорация Microsoft не дает никаких гарантий, подразумеваемых и прочих, относительно производительности и надежности этих продуктов.

Сбор данных

Перед обращением в службу поддержки Майкрософт вы можете собирать сведения о проблеме.

Предварительные требования

  1. TSS должен выполняться учетными записями с правами администратора в локальной системе, и EULA необходимо принять (после принятия лицензионного соглашения TSS не будет запрашивать снова).
  2. Рекомендуется использовать политику выполнения PowerShell локального компьютера RemoteSigned .

Примечание.

Если текущая политика выполнения PowerShell не разрешает выполнение TSS, выполните следующие действия:

  • RemoteSigned Задайте политику выполнения для уровня процесса, выполнив командлетPS C:\> Set-ExecutionPolicy -scope Process -ExecutionPolicy RemoteSigned.
  • Чтобы проверить, вступает ли в силу изменение, выполните командлет PS C:\> Get-ExecutionPolicy -List.
  • Так как разрешения уровня процесса применяются только к текущему сеансу PowerShell, после закрытия заданного окна PowerShell, в котором выполняется TSS, назначенное разрешение для уровня процесса также будет возвращено в ранее настроенное состояние.

Сбор ключевых сведений перед обращением в службу поддержки Майкрософт

  1. Скачайте TSS на всех узлах и распакуйте его в папке C:\tss.

  2. Откройте папку C:\tss из командной строки PowerShell с повышенными привилегиями.

  3. Запустите трассировку на клиенте и сервере с помощью следующих командлетов:

    • Клиент —

      TSS.ps1 -Scenario NET_DHCPcli
      
    • Сервер:

      TSS.ps1 -Scenario NET_DHCPsrv
      
  4. Примите EULA, если трассировки выполняются в первый раз на сервере или клиенте.

  5. Разрешить запись (PSR или видео).

  6. Воспроизвести проблему перед вводом Y.

    Примечание.

    Если вы собираете журналы как на клиенте, так и на сервере, дождитесь появления этого сообщения на обоих узлах перед воспроизведением проблемы.

  7. Введите Y , чтобы завершить коллекцию журналов после воспроизведения проблемы.

Трассировки будут храниться в ZIP-файле в папке C:\MS_DATA , которую можно отправить в рабочую область для анализа.

Справочные материалы

Журналы событий

Проверьте журналы событий службы system и DHCP Server (приложения и службы журналы>Microsoft>Windows>DHCP-Server) для обнаруженных проблем, связанных с наблюдаемой проблемой.

В зависимости от типа проблемы событие регистрируется в одном из следующих каналов событий:

Журнал сервера DHCP

Журналы отладки службы DHCP-сервера содержат дополнительные сведения о назначении аренды IP-адресов и динамические обновления DNS, которые выполняются DHCP-сервером. По умолчанию эти журналы находятся в %windir%\System32\Dhcp.

Дополнительные сведения см. в статье Анализ файлов журнала DHCP-сервера.