Почему клиент DHCP4 не отвечает на предложение DHCP от сервера DHCP?

Чрезвычайно простой DHCP-сервер надежно работает с ПК с Windows 10 и устройствами Android. Он получает обнаружение DHCP от клиента, отвечает предложением DHCP, затем получает запрос DHCP от клиента.

Однако он не работает с устройством, использующим DHCP4. Он получает от него DHCP Discover и отвечает предложением DHCP: но никогда не получает DHCP-запрос от клиента. Это подтверждается анализом Wireshark. Похоже, что клиент DHCP4 либо не получает предложение DHCP, либо полностью игнорирует его.

Клиент DHCP работает с DHCP-серверами разных маршрутизаторов без каких-либо проблем, поэтому я виню DHCP-сервер.

У этого DHCP-сервера есть одна вещь. отличается от типичного DHCP-сервера: он не использует привилегированный порт 67 в качестве исходного порта для отправки сообщений. Я думал, что DHCP-клиенты не будут заботиться об исходном порту ответов на их DHCP-обнаружение. Протокол, похоже, не требует, чтобы сообщения с сервера отправлялись через порт 67. Он требует, чтобы они отправлялись на порт 68.

Могут ли какие-либо эксперты предложить некоторые подсказки по поводу проблемы? У меня есть полный контроль над DHCP-сервером, и я буду очень рад попробовать любые предложения.

Изменить:

Обратите внимание, что этот вопрос , а не предназначен для того, чтобы какое-либо конкретное устройство, на котором запущен DHCP4, работало с DHCP-сервером. Это вопрос о том, как изменить DHCP-сервер, чтобы он работал со всеми DHCP4-клиентами.

-2
задан 17 May 2016 в 16:48
1 ответ

Я подозреваю, что это ограничение для Android (и я не вижу законного использования для создания приложения DHCP-сервера на Android). Для получения дополнительной информации см. RFC2131 .

DHCP использует UDP в качестве транспортного протокола. Сообщения DHCP от клиента на сервер отправляются на порт «DHCP-сервер» (67) , а DHCP сообщения от сервера к клиенту отправляются на порт 'DHCP client' (68).

0
ответ дан 5 December 2019 в 21:40

Теги

Похожие вопросы