Как заставить ВСЕХ клиентов DHCP обновляться?

Существует ли какой-либо сетевой широковещательный вызов или что-то, что может заставить всех подключенных клиентов DHCP немедленно обновить свои адреса?

И если нет, то почему? Конечно, эта функциональность была востребована администраторами DHCP с момента ее рождения. Это делает изменение адреса маршрутизатора в большой сети очень сложным без повсеместной автоматизации клиента.

5 ответов

Решение

Это невозможно без отключения сети в интерфейсе сети клиента.

Теоретически, DHCP-сервер может отправлять сообщение FORCERENEW всем подключенным клиентам. FORCERENEW описан в RFC3203. (См. Также https://serverfault.com/a/569869/107832)

К сожалению, известный ISC DHCP-сервер не поддерживает его:

В разделе 19.4.1 RFC 3315 говорится о переконфигурировании сообщений. Это, однако, только для IPv6. В сообщении говорится, что DOCSIS 3.0 "требует поддержки Reconfigure (для DHCPv6), как указано в RFC3315"

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

Принудительное обновление каждой машины в сегменте сети - действительно хороший способ создать атаку отказа в обслуживании.

Но вместо этого вы можете сократить время аренды до нескольких минут, пока вы переходите к новой сетевой топологии. С практической точки зрения, это будет означать небольшой сбой, но вы все равно получите это с повторным приобретением нескольких IP-адресов.

Примечание: это только частично отвечает на вопрос ОП.

Чтобы заставить только все DHCP-клиенты Wi-Fi возобновить аренду DHCP, это то, что вы можете сделать. Предполагая, что Wi-Fi DHCP-клиенты подключаются к SSID вашего маршрутизатора, и ваш интерфейс управления маршрутизатором поддерживает эти функции.

  • отключить DHCP-сервер
  • отключить как 2.4G и 5G Wi-Fi
  • повторно включить сеть Wi-Fi
  • повторно включить DHCP-сервер

Я использовал WebUI через клиента, подключенного к маршрутизатору через Ethernet.

psexec \\\computername ipconfig /renew

Мне удалось удалить все аренды, закрыв службу dhcpd, удалив файл /var/lib/dhcpd/dhcpd.leases и перезапустив демон. Затем вы должны получить каждое устройство для получения IP-адреса от сервера DHCP. Для некоторых устройств будет работать простой цикл питания.

Другие вопросы по тегам