Назад | Перейти на главную страницу

Как отказаться от старого IP-адреса DHCP-запроса (и предоставить новый)?

Я перешел с 192.168.0.0/24 сеть к 10.10.10.0/24. Адреса предоставлены dnsmasq-dhcp.

Переключатель прошел нормально для всех устройств, кроме одного - принтера (называемого PRINTER). Этому принтеру был назначен фиксированный IP-адрес на основе его имени, определенного в /etc/hosts (через dhcp-host=PRINTER) и все еще работает с новыми моделями.

Когда он запрашивает IP-адрес, DHCP-сервер сообщает в своих журналах, что

dnsmasq-dhcp:  not giving name PRINTER to the DHCP lease of 192.168.0.20 because the name exists in /etc/hosts with address 10.10.10.20

Я не понимаю этого сообщения: имя действительно существует в /etc/hosts, теперь новый 10.10.10.20 адрес. Хотя я предполагаю, что DHCP-запрос от принтера намекает на старый IP-адрес, который он имел раньше, почему не dnsmasq просто проигнорируйте это и предоставьте новый IP-адрес?

Убедитесь, что имя вашего принтера для старого IP-адреса находится здесь: /var/lib/misc/dnsmasq.leases и отредактируйте этот файл, сначала вы должны остановить dnsmask

проверьте время аренды, которое вы установили при настройке DHCP, если вы назначили слишком много времени, потребуется время, чтобы "исправить" само себя

Прежде всего, я предполагаю, что ваш принтер правильно реализует обновления DHCP и DDNS, но это не всегда так. Я также предполагаю, что срок первоначальной аренды еще не истек. Если вы получаете это сообщение после истечение срока действия, возможно, вы имеете дело с неправильной реализацией DHCP.

Ваш принтер получил аренду 192.168.0.20, и ему сказали, что он будет действовать в течение X дней. За некоторое время до этого вы изменили диапазон на 10.10.10.0/24. У принтера все еще есть аренда адреса, которая технически действительна, хотя и нежелательна.

Во время аренды устройство обычно запрашивает продление аренды и / или обновление DDNS. Очевидно, что продление аренды отклонено, поскольку исходный адрес больше не действителен для новый арендует, но это не означает, что принтер перестанет его использовать. Он может не запрашивать новый адрес, пока исходный договор аренды не истечет полностью. Это не ошибка.

Однако, похоже, именно обновление имени вызывает ошибку. В зависимости от вашей конфигурации это может быть принтер, запрашивающий обновление имени, или DHCP-сервер, запрашивающий обновление от имени принтера. Обновление имени отклоняется, поскольку адрес, к которому оно привязано, больше не является действительным адресом на сервере. Серверные части достаточно умны, чтобы знать это, но устройство будет зависать до конца, прежде чем попытаться снова, и, вероятно, удастся.

Процесс обновления в основном заключается в том, что клиент или его агент спрашивают, может ли он продолжать использовать это имя на этом адресе. Сервер должен ответить «Да» или «Нет», но не может сказать «Нет, но используйте этот».

Ярлык - заставить ваш принтер отказаться от аренды и получить новый. Обычно это можно сделать через веб-интерфейс, а иногда и через выключение питания.