Перезапустите dhcpd при перезагрузке интерфейса

У меня есть система Ubuntu 16.04, выступающая в качестве точки доступа Wi-Fi и маршрутизатора, в том числе в качестве DHCP-сервера (isc-dhcp-server). Что-то немного ненадежное с USB-картой Wi-Fi, и иногда она сбрасывается, появляясь на хост-машине, как будто она отключилась и снова подключилась. Когда это происходит, DHCP перестает работать, пока я не сделаю вручную /etc/init.d/isc-dhcp-server restart,

Единственное сообщение в журнале от dhcpd является receive_packet failed on wlan4: Network is down, strace кажется, показывает, что демон продолжает select, но не видит никаких новых входящих пакетов, как будто он прослушивает сокет, подключенный к "старому" экземпляру интерфейса.

Журналы показывают, что многие другие службы перезапускаются, когда интерфейс возвращается (ntpd, sshd, named и т. Д.), Но dhcpd не перезапускается. Какая разница между ними? Есть ли способ организовать автоматический перезапуск dhcpd при отскоке интерфейса?

1 ответ

Я добавил строку в wlan4 строфа из /etc/network/interfaces поговорка

up /etc/init.d/isc-dhcp-server restart || true

Не уверен, что это "правильный" способ сделать это, но, похоже, это работает. Я проверил это, отключив и снова подключив карту Wi-Fi, и dhcpd был перезапущен.

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