У меня есть портативный linux-бокс под управлением Ubuntu 16.04 с одним сетевым интерфейсом, который при подключении к сети должен убедиться, что в этой сети есть DHCP-сервер. Два случая:
(a) если в сети уже запущен DHCP, то на коробке должен быть только ip.
(b) если в сети нет DHCP, на этом компьютере должен быть запущен DHCP-сервер.
В случае (b) у меня работает dnsmasq. Однако я хотел бы, чтобы система автоматически обнаруживала (a) или (b) и запускала службу dnsmasq в зависимости от результата.
До сих пор мой подход состоял в том, чтобы настроить /etc /network /interfaces для eth0 как статического (в качестве основы для внутренне предоставляемого DHCP) и eth0:1 как настроенного dhcp. Я пытался найти что-то, что запустило бы / остановило службу dnsmasq в результате dhcp-клиента после того, как ссылка стала доступной, но не смог найти такую опцию.