Estou executando o dnsmasq no Arch Linux em um roteador com 4 portas LAN para com fio, sem fio, DMZ e admin_interface. O dnsmasq é meu servidor dhcp para minha LAN (além de fornecer funções de DNS).
Nem sempre tenho coisas conectadas a todas as 4 portas LAN. Mas quando eu reinicio o dispositivo, eu quero que ele apareça corretamente para as portas onde os dispositivos estão conectados, particularmente a LAN com fio.
Minha configuração é assim:
If you want dnsmasq to listen for DHCP and DNS requests only on specified interfaces (and the loopback) give the name of the interface (eg eth0) here. Repeat the line for more than one interface.
interface=eth0
interface=eth1
interface=eth2
interface=eth3
Eu uso esta configuração porque eu não quero o dnsmasq rodando na porta WAN , que eu chamarei de eth4 neste exemplo.
Meu problema é que, se eu não tiver o cabo conectado à eth1 (por exemplo) quando o sistema for reinicializado, o dnsmasq não prosseguirá com a eth0 ou outras interfaces válidas; falha completamente como mostrado aqui:
Sep 16 14:16:10 router systemd[1]: Starting A lightweight DHCP and caching DNS server...
Sep 16 14:16:10 router dnsmasq[876]: dnsmasq: syntax check OK.
Sep 16 14:16:10 router dnsmasq[879]: dnsmasq: unknown interface eth1
Sep 16 14:16:10 router dnsmasq[879]: unknown interface eth1
Sep 16 14:16:10 router dnsmasq[879]: FAILED to start up
Sep 16 14:16:10 router systemd[1]: dnsmasq.service: Main process exited, code=exited, status=2/INVALIDARGUMENT
Sep 16 14:16:10 router systemd[1]: dnsmasq.service: Failed with result 'exit-code'.
Sep 16 14:16:10 router systemd[1]: Failed to start A lightweight DHCP and caching DNS server.
Depois disso, minha LAN não tem nenhum servidor DHCP e estou perdendo outras funcionalidades críticas que o dnsmasq fornece até que eu corrija manualmente e edite o arquivo de configuração com o que é apenas uma alteração temporária (e indesejável). Existe uma maneira de fazer o dnsmasq iniciar com apenas as interfaces válidas / conectadas na minha situação?