A maneira como eu abordaria isso seria escrever um script bash que inicie o dnsmasq com base na saída do dhclient. Se o dhclient não obtiver uma resposta, inicie o dnsmasq. Deve ser bem simples. Sem olhar, eu suponho que o dhclient dará um código de saída diferente de zero se ele falhar em obter uma concessão de DHCP.
Acione um script com o udev, ou colocando-o em / etc / network / interfaces, por exemplo, e se o dhclient fornecer um código de saída diferente de zero, inicie o dnsmasq.