Eu enfrentei o mesmo problema ao configurar o dnsmasq através do ansible. No debian jessie você pode atualizar o dhclient.conf e fazer:
/usr/bin/killall dhclient
dhclient INTERFACE
Ou se preferir:
dhclient -x
dhclient INTERFACE
Isso não mata sua conexão, a menos que sua concessão expire e você receba um endereço IP diferente.
Você menciona o gerenciamento de configurações. Se você estiver usando ansible, aqui está a parte relevante do meu manual:
tasks:
- name: Ensure a correct resolv.conf
template: src=templates/resolv.conf.j2 dest=/etc/resolv.conf
- name: Ensure dhclient config wont mess up my resolv.conf
template: src=dhclient.conf.j2 dest=/etc/dhcp/dhclient.conf
notify: Kill dhclient
handlers:
- name: Kill dhclient
command: /usr/bin/killall dhclient
ignore_errors: yes
changed_when: false
Repare que não reinicio o dhclient depois de o ter matado. Isso funciona bem no meu ambiente, mas YMMV. Você poderia adicionar outra tarefa que copia sobre um script para manipular dhclient stop / start e chamá-la do manipulador (talvez até usando {{ansible_default_ipv4.interface}}
para obter o nome da interface).
Meu modelo dhclient.conf
é algo assim:
send host-name = gethostname();
request subnet-mask, broadcast-address, time-offset, routers, host-name, interface-mtu, rfc3442-classless-static-routes, ntp-servers, dhcp6.fqdn, dhcp6.sntp-servers;
Portanto, a maioria das dhclient.conf
do debian padrão não possui as diretivas relacionadas ao dns.