No meu RPi executando o Ubuntu 16.04.2 LTS, minhas descobertas foram as seguintes:
Nota: Desinstalei o NetworkManager e apenas deixei o resolvconf para executar suas tarefas. (Este é um servidor fixo, para que as coisas não mudem muito em termos de rede.)
Se eu tivesse as linhas dns-search e dns-nameserver em apenas uma interface (a principal conectada com fio), mas não a outra (wlan0) depois da reinicialização, cerca de 95% das vezes que meu arquivo /etc/resolv.conf seria esvaziar.
Por exemplo, quando meu arquivo de interfaces ficou assim:
# The primary network interface
auto enxb827ebbfedcf
iface enxb827ebbfedcf inet static
address 192.168.1.16
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
dns-search summer.co.uk summer.vpn
dns-nameserver 192.168.1.16
dns-nameserver 192.168.1.1
# end stanza with clear line+
# The loopback network interface
auto lo
iface lo inet loopback
auto wlan0
iface wlan0 inet static
address 192.168.1.17
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
ENTÃO, após uma reinicialização, meu resolv.conf ficaria assim:
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
No entanto, em uma ou duas reinicializações, notei que ela tinha o que queria, por exemplo
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 192.168.1.16
nameserver 192.168.1.1
search summer.co.uk summer.vpn
Solução
Quando dei a ambas as interfaces (com fio e wlan0) as linhas dns-search e dns-nameserver, tudo funcionou bem em todas as reinicializações (até agora, de qualquer maneira)
ou seja, o seguinte arquivo de interfaces funciona para mim:
# The primary network interface
auto enxb827ebbfedcf
iface enxb827ebbfedcf inet static
address 192.168.1.16
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
dns-search summer.co.uk summer.vpn
dns-nameserver 192.168.1.16
dns-nameserver 192.168.1.1
# end stanza with clear line+
# The loopback network interface
auto lo
iface lo inet loopback
auto wlan0
iface wlan0 inet static
address 192.168.1.17
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
dns-search summer.co.uk summer.vpn
dns-nameserver 192.168.1.16
dns-nameserver 192.168.1.1
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
e me fornece o seguinte resolv.conf correto após cada reinicialização (até agora)
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 192.168.1.16
nameserver 192.168.1.1
search summer.co.uk summer.vpn
Presumo que essa configuração duplicada seja normal, se for um pouco redundante.
Conclusão: Se uma interface (diferente de lo0) não possui informações de pesquisa de DNS e servidor de nomes de DNS, o resolvconf não coloca nada no seu arquivo resolv.conf. (É como se o ifup fizesse a interface wlan0 em segundo e o ifup limpasse o resolv.conf ou algo assim.)
Eu não tenho certeza se isso é um bug ou não, parece errado para mim.