Configurando o dnsmasq em Mint / Ubuntu / Debian

4

Eu tenho um computador com várias portas ethernet - uma vai para a internet, o restante se conecta a outros dispositivos para fornecer conectividade à internet. O serviço DHCP é fornecido pelo dnsmasq. O computador também possui dois compartilhamentos de samba que são compartilhados apenas com as interfaces "internas". Eu pensei que isso era tudo uma configuração bonita de baunilha.

Na casa 18, tudo isso simplesmente funcionou sem interrupções.

Atualizando para o Mint 18.1 introduziu algumas estranhezas no NetworkManager, onde o dnsmasq aparece assim:

ps -ef | grep dnsm nobody 5099 5080 0 16:55 ? 00:00:00 /usr/sbin/dnsmasq --no-resolv --keep-in-foreground --no-hosts --bind-interfaces --pid-file=/var/run/NetworkManager/dnsmasq.pid --listen-address=127.0.1.1 --cache-size=0 --conf-file=/dev/null --proxy-dnssec --enable-dbus=org.freedesktop.NetworkManager.dnsmasq --conf-dir=/etc/NetworkManager/dnsmasq.d

O problema é a parte que diz "--conf-file = / dev / null", pois isso evita que o dsnmasq realmente leia o arquivo de configuração em /etc/NetworkManager/dnsmasq.d

Eu posso 'systemctl stop NetworkManager' seguido de 'killall -9 dnsmasq' e re-issue o dnsmasq "manualmente" - mas isso é extremamente feio na melhor das hipóteses (e me custa toda a outra funcionalidade do NetworkManager).

Analisando todos os vários arquivos em / etc / NetworkManager e / usr / lib / NetworkManager e não consigo encontrar o local onde 'conf-file = / dev / null' é especificado, então estou supondo que seja um padrão que precisa ser substituído em algum lugar / de alguma forma, mas eu não sei como ou onde - "man NetworkManager.conf" não está realmente ajudando.

    
por Sven Geier 24.03.2017 / 01:15

3 respostas

3

O NM passa o arquivo conf para evitar que o dnsmasq carregue o arquivo de configuração padrão.

Observe, no entanto:

--conf-dir=/etc/NetworkManager/dnsmasq.d 
    
por 24.03.2017 / 14:34
2

Como acima, é aparente que o problema é causado pelo --conf-file (blank) directive sendo emitido por NetworkManager quando inicia dnsmasq . Como posso remover essa diretiva da linha de comando que o NetworkManager está emitindo? Aparentemente, um teste que o NetworkManager está executando não está funcionando corretamente:

strings /usr/sbin/NetworkManager|grep conf_file

dá:

conf_file != NULL 
    
por 16.09.2017 / 18:04
0
  1. Quando eu verifiquei meu ps -ef | grep dnsm

    dnsmasq -x /var/run/dnsmasq/dnsmasq.pid -u dnsmasq -r /var/run/dnsmasq/resolv.conf -7 /etc/dnsmasq.d,.dpkg-dist,.dpkg-old, .dpkg-new --local-service

É iniciado a partir do /etc/init.d/dnsmasq onde ele processa a maioria das coisas que escolhem a configuração do /etc/dnsmasq.conf. Então eu acho que é por causa da falta de correspondência nos scripts de inicialização. Eu vejo que no meu processo tem a maioria das opções diferentes, por favor, verifique seus scripts init dnsmasq.

pode ser melhor se você me fornecer tentando sudo service dnsmasq restart e verifique novamente se você vir o mesmo depois de verificar o arquivo /etc/init.d/dnsmasq do problema. ou envie o despejo se puder.

    
por 03.10.2017 / 11:35