dnsmasq não é recarregado automaticamente quando a entrada é adicionada ao / etc / hosts

5

Eu estou lutando por alguns dias para configurar o dnsmasq para recarregar automaticamente ou tomar conhecimento dos novos hosts adicionados ao / etc / hosts ou para outro arquivo configurado /etc/hosts.dnsmasq .

Isso é possível?

    
por roshkattu 18.09.2015 / 14:35

1 resposta

2

Existem duas maneiras de fazer com que o dnsmasq recarregue um arquivo hosts:

  1. Como Aaron Copley anotado em seu comentário , envie SIGHUP para dnsmasq. Na página de manual :

    When it receives a SIGHUP, dnsmasq clears its cache and then re-loads /etc/hosts and /etc/ethers and any file given by --dhcp-hostsfile, --dhcp-hostsdir, --dhcp-optsfile, --dhcp-optsdir, --addn-hosts or --hostsdir. The dhcp lease change script is called for all existing DHCP leases. If --no-poll is set SIGHUP also re-reads /etc/resolv.conf. SIGHUP does NOT re-read the configuration file.

    Observe que o dnsmasq não é reiniciado nesse caso, mas relê vários outros arquivos (e chama o script de mudança de concessão do dhcp para todas as concessões DHCP existentes). Se a ativação de recarregamentos for muito rápida, você poderá debitar o sinal

  2. Use a opção --hostsdir . Novamente na página do manual :

    --hostsdir=<path>
            Read all the hosts files contained in the directory. New or changed files are read automatically. See --dhcp-hostsdir for details.

    Para referência, aqui está a documentação para --dhcp-hostsdir :

    --dhcp-hostsdir=<path>
            This is equivalent to dhcp-hostsfile, except for the following. The path MUST be a directory, and not an individual file. Changed or new files within the directory are read automatically, without the need to send SIGHUP. If a file is deleted or changed after it has been read by dnsmasq, then the host record it contained will remain until dnsmasq receives a SIGHUP, or is restarted; ie host records are only added dynamically.

    Isso tem algumas vantagens em comparação com a primeira opção: o dnsmasq irá reler o (s) arquivo (s) host automaticamente, sem SIGHUP requerido, e; somente os arquivos do host são recarregados, nenhuma outra ação é executada.

    Uma possível desvantagem é que, como a documentação para --dhcp-hostsdir indica, novas entradas de host são adicionadas dinamicamente, mas excluídas ou alteradas, as entradas não são atualizadas. Simon Kelley, o autor do dnsmasq, confirmou que isso ocorre por design .

por 09.10.2018 / 15:46

Tags