O Ubuntu Desktop 12.04 usa o dnsmasq para executar pesquisas de DNS, mas não está configurado para armazenar em cache esses resultados. (Verifiquei isso usando dig para resolver nomes e não vejo uma grande melhoria no tempo de resposta após a primeira pesquisa.) Como configuro o dnsmasq controlado pelo NetworkManager para armazenar em cache os resultados das pesquisas de DNS?
8
sudo systemctl stop NetworkManager
Consegui ativar o cache de DNS no Linux Mint 13 (baseado no Ubuntu 12.04) usando o método descrito na primeira resposta. Criei um arquivo
/etc/NetworkManager/dnsmasq.d/cachedns
contendo a linhacache-size=100
e reiniciei o gerenciador de rede. Embora o dnsmasq seja executado pelo gerenciador de rede com um código embutido--cache-size=0
em sua linha de comando, a configuração do tamanho do cache em um arquivo de configuração substitui esse valor. Você pode verificar se funciona, fazendo o seguinte:Você deve ver uma linha assim no syslog, mostrando o tamanho do cache:
fonte
Eu não queria atualizar a partir do 12.04, mas ainda queria o dnsmasq gerenciado pelo NetworkManager com o cache ativado, mas como a outra resposta disse, --cache-size = 0 é codificado e não pode ser alterado com a configuração.
Então o que acabei fazendo foi o seguinte, como root:
e, em seguida, criando um novo arquivo, / usr / sbin / dnsmasq, com o seguinte conteúdo:
certifique-se de
chmod +x /usr/sbin/dnsmasq
alterar o tamanho do cache de 1000 para o que desejar, aproveite a versão LTS com um cache DNS!fonte
na versão 12.04, o dnsmasq é iniciado pelo NetworkManager com o parâmetro codificado (ou seja, não configurável) --cache-size = 0 .
As páginas de manual do dnsmasq dizem que configurar o tamanho do cache como zero desativa o cache. Se você deseja ativar o armazenamento em cache, provavelmente precisará desativar o dnsmasq-plugin do NetworkManager para impedir que o NetworkManager inicie o dnsmasq e inicie sua própria instância do dnsmasq com tamanho de cache maior que zero.
aqui você pode ler como desativar o dnsmasq-plugin para o NetworkManager: https://askubuntu.com/a/131422/71057
fonte
Para reativar o cache (com uma versão do NetworkManager que possui o diretório /etc/NetworkManager/dnsmasq.d), é realmente suficiente soltar um arquivo nesse diretório com o conteúdo "cache-size = X" (com X sendo 150 para o dnsmasq padrão teria). Os arquivos lá substituem os parâmetros codificados fornecidos na linha de comando.
fonte
No Ubuntu 14.04, eu tive que editar
/etc/default/dnsmasq
e definirENABLED=1
Eu também coloquei
cache-size=1000
lá e em todos os outros arquivos de configuração do dnsmasq que encontrei.fonte