É possível configurar o DHCPD do ISC para configurar as opções do resolv.conf, como timeout e tentativas?

2

O resolv.conf suporta uma linha chamada options que permite algum ajuste fino do comportamento do resolvedor. No meu ambiente, estamos usando o DHCPD da ISC para fornecer serviços DHCP aos nossos serviços. Atualmente eu posso definir os campos de busca e nameserver no resolv.conf bem via DHCP, mas eu também quero ser capaz de criar a seguinte linha:

options timeout:2 attempts:4

Alguém sabe se isso é possível?

Eu tenho as seguintes opções relacionadas ao resolvedor DHCPD definidas atualmente:

  option domain-search            "example.com";
  option domain-name-servers      192.168.1.1, 192.168.1.2, 192.168.1.3, 192.168.1.4;

Neste caso particular, todos os sistemas estão rodando o CentOS 5/6.

    
por spkane 20.03.2013 / 16:27

2 respostas

9

Não há uma opção de DHCP existente para isso, portanto, é necessário adicionar configuração personalizada ao servidor e aos clientes para apoiar isso.

No servidor ( /etc/dhcp/dhcpd.conf ), defina uma nova opção e defina o valor:

option resolv-options code 224 = text;
option resolv-options "timeout:2 attempts:4";

No cliente ( /etc/dhcp/dhclient.conf ), defina a nova opção e adicione-a à lista de opções a solicitar:

option resolv-options code 224 = text;
request ..., resolv-options;

Em seguida, adicione um gancho ( /etc/dhcp/dhclient-enter-hooks.d/resolvoptions ) no cliente para realmente usar o valor enviado:

if [ "$new_resolv_options" ]; then
    echo "options $new_resolv_options" >> /etc/resolv.conf
fi
    
por 20.03.2013 / 18:26
0

Se você não tiver acesso ao servidor DHCP ou não desejar alterar a configuração do servidor, poderá definir as opções no cliente com um script dh-client-exit-hooks. Se você estiver executando o Ubuntu, você pode colocar um script como este em /etc/dhcp3/dhclient-exit-hooks.d


cd /etc/dhcp3/dhclient-exit-hooks.d
sudo vim resolver-options

#
# Prepend resolver options to /etc/resolv.conf after dhclient'
# regenerates the file. See man (5) resolver for more details.
#
RESOLV_CONF=$(cat /etc/resolv.conf)
OPTIONS="options timeout:1"

echo -e "$OPTIONS\n$RESOLV_CONF" > /etc/resolv.conf

Basta adicionar as opções que você deseja a $ OPTIONS, separando-as com um caractere newline (\ n) e o script será executado após o dhclient sair e pré-anexar as opções do resolvedor ao /etc/resolv.conf.

    
por 18.09.2014 / 19:42