2010-02-19 10:35:31 +0000 2010-02-19 10:35:31 +0000
35
35

Como posso adicionar domínios de pesquisa adicionais ao resolv.conf criado pelo dhclient no CentOS

Quando a minha máquina virtual CentOS arranca, usa DHCP para obter um endereço IP. Também escreve resolv.conf por cima das definições DNS fornecidas pelo servidor DHCP. O servidor DHCP não fornece nenhum domínio de pesquisa, por isso gostaria de conseguir que o dhclient colocasse numa lista de domínios de pesquisa quando o escrevesse. Como posso configurar o dhclient para o fazer?

Respostas (10)

32
32
32
2012-08-27 13:16:49 +0000

Nenhum deles funcionou, mas o último foi o mais próximo. Para o Red Hat 6, Use DOMAIN em vez de SEARCH como no exemplo acima e a localização do ficheiro é diferente.

I modificou o ficheiro /etc/sysconfig/network-scripts/ifcfg-eth0

e mudou

DOMAIN=domain.com

para

DOMAIN="domain.com sub.domain.com"

e tudo funcionou.

11
11
11
2011-03-29 14:44:49 +0000

Também pode adicionar string a /etc/dhcp3/dhclient.conf como este

prepend domain-search "domain1.com", "domain2.com";

Note que este método também funciona com Debian Lenny e Squeeze.

7
7
7
2010-02-19 16:46:58 +0000

Consegui resolver isto no final. Adicionei uma linha como a seguinte a /etc/dhclient-eth0.conf

append domain-name "example.com";
4
4
4
2014-09-17 18:03:56 +0000

Esta é sobretudo uma nota para a RHEL7 para reduzir a tentativa e o erro. Resposta do Reitor de usar DOMAIN="domain1.exmaple.com domain2.example.com" em /etc/sysconfig/network-scripts/ifcfg-device.conf funciona. Uma nota interessante é o domínio do hospedeiro que a ligação obtém do DHCP está sempre preparada para o caminho de pesquisa, mesmo que o deixe fora de DOMAIN= ou o coloque mais tarde numa lista para DOMAIN=. Parece que o /sbin/dhclient-script tem um monte de lógica relacionada com isto.

Nos meus testes, descobri que sugestão de Philip de usar /etc/dhcp/dhclient-device.conf também funciona, embora haja algum comportamento estranho com isso, muito provavelmente devido a essa mesma lógica em /sbin/dhclient-script que tenta mover as coisas de um lado para o outro. Por exemplo, nem superou ou prependeu o trabalho como esperado, o domínio do hospedeiro será o primeiro. Como nota lateral sobre este método, /var/lib/NetworkManager/dhclient-device.conf é o ficheiro NetworkManager gerado e é utilizado pelo cliente. Se tiver um ficheiro em /etc/dhcp/ que seja lido, vê-lo-á colado no topo do ficheiro e algumas opções extra adicionadas abaixo.

2
2
2
2012-01-04 15:11:33 +0000

No CentOS 6, estou a utilizar o seguinte ficheiro para adicionar o meu domínio de pesquisa DNS preferido:

# cat /etc/dhcp/dhclient-eth0.conf 
interface "eth0" {
    supersede domain-search "dns1.example.com";
}
# getenforce 
Enforcing
# ls -lZ /etc/dhcp/dhclient-eth0.conf 
-rw-r--r--. root root system_u:object_r:bin_t:s0 /etc/dhcp/dhclient-eth0.conf
#

Este ficheiro é o primeiro que é verificado em /etc/sysconfig/network-scripts/ifup-eth:

if [-s /etc/dhcp/dhclient-${DEVICE}.conf]; then
   DHCLIENTCONF="-cf /etc/dhcp/dhclient-${DEVICE}.conf";

Ver também: redhat - Configuração de DHCP no RHEL 6 - Falha do Servidor

2
2
2
2011-06-02 15:45:35 +0000

A resposta /etc/dhclient-eth0.conf acima não funcionou para mim. Não tenho um directório /etc/dhcp3 por isso também não pensei que isso funcionasse.

Depois de examinar o ficheiro /sbin/dhclient-script (que cria /etc/resolv.conf no meu sistema Centos 5.6), adicionei a linha SEARCH abaixo a /etc/sysconfig/networking/devices/ifcfg-eth0:

DEVICE=eth0 
BOOTPROTO=dhcp
HWADDR=08:00:24:61:17:AC 
ONBOOT=yes
TYPE=Ethernet
SEARCH="example.com sub1.example.com sub2.example.com"

Então:

# ifdown eth0
# ifup eth0
# cat /etc/resolv.conf
; generated by /sbin/dhclient-script
search example.com sub1.example.com sub2.example.com
nameserver 10.1.0.11
2
2
2
2013-09-20 20:16:29 +0000

Para qualquer pessoa que passe pelo Fedora / Red Hat’s uma pilha de scripts bastante opaca, a resposta, pelo menos no último AMI da Amazon, é /etc/dhclient-eth0.conf (e não a pasta vazia de engodo em /etc/dhcp/ ). O ficheiro não está presente e terá de ser criado

1
1
1
2013-11-22 08:29:07 +0000

Em Fedora 19 adicionar linhas seguintes a /etc/dhcp/dhclient.conf

# /etc/dhcp/dhclient.conf

interface "p2p1"
{
    supersede domain-name-servers 8.8.8.8, 8.8.4.4;
    append domain-name " mydomain.net example.com";
}

Trabalhar bem com o NetworkManager. Detalhes ver: # man dhclient.conf

0
0
0
2012-08-27 15:32:39 +0000

Adicionar ao servidor dchp conf (isc dhcpd):

option domain-name "domain1.com domain2.net domain3.org";

Onde domain1.com,etc. são os sufixos de domínio que pretende adicionar ao ficheiro resolv.conf em cada cliente.

0
0
0
2015-05-26 02:13:19 +0000

Como não vejo esta resposta e funcionou para mim (enquanto os outros não), aqui está: editar /etc/resolvconf/resolv.conf.d/base da mesma forma que você faria /etc/resolv.conf. Vai precisar de resolvconf instalado.