Come generare automaticamente resolv.conf su Centos 6.5


8

Ho appena installato CentOS 6.5 e configurato i seguenti file:

/etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
HWADDR=aa:bb:dd:dd:ee:ff
TYPE=Ethernet
UUID=adfddfaf-9sda-adse-dfs4-asdfsdfdfg97
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=dhcp

/etc/sysconfig/network

NETWORKING=yes
HOSTNAME=localhost.IM
NTPSERVERARGS=iburst

Quando riavvio il computer, ifconfig eth0mostra un indirizzo IP ma il resolv.conffile è vuoto. Tutto ciò che dice dentro è search IM. Non ci sono nameserverselencati nel file.

Tuttavia, dopo l'avvio, se lo faccio dhclient -rper rilasciare l'indirizzo IP e quindi digitare dhclient eth0per ottenere un indirizzo IP, resolv.confviene popolato correttamente con i miei server dei nomi DNS.

Perché questo non accade automaticamente dai miei file di configurazione? Ho pensato che dhcpabilitato nel mio ifcfg-eth0file dovrebbe occuparsene.

La documentazione di CentOS indica che l'impostazione NETWORKING=yesavvia la rete all'avvio: http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-dhcp-configuring-client.html .

Qualsiasi aiuto è apprezzato.


Rimuovere il .IMnome host e provare qualcosa di diverso da localhost o ometterlo del tutto.
slm

Tra l'altro lo script responsabile per la creazione del file lungo con l'intero dispositivo eth0 è fatto fuori di qui: /etc/sysconfig/network-scripts/ifup-eth.
slm

Risposte:


3

Impostare NM_CONTROLLED=noe arrestare il daemon di Network Manager e impedirne il riavvio durante l'avvio:

/sbin/service   NetworkManager stop
/sbin/chkconfig NetworkManager off

Ora popola il tuo /etc/resolv.conffile in base alle tue esigenze.

Altrimenti, impostare NM_CONTROLLED=yese lasciare in esecuzione il demone NetworkManager. In questo caso, aggiungere fino a due voci DNS nel ifcfg-eth*file come, ad esempio:

DNS1=10.11.12.13
DNS2=10.11.12.14
DOMAIN=mydomain.net

Questo popolerà il /etc/resolv.conffile per te.


1
Il resolv.conffile dovrebbe comunque essere aggiornato in modo irregolare. Ho molti sistemi senza testa senza NetworkManager che ottengono i loro contenuti dal server DHCP bene. Quindi qualcos'altro è qui.
slm

1
Quando viene utilizzato NetworkManager, è responsabile dell'aggiornamento /etc/resolv.confutilizzando i dati dal DHCP. Quando non viene utilizzato, networkviene eseguito il servizio dhclientche a sua volta è responsabile della scrittura di /etc/resolv.conf.
Pavel Šimerda,

1
Indipendentemente dal tuo uso di "irregardless", dovrò essere in disaccordo con te; > PEERDNS - gli initscripts interpretano PEERDNS = no per indicare "mai toccare resolv.conf". NetworkManager lo interpreta dicendo "non aggiungere mai nameserver automatici (DHCP, PPP, VPN, ecc.) A resolv.conf". Fornire la PEERDNS=yeslinea al /etc/sysconfig/network-scripts/ifcfg-file specifico per aggiornare automaticamente il /etc/resolv.conffile.
ILMostro_7,

0

Dalla NM-SETTINGS-IFCFG-RH ()pagina man:

PEERDNS - gli initscripts interpretano PEERDNS = no per indicare "mai toccare resolv.conf". NetworkManager lo interpreta dicendo "non aggiungere mai nameserver automatici (DHCP, PPP, VPN, ecc.) A resolv.conf".

Fornire la riga PEERDNS = yes al file / etc / sysconfig / network-scripts / ifcfg- specifico per aggiornare automaticamente il file /etc/resolv.conf.

    PEERDNS=yes

Inoltre, se non si desidera controllare l'interfaccia con NetworkManager, aggiungere la seguente riga:

    NM_CONTROLLED=no

Tuttavia, la prima riga dovrebbe essere sufficiente indipendentemente dal fatto che l'interfaccia sia controllata da NetworkManager o meno.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.