So generieren Sie automatisch resolv.conf unter Centos 6.5


8

Ich habe gerade CentOS 6.5 installiert und die folgenden Dateien konfiguriert:

/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

Wenn ich den Computer neu starte, ifconfig eth0wird eine IP-Adresse angezeigt, aber die resolv.confDatei ist leer. Alles, was drinnen steht, ist search IM. nameserversIn der Datei sind keine aufgeführt.

Wenn ich jedoch nach dem Start dhclient -rdie IP-Adresse freigebe und dann tippe, dhclient eth0um eine IP-Adresse abzurufen, werden resolv.confmeine DNS-Nameserver korrekt ausgefüllt .

Warum geschieht dies nicht automatisch aus meinen Konfigurationsdateien? Ich dachte, dhcpaktiviert in meiner ifcfg-eth0Datei sollte sich darum kümmern.

In der CentOS-Dokumentation heißt es, dass die Einstellung beim NETWORKING=yesStart mit dem Netzwerk beginnt: http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-dhcp-configuring-client.html .

Jede Hilfe wird geschätzt.


Entfernen .IMSie den Hostnamen und probieren Sie etwas anderes als localhost aus oder lassen Sie ihn ganz weg.
— slm

Übrigens wird das Skript, das für das Einrichten der Datei zusammen mit dem gesamten eth0-Gerät verantwortlich ist, von hier aus ausgeführt : /etc/sysconfig/network-scripts/ifup-eth.
— slm

Antworten:


3

Legen Sie NM_CONTROLLED=noden Network Manager-Dämon fest, stoppen Sie ihn und verhindern Sie, dass er beim Booten neu gestartet wird:

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

Füllen Sie nun Ihre /etc/resolv.confDatei entsprechend Ihren Anforderungen.

Andernfalls legen Sie NM_CONTROLLED=yesden NetworkManager-Dämon fest und lassen ihn laufen. Fügen Sie in diesem Fall bis zu zwei DNS-Einträge in die ifcfg-eth*Datei ein, z. B.:

DNS1=10.11.12.13
DNS2=10.11.12.14
DOMAIN=mydomain.net

Dadurch wird die /etc/resolv.confDatei für Sie ausgefüllt.


1
Die resolv.confDatei sollte trotzdem unabhängig davon aktualisiert werden. Ich habe viele kopflose Systeme ohne NetworkManager, deren Inhalte problemlos vom DHCP-Server abgerufen werden. Hier oben ist also noch etwas anderes.
— slm

1
Wenn NetworkManager verwendet wird, ist es für die Aktualisierung /etc/resolv.confmithilfe der Daten von DHCP verantwortlich. Wenn es nicht verwendet wird, wird der networkDienst ausgeführt, dhclientder wiederum für das Schreiben des Dienstes verantwortlich ist /etc/resolv.conf.
— Pavel Šimerda

1
Unabhängig von Ihrer Verwendung von "unabhängig" muss ich Ihnen nicht zustimmen. > PEERDNS - Initscripts interpretieren PEERDNS = no, um "niemals resolv.conf berühren" zu bedeuten. NetworkManager interpretiert es so, dass "resolv.conf niemals automatische (DHCP, PPP, VPN usw.) Nameserver hinzugefügt werden". Geben Sie die PEERDNS=yesZeile in die jeweilige /etc/sysconfig/network-scripts/ifcfg-Datei ein, um die /etc/resolv.confDatei automatisch zu aktualisieren .
— ILMostro_7

0

Von der NM-SETTINGS-IFCFG-RH ()Manpage:

PEERDNS - Initscripts interpretieren PEERDNS = no, um "niemals resolv.conf berühren" zu bedeuten. NetworkManager interpretiert es so, dass "resolv.conf niemals automatische (DHCP, PPP, VPN usw.) Nameserver hinzugefügt werden".

Geben Sie die Zeile PEERDNS = yes in die spezifische Datei / etc / sysconfig / network-scripts / ifcfg ein, um die Datei /etc/resolv.conf automatisch zu aktualisieren.

    PEERDNS=yes

Wenn Sie nicht möchten, dass die Schnittstelle mit NetworkManager gesteuert wird, fügen Sie die folgende Zeile hinzu:

    NM_CONTROLLED=no

Die erste Zeile sollte jedoch ausreichen, unabhängig davon, ob die Schnittstelle von NetworkManager gesteuert wird oder nicht.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.