Speicherort von dhclient.conf

11

Ich muss die Client-DHCP-Einstellungen überprüfen, von denen ich erwarte, dass sie in der Datei enthalten sind /etc/dhcp/dhclient.conf, aber es gibt dort keine solchen Dateien.

Wo befindet sich diese Datei in RHEL 6 auf 64 Bit?

user2799508
quelle
Die Frage wurde letztes Jahr gestellt, ich weiß, aber ich wollte nur meine zwei Cent hinzufügen: warum nicht verwenden locate dhclient.confoder find / -iname dhclient.conf -print? oder noch einfacher, aber schmutziger locate dhclientoderlocate dhcp
Sergiy Kolodyazhnyy

Antworten:

10

Ein Trick, den ich oft benutze, besteht darin, einen Blick auf die Ausgabe dieses Befehls zu werfen. Hier führe ich ihn unter CentOS 6 aus, aber er sollte auch unter RHEL für Sie gelten:

$ ps -eaf | grep dhcli
root      1044     1  0 Jan17 ?        00:00:00 /sbin/dhclient -1 -q -cf /etc/dhcp/dhclient-eth0.conf -lf /var/lib/dhclient/dhclient-eth0.leases -pf /var/run/dhclient-eth0.pid eth0
root      3771  3738  0 19:00 pts/0    00:00:00 grep dhcli

Wenn Sie in der Ausgabe feststellen, wird die gesuchte Datei aufgerufen /etc/dhcp/dhclient-eth0.confund nicht dhclient.conf. Aber das erzählt Ihnen nur einen Teil der Geschichte. Wenn Sie dhclientbeim Start zusätzliche Einstellungen vornehmen möchten, lesen Sie die offizielle RHEL 6-Dokumentation mit dem Titel: 14.3. Konfigurieren eines DHCP-Clients .

Auch wenn Sie die Manpage konsultieren, werden dhclientSie dieses Bit für den -cfSchalter bemerken :

-cf <config-file>
      Path to the client configuration file.  If unspecified, the default 
      /etc/dhcp/dhclient.conf is used.

Die Datei dhclient.confist also nicht die Datei, nach der Sie wahrscheinlich suchen, sondern die Schnittstelle, auf der Sie ausgeführt werden dhclient, in diesem Fall eth0also die Datei dhclient-eth0.conf.

Tiefer Graben

Wenn Sie sich die Startskripte für das Netzwerk ansehen, werden Sie wahrscheinlich auf diese Datei stoßen /etc/sysconfig/network-scripts/ifup-eth. Ein Blick hinein kann Ihnen zeigen, was los ist, wenn Sie interessiert sind:

...
# allow users to use generic '/etc/dhclient.conf' (as documented in manpage!) 
# if per-device file doesn't exist or is empty
if [ -s /etc/dhcp/dhclient-${DEVICE}.conf ]; then
   DHCLIENTCONF="-cf /etc/dhcp/dhclient-${DEVICE}.conf";
elif [ -s /etc/dhclient-${DEVICE}.conf ]; then
   DHCLIENTCONF="-cf /etc/dhclient-${DEVICE}.conf";
else
   DHCLIENTCONF='';
fi;
...

Sie können also eine eigene dhclient.confDatei erstellen und die vom System für Sie erstellte schnittstellenspezifische Datei entfernen.

slm
quelle
5

RHEL 6 und höher verwendet standardmäßig NetworkManager, wodurch die dhclient-Konfiguration im laufenden Betrieb erstellt wird.

Sie finden die Datei in /var/lib/NetworkManager/dhclient-*.conf, können diese Datei jedoch nicht ändern, da sie automatisch generiert wird. Lesen Sie in der NetworkManager-Dokumentation nach, wie Sie verschiedene Flags setzen.

Wenn Sie NetworkManager ausschalten, gilt die Antwort von sim.

lzap
quelle
1

Bei einer Neuinstallation von RHEL 7.5 ist /etc/dhcp/dhclient.conf nicht vorhanden. Wenn Sie es jedoch mit nur den gewünschten Optionen erstellen, scheint dies zu funktionieren. Ich wette, es funktioniert auch für RHEL 6.

Eric Shafto
quelle