ADMIN-Tipp: Benutzerspezifische DNS-Konfiguration

Jede Woche erscheint in unserem Newsletter ein neuer ADMIN-Tipp. Eine Sammlung aller Tipps finden Sie im Archiv der ADMIN-Tipps.

Auf Unix- und Linux-Systemen ist die systemweite DNS-Konfiguration Standard. Mit einem Trick lässt sich das umgehen.

Seit Menschengedenken wird auf Unix- und Linux-Systemen die DNS-Konfiguration systemweit festgelegt. Für Tests und andere Spezialanwendungen sind aber auch benutzerspezifische DNS-Setups möglich. Der Weg führt wieder einmal über die Umgebungsvariable LD_PRELOAD, die es erlaubt, eine dynamische Library zu verwenden, die bestimmte Systemcalls überschreibt. Der typischer Systemaufruf für die Auflösung von Hostnamen ist "gethostbyname()", es gibt aber mittlerweile auch noch weitere wie etwa "getaddrinfo()" und "res_init()". Diese drei Aufrufe überschreibt die dynamische Library, die unter https://github.com/hadess/resolvconf-override zu finden ist. Mit den folgenden Befehlen ist sie schnell installiert.

git clone https://github.com/hadess/resolvconf-override
cd resolvconf-override/
./autogen.sh 
make
sudo make install

Um sie zu benutzen, ist es nötig, die Umgebungsvariable LD_PRELOAD wie folgt zu exportieren und einen oder mehrere Nameserver anzugeben:

export LD_PRELOAD=/usr/local/lib/libresolvconf_override.so NAMESERVER1=10.0.0.254

Damit Programme von der individuellen DNS-Konfiguration Gebrauch machen, müssen sie nach dem Setzen der Environment-Variable in derselben Shell-Umgebung gestartet werden.

10.12.2015
DNS

Ähnliche Artikel

comments powered by Disqus

Artikel der Woche

Systeme mit Vamigru verwalten

Auch wer nur kleine Flotten von Linux-Servern verwaltet, freut sich über Werkzeuge, die ihm diese Arbeit erleichtern. Vamigru tritt mit diesem Versprechen an. Wir verraten, was es leistet und wie Sie es in der eigenen Umgebung in Betrieb nehmen. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Container

Wie setzen Sie Container ein?

  • Gar nicht
  • Docker standalone
  • Docker mit Kubernetes
  • Docker mit Swarm
  • Docker mit anderem Management
  • LXC/LXD
  • Rocket
  • CRI-O auf Kubernetes
  • Container auf vSphere
  • Andere (siehe Kommentare auf der Ergebnisseite)

Google+

Ausgabe /2018

Microsite