Lösung 1:
Mit dieser Konfiguration funktionieren die meisten Anwendungen problemlos mit Ihrem Eintrag aus /etc/hosts .
Jedoch host schaut nicht auf /etc/nsswitch.conf . Das ist beabsichtigt, nicht zufällig, seit host ist speziell ein DNS-Lookup-Programm. /etc/hosts ist kein DNS, es ist (meistens) das, was wir vorher verwendet haben wir hatten DNS.
Dasselbe gilt auch für dig und nslookup - sie sind auch DNS-spezifisch.
Lösung 2:
Die host Befehl (zusammen mit dig und nslookup ) ist Teil des bind DNS-Dienstprogramme. Als Dienstprogramm zur DNS-Auflösung führt es allein die DNS-Auflösung durch.
Wenn Sie daran interessiert sind, einen Eintrag von einem beliebigen libnss abzurufen -gesteuerter Datenspeicher können Sie den getent verwenden Programm. Um beispielsweise einen Hosts-Eintrag zu erhalten, verwenden Sie ihn wie folgt:
getent hosts google.com
Dies folgt der Auflösungsreihenfolge, die unter hosts: festgelegt ist in /etc/nsswitch.conf in der Reihenfolge, die /etc/hosts enthält wenn "files" als eine der Optionen aufgeführt ist.