Řešení 1:
S touto konfigurací bude většina aplikací šťastně pracovat s vaším záznamem z /etc/hosts
.
Nicméně host
nehledá /etc/nsswitch.conf
. To je záměrné, nikoli náhodou, protože host
je konkrétně program pro vyhledávání DNS. /etc/hosts
není DNS, je to (většinou) to, co jsme používali dříve měli jsme DNS.
Totéž platí pro dig
a nslookup
- jsou také specifické pro DNS.
Řešení 2:
host
příkaz (spolu s dig
a nslookup
) je součástí bind
Nástroje DNS. Jako nástroj pro překlad DNS provádí překlad DNS sám.
Pokud máte zájem o načtení záznamu z libovolného libnss
-řízené úložiště dat, můžete použít getent
program. Chcete-li získat záznam hostitelů, použijte jej například takto:
getent hosts google.com
Toto se řídí pořadím rozlišení uvedeným v hosts:
v /etc/nsswitch.conf
v pořadí, které zahrnuje /etc/hosts
pokud je "soubory" uvedeno jako jedna z možností.