Dlaczego wprowadzili tę zmianę, nie wiem, ale doprowadziło mnie to do szaleństwa.
Nie wiem, dlaczego rzeczy działają dla hosta, ale nie pingują, ale myślę, że ma to związek z naturą tych dwóch narzędzi. Ping jest prostym (choć bardzo pomocnym) narzędziem diagnostycznym do upuszczania pakietów na drut, które powinny zostać wysłane do ciebie echem. Funkcja wyszukiwania nazwy hosta jest tylko efektem ubocznym zadania i została przekazana rekurencyjnemu resolverowi systemu (wydaje mi się, że nie sprawdziłem, sprawdzając połączone biblioteki lub coś w tym rodzaju). Głównym zadaniem hosta jest rozpoznawanie nazw DNS, więc implementuje on własny rekurencyjny przelicznik.
Program rekurencyjny resolvera firmy Apple to mDNSResponder. Z jakiegoś powodu wersja mDNSResponder w Lionie potrzebuje opcji wiersza poleceń „-AlwaysAppendSearchDomains”, aby zachowywała się tak, jak w Snow Leopard (przynajmniej).
Oto szybki sposób, aby to naprawić:
sudo sed -i .orig '/ProgramArguments/,/<\/array>/ {
s/\(<string>-launchd<\/string>\)/\1\
<string>-AlwaysAppendSearchDomains<\/string>/
}' /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
(Powinny istnieć dwa znaki tabulacji na początku od ostatniego do ostatniego wiersza powyżej, ale nie mogłem wymyślić, jak zmusić ten mały edytor do wstawiania tabulatorów, więc dodałem 16 spacji. Obie powinny działać, ale tabulatory lepiej dopasuj odstępy w oryginalnym pliku).
Spowoduje to dodanie argumentu „-AlwaysAppendSearchDomains” do pliku listy startowej mDNSResponder (i zapisanie kopii zapasowej), ale ponieważ jest on kontrolowany przez uruchomienie, system musi zostać poinformowany o konieczności ponownego uruchomienia mDNSResponder.
sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
Teraz, jeśli sprawdzisz działający proces mDNSResponder, powinieneś zobaczyć, że działa on z nowym argumentem:
ps auxww | grep mDNSResponder
(Propozycje do http://www.makingitscale.com/2011/fix-for-broken-search-domain-resolution-in-osx-lion.html i http://kavassalis.com/2011/07/wtf-bug -in-os-x-10-7 / , gdzie znalazłem odpowiedzi na ten problem).