Lion has completely broken DNS resolution
I use a laptop as I frequently migrate between different offices and home.
Since discovering the feature on Tiger I have relied on /etc/resolver files to work around issues in various offices, usually the result of Windows DNS and DHCP servers. As a software developer who before Tiger used Linux exclusively for about 10 years, I also relied on /etc/hosts to intercede for remote DNS resolvers when running application servers locally.
Since installing Lion neither of these systems work at all. Whats more even "normal" DNS resolution is inconsistent from application to application.
For example, given the following output from scutil --dns (set by DHCP client):
dwhitla@dwhitla:~$ scutil --dns
DNS configuration
resolver #1
search domain[0] : secret.com
nameserver[0] : 10.0.1.16
nameserver[3] : 10.0.252.99
resolver #2
domain : local
options : mdns
timeout : 5
order : 300000
resolver #3
domain : 254.169.in-addr.arpa
options : mdns
timeout : 5
order : 300200
resolver #4
domain : 8.e.f.ip6.arpa
options : mdns
timeout : 5
order : 300400
resolver #5
domain : 9.e.f.ip6.arpa
options : mdns
timeout : 5
order : 300600
resolver #6
domain : a.e.f.ip6.arpa
options : mdns
timeout : 5
order : 300800
resolver #7
domain : b.e.f.ip6.arpa
options : mdns
timeout : 5
order : 301000
DNS configuration (for scoped queries)
resolver #1
search domain[0] : secret.com
nameserver[0] : 10.0.1.16
nameserver[1] : 10.0.252.99
if_index : 4 (en0)
flags : Scoped
I get the following behaviour:
dwhitla@dwhitla:~$ nslookup repo.test
Server: 10.0.1.16
Address: 10.0.1.16#53
Non-authoritative answer:
Name: repo.test.secret.com
Address: 10.160.254.100
dwhitla@dwhitla:~$ ping repo.test
ping: cannot resolve repo.test: Unknown host
I could install Bind or dnsmasq but the need for this annoys me. It's acceptable when you're using a free OS but my whole motivation for paying for a Mac and OSX was to spend more time getting work done and less time working around deficiencies in the operating system.
There is also no rational explanation for deliberately reversing the resolver order from that of previous OSX versions.
Apple please fix this.