I struggled many days and tried different ways I could imagine, even bough a new router, problem still unresolved.
Today, I tried to check /var/log/system.log and found lots of error messages like:
Feb 9 01:10:06 li-mac-2 mDNSResponder[22]: AppendDNSNameString: Illegal empty label in name "."
Feb 9 01:10:06 li-mac-2 mDNSResponder[22]: RegisterSplitDNS: bad domain .
Then I Googled the keywords:mDNSResponder[22]: RegisterSplitDNS: bad domain . and found a hint at:
http://discussions.apple.com/message.jspa?messageID=6911574
Followed suggestion from the site, I finally managed to resolve my issue. Since the DNS error msg is gone, my MacBook Pro could do 14Mbps on wifi.
Here's summary of what I did:
1. run scutil --dns and saw something like:
DNS configuration
resolver #1
nameserver[0] : 192.168.0.1
order : 200000
resolver #2
domain : .
options : pdns
timeout : 5
order : 150000
resolver #3
domain : local
options : mdns
timeout : 2
order : 300000
...
2. Open Keychain Access
3. Click on System at left side
4. Find and delete item named DNS Key
5. Reboot
6. Problem resolved!
