I ran into the same problem and can be resolved if you have access to the "bindings" on your server (if you have a server)
There is one simple question to answer before you can proceed:
Do you provide your own DNS or is the DNS provided by your hosting provider?
For example (and I am a Microsoft person) if you edit the bindings on the default web you are using, for example, simply remove and portion of the binding that references the http://www.foo.com and simply use the protocol "http", "IP address", and Port "80" DO NOT ADD THE http://WWW.FOO.COM to the bindings. This will allow your hosting provider to the domain name resolution for you.
IF, you provide your own DNS then you will have to edit the bindings in the A table to reflect both http://WWW.FOO.COM and FOO.COM for the proper DNS resolution to your IP address.
How can you tell quickly?
If during your install, http://www.foo.com appeared in the field right below I the MySQL table setting [wp_], then you have your local DNS bindings set, change them.
If in that same step your IP address 10.10.10.1 (for example) and 10.10.10.1 appeared in the field for the name of your blog, then you will need to check with your hosting provider regarding your DNS bindings,
Now, (these do get windy, I'm a network engineer by trade, not a wordpressmu guru, but this fixed my problem) if you check with your hosting provider and they tell you they handle the DNS for you, or have set it to your private domain, you must ask them how to edit the" A" record... with Microsoft it easy to do.... Don't let them give you the run-a-round regarding this simply allow them to handle the DNS for you and have them make the changes....
If you are your own DNS provider (running DNS servers) then you'll need to edit your own DNS records to reflect the http://www.foo.com and foo.com to bind to your IP address... that is the ONLY fix for DNS settings...
email me if you're confused....