I fixed the problem. If you have booted Windows Xp in the last 6 hours or so, you must release the DHCP lease with the Windows command "ipconfig /release". You may also need to disconnect the ethernet or turn off the computer, not sure. It might be OK if you were only briefly in Windows, so that maybe it didn't obtain a new lease.

Now that we know the specific source of this problem, is there some way to have Linux take care of this by itself, especially for the live CD/DVDs that Windows users might try? ifdown eth0, ifup eth0 didn't work. It seems that if there is an active DHCP lease iniated by Windows, Linux can't deal with it. Vice versa is not a problem at all.

This explains the situation.
http://www.janmaes.com/?page=36