I had the exact same problem. I've been doing a lot of traveling and usually leave the MacBook Pro on, but this time I shut it off before going to the airport for the last leg of a trip home. When I got home and booted up, I couldn't get a (real) IP address on either the Airport or the ethernet connection, even though other devices on the same network had no problem. One caveat, though - be sure to turn off (and delete?) the Airport and ethernet connections in Network Preferences before deleting /Library/Preferences/SystemConfiguration/com.apple.airport.preferences.plist and /Library/Preferences/SystemConfiguration/com.apple.network.identification.plist . Otherwise the files will be regenerated with the old (incorrect?) data when you shut the system down.
This is with Mac OS X 10.5.8 on a (late 2008) MacBook Pro.
To reiterate, this is what I did:
Go to SystemPreferences->Network, in the left column highlight Airport, then at the bottom of the column pull down the tools list and select "Make Service Inactive". Do the same for "Ethernet" if it's giving you problems. Then delete both Airport and Ethernet.
Open a terminal window,
cd /Library/Preferences/SystemConfiguration
sudo rm com.apple.airport.preferences.plist
sudo rm com.apple.network.identification.plist
Reboot
After reboot, go to SystemPreferences->Network, add Airport and Ethernet to the services, set up for DHCP, then everything works (for me).