Possible causes:
1. The onboard Ethernet chip driver. Update the driver.
2. The external connection device (Router/Cable Modem) driver. Update the driver.
It doesn't matter if the device manager says the device is working properly... it's not accurate every time, BUT make sure checking the Connection icon in the Notification Area of the Taskbar.. right click and select Status \ Support \ Details.. you should see the lines populated down to DNS Server. If DNS Server has a IP number, it means you have a limited connection; (Repair the Winsock), if DNS Server doesn't have an IP humber, you don't have a connection (Reset the connection and Repair the Winsock)... both can be done with the application Winsock XP Fix. If it doesn't work (after a restart) proceede to point 3-b
3. The ethernet connection may be corrupted:
a) You may need to reset the Winsock... use
Winsock XP Fix,
b) Or reset the MAC Address. It can be done manually from the Command Prompt (ipconfig /release
ipconfig /renew), from the Device Manager Network Adapters \ Properties \ Advanced \ Network Address \ by default it's on "Not Present"... type a new MAC Address with any combination of letters and numbers 12 in total without dashes... then press OK... the screen will flicker meaning the MAC Adress has been changed (the connection device disabled-reenabled). You can revert the change if it doesn't work, or at any time later even when you have a good connection. Or you can use the application at zokali.com
How to Reset MAC Address of Your Network Adapter
http://www.zokali.com/88-how-to-reset-mac-address-of-your-network-adapter
You may have to restart the computer after every change you make, for it to take effect.
EDIT: adding to point 2.. you can also check if you do have a connection with "ipconfig /all" and "netstat" in a command prompt windows (Start\Run\type CMD)
More usefull information here:
http://stackoverflow.com/questions/382998/repair-network-connections-programatically-from-command-line
http://www.computerhope.com/issues/ch000784.htm