Forgive my ignorance but you might have to explain your solution in a more n00b friendly manner
The next time you can't connect, run "ifconfig" on the command line. You should see something like:
Code:
eth0 Link encap:Ethernet HWaddr 00:13:d4:7b:2a:b6
inet addr:10.221.212.156 Bcast:10.221.212.255 Mask:255.255.255.0
inet6 addr: fe80::213:d4ff:fe7b:2ab6/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:145386142 errors:0 dropped:0 overruns:22613 frame:0
TX packets:19957863 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:251024087 (239.3 MB) TX bytes:4290447913 (3.9 GB)
Interrupt:17
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:905778324 errors:0 dropped:0 overruns:0 frame:0
TX packets:905778324 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2700953286 (2.5 GB) TX bytes:2700953286 (2.5 GB)
See how there is an IP address listed for eth0? Check and see if your interface gets an IP address the next time you have connection issues.