Try Control Panel -> Troubleshooter -> Network Adapter, when it goes wrong, Then try Internet Connection and so on, try to determine, where the problem is.
Also you could try opening a command prompt (CMD) and type ipconfig, to determine your IP address (when the system is functioning), then when it fails try to ping'ing your router's IP address, if this works, it is DNS.