Why does SQL authentication sometimes fail and how can I make it work reliably?
When your machine is not connected to the network, it uses the cached information for authentication purposes.  This is how you can take the laptop home and log on with your domain account.  If you created a login for a domain account while you weren't connected to the domain and then they tried to log in with that account, it would fail because that information doesn't exist on your laptop and it can't reach the domain to authenticate the credentials.  

When you are on the same network as the domain, your machine recognizes this and tries to communicate with the domain controller on regular intervals.  When a communication failure occurs, your local machine is essentially orphaned at that time so any domain resources become unavailable until it can re-establish communication.  If you disable your network connection and log off/on and then try I would bet it works fine.  It might even work if just disable the network, I don't have a laptop to test this out on so I can't say with certainty. This is based on my understanding of Active Directory and experience so it might not be 100% accurate but it is definitely what I have observed.  Like John M suggested, you might want to use a sql login since you are having problems.