Generally I am developing in a virtual enviornment, normally VMWare. I had difficulty working away from the office through the company VPN. I also had difficulties authenticating as we had a seperate development domain. This post explains the sets to setup the VPN configuration and process for logging in.
Note: This assumes your company as already setup a working VPN and you are authorised to use it.
My first issue was DNS, (most likely due to my second domain). I needed to set the dns server in the VPN connections.
Firstly (if you havn't already) create a new VPN connection in your GUEST OS. Then right click on it and select properties. Click Properties, Networking. Then double click the "Internet Protocol (TCP/IP)" item. Select Use the Following DNS Server and enter the IP Address the DNS server on your network. (By default your VM will pickup your ISP's DNS Server), click ok and that part is done.
Then, log off your VM, and in the Logon screen check the "Connect using a dial-up connection". Enter your credentials, click ok, choose your VPN connection, click Connect, wait a bit and you should be good. The thing is, if you login without the VPN active, windows uses your cached credentials, then even if you start your VPN, it won't authenticate properly with the DC.
However there are a few things that might cause problems such as time differences on your VM and the Server. The time on your VM needs to be pretty close to the servers. If you can't login due to that type of error, just login without using the Dialup connection option, (You may need to hang up the connection first by trying to login again and clicking the "Hang Up" button). Then start your VPN Connection, remote desktop to the IP address of your DC and compare the time and date of your PC and the DC. Make them the same, log off and re try the login process.