I work as a remote contractor with Contract Company A contracted to Employer B. Employer B has a VPN with various authentication that I use to log into their network.

When I'm working from home and not on the VPN, my DNS server is When I connect to the VPN, my DNS server becomes B's DNS server for both Employer B's intranet names and for internet domain names.

Contract Company A maintains an office that I can go into and work from. When I connect to their network and I'm not on the VPN, I'm connected to A's DNS server for all addresses. When I log on to the VPN, my computer continues to use A's DNS instead of switching over to B.

So when I am on network A VPNed into network B, there are intranet sites on B that I cannot reach from my browser. When I do an nslookup on a couple of different intranet sites, they both point to some address that appears to be external to either network. When I do an nslookup and specify the DNS server to use the VPN's DNS server, they resolve correctly.

How do I change the order in which these resolve, and what governs this? When I was first encountering this problem, I asked both IT departments, and neither had any answer, so I ended up installing Cygwin and figuring out nslookup myself so that I could characterize this problem. Can I fix this locally on my laptop, and if so, how? Or do I need one of these IT departments to change something to fix this, and if so, which one?

Thanks for any help in sorting this out that you can provide.

Notes added in response to comment:

  1. This isn't about round robin load balancing -- both on my home LAN and on my work LAN, which DNS server is used is always consistent.

  2. Where do I adjust the setting for Split Tunneling? And why would it be different depending on which LAN I connect to the VPN through?

  3. I don't have more than one NIC. I have a LAN connection and a VPN.

  4. I am sending short names in all cases. Whenever I have network B's DNS server selected as the default or I specifically point nslooklup at that DNS server, it is expanded correctly. On network A's DNS, it is not expanded.

  • you cannot, at least not on Windows or linux. DNS server addresses are round-robin load balanced, if there is more than one. In your VPN client, is Split Tunneling enabled? if so, disable it. traffic may be going out the wrong NIC (which has A's DHCP settings, not B's). Also, have you confirmed that its actually the server address that is the problem? often the issue is DNS "Seach Domains" which resolve short-names like server1 to long names server1.organizationA.com. if you are supplying the wrong DNS suffix to the DNS query, you might end up asking for the wrong domain. – Frank Thomas Dec 17 '15 at 23:04
  • 1. This isn't a question of round robin load balancing -- both on my home LAN and on my work LAN, which DNS server is used is always consistent. – Tess N Dec 18 '15 at 1:09
  • When you VPN from A to B, try connecting to a device in A by its IP address. does it work? Most traditional VPN clients attach a workstation to the remote network at Layer2, so its like your machine is physically on the remote network, and no longer a part of the network its physically connected to. When that happens, you completely lose the ability to talk to hosts on A at all. Is that true in your case? – Frank Thomas Dec 18 '15 at 3:01

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Browse other questions tagged or ask your own question.