Looks like no one’s replied in a while. To start the conversation again, simply ask a new question.

VPN connection - Cisco IPSEC - DNS not updated

I have created a Cisco VPN connection in Network Preferences.


Interface type = VPN
VPN type = Cisco IPSEC

Authentication type=Shared Secret


Connection is working ok, and I am able to connect to my work network over VPN.


But the DNS settings is not updated. When I use the standard Cisco VPN software, my DNS settings are updated (/etc/resolv.conf is changed), When I disconnet my DNS setting is back to normal.


But when I use the built-in VPN client in Snow Lepard, my DNS settings are not updated when I establish the VPN connection. I have tried, in the Advanced section of my VPN profile, to add the DNS servers (it is possible to add DNS servers, DNS resolv domains, and proxy servers), but this does not fix it either.


The built-in VPN client is of no use if it does not update the DNS settings while the connection is active. Our internal servers, and domain, are not placed on a public DNS but internal DNS. And I guess that goes for most of the companies out there.


Can anyone help ? My SL is updated as of July 20th 2011 and running on Apple Macbook Pro from August 2010.

Apple Macbook Pro, Mac OS X (10.6.6)

Posted on Jul 25, 2011 2:59 AM

Reply
10 replies

Oct 24, 2017 11:50 AM in response to OysteinH

2017 and this is still broken in 10.13.0.. I have no words Apple. NO WORDS.


L2TP/IPsec connections are properly set to the top of the DNS priority list while Cisco IPsec connections are not. They don't even appear in the "set service order list" in order to set their priority so the DNS lookups on the Cisco IPsec connections will always fail.


Easy to see the difference with: scutil --dns


I'll open a bugreport with Apple but am NOT holding my breath.

Sep 21, 2011 5:48 PM in response to OysteinH

My understanding is that the DNS settings provided by the VPN endpoint are not merged or inserted in the local TCP stack. As a result, no private host names are resolved.


My workaround for this is to do the following:


In the Network settings, start by duplicating your current location (via "Edit Locations..." menu and in the litle gear menu, invoke "Duplicate Location" and give it a name like "VPN"). I did that initial step because I want to be able to switch back and forth between a VPN-enabled location and my default normal location. If this is not a concern for you, you can skip that initial step. Personally, I don't want my machine to try (and fail) connecting to the private DNS services when I'm not connected.


Once duplicated, switch to it by selecting it in the list. You should see the same list of services in the left panel. Now click the [+] to create a VPN (Cisco IPSec) like you would do normally. Once you entered all required settings, you can Apply the changes and Connect. Once connected to your VPN, you can now do the next steps to fix the host name resolution issue.


Select that VPN service in the left panel and click the Advanced... button in the main dialog in order to see the DNS / Proxies settings. Take note of the listed DNS servers addresses (they should be displayed with a grey colour). You can now cancel that dialog and select your Ethernet service (or Wi-FI service). Click Advanced... on this one and go to its DNS tab, take note again of your current network DNS addresses (again in grey colour). Now is the time to enter all these values in that box. Enter first the VPN DNS addresses and then the non-VPN ones. You can re-order the list with drag & drop too. Once done, you close that dialog and Apply the changes again.


You can now start your browser and test a site living on your private network. Your host's name should be resolved now.


One last note: if your private network has many domains (e.g. *.sub1.company.com, *.sub2.company.com), you may need to add them in the Search Domains box (e.g. sub1.company.com). This is done in the same DNS dialog settings.


Good luck!

Jun 20, 2012 9:52 PM in response to drod66

drod66's technique worked for me: Duplicate "automatic" location, call it "VPN". Create your VPN config only in the "VPN" location. Define your internal (inside VPN) DNS server IP addresses statically in the VPN location and your ISPs DNS server IP addresses statically in the Automatic location.


Remember, you have to hit "apply" when you switch locations, and if you start the VPN in Automatic, it will bomb off when you switch to VPN.


Baffled why this is still broken in 10.7.3. Believe me, it's a PITA to support corporate VPN users which this breakage.


Is it also broken in non-IPSec clients, like OpenVPN, I wonder?

Jul 21, 2016 11:03 AM in response to drod66

BTW-- This worked for me.


However, it is still a work-around that Apple should fix. I really do not want to add manual DNS lists to every wifi location I use.


Alternately, I could beg my company to add internal IP addresses for their internal sites on their external CNAME records... but that is silly.

VPN connection - Cisco IPSEC - DNS not updated

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple ID.