This causes NetworkManager to split DNS all lookups for these domains to the VPN DNS server, but with the added overhead of searching through all domains for non-existing hostname queries (make sure the primary internal domains are mentioned first). Also, for a multi-city setup like ours, I need to add A LOT of domains to get a functional DNS while on VPN - Including in-addr.arpa specifications for all IP subnets.
So there's a way to sweeten the deal - but this is by no means anything other than a hack.
Unfortunately not much traction here, and this appears to annoy people across distros.
In the meantime, an ugly hack is to manually add all internal domains to the NetworkManager VPN config file's dns-search= parameter:
dns-search= domain1. lan;domain2. lan;domain3. lan;example. com;
This causes NetworkManager to split DNS all lookups for these domains to the VPN DNS server, but with the added overhead of searching through all domains for non-existing hostname queries (make sure the primary internal domains are mentioned first). Also, for a multi-city setup like ours, I need to add A LOT of domains to get a functional DNS while on VPN - Including in-addr.arpa specifications for all IP subnets.
So there's a way to sweeten the deal - but this is by no means anything other than a hack.