VPN, dnsmasq, and private domains



Hello,

When I connect to my office VPN with NetworkManager and OpenConnect I have some problems with the office network because I can't resolve some private domains.

I'm running a fresh install of Ubuntu 13.04 which came with NetworkManager 0.9.8.0 and OpenConnect 4.07. Out of the box, NetworkManager comes set up with dnsmasq.

I think my trouble is in nm-dns-dnsmasq.c line 275 and in the add_ip4_config subroutine:

        /* Use split DNS for VPN configs */
        for (iter = (GSList *) vpn_configs; iter; iter = g_slist_next (iter)) {
                if (NM_IS_IP4_CONFIG (iter->data))
                        add_ip4_config (conf, NM_IP4_CONFIG (iter->data), TRUE);

If I understand the code right, NetworkManager will only use the servers advertised by the VPN for domains (or "searches") that are advertised by the VPN, and I suspect in my case the VPN doesn't advertise the private domains that are causing the problems?

Here is the output of "openconnect -s env -v vpn2.gov.bc.ca":

   http://nottheoilrig.com/networkmanager/201306210/stdout

I'm having problems resolving names like "example.bcgov" and I don't see "bcgov" anywhere in the "openconnect" output.

1) Is it possible that the VPN does advertise the "bcgov" private domain and "openconnect" just isn't printing it?

2) Otherwise, if "openconnect" is printing all the data from the VPN, would you say the VPN is misconfigured? Must a VPN advertise all private domains?

3) If the VPN is not misconfigured, how can NetworkManager avoid these problems? In my case it seems like NetworkManager needs to use the VPN servers for all DNS traffic?

Thanks!


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]