este é o mesmo problema que aqui: Obtendo o vconn openconnect para funcionar através do gui , mas minhas adições foram excluídas e me pediram para criar uma nova pergunta.
de fato, há um número de pessoas fazendo perguntas semelhantes aqui, todas com 0 respostas.
versões do software: ubuntu 14.04, openconnect 5.02
principal problema: estou tentando adicionar uma conexão vpn ao gerenciador de rede, usando o openconnect. quando eu forneço meu nome de usuário e senha vpn, ele se conecta com sucesso, mas não consigo resolver dns.
se eu executar o openconnect no terminal via sudo, o dns funciona.
sudo openconnect -u <username> https://<vpn concentrator name>
mais detalhes:
1a. ao se conectar via openconnect e network-manager, mesmo que eu tenha explicitamente adicionado dns e um domínio de busca sob a aba ipv4, somente o domínio de busca termina em /etc/resolv.conf. Mesmo que eu não forneça DNS e procure domínios, eu posso ver nos logs que está obtendo essa informação do concentrador de VPN. novamente, o domínio de pesquisa é atualizado corretamente. [log abaixo]
1b. ao se conectar via sudo on em um terminal, o resolv.conf é preenchido corretamente com dns e domínios de pesquisa, mesmo que eu não tenha adicionado essas informações na linha de comando ou fornecido um caminho para um script vpnc. deve estar recebendo do concentrador de vpn. [log também abaixo]
2a. ao conectar via openconnect e network-manager, uma nova interface 'vpn0' é criada.
2b. ao conectar via sudo e linha de comando, uma nova interface 'tun0' é criada.
log ao conectar-se através do gerenciador de rede:
NetworkManager[784]: <info> Starting VPN service 'openconnect'...
NetworkManager[784]: <info> VPN service 'openconnect' started (org.freedesktop.NetworkManager.openconnect), PID 4513
NetworkManager[784]: <info> VPN service 'openconnect' appeared; activating connections
NetworkManager[784]: <info> VPN plugin state changed: init (1)
é aqui que ele pede minha senha
NetworkManager[784]: <info> VPN plugin state changed: starting (3)
NetworkManager[784]: SCPlugin-Ifupdown: devices added (path: /sys/devices/virtual/net/vpn0, iface: vpn0)
NetworkManager[784]: SCPlugin-Ifupdown: device added (path: /sys/devices/virtual/net/vpn0, iface: vpn0): no ifupdown configuration found.
NetworkManager[784]: <warn> /sys/devices/virtual/net/vpn0: couldn't determine device driver; ignoring...
NetworkManager[784]: <info> VPN connection '<connection name>' (Connect) reply received.
openconnect[4544]: Attempting to connect to server <ip address>:443
openconnect[4544]: SSL negotiation with <correctly identified vpn server>
openconnect[4544]: Connected to HTTPS on <correctly identified vpn server>
openconnect[4544]: Got CONNECT response: HTTP/1.1 200 OK
openconnect[4544]: CSTP connected. DPD 30, Keepalive 20
NetworkManager[784]: <info> VPN connection '<connection name>' (IP Config Get) reply received.
NetworkManager[784]: <info> VPN connection '<connection name>' (IP4 Config Get) reply received.
NetworkManager[784]: <info> VPN connection '<connection name>' (IP6 Config Get) reply received.
NetworkManager[784]: <info> VPN Gateway: <ip address>
NetworkManager[784]: <info> Tunnel Device: vpn0
NetworkManager[784]: <info> IPv4 configuration:
NetworkManager[784]: <info> Internal Address: 10.xxx.xxx.xxx
NetworkManager[784]: <info> Internal Prefix: 19
NetworkManager[784]: <info> Internal Point-to-Point Address: 10.xxx.xxx.xxx
NetworkManager[784]: <info> Maximum Segment Size (MSS): 0
NetworkManager[784]: <info> Forbid Default Route: no
NetworkManager[784]: <info> Internal DNS: <ip address>
NetworkManager[784]: <info> Internal DNS: <ip address>
NetworkManager[784]: <info> DNS Domain: '(none)'
NetworkManager[784]: <info> IPv6 configuration:
NetworkManager[784]: <info> Internal Address: <ipv6 ip>
NetworkManager[784]: <info> Internal Prefix: 64
NetworkManager[784]: <info> Internal Point-to-Point Address: <ipv6 ip>
NetworkManager[784]: <info> Maximum Segment Size (MSS): 0
NetworkManager[784]: <info> Forbid Default Route: no
NetworkManager[784]: <info> DNS Domain: '(none)'
openconnect[4544]: Connected vpn0 as <ip address> + <ipv6 ip>, using SSL
openconnect[4544]: Established DTLS connection (using OpenSSL)
NetworkManager[784]: <info> VPN connection '<connection name>' (IP Config Get) complete.
NetworkManager[784]: <info> Policy set '<connection name>' (vpn0) as default for IPv4 routing and DNS.
NetworkManager[784]: <info> Policy set '<connection name>' (vpn0) as default for IPv6 routing and DNS.
NetworkManager[784]: <info> Writing DNS information to /sbin/resolvconf
dnsmasq[1027]: setting upstream servers from DBus
dnsmasq[1027]: using nameserver 127.0.0.1#53 for domain 10.in-addr.arpa
dnsmasq[1027]: using nameserver 127.0.0.1#53 for domain <home search domain>
dnsmasq[1027]: using nameserver 127.0.0.1#53 for domain <vpn search domain>
dnsmasq[1027]: using nameserver <ip address>#53 for domain 10.in-addr.arpa
dnsmasq[1027]: using nameserver <ip address>#53 for domain <home search domain>
dnsmasq[1027]: using nameserver <ip address>#53 for domain <vpn search domain>
dnsmasq[1027]: using nameserver <ip address>#53 for domain 10.in-addr.arpa
dnsmasq[1027]: using nameserver <ip address>#53 for domain <home search domain>
dnsmasq[1027]: using nameserver <ip address>#53 for domain <vpn search domain>
dbus[471]: [system] Activating service name='org.freedesktop.nm_dispatcher' (using servicehelper)
NetworkManager[784]: <info> VPN plugin state changed: started (4)
NetworkManager[784]: keyfile: updating /etc/NetworkManager/system-connections/<connection name>-6a503043-13b0-4ce7-9749-29cd3054cae3
dbus[471]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'
apesar de todo o ruído no log sobre a atualização do resolv.conf, ele remove os servidores de nomes, mas não os substitui pelos endereços IP no log. Ele atualiza o domínio de pesquisa corretamente, portanto, é provável que não seja emitido um problema de permissão.
log ao conectar usando o sudo openconnect no terminal:
NetworkManager[784]: SCPlugin-Ifupdown: devices added (path: /sys/devices/virtual/net/tun0, iface: tun0)
NetworkManager[784]: SCPlugin-Ifupdown: device added (path: /sys/devices/virtual/net/tun0, iface: tun0): no ifupdown configuration found.
NetworkManager[784]: <warn> /sys/devices/virtual/net/tun0: couldn't determine device driver; ignoring...
dbus[471]: [system] Activating service name='org.freedesktop.hostname1' (using servicehelper)
kernel: [ 3258.725774] systemd-hostnamed[4927]: Warning: nss-myhostname is not installed. Changing the local hostname might make it unresolveable. Please install nss-myhostname!
dbus[471]: [system] Successfully activated service 'org.freedesktop.hostname1'
nada sobre a atualização do resolv.conf e, ainda assim, atualiza corretamente os servidores de nomes e o domínio de pesquisa.
atualização
se eu ignorar todos os avisos no resolv.conf e adicionar os servidores de nomes do concentrador vpn a ele, sou instantaneamente capaz de navegar. É claro que, assim que eu me desconectar, essas alterações serão sobrescritas.
houve um bug neste , em 2012, mas expirou. o problema parece ser o script vpnc.
Eu tentei atualizar manualmente meus scripts vpnc para as versões mais recentes, mas sem sucesso.
algumas pesquisas adicionais até que a partir de 12.04 resolv.conf não é mais onde os servidores de nomes vão para a resolução de DNS ao usar o gerenciador de rede. é por isso que funciona quando uso a linha de comando, mas não quando uso o network-manager. em vez disso, o servidor de nomes 127.0.1.1 [dnsmasq] é adicionado e esse servidor de nomes é informado dos endereços IP dos verdadeiros servidores de nomes.
A grande vantagem é que, se você se conectar a uma VPN, em vez de ter todo o tráfego DNS roteado pela VPN como no passado, você só enviará consultas DNS relacionadas à sub-rede e aos domínios anunciados pela VPN.
atualização
desabilitar o dnsmasq como explicado no link acima resolve o problema porque o /etc/resolv.conf está preenchido.
esta não é uma solução real, embora seja uma alternativa.