6 votos

La resolución de DNS funciona para nslookup pero falla en el navegador al usar openconnect

Tratando de uso openconnect conectarse a Cisco Anyconnect VPN.

Acabo brew install openconnect y el uso de la línea cmd como este:

sudo openconnect --authgroup=VPN-SSL-GRUPO -u FIRST_LAST@domain.com vpn.domain.com

Entonces trato de acceso resource.domain.com nombre de red privada y obtener:

  • en Chrome: DNS_PROBE_FINISHED_NXDOMAIN
  • en la herramienta de Red -> Búsqueda: resource.domain.com -> La operación no pudo ser completado. (kCFErrorDomainCFNetwork de error 2.)

PERO se soluciona cuando utilizo nslookup desde la línea de comandos:

nslookup resource.domain.com
Server:         10.66.0.1
Address:        10.66.0.1#53

Non-authoritative answer:
Name:    resource.domain.com
Address: 10.66.110.24

Me decidí a comprobar el contenido de /ect/resolv.conf:

nameserver 10.66.0.1
nameserver 10.66.0.2
nameserver 192.168.100.1 # (this is the DNS address of my home router)

y ver que requieren direcciones DNS utilizado por nslookup están en su lugar. (Si puedo usar resuelto dirección en el navegador, he conseguido acceder a recursos privados, de modo de enrutamiento funciona bien)

Busqué en google un poco y aprendí que la resolución de DNS no funciona la forma en que se puede esperar de Linux. Hay un scutil de utilidad que pueden ayudar a gestionar el real de la configuración de DNS.

Aquí está una lista de mis configuración de DNS que puedo ver en scutil:

> list .*DNS
  subKey [0] = Setup:/Network/Service/47AA11B0-4713-41EF-B532-FC580ACD3E75/DNS
  subKey [1] = State:/Network/Global/DNS
  subKey [2] = State:/Network/MulticastDNS
  subKey [3] = State:/Network/PrivateDNS
  subKey [4] = State:/Network/Service/47AA11B0-4713-41EF-B532-FC580ACD3E75/DNS
  subKey [5] = State:/Network/Service/utun1/DNS # (this one appears when I am connected using openconnect)

El contenido de State:/Network/Global/DNS y State:/Network/Service/47AA11B0-4713-41EF-B532-FC580ACD3E75/DNS claves del partido y es igual a:

<dictionary> {
  ServerAddresses : <array> {
    0 : 10.66.0.1
    1 : 10.66.0.2
    2 : 192.168.100.1
  }
}

El contenido de State:/Network/Service/utun1/DNS (que sólo existe después de openconnect conexión establecida) es:

<dictionary> {
  DomainName : location.domain.com
  SearchDomains : <array> {
    0 : location.domain.com
  }
  ServerAddresses : <array> {
    0 : 10.66.0.1
    1 : 10.66.0.2
  }
  SupplementalMatchDomains : <array> {
    0 : location.domain.com
  }
}

El otro dns relacionados con las teclas están vacías.

También he intentado ir a Preferencias -> Red -> mi Wy-Fi -> Avanzado y establecer las direcciones DNS manualmente. Todavía no funciona.

Y también aprendí sobre vpnc-script para openconnect. He encontrado ya existía en mi máquina y trató de especificar de forma explícita: --script /usr/local/etc/vpnc-script pero no le ayudan a resolver dominios privados.

Por lo que veo en scutil parece ser configurado correctamente, pero por algunas razones, la resolución de DNS no funciona. Alguna idea de por qué? ¿Qué más puedo comprobar y probar?

3voto

bayer Puntos 4202

Gracias a esta respuesta: https://superuser.com/a/86245/356729

El comando

networksetup -setdnsservers Wi-Fi 10.66.0.1, 10.66.0.2

resuelve el problema. Cuando me desconecto, también tengo que restaurar manualmente la configuración usando:

networksetup -setdnsservers Wi-Fi 192.168.100.1

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X