Estoy usando una MacBook con Mac OS X 10.8.2 y me conecto a la red de mi empresa a través de VPN. Todo funciona muy bien al establecer la conexión VPN a través de LAN o WLAN. Sin embargo, cuando utilizo una conexión de acceso telefónico (Huawei HSDPA USB Stick), los nombres de host no se resuelven correctamente en las aplicaciones (por ejemplo, el navegador web). Las herramientas de línea de comandos como host name
resolverán correctamente la dirección IP, ping name
no resolverán.
Usando scutil --dns
volqué la configuración de DNS cuando me conecté a través de WLAN en lugar de acceso telefónico. Hay una diferencia notable en el orden de búsqueda:
connecting using WLAN:
resolver #1
nameserver[0] : 192.168.80.10
nameserver[1] : 192.168.80.24
if_index : 6 (ppp0)
reach : Reachable,Transient Connection
order : 100000
resolver #2
nameserver[0] : 192.168.80.10
nameserver[1] : 192.168.80.24
if_index : 6 (ppp0)
reach : Reachable,Transient Connection
order : 200000
resolver #3
domain : local
options : mdns
timeout : 5
order : 300000
resolver #4
domain : 254.169.in-addr.arpa
options : mdns
timeout : 5
order : 300200
resolver #5
domain : 8.e.f.ip6.arpa
options : mdns
timeout : 5
order : 300400
resolver #6
domain : 9.e.f.ip6.arpa
options : mdns
timeout : 5
order : 300600
resolver #7
domain : a.e.f.ip6.arpa
options : mdns
timeout : 5
order : 300800
resolver #8
domain : b.e.f.ip6.arpa
options : mdns
timeout : 5
order : 301000
DNS configuration (for scoped queries)
resolver #1
nameserver[0] : 192.168.1.1
if_index : 4 (en0)
flags : Scoped
reach : Reachable,Directly Reachable Address
resolver #2
nameserver[0] : 192.168.80.10
nameserver[1] : 192.168.80.24
if_index : 6 (ppp0)
flags : Scoped
reach : Reachable,Transient Connection
La conexión ppp0 es la conexión VPN. Como puede ver, dos servidores están conectados y responden correctamente en la línea de comando y en las aplicaciones.
Connecting via UMTS:
resolver #1
nameserver[0] : 139.7.30.126
nameserver[1] : 139.7.30.125
if_index : 6 (ppp0)
reach : Reachable,Transient Connection
order : 100000
resolver #2
nameserver[0] : 192.168.80.10
nameserver[1] : 192.168.80.24
if_index : 7 (ppp1)
reach : Reachable,Transient Connection
order : 100000
resolver #3
nameserver[0] : 192.168.80.10
nameserver[1] : 192.168.80.24
if_index : 7 (ppp1)
reach : Reachable,Transient Connection
order : 200000
resolver #4
domain : local
options : mdns
timeout : 5
order : 300000
resolver #5
domain : 254.169.in-addr.arpa
options : mdns
timeout : 5
order : 300200
resolver #6
domain : 8.e.f.ip6.arpa
options : mdns
timeout : 5
order : 300400
resolver #7
domain : 9.e.f.ip6.arpa
options : mdns
timeout : 5
order : 300600
resolver #8
domain : a.e.f.ip6.arpa
options : mdns
timeout : 5
order : 300800
resolver #9
domain : b.e.f.ip6.arpa
options : mdns
timeout : 5
order : 301000
DNS configuration (for scoped queries)
resolver #1
nameserver[0] : 192.168.80.10
nameserver[1] : 192.168.80.24
if_index : 7 (ppp1)
flags : Scoped
reach : Reachable,Transient Connection
resolver #2
nameserver[0] : 139.7.30.126
nameserver[1] : 139.7.30.125
if_index : 6 (ppp0)
flags : Scoped
reach : Reachable,Transient Connection
Esta vez, ppp1 es la conexión VPN y ppp0 es la conexión UMTS. De los tiempos de respuesta de los comandos (usando el nombre de host no existente foo.bar.local
) infiero que ping
usa la primera cadena de resolución, mientras que host
usa la configuración de consulta con ámbito. ping
tarda 5 segundos en devolver "Anfitrión desconocido", host
vuelve inmediatamente. Supongo que el ping se ejecuta en el tiempo de espera de 5 segundos de la resolución mdns.
Para solucionar mi problema con las búsquedas de DNS rotas al marcar a través de VPN por módem, necesito cambiar el orden de los resolutores. Hasta ahora no he encontrado una manera de hacer esto.
Cualquier idea es bienvenida.
Tuve el mismo problema en mi Mac, y después de solucionarlo, descubrí que fue causado por FortiClient (cliente VPN). Incluso cuando se desconectó FortiClient, su DNS aún aparecía en el scutil.
La solución para mí fue:
scutil
> list ".*DNS"
Esto le mostrará una lista de todas las configuraciones de DNS, que se parecerá a:
subKey [0] = State:/Network/Global/DNS <br>
subKey [1] = State:/Network/MulticastDNS<br>
subKey [2] = State:/Network/OpenVPN/DNS<br>
subKey [3] = State:/Network/OpenVPN/OldDNS<br>
subKey [4] = State:/Network/PrivateDNS<br>
subKey [5] = State:/Network/Service/forticlientsslvpn/DNS <br>
Para verificar cada uno de ellos, ejecute: (hasta que encuentre el problemático)
> get key_name
> d.show
…y para arreglarlo ejecuta:
> get key_name
> d.remove ServerAddresses
> set key_name
Así es como se veía en mi máquina:
> get State:/Network/Service/forticlientsslvpn/DNS
> d.show
<dictionary> {
ServerAddresses : <array> {
0 : 192.168.30.6
1 : 192.168.30.15
}
SupplementalMatchDomains : <array> {
0 :
}
SupplementalMatchOrders : <array> {
0 : 100000
}
}
> d.remove ServerAddresses
> d.show
<dictionary> {
SupplementalMatchDomains : <array> {
0 :
}
SupplementalMatchOrders : <array> {
0 : 100000
}
}
> set State:/Network/Service/forticlientsslvpn/DNS
> exit
Esto todavía está sucediendo en 10.13.0
He abierto un informe de error con Apple. No es normal que "ping internalhostname" funcione, pero "host internalhostname" o "nslookup internalhostname" fallan con las VPN de túnel dividido (basadas en Cisco IPSec o IKEv2).
Además, como algunos han notado, las conexiones Cisco IPsec, así como las conexiones IKEv2, no se pueden priorizar con "Establecer orden de servicio", a diferencia de L2TP/IPsec, que sí se puede.
Otro punto que me gustaría mencionar es que las VPN IPSec o IKEv2 de túnel dividido de Cisco no muestran ningún servidor DNS o dominios de búsqueda en su configuración avanzada, aunque esta información aparece con "scutil --dns". Las VPN L2TP/IPsec muestran bien esta información.
Algo tiene que ceder y Apple necesita proporcionar alguna explicación/solución.
Encontré una solución alternativa: el DNS de su VPN seguirá siendo ignorado, y solo se usará el DNS del dongle 3G, pero simplemente agregar su DNS de la VPN a la lista en la interfaz 3G hace el truco... El problema principal es que el administrador de conectividad 3G sobrescribe la configuración cada vez hace clic en conectar y necesita el administrador de conectividad para habilitar Radio en el dongle 3G... así que mezclé ambas soluciones en una:
Conéctese a su VPN y anote su DNS (tengo 2 en la lista). Puede comprobarlo en Preferencias de red → Avanzado → pestaña DNS. Desconecte la VPN. Debe conectarse a VPN porque el DNS se asigna dinámicamente al conectarse...
Conéctate a tu 3G y haz lo mismo: escribe el DNS en un papel. Luego desconecte 3G.
Vaya a Preferencias de red → haga clic en Interfaz 3G → Avanzado → Pestaña DNS, y en la tabla DNS (que normalmente estará vacía ya que no está conectado), haga clic en '+'. Agregue todos los servidores DNS (los de 3G primero y luego agregue VPN más tarde). Haga clic en Aceptar y Aplicar.
De ahora en adelante , para conectarse a 3G, simplemente conecte su USB y espere hasta que tenga cobertura 3G (deberá abrir el administrador de conectividad 3G), pero no use el administrador de conectividad suministrado para conectarse. Y si se conecta automáticamente, ve a preferencias y desmarca esa marca. Necesita ese administrador solo para encender la radio en el Dongle USB, nada más.
Si hace clic en "conectar" en su administrador 3G, sobrescribirá la configuración en su interfaz 3G y deberá repetir el paso 3 nuevamente.
Vaya a Red → Preferencias y haga clic en la interfaz 3G. Luego haga clic en conectar. Se conectará a su 3G utilizando los servidores DNS configurados (en lugar de recibidos dinámicamente), que incluyen tanto el DNS "público" como el DNS de su VPN.
Conéctese a su VPN. Funcionará como se esperaba.
Solo tenga en cuenta que:
Si su VPN DNS cambia, debe cambiarlo manualmente. Esto se puede verificar fácilmente en Red → Interfaz VPN w Avanzado → pestaña DNS ya que su VPN DNS todavía está asignado dinámicamente a la interfaz (aunque OS X lo ignora).
Si su DNS 3G cambia (poco probable), también debe cambiarlo manualmente. Si algo sale mal y no puede navegar, debe pasar por su administrador de conectividad 3G, hacer clic en "Conectar" y ver qué DNS se asignan dinámicamente... Eso requerirá que vuelva al paso 3 y lo reconfigure.
Tuve el mismo problema durante mucho tiempo, pero ahora tuve tiempo de encontrar una solución que funcione para mí. No cambié el orden del servidor DNS, pero estoy usando el servidor DNS detrás de la VPN de forma permanente.
Conéctese a través de acceso telefónico.
Conecte la conexión VPN y copie las direcciones IP del servidor DNS y el dominio de búsqueda desde Conexión VPN → Avanzado → DNS.
Desconecte la conexión VPN.
Haga ping <name>
o <hostname>
de su servidor VPN y anote la IP.
Desconecte la conexión de acceso telefónico.
Duplique la conexión de acceso telefónico (por ejemplo, asígnele el nombre "3G para VPN").
Ingrese las direcciones IP y el dominio de búsqueda en la pestaña DNS de la conexión de acceso telefónico. Se almacenarán y utilizarán de forma permanente.
Conéctese a través de la nueva conexión de acceso telefónico.
Ahora no tiene acceso a los servidores de nombres (porque están protegidos por la VPN); debe editar la dirección del servidor de la conexión VPN. Reemplace el host por la IP.
Conéctese a través de una conexión VPN y debería poder usarlo.
Nota: En general, los nombres de host no cambian, pero las direcciones IP sí. Así que si no funciona algún día, vuelve a hacer los pasos...
Intente cambiar el orden de las entradas de DNS en el panel de preferencias Red:
Abra Preferencias del sistema → Red .
Seleccione su servicio de red en la lista de la izquierda.
Desbloquee el panel de preferencias usando el candado en la esquina inferior izquierda.
Haga clic en Avanzado... y elija la pestaña DNS .
Cambie el orden de los servidores DNS arrastrándolos hacia arriba o hacia abajo.
lo que dijiste me dio una pista, así que agregué la ip dns en la conexión vpn a la lista dns en la conexión principal (nada especial, solo usando la interfaz gráfica para las preferencias de red). No estoy seguro si lo que estamos tratando es diferente, pero funcionó conmigo.
No funciona en Lion/Mountain Lion, debido a un error que provoca que el servidor DNS local se utilice siempre en lugar del servidor DNS de la red remota, incluso cuando el DNS dividido está configurado correctamente en el enrutador VPN.
Sin embargo, si utiliza un enrutador Cisco ASA IPSEC, puede forzar el uso de servidores DNS remotos siempre que establezca una conexión VPN:
Si utiliza Cisco ASDM, vaya a Configuración > Acceso a la red (cliente) > Políticas de grupo > (su grupo vpn para OSX/iPhones) > Avanzado > Túnel dividido
Allí configurado: nombres DNS (desmarque "heredar" y defina los nombres de dominio dns internos, por ejemplo, myoffice.local) Enviar todas las búsquedas de DNS a través del túnel: configure SÍ (esta es la configuración importante)
Guárdalo y no olvides guardarlo en el flash para usarlo en el futuro.
Si utiliza la línea de comandos de IOS, configure:
group-policy <your-tunnel-group-name> attributes
split-dns value myoffice.local
split-tunnel-all-dns enable`
Puede solucionar esto ajustando el orden de servicio de las conexiones de red. Mueva VPN a la parte superior de la lista y seguirá el orden de resolución.
http://support.apple.com/kb/PH14006
Contenido del enlace encontrado en https://web.archive.org/web/20170828193724/https://support.apple.com/kb/PH14006?locale=en_US y duplicado aquí:
OS X Mavericks: cambie la prioridad de sus conexiones de red
Este artículo ha sido archivado y Apple ya no lo actualiza.
Si se conecta a Internet oa una red de varias maneras diferentes (usando Wi-Fi o Ethernet, por ejemplo), puede cambiar el orden de las configuraciones de puertos de red que su computadora intenta cuando se conecta a Internet oa una red.
Si hay varias configuraciones de puerto de red activas cuando intenta conectarse, OS X prueba primero con la que está en la parte superior de la lista y luego prueba con las otras configuraciones de puerto en orden descendente.
Si se conecta a Internet mediante una red privada virtual (VPN) y seleccionó "Enviar todo el tráfico a través de una conexión VPN" en el panel de opciones avanzadas de las preferencias de VPN, no necesita mover el servicio VPN a la parte superior de la lista.
Fecha de publicación: 20 de octubre de 2015
mcdado
scutil --dns
comandos anteriores y parece que el DNS de la VPN siempre es el último y no se usa para el dominio de búsqueda, incluso si se configura correctamente.