6 votos

Compartir la conexión de Internet repartiendo mal la dirección del servidor DNS

Estoy usando un MacBook Pro con OS X Mavericks 10.9.2. Se conecta a internet a través de un USB 3G dongle, y quiero compartir esa conexión a internet a través de wifi. Sin embargo, en los dispositivos que se conectan a la creación de punto de acceso wifi, búsqueda de DNS no funciona (a pesar de que me puede hacer ping a 8.8.8.8 muy bien). Si me estáticamente configurar los dispositivos para el uso 8.8.8.8, todo funciona, pero no todo el dispositivo admite que (o sólo si también estás dispuesto a configurar una dirección IP estática y la puerta de enlace).

El problema parece ser que OS X configura bootp (el servidor DHCP) para entregar una dirección de servidor DNS de la MacBook sí mismo:

$ cat /etc/bootp.list
...
            <key>dhcp_domain_name_server</key>
            <array>
                <string>192.168.2.1</string>
            </array>
...

De hecho esta es la dirección IP de la máquina en sí:

$ ifconfig
...
bridge100: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=3<RXCSUM,TXCSUM>
    ether 02:26:bb:66:19:64
    inet 192.168.2.1 netmask 0xffffff00 broadcast 192.168.2.255
...

Y es lo que los clientes están recibiendo en la respuesta de DHCP:

$ sudo tcpdump -vv
15:26:07.265635 IP (tos 0x0, ttl 255, id 9846, offset 0, flags [none], proto UDP (17), length 328)
    192.168.2.1.bootps > 192.168.2.2.bootpc: [udp sum ok] BOOTP/DHCP, Reply, length 300, xid 0x4e0988af, Flags [none] (0x0000)
      Your-IP 192.168.2.2
      Server-IP 192.168.2.1
      Client-Ethernet-Address 10:bf:48:cc:49:7d (oui Unknown)
      sname "ip-77-24-232-37.web.vodafone.de"
      Vendor-rfc1048 Extensions
        Magic Cookie 0x63825363
        DHCP-Message Option 53, length 1: ACK
        Server-ID Option 54, length 4: 192.168.2.1
        Lease-Time Option 51, length 4: 85536
        Subnet-Mask Option 1, length 4: 255.255.255.0
        Default-Gateway Option 3, length 4: 192.168.2.1
        Domain-Name-Server Option 6, length 4: 192.168.2.1

Ahora, eso estaría bien si realmente trabajado como escrito aquí, es decir, OS X se ejecuta un bind (named) del servidor en sí, que sólo reenvía las solicitudes de DNS y las respuestas a los servidores ISP.

Sin embargo... el uso de tcpdump puedo ver que el cliente es obtener una respuesta de error de sus búsquedas de DNS:

$ sudo tcpdump
15:23:33.181447 IP 192.168.2.2.57291 > 192.168.2.1.domain: 32713+ A? google.com. (28)
15:23:33.181528 IP 192.168.2.1 > 192.168.2.2: ICMP 192.168.2.1 udp port domain unreachable, length 36

De hecho, no named servidor se está ejecutando, y no parece estar instalado:

$ ps aux | grep named
thomas           2175   0.0  0.0  2423368    188 s000  R+    3:14pm   0:00.00 grep named
$ which named
$

Nada más se escucha en el puerto UDP 53, aunque hay una cosa que se llama mDNSResponder en 5353:

$ sudo lsof -i -P | grep 53
mDNSRespo   47 _mdnsresponder    8u  IPv4 0x4dcb7c0f075daa1d      0t0    UDP *:5353
mDNSRespo   47 _mdnsresponder    9u  IPv6 0x4dcb7c0f075da835      0t0    UDP *:5353
natpmpd   1664           root    4u  IPv4 0x4dcb7c0f064b6f15      0t0    UDP 192.168.2.1:5351

Ahora se me ocurren dos maneras de solucionar este problema, ni muy práctico:

  1. La ejecución de algunas de DNS del servidor en el puerto UDP 53. Por desgracia, ninguno está instalado.
  2. Dígale DHCP de la mano de una dirección de servidor DNS que realmente funciona, como 8.8.8.8. Por desgracia, el InternetSharing aplicación sobrescribe /etc/bootp.plist cada vez compartir la conexión de internet está activada, por lo que incluso si se ha agregado una dirección IP e incluso si iba a funcionar, no iba a funcionar para siempre.

Pero algo me dice que esto debe (y normalmente lo hace) funcionan correctamente fuera de la caja... ¿qué me estoy perdiendo?

2voto

ant Puntos 31

El artículo hace referencia era de hecho correcta para cuando fue publicado y que es cómo funciona antes de Mavericks. Bajo la Montaña de Lion 'nombre' conseguir que se pone en marcha cuando el uso Compartido de Internet se activa con /etc/com.apple.nombre.proxy.conf como el archivo de configuración. Todo esto es observable en virtud de la Montaña de Lion - he verificado.

Sin embargo, la resolución del nombre de dominio no está basada únicamente en DNS en OS X como en otros OSen, sino que se basa en los Servicios de Directorio-que permite búsquedas de DNS de tv de archivos, NIS, NetInfo, LDAP, ZeroConfig/Bonjour ... y DNS, y es mDNSResponder que se utiliza para la resolución de estos nombre de vueltas. (Según su página man mDNSResponder is also the system-wide Unicast DNS Resolver. Es lo que es (o debe) hacer la resolución de DNS para su Compartidos por Internet a los clientes en virtud de los Mavericks. (Es extraño que se disparó hasta named bajo el Monte Lion en lugar de utilizar mDNSResponder en ese entonces.)

Cuando Internet está activada la Compartición, ya sea por el nombre (pre-Mavericks) o mDNSResponder (Mavericks) es el "servidor DNS" que debe realizar la resolución de nombres para Compartir la conexión de Internet, y que correctamente hace 192.168.2.1 el servidor DNS para el NAPT ed clientes de Compartir la conexión de Internet. De modo que la recta y simple respuesta a tu pregunta es que no es la entrega de los "mal direcciones de servidor DNS".

Este demostrable trabajado para mí la configuración de uso Compartido de Internet para compartir mi conexión WiFi a través de Ethernet. Los clientes atendidos por Compartir la conexión de Internet envían las peticiones DNS a 192.168.2.1 se observaron para recibir allí las consultas de forma correcta desde un navegador y cuando se emita dig @192.168.2.1 apple.com; he observado esto en acción con tcpdump para verificar. Todo lo que "simplemente funciona" como era de esperar.

Tomo nota de que en esta configuración del hosting Mac yo también soy capaz de telnet 192.168.2.1 53 y conectarse a mDNSResponder. También me nota que tengo la Orden de Servicio para la configuración de redes de conjunto con WiFi tener prioridad sobre el de Ethernet.

Sin embargo, cuando se ejecuta esta en reversa, compartir la conexión de Ethernet a través de WiFi al principio me experimentado el mismo problema que ustedes estaban viendo. Es decir, yo vi la UDP petición DNS envía a través de, pero no hay respuesta de la espalda, justo como la que usted observó. Ping pasa a través de a 8.8.8.8 y en contra de la resolución de 8.8.8.8 usar dig trabajado muy bien también. Estaba todo preparado para escribir esto como un error, pero más tarde tuve la oportunidad de reiniciar mi MacBook Pro y esta probado de nuevo, para asegurar de este tiempo he tenido Ethernet tener prioridad sobre WiFi en la Red con el panel de preferencias de Orden de Servicio. Esta vez es "trabajar" y yo no era capaz de recrear el problema. Problema resuelto por el reinicio y la comprobación de la orden de servicio.

Además he comprobado que pude:

  • Emitir un dig @192.168.2.1 apple.com desde un cliente asignado 192.168.2.3) de Compartir la conexión de Internet y recibir una respuesta satisfactoria. También he observado la UDP de consulta y respuesta mediante tcpdump:

01:01:05.620240 IP 192.168.2.3.58817 > 192.168.2.1.domain: 34923+ A? apple.com. (27) 01:01:06.051566 IP 192.168.2.1.domain > 192.168.2.3.58817: 34923 3/0/0 A 17.149.160.49, A 17.172.224.47, A 17.178.96.59 (75)

  • Desde el alojamiento de Mac fue capaz de telnet 192.168.2.1 53 y recibir una conexión.

Compartir la conexión de Internet siempre ha sido un poco frágil. A menudo he visto raro comportamiento y han descubierto que es mejor para reiniciar antes de intentar ejecutar Compartir la conexión de Internet o, al menos, de Hacer que "[la] Servicio Inactivo" en Preferencias de Red para las interfaces en cuestión y, a continuación, establezca ellos se active de nuevo. (Asegúrese también de "Aplicar" al realizar dichos cambios".) Además de la Orden de Servicio (que controla la puerta de enlace predeterminada) también puede tener un impacto (como sería de esperar.) También puede que desee asegurarse de que está usando el Apple suministra Ubicación "Automático" (o un facsímil razonable). Recuerde cuando depuración también que cada interfaz de red puede tener su propia puerta de enlace y servidor DNS preferido de usar, ya que después de alrededor de Leopardo o algo así.

Así que me gustaría sugerir tres cosas: (1) reiniciar el sistema y confirme su red de servicio orden de precedencia y/o (2) una instalación limpia de Mavericks para ver si esto resuelve sus problemas, así como (3) verifique que usted puede obtener de Internet para Compartir de trabajo donde Ethernet es compartida a través de WiFi y viceversa. Si usted no puede hacer (3) el trabajo, entonces usted necesita para mirar algo específicamente mal configurado en tu Mac y otra vez que sugiere una instalación limpia.

Si usted puede conseguir trabajando para Ethernet -> wi-fi y wi-fi -> Ethernet, esto sugiere algo con el Dongle USB y, quizás, el ajuste de la Orden de Servicio por lo que es una prioridad más alta puede ser necesario.

Asegúrese también de que no tiene ninguna de las reglas de Firewall o se están ejecutando, Little Snitch o cualquier cosa que pueda interferir.

Compartir la conexión de Internet aparece también tiene algunas opciones de depuración si problema

$ /usr/libexec/InternetSharing --help

Estos, y del archivo de registro, junto con el archivo de registro para mDNSResponder, también puede ser útil si usted todavía tiene problemas.

Pero como la respuesta a la pregunta: no Es la entrega de los mal la dirección del servidor DNS DHCP como 192.168.2.1 es el "derecho" servidor DNS para Compartir la conexión de Internet para estar repartiendo basado en cómo se diseña para operar. Y mDNSResponder es lo que debe ser el manejo de DNS en el host que ejecuta Compartir la conexión de Internet en virtud de los Mavericks. No `named es necesario.

2voto

Jordan W. Puntos 1083

El problema parece estar en el lugar que ha disminuido su búsqueda; aunque no es el caso de los clientes de obtener entregó mal la dirección del Servidor DNS, pero se relaciona más con los clientes no ser capaz de utilizar 192.168.2.1 como su Servidor DNS. No está claro cómo tienes los Servidores DNS de la configuración en el sistema haciendo uso Compartido de Internet, pero el problema es probable que dentro de ese reino. Así que con eso, el dchp_domain_name_server dirección IP en bootpd.plist es correcto (al menos normalmente).

Yo recomendaría hacer algunas comprobaciones simples:

Abra Preferencias del Sistema > Compartir, a continuación, compruebe lo siguiente:

  1. Uso compartido de la conexión: Wi-Fi
  2. A los equipos con: Wi-Fi, Ethernet

Si usted llega Ethernet en que usted puede obtener un cuadro de diálogo:

Si usted mira en este puerto, su proveedor de Servicios de Internet puede terminar su servicio para evitar la interrupción de su red.

En algunos casos (si utiliza un módem de cable, por ejemplo), usted puede sin querer afectar a la configuración de red de su proveedor de internet y violar los términos de su contrato de servicio.

No estoy exactamente seguro de lo que significa (aunque me siento violado por mi ISP).

Preferencias Del Sistema > Ajustes De Red > Ethernet/Wi-Fi:

  1. Configurar IPv4 Utilizando DHCP
  2. Entonces bajo Advanced...
  3. Configurar IPv6 Automáticamente

Ficha DNS > Servidores DNS:

(Normally this would be set to your Router IP from the previous TCP/IP Tab:
Router: ... (3G USB Dongle IP Address)

/etc/bootpd.lista

  1. Dejar De Compartir La Conexión De Internet.
  2. Abrir /tmp/bootpd.plist
  3. Busque esta clave:

<key>reply_threshold_seconds</key> <integer>4</integer>

  1. Cambie el valor 4 a 0
  2. Iniciar El Uso Compartido De Internet.

*Como saber cuando el uso Compartido de Internet se detuvo borra la configuración. Una posible solución sería la creación de un cron job o launchagent que siempre mantener su configuración. También hay bastantes opciones para bootpd que se puede ejecutar a través de Terminal que no puede ser consciente.

Otras notas:

  • Compruebe el dispositivo/equipo(s) en 192.168.2.2, etc. no están bloqueando 192.168.2.1
  • Es posible que si el OS X interno firewall está habilitado, OS X hacia adelante y recibe las solicitudes de la Internet a los dispositivos/equipos de uso Compartido de Internet, pero no podría avanzar en las respuestas a ellos (DNS).
  • Configurar dispositivos/equipos para utilizar una dirección IP estática, y el servidor DNS(s) otras que 192.168.2.1 (pero puede no ser una solución óptima como has dicho). También, en ciertas circunstancias, la configuración de IP estática no puede trabajar (DHCP se recomienda generalmente para Compartir la conexión de Internet y por defecto).
  • Algunas 3G USB Dongles/Routers tienen un ajuste AP Isolation, que debe ser deshabilitado para Compartir la conexión de Internet.

Sé que no eres un n00b y probablemente ya hayan comprobado que muchas de estas cosas, sin embargo, podría ser sólo una pequeña cosa que usted puede haber perdido en el camino, tal vez. Además, si ninguna de estas cosas simples que parecen hacer mella en la solución del problema hay más comandos específicos que podría proporcionar a la espera del resultado.

0voto

Rich Puntos 2429

Esta línea dentro de su tcpdump es la respuesta:

15:23:33.181528 IP 192.168.2.1 > 192.168.2.2: ICMP 192.168.2.1 udp port domain unreachable, length 36

Esto significa que su Firewall u otro software jugando el mismo papel o el manual de configuración de /etc/pf.conf bloqueado su petición DNS de llegar a su MBP.

Desactivar cualquier función de filtrado de una en una hasta encontrar la que uno es el bloqueo. Una vez encontrado, configurarlo correctamente.

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