¿Cómo arreglar el uso compartido de Internet que no enruta paquetes excepto DNS?

3

Tengo un Mac mini con 10.8.2. Se conecta a internet a través de Wi-Fi y todo parece funcionar. Quiero hacer que este Wi-Fi esté disponible para otra computadora que se conecta a la Ethernet del mini.

Mi enrutador de Wi-Fi está en 10.0.0.1 .

He experimentado con un montón de configuraciones estáticas y dinámicas. Esto es lo que tengo actualmente:

mini
Static IP: 192.168.2.1
Netmask:   255.255.255.0
Router:    10.0.0.1

El uso compartido de Internet está configurado para ir de Wi-Fi a Ethernet. En esta configuración:

  1. El mini servirá la dirección DHCP a través de Ethernet.
  2. El mini proporcionará la resolución de DNS a través de Ethernet.
  3. El mini NO direccionará paquetes para hosts externos.
  4. La computadora conectada puede ping o ssh a la mini.
  5. La computadora conectada puede resolver DNS.
  6. La computadora conectada no puede ping el enrutador, Google o cualquier otra computadora externa.

Aquí hay un pequeño volcado de cosas esperanzadamente útiles desde la línea de comandos:

boots@eiji:~$ ps ax | egrep '(bootp|natp)'
52502   ??  S      0:00.01 bootpd -d -P
52503   ??  S      0:29.94 natpmpd -d -y bridge0 en1
53729 s001  S+     0:00.00 egrep (bootp|natp)
boots@eiji:~$ ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
    options=3<RXCSUM,TXCSUM>
    inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 
    inet 127.0.0.1 netmask 0xff000000 
    inet6 ::1 prefixlen 128 
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
    options=2b<RXCSUM,TXCSUM,VLAN_HWTAGGING,TSO4>
    ether 3c:07:54:58:2f:9c 
    media: autoselect (none)
    status: inactive
en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    ether 68:a8:6d:58:06:e7 
    inet6 fe80::6aa8:6dff:fe58:6e7%en1 prefixlen 64 scopeid 0x5 
    inet 10.0.0.145 netmask 0xffffff00 broadcast 10.0.0.255
    media: autoselect
    status: active
p2p0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 2304
    ether 0a:a8:6d:58:06:e7 
    media: autoselect
    status: inactive
fw0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    lladdr a4:b1:97:ff:fe:d9:44:ca 
    media: autoselect <full-duplex>
    status: inactive
bridge0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    ether ac:de:48:65:39:32 
    inet 192.168.2.1 netmask 0xffffff00 broadcast 192.168.2.255
    Configuration:
        priority 0 hellotime 0 fwddelay 0 maxage 0
        ipfilter disabled flags 0x2
    member: en0 flags=3<LEARNING,DISCOVER>
             port 4 priority 0 path cost 0
    
pregunta Matt 04.10.2012 - 16:41

3 respuestas

0

Un amigo mío me recordó la existencia de tcpdump . Esto me dio la herramienta que necesito para rastrear mi problema.

En mi computadora conectada, comencé a hacer ping al enrutador inalámbrico con:

boots@frobisher:~$ ping 10.0.0.1
PING 10.0.0.1 (10.0.0.1): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
...

Dejé esto en ejecución para que generara tráfico que pudiera rastrear fácilmente. En mi mini corrí

boots@eiji:~$ sudo tcpdump -l -i en1 -n | grep ICMP
13:41:45.776732 IP 192.168.2.14 > 10.0.0.1: ICMP echo request, id 31530, seq 28, length 64
13:41:46.776635 IP 192.168.2.14 > 10.0.0.1: ICMP echo request, id 31530, seq 29, length 64
13:41:47.776489 IP 192.168.2.14 > 10.0.0.1: ICMP echo request, id 31530, seq 30, length 64
...

Esta fue mi primera pista. El Mac mini está haciendo eco del tráfico en la red inalámbrica, pero se está perdiendo allí.

En este punto, abrí la configuración inalámbrica de mi enrutador. Para la mayoría de los enrutadores, esto significa apuntar un navegador web al enrutador: http://10.0.0.1/ . Fui a la pestaña avanzada y miré las tablas de enrutamiento. Noté que las direcciones 192.168.2.x estaban siendo enrutadas a la conexión de internet y no a la LAN. Así que agregué una ruta estática:

Static Route: 192.168.2.0
Netmask: 255.255.255.0
Gateway: 10.0.0.145

¡De repente, mi tcpdump comienza a ver las respuestas!

13:41:56.775330 IP 192.168.2.14 > 10.0.0.1: ICMP echo request, id 31530, seq 39, length 64
13:41:56.777700 IP 10.0.0.1 > 192.168.2.14: ICMP echo reply, id 31530, seq 39, length 64
13:41:57.774797 IP 192.168.2.14 > 10.0.0.1: ICMP echo request, id 31530, seq 40, length 64
13:41:57.777136 IP 10.0.0.1 > 192.168.2.14: ICMP echo reply, id 31530, seq 40, length 64
...

Del mismo modo, mi ping en la computadora conectada está viendo respuestas

boots@frobisher:~$ ping 10.0.0.1
PING 10.0.0.1 (10.0.0.1): 56 data bytes
64 bytes from 10.0.0.1: icmp_seq=0 ttl=64 time=3.864 ms
64 bytes from 10.0.0.1: icmp_seq=1 ttl=64 time=4.463 ms
64 bytes from 10.0.0.1: icmp_seq=2 ttl=64 time=1.246 ms
...

Entonces, pruebo el navegador web en mi computadora conectada y todo funciona. Técnicamente podría detenerme aquí, pero si mi DHCP cambia a mi mini cambia, entonces necesitaré arreglar la ruta manualmente. Para evitar este problema, he configurado mi enrutador para que emita una dirección IP estática a mi mini, y configuro el enrutador para que 192.168.2.x traffic apunte a esa dirección IP estática.

Ahora que lo tenía funcionando con mi computadora conectada, cambié el cable Ethernet a mi xbox y lo probé. Todo funcionó a la perfección, por lo que mi xbox ahora se conecta a través de Ethernet a mi Mac mini, que usa wifi para conectarse a Internet, como yo quería.

    
respondido por el Matt 05.10.2012 - 20:40
2

La respuesta de Matt en realidad no es una solución sino solo una solución. NAT en 10.8.2 no funciona debido a un error en los archivos de configuración pf. Puedes encontrar la solución aquí: enlace

    
respondido por el moole 01.11.2012 - 13:11
1

Tuve un síntoma ligeramente diferente. Los iPhones conectados a Wi-Fi podrían conectarse a Wifi, obtuvieron una IP (192.168.2.2) y un enrutador (192.168.2.1) asignado a través de DHCP. La Mac podría hacerles ping y el iPhone podría acceder a los servicios en la red local a través de la dirección IP. Sin embargo, el iPhone no puede acceder a ningún servicio de Internet (por ejemplo, Mapas).

Descubrí que no se asignó ningún DNS. Así que especificé manualmente un DNS en el iPhone y ahora la conexión funciona perfectamente. Parece que el servidor DHCP de Internet Sharing en 10.8.2 no asigna correctamente el DNS a sus clientes.

Consulte también rdar: // 12468765 .

    
respondido por el Ortwin Gentz 10.10.2012 - 14:01

Lea otras preguntas en las etiquetas