Cómo habilitar el enrutamiento en OS X El Capitan

3

Tengo una máquina virtual de Linux VMware (invitado) configurada con un adaptador NAT en una subred 192.168.56.0. Su dirección IP es 192.168.56.128 y mi Mac (host) obtuvo 192.168.56.1. La puerta de enlace predeterminada del invitado se establece automáticamente en 192.168.56.2 y puede hacer un ping a google desde el invitado. La IP del Wi-Fi del host es 192.168.0.2,

He configurado mi enrutador Wi-Fi con la siguiente tabla de enrutamiento para reenviar paquetes de 192.168.56.0 a 192.168.0.2 (mi Mac)

pi@raspberrypi ~ $ route

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         172.16.4.1      0.0.0.0         UG    0      0        0 eth0
172.16.4.0      *               255.255.252.0   U     0      0        0 eth0
192.168.0.0     *               255.255.255.0   U     0      0        0 wlan0
192.168.56.0    192.168.0.2     255.255.255.255 UGH   0      0        0 wlan0
192.168.57.0    192.168.0.2     255.255.255.255 UGH   0      0        0 wlan0

Pero no puedo hacer ping al invitado desde ningún otro dispositivo en la red Wi-Fi (192.168.0.0). Así que es obvio que mi Mac con OS X El Capitan no reenvía los paquetes de 192.168.0.0 a 192.168.56.0

    
pregunta neckTwi 03.02.2016 - 07:05

2 respuestas

2

Su enrutador no es responsable de enrutar paquetes de 192.168.0.0 a 192.168.56.0, pero el host de VM es. Debe mantener la ruta estática 192.168.56.0 - > 192.168.0.2 en el enrutador sin embargo. No sé cuál es el propósito de la segunda ruta 192.168.57.0 - > 192.168.0.2: probablemente un segundo adaptador NAT en el host.

Para acceder a su VM desde otros dispositivos OS X en su red 192.168.0.0, debe configurar una ruta estática en cada una de las máquinas 192.168.0.x al host VM:

sudo route add -net 192.168.56.0  192.168.0.2

Para hacer que esta ruta sea persistente, agregue un demonio de inicio en cada una de las máquinas:

sudo nano /Library/LaunchDaemons/local.staticroute.vm.plist

con el contenido

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>local.staticroute.vm</string>
    <key>ProgramArguments</key>
    <array>
      <string>route</string>
      <string>add</string>
      <string>-net</string>
      <string>192.168.56.0</string>
      <string>192.168.0.2</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
  </dict>
</plist>

guarde el archivo (ctrl-O) y salga de nano (ctrl-X).

Cargar el demonio de inicio con:

sudo launchctl load -w /Library/LaunchDaemons/local.staticroute.vm.plist

Si los otros dispositivos en la red 192.168.0.0 son hosts de Linux / Windows / Android, use los comandos respectivos para agregar una ruta:

Windows (persistente):

route add -p 192.168.56.0 mask 255.255.255.0 192.168.0.2 

Linux:

route add -net 192.168.56.0 netmask 255.255.255.0 gw 192.168.0.2

Para agregar una ruta persistente en Linux, verifique la documentación de la distribución de Linux.

    
respondido por el klanomath 03.02.2016 - 09:00
0

Esto no sobrevivió al reinicio para mí en 10.11. Seguí estas instrucciones :

sudo networksetup -setadditionalroutes Wi-Fi 192.168.56.0 255.255.255.0 192.168.0.2

donde se encuentra Wi-Fi usando networksetup -listallnetworkservices .

    
respondido por el epardee 29.07.2017 - 03:02

Lea otras preguntas en las etiquetas