Enrutar el tráfico de red entre las "redes de solo host" de dos hosts de los hosts

0

Tengo dos máquinas host ejecutando VirtualBox. Necesito hacer que las máquinas virtuales en cada host hablen con las máquinas virtuales en el mismo y el otro host respectivo. La solución más simple sería utilizar redes de puente, por desgracia, las restricciones de seguridad en la LAN de nuestra empresa lo prohíben.

Intenté seguir la descripción de Jeff Warren dada como respuesta a esta pregunta (muy similar) aquí: Virtualbox: conexión de redes solo de host en hosts separados

Por desgracia, el enlace a la documentación de Microsoft sobre "Configuración de múltiples puertas de enlace de red" parece roto. Seguí tan bien como pude.

Tengo los dos hosts ("host1" y "host") cada uno configurado con su red VirtualBox "host-only" (la de host1 que usa el rango de direcciones IP 192.168.33.0/24, la de host2 que usa 192.168.34.0 / 24). Además, en cada host, agregué una ruta a la otra red VirtualBox respectiva. Ahora puedo hacer ping a los hosts a través de la dirección IP que tienen en la respectiva red de host, es decir, en host1, puedo hacer ping a 192.168.34.1 con éxito y en host2, puedo hacer ping a 192.168.33.1, pero no puedo hacer ping a ninguna VM dentro la red de solo host en el otro host respectivo. Creo que ya existen las entradas de ruta locales adecuadas (es decir, entre el host y la red de solo host), por ejemplo, en host1, "route print" me muestra las siguientes entradas a la red de solo host de VB de ese host

192.168.33.0    255.255.255.0         On-link      192.168.33.1    276
192.168.33.1  255.255.255.255         On-link      192.168.33.1    276
192.168.33.255  255.255.255.255         On-link      192.168.33.1    276

Si lo leí correctamente, la primera regla envía cualquier solicitud a una IP en la red 192.168.33.0/24 a mi interfaz solo de host, la segunda es específica a la dirección del host dentro de la misma red, y la última es para transmisiones . Aparentemente, mi host no está enrutando las solicitudes correctamente, sin embargo, solo acepta solicitudes (también) bajo su IP en la respectiva red local de solo host.

¿Alguna idea de lo que podría faltar? El "Enrutamiento y acceso remoto" se ejecuta en ambas máquinas (si lo detengo, el ping a través de la dirección IP en la red "solo para el host" no funcionará, por lo que realmente está haciendo algo).

También habilité el enrutamiento IP como se describe aquí https://social.technet.microsoft.com/Forums/lync/en-US/8f5ef2ca-c6e8-42e6-a70d-6d09bfdafa48/configuring-windows-7-as-a-router-in-lan?forum=w7itpronetworking

configurando HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Tcpip \ Parameters \ IPEnableRouter a 1 y reiniciando ambas máquinas, pero eso no ayudó.

ACTUALIZAR Después de agregar rutas a todas las máquinas virtuales, ahora puedo hacer ping con éxito a través de máquinas virtuales en diferentes hosts. Por desgracia, ahora tengo el problema de que cuando hago ping entre máquinas virtuales en host1 (que es una máquina Win7) obtengo respuestas de ping duplicadas, como esta:

[root@centos1 network-scripts]# ping 192.168.33.203
PING 192.168.33.203 (192.168.33.203) 56(84) bytes of data.
From 192.168.33.1 icmp_seq=1 Redirect Network(New nexthop: 192.168.33.203)
From 192.168.33.1: icmp_seq=1 Redirect Network(New nexthop: 192.168.33.203)
64 bytes from 192.168.33.203: icmp_seq=1 ttl=64 time=0.363 ms
64 bytes from 192.168.33.203: icmp_seq=1 ttl=64 time=0.368 ms (DUP!)
64 bytes from 192.168.33.203: icmp_seq=1 ttl=63 time=0.566 ms (DUP!)
64 bytes from 192.168.33.203: icmp_seq=1 ttl=63 time=0.571 ms (DUP!)

Wireshark muestra que aparentemente el host en sí está enviando mensajes de "Redireccionamiento de ICMP para red" a todas mis máquinas virtuales todo el tiempo (! Sin ningún comando "ping" ejecutándose dentro de la máquina virtual). Encontré algunos informes de un comportamiento similar, y desactivar el servicio de "Enrutamiento y acceso remoto" resuelve "esto, pero, por desgracia, ese es el servicio que necesito para enrutar entre hosts. ¿Algunas ideas?

El problema NO existe en el host2 (que es un cuadro Win10), intenté averiguar si el enrutamiento es diferente en los dos hosts, pero no lo es.

ACTUALIZACIÓN 2:

La actualización de VirtualBox de 5.1.18 a 5.2.4 resolvió este problema.

PalatinateJ
fuente
¿Están los hosts en la misma subred? ¿Muestra Wireshark el tráfico que sale del host 1 y llega al host 2?
grawity
Ejecuté wireshark en host1 (filtro establecido en "icmp") e intenté hacer ping a una máquina virtual dentro de la red de solo host en host2. La respuesta que recibo del host2 se muestra como un "Redireccionamiento" ... No estoy seguro de si estoy leyendo la respuesta correctamente, pero parece que el redireccionamiento me está enviando a la puerta de enlace predeterminada de mi LAN.
PalatinateJ
Entonces, por lo que entiendo, el host2 piensa que la puerta de enlace predeterminada de la LAN es la mejor puerta de enlace para llegar a mi red 192.168.34.0/24 (que no es). La dirección IP de la LAN del host2 es 10.x.y.99 (la máscara de subred es 255.255.254.0). Entonces, ¿parece que el servicio "Enrutamiento y acceso remoto" no está utilizando la ruta que existe hacia la red de solo host?
PalatinateJ
Ok, olvida lo que escribí antes ... parece que IPEnableRouter NO estaba habilitado en host2. Después de habilitarlo, ahora ya no puedo observar los redireccionamientos de ICMP, pero puedo ver que las solicitudes de ping llegan al host2, que permanece sin respuesta.
PalatinateJ
1
Bueno, creo que debería haber seguido la guía vinculada anteriormente paso a paso, no agregué una ruta a mis sistemas operativos invitados. En algún momento, pensé que, como no podía hacer ping a los hosts a través de la IP de la red de solo host, esto no era necesario. Pero, por supuesto, lo es para la "ruta de regreso", por así decirlo. Gracias a todos los que intervinieron.
PalatinateJ