virtuales solo puente maquinas maquina internet interna funciona fisica conectar anfitrion adaptador networking port virtualbox forwarding nat

networking - solo - El reenvío de puerto VirtualBox no funciona con el adaptador NAT



red interna virtualbox (4)

Estoy probando el simple reenvío de puertos con VirtualBox y parece que VirtualBox.exe está escuchando en el host del puerto, pero no reenvía la conexión al invitado. Probé en varios puertos y reinicié VirtualBox varias veces. La conectividad de invitado a host, por otro lado, está bien. Aquí está la información:

Host: Win7 x64 Guest: Win7 x64 VirtualBox version: VirtualBox 4.2.10 Firewalls: All firewalls on host and guest disabled. Virtual Box > Machine Settings > Network Adapter 1: Attached to: NAT Cable Connected : True Port Forwarding: Rule 1: TCP, HostIP=127.0.0.1, HostPort=8081, GuestIP=127.0.0.1, GuestPort=8081 On Host: [VirtualBox.exe] TCP 127.0.0.1:8081 IBM-6KT5OPCF76P:0 LISTENING On Guest: I never get the connection request on port 8081 or any others I''ve tried.

¿Algunas ideas? Me gustaría evitar el uso del adaptador puenteado de VirtualBox por varias razones. Tenía la impresión de que el reenvío de puertos NAT era relativamente sencillo con VirtualBox.

¡Gracias!


Ha señalado la dirección IP de invitado de manera incorrecta, debería ser ip de invitado (si está asignada estáticamente dirección IP a invitado) o dejarla vacía. Tenga en cuenta que apunta hacia el host ip como 127.0.0.1, significa que el puerto que está reenviando solo será accesible desde el puerto (si no es lo que desea, también debería estar vacío).

VBoxManage modifyvm "win" --natpf1 ",tcp,,8081,,8081"

quizás esto es algo que has querido hacer. ( mira aquí para más detalles )


No está claro qué sistema operativo invitado está utilizando.

He enfrentado el mismo problema.

Mi anfitrión era MAC PC y mi invitado era CentOS 7 en VirtualBox.
Permití el reenvío del puerto NAT de invitado a host en el nivel VirtualBox para el puerto ssh 22 y el puerto http 80.

Sin embargo, descubrí que no podía conectarme al servidor Apache HTTP en Centos 7 guest desde mi MAC PC host en la conexión http.

Para solucionarlo, tengo que configurar el servicio firewalld para permitir las conexiones del puerto 80.


Me enfrenté a un problema similar y resultó ser controladores sin firmar en la pila de red instalada por algún software de interceptación de proxy corporativo llamado proxycap que causaba error en la caja virtual al configurar el reenvío de puertos. Verifique los registros de la máquina de VM para ver el mensaje de error mientras configura el reenvío de puertos y enumera los controladores sin firmar y desinstala la aplicación correspondiente.


Red paravirtualizada * (virtio-net) es la clave

  1. seleccione su vm que desee para el reenvío de puertos.

    • NOTA: asegúrese de que la vm esté en modo de parada.
  2. Seleccione "Configuración"

  3. Seleccione la red"
  4. Seleccione cualquier adaptador gratuito. Digamos "Adaptador 2"
  5. Habilite "Habilitar adaptador de red"
  6. En el menú desplegable Adjunto, seleccione "NAT"
  7. Seleccione "Avanzado"
  8. En Tipo de adaptador: Seleccione " Red paravirtualizada (virtio-net)" [Esto es importante]
  9. Seleccione "Reenvío de puertos"
  10. En la parte de la derecha del cuadro de diálogo "reenvío de puerto", selecciona "+"
  11. Proporcionar la

    • Nombre: Todo lo que quieras. ejemplo para ssh, diga "ssh"
    • Protocolo: Tipo de protocolo [para ssh: TCP]
    • IP de host: proporciona el nombre de host desde el que deseas conectarte [aquí: 127.0.0.1]
    • Puerto de host: en qué puerto de ese host desea conectarse al puerto remoto [ejemplo: 60022]
    • IP de invitado: déjelo en blanco
    • Puerto de invitado: a qué puerto desea conectarse desde el host anterior. [para ssh, el valor predeterminado 22]