Conectando-se a uma máquina VirtualBox do host, usando um endereço IP

5

Em um host macbook, executo o VirtualBox com um servidor ubuntu guest, com uma configuração de rede NAT.
No aplicativo de máquina virtual "Parallels", eu obteria no host um endereço IP do convidado, para o qual eu poderia definir nomes de host e acessá-lo diretamente.

No entanto, não consegui encontrar uma maneira de fazer isso usando o VirtualBox.
A única solução que o VirtualBox tem para mim é definir o encaminhamento de porta e acessar "localhost" com essas portas.

Como posso ter o comportamento desejado configurado, sem ter que mudar para configurações de rede em ponte, e expor meu computador convidado à rede em que meu computador host está conectado?

Obrigado.

    
por Doron 08.01.2011 / 18:26

2 respostas

4

Bem, eu não gosto de responder minhas próprias perguntas, mas encontrei uma boa resposta em outra pergunta aqui, e pensei em compartilhar:

Eu estava procurando uma maneira fácil de trabalhar com a máquina virtual.
Desde a criação de portas não ortodoxas (não consegui encaminhar a porta 80 do host para a porta 80 do guest, já que o VirtualBox não permite isso ainda) não é uma maneira fácil e confortável que eu não poderia aceitar nenhuma resposta que dizia fazer que, como não é o que eu pedi.

Então, uma das respostas que encontrei na lista aqui à direita, disse que posso criar não apenas uma, mas duas interfaces de rede no VirtualBox para a máquina virtual relevante, e então eu teria um (NAT) para o host para acessar a VM e outro (somente host) para a VM acessar a Internet.
Desta forma:

  • preserva a segurança da máquina convidada, pois ela não está na mesma rede que o host
  • me dá a capacidade de criar um nome de host para o ip do convidado, em minha máquina host - para facilitar o acesso, sem necessidade de usar o encaminhamento de porta do host para o convidado
  • e - me dá acesso à internet para a máquina convidada

Desde que eu tentei diferentes opções, eu tive que configurar manualmente as interfaces na máquina servidora ubuntu guest.
Isso me fez encontrar alguns problemas que eram muito irritantes, então eu pensei em compartilhar um deles:
Faça a primeira interface (eth0) a interface somente de host (aquela para conexão entre o host e o convidado) e a segunda interface (eth1) a interface NAT.
Se você não fizer isso, você pode ter um problema com a máquina convidada tentando acessar a Internet usando a interface somente de host. Esse problema pode ter sido causado por algo completamente diferente, e o pedido pode não ter qualquer relação com ele, mas foi o que aconteceu comigo, então compartilho com qualquer pessoa que leia isso, caso você encontre um problema como esse.

Obrigado por ajudar!

EDIT: Acabei de ver @Goyuix postou um link para a pergunta que me ajudou também. Obrigado @Goyuix.

    
por 08.01.2011 / 21:46
2

Existem várias opções de rede ao configurar uma máquina convidada, seria bom revisar o documento oficial em Virtual Rede . Como você descartou a interligação em rede, sua escolha dos modos restantes realmente se resume a se você deseja que seu convidado tenha acesso a redes além do host (por exemplo, você precisa de acesso à Internet).

Se você precisar de acesso à Internet, sua melhor opção é usar a rede NAT como descrito. Você precisará encaminhar portas específicas para o mecanismo NAT do VirtualBox para acessar os serviços do seu convidado. Há um grupo de related perguntas aqui no SuperUser que cobrem, mas basicamente você digitaria comandos semelhantes a estes na linha de comando (isso instrui o host a encaminhar conexões de entrada no TCP 8080 para TCP 80 no convidado):

VBoxManage setextradata "<Guest Name>" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guesthttp/Protocol" TCP
VBoxManage setextradata "<Guest Name>" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guesthttp/GuestPort" 80
VBoxManage setextradata "<Guest Name>" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guesthttp/HostPort" 8080

Se a máquina convidada não precisar de acesso à Internet, será melhor usar o modelo "Rede somente para host". Isso fará a ponte entre o adaptador convidado e um adaptador baseado em software no host (normalmente na sub-rede 192.168.56.0/24). Você poderá acessar quaisquer serviços no host ou no convidado sem qualquer configuração adicional. Bem, possivelmente permitindo o tráfego através de qualquer firewall de software que você possa ter instalado - mas geralmente isso "simplesmente funciona" ™

    
por 08.01.2011 / 21:18