Como obter VMs do VirtualBox para usar o DNS do host?

60

Eu uso o VirtualBox para minhas VMs. A configuração de rede do meu escritório é sem fio, ou seja, conecto à rede Wi-Fi da minha empresa, que tem um DNS local para resolver nomes locais (como algo.minhaempresa.com indo para 123.45.67.89). Quando eu construo uma nova VM, ela pode se conectar à Internet externa herdando a conexão do host, mas não resolve nomes locais usando o DNS local. Então eu tenho que ir em /etc/hosts na VM e fazer uma entrada manualmente depois de resolver o nome no host, o que é irritante.

Existe uma maneira de fazer com que o VirtualBox conecte automaticamente o convidado ao DNS do host para que eu não tenha que fazer esta etapa manual? Meu host é OSX Mountain Lion , as VMs normalmente são Ubuntu , mas duvido que isso deva ser importante.

    
por amphibient 06.09.2013 / 17:48

4 respostas

85

Para conseguir isso, você pode configurar Proxy DNS Modo usando o resolvedor do host com o seguinte comando:

VBoxManage modifyvm "VM name" --natdnshostresolver1 on

Como resultado, as solicitações de DNS do sistema operacional convidado serão interceptadas e resolvidas usando a API de DNS do host, em vez de ter o sistema operacional convidado conectado a servidores DNS externos como com --netdnsproxy1 on .

Você pode obter o nome da VM executando VBoxManage list runningvms .

    
por 28.02.2014 / 05:35
5

Sim, é possível. Existem muitos modos disponíveis no VirtualBox para estabelecer redes entre o convidado e o host. Em vez de usar o modo NAT (que é o padrão), você pode usar o modo de ponte no qual sua máquina convidada pode ser tratada como entidade totalmente separada em sua rede. Portanto, não apenas seu host, mas qualquer outra máquina (como seu servidor DNS) verá seu convidado como uma máquina separada.

Depois de configurar o modo bridge, basta acessar seu convidado ubuntu e fazer com que ele use o nome do servidor DNS ou o ip da sua empresa. Leia este tutorial para mais informações: link

    
por 06.09.2013 / 18:55
4

Esse foi um dos principais resultados do Google, então eu queria esclarecer para os outros. A solução de Josiah funcionou para mim com a adição da linha:

"hosts: arquivos dns" para /etc/nsswitch.conf

Como outros salientaram, a solução original não funciona acima do Ubuntu 16.04. Minha VM convidada é o Ubuntu 16.04.

Referência Criando um servidor Linux

    
por 02.04.2018 / 19:27
-2

Nada disso funcionou para mim com minha velha VM Ubuntu 12.04. Meu problema era com o adaptador de rede somente para host do Windows 10 VirtualBox. Definir o DNS para servidores DNS do Google nas Propriedades TCP / IPv4 corrigiu o problema para mim. ( veja o vídeo e capturas de tela anexadas )

  1. Abra o Painel de controle do Windows > Central de Redes e Compartilhamento
  2. Clique em "Alterar configurações do adaptador"
  3. Clique com o botão direito do mouse no ícone "VirtualBox Host-Only Network"
  4. Selecione "Propriedades"
  5. Selecione "Protocolo da Internet versão 4 (TCP / IPv4)
  6. Clique no botão "Propriedades"
  7. Adicione seus servidores DNS preferidos na caixa
  8. Clique no botão "OK"
  9. Clique no botão "Fechar"

Essa alteração foi reconhecida em minha VM após a reinicialização da VM, você também poderia ifdown / ifup da rede da VM para obter as novas configurações de DNS sem reinicializar a VM.

Captura de tela das etapas para alterar o DNS TCP / IPv4 no Windows 10

Quick Tweak (VirtualBox): conexão de rede perda devido à configuração do DNS

    
por 17.10.2018 / 23:13