Como compartilhar a conexão com a Internet no Mac OS X com o Virtualbox vm usando somente host

4

Em uma linha: é possível o seguinte: Ponte AirPort < - Mac OS X - > vbox-Host-only - > VM's

Em um Mac OS X, tenho VirtualBox com uma máquina virtual. Por enquanto eu configurei 2 interfaces para minha máquina virtual. eth0 é a ponte normal para minha VM acessar a Internet (quando o AirPort está conectado). eth1 está definido como somente host para que eu possa acessar minha VM do host quando não houver Wi-Fi / AirPort desativado. Então basicamente é como o Adaptador 1 quando há Wi-Fi, Adaptador 2 quando não há.

Gostaria de ter apenas uma configuração para simplificar. Pensei que poderia manter apenas a configuração do Host e, no host (Mac OS X), ir para o compartilhamento da Internet e selecionar "compartilhar do AirPort" para o vboxnet0 (a interface virtual do vb). Apenas para descobrir que o vboxnet0 não aparece na lista de interfaces nas preferências do Mac OS X.

Eu sei que em um host Linux você pode instalar algo chamado bridge-utils e usá-lo para fazer a ponte entre as duas interfaces. Existe algo parecido com o Mac?

    
por redben 23.03.2010 / 12:36

1 resposta

5

Esta é realmente uma coisa simples de se conseguir, mas requer um certo nível de conhecimento técnico sobre rede e roteamento.

Embora seja possível usar alguma forma de NAT para vincular a rede somente de host ao resto da rede, o chamado 'NAT duplo' é desaprovado. O NAT duplo ocorre quando a Conversão de endereços de rede ocorre duas vezes em uma rede, adicionando sobrecarga extra aos pacotes transmitidos pela rede e deve ser evitada sempre que possível.

O que você está tentando alcançar pode ser feito muito bem sem a necessidade de qualquer NAT.

Basicamente, a teoria é que você cria uma rede separada que é a única rede do host, ativa o encaminhamento de IP no Mac e configura uma rota estática no aeroporto.

Digamos que sua rede normal seja 192.168.1.0/24, o aeroporto esteja em 192.168.1.1 e seu Mac em 192.168.1.200. Você precisará de um endereço IP estático no Mac para que isso funcione. A rede Host Only já terá um intervalo de IPs atribuído a ela e, por uma questão de argumentação, digamos que seja 10.0.0.0/24 com o Mac em 10.0.0.1 e uma VM em execução em 10.0.0.8.

Então, queremos alcançar:

Airport <--------------------> Mac <----------------------> VM
192.168.1.1       192.168.1.200 |10.0.0.1             10.0.0.8

Ativar o encaminhamento de IP no Mac é uma questão bastante simples. Se você está no 10.5 ou abaixo, dê uma olhada no arquivo / etc / hostconfig e encontre a linha para o IP Forwarding (eu esqueço o que está exatamente errado) e configure para YES. Em todas as outras versões do OS / X, e de fato no 10.5 ou abaixo, você pode modificar o /etc/sysctl.conf e adicionar:

net.inet.ip.forwarding=1

Depois de ter feito isso, você pode ativar o encaminhamento sem precisar reiniciar, digitando (como root):

sysctl -w net.inet.ip.forwarding=1

Ok, agora os pacotes de rede podem ir da rede principal para a rede Host Only. Mas como informamos ao restante da rede sobre essa rede somente host? No momento, apenas o Mac sabe disso.

Bem, isso de novo é uma questão simples. Você não precisa dizer a todos os hosts na rede sobre isso, apenas o ponto comum de chamada para todos os dispositivos - o gateway padrão - neste caso, o Aeroporto.

Agora, eu não usei um aeroporto, por isso não posso dizer onde procurar as configurações que você precisa alterar, mas a instalação estará em algum lugar.

Você está procurando uma configuração na qual você pode especificar Rotas estáticas . Pode ser rotulado como tal, ou como Tabela de Roteamento ou algo semelhante. Quando você encontrá-lo, você precisa configurar uma rota para a rede Host Only através do seu Mac. É aqui que é essencial ter um endereço estático no seu Mac. A rota que você precisa configurar será usar algo como as seguintes configurações (do exemplo acima. Substitua os números pelos seus endereços IP e máscaras de rede):

Network: 10.0.0.0        Network address of the Host Only network
Netmask: 255.255.255.0   Netmask of the Host Only Network
Gateway: 192.168.1.200   IP address of your Mac.

Depois de configurar essa rota, qualquer tráfego destinado à sua rede somente host será primeiro direcionado ao aeroporto, que responderá com "Na verdade, você não quer falar comigo, você quer para falar com 192.168.1.200 " e o tráfego irá redirecionar para o seu Mac - que por sua vez irá passá-lo para a rede Host Only.

A única outra coisa para ter certeza é que o sistema operacional convidado em execução na VM tem o gateway padrão definido para sua rede. Isso precisa ser o fim do Mac da rede Host Only (10.0.0.1 no exemplo acima).

Então, como isso consegue a VM na internet? Bem simples: na verdade, ela amplia sua rede para incluir a rede Host Only e o roteador (Airport) cuida do resto. Ele lida com o NAT e sabe qual tráfego é para a rede principal e qual é para a rede Host Only.

    
por 21.03.2011 / 01:05