Duas VMs do VirtualBox em execução em paralelo atribuíram o mesmo IP


9

Eu tinha uma VM no meu VirtualBox e queria usá-lo como modelo / imagem, por isso clonei. Em seguida, iniciei o original e o clone simultaneamente (para simular um cluster de servidor para algo em que estava trabalhando), no entanto, as duas instâncias receberam o mesmo endereço IP. Talvez isso seja um bug no nosso DHCP, que eu acho que o VirtualBox usa para obter endereços IP? Ou talvez algo na maneira como eu configuro minhas VMs? De qualquer forma, estou interessado em resolver esse problema para que eu possa duas VMs da mesma imagem simultaneamente.


No VMWare, se você iniciou uma VM usada anteriormente a partir de um caminho diferente, ela perguntou se você a copiou ou moveu a VM para evitar tais situações ... Como você clonou a VM?
ppeterka

Eu tenho medo que esta não é a situação aqui ... #
611

1
É possível que você tenha copiado a máquina com o endereço MAC (Ethernet). Essa é uma das diferenças entre copiar e mover no VMware, conforme mencionado por ppeterka. Você poderia verificar os endereços? Você também pode descrever como exatamente você clonou a máquina?
Pabouk

sim, quando eu corri ifconfig -a, ele mostrou o mesmo endereço MAC para ambos (apresentado como HWaddr)
amphibient

mas a maneira que eu clonado foi na UI, apenas para a direita clicou com o VM e bateuClone
amphibient

Respostas:


12

Isso é conhecido como conflito de IP e pode causar grandes dores de cabeça na rede.

Você pode reinicializar o endereço MAC da VM clonada; isso significa apenas gerar um novo aleatório. Na sua VM clonada, clique em Configurações >> Rede >> Avançado e clique nas duas setas circulares para gerar um novo MAC. Sua VM precisará estar desligada. Quando ele é inicializado, o servidor DHCP deve atribuir à VM um endereço IP diferente.

Além disso, quando você clonou sua VM, deveria ter visto uma caixa de seleção com as palavras "reinicializar o MAC", que teriam clonado a VM e gerado um novo MAC em vez de cloná-lo.

Se você estava curioso, a clonagem de uma VM é frequentemente usada para fazer um backup completo da VM. Nesse caso, você deseja que o MAC e o IP sejam os mesmos caso precise usar o backup. Para o seu caso de clonar a VM para criar um cluster, você precisará reinicializar o MAC em cada clone.insira a descrição da imagem aqui

Atualização 1 Em resposta aos seus comentários de 8/10/2013.

Verifique se o endereço IP não está definido estaticamente. Você mencionou na sua pergunta que a VM deveria estar recebendo seu IP do DHCP. Se for esse o caso, a configuração deve se parecer com o seguinte. Para sistemas baseados em debian, ele será encontrado em / etc / network / interfaces

auto eth0
iface eth0 inet dhcp

Para sistemas baseados em redhat, a configuração de rede está em / etc / sysconfig / network-scripts / ifcfg-eth0

Seu segundo comentário mencionou que eth0 está ausente. Você tem um eth1? Como o computador alterou os endereços mac, o sistema operacional mantém o mac original como eth0 e geralmente atribui eth1 ao novo mac. Para redefinir os dispositivos eth * para que você tenha um eth0 e não um eth1, precisará limpar as regras de rede do udev.

Mexer com a rede pode ficar peludo. Uma opção seria excluir sua VM clonada e clonar o original novamente e marcar "reinicializar mac". Não tenho certeza de que isso resolverá o seu problema, mas pode ser.


4
Eu fiz isso e reiniciei as duas VMs, mas elas ainda receberam o mesmo IP :(
anfphient

o clone não tem eth0quando eu corroifconfig
amphibient

Atualizei minha resposta para solucionar os problemas sobre os quais você escreveu nos comentários.
precisa saber é o seguinte

@ anfphient, recriei seu problema e pude resolvê-lo facilmente, excluindo tudo do arquivo /etc/udev/rules.d/70-persistent-net.rules e reinicializando. Boa sorte!
tbenz9

1

Eu tenho as mesmas 10.0.2.15VMs IP quando clonei o Ubuntu no Mac.
Para resolver o problema, primeiro desliguei as VMs.
Em seguida, para cada VM
, seleciono configurações, clique na guia Rede e alterei anexado a: Bridged Adapter
depois clico em avançado, selecione permitir tudo para o modo promíscuo,
finalmente atualize o endereço MAC para alterar o endereço MAC. Clique OK.
Agora, inicie as VMs e você obterá os diferentes endereços IP.
Eu cheguei 192.168.0.14pela primeira e 192.168.0.15pela segunda. Eles também podiam fazer ping no host Mac.

insira a descrição da imagem aqui


0

Leia sobre os adaptadores disponíveis no VirtualBox ( https://www.virtualbox.org/manual/ch06.html#networkingmodes ). Se você deseja conexão apenas entre VMs, os testes serão mais adequados para o adaptador de rede interna. No entanto, pelo seu comentário, entendo que você está usando NAT.

Eu verifiquei abaixo o cenário no VirtualBox 5.0.2 no host Mint 17.2 e nos convidados do Fedora 21:

Crie a VM principal com o adaptador NAT padrão. Crie clone vinculado ( https://www.virtualbox.org/manual/ch01.html#clone ) com reinicialização de MACs. A VM clonada e a original têm os mesmos valores no arquivo:

/etc/sysconfig/network-scripts/ifcfg-enp0s3

Contudo

ip a

mostra diferentes endereços MAC em cada um.

Quando atualizei o HWADDR nesse arquivo de acordo com o valor link / ether do comando ip e alterei o UUID por um novo usando

uuidgen

apesar do mesmo IP nessas interfaces (enp0s3) em VMs originais e clonadas, a rede externa (Internet) estava funcionando bem.


0

Me deparei com essa mesma situação hoje. Eu estava usando um adaptador NAT e um adaptador Ethernet somente para host para minha VM Solaris. O IP do clone mudou quando atualizei o endereço mac do adaptador Host-Only.


-1

Eu entendo sua dor. Eu clonei minha vm. Gerou um novo Mac na caixa virtual da Oracle, clonou inicializado, alterou o nome do host e atualizou o arquivo de scripts de rede com o novo mac.

Quando reiniciado, ainda usava o mesmo ip do dhcp. A interface está na configuração Nat.

:(

Dave


1
Amável e amigável, mas não uma resposta para a pergunta.
Alexx Roche
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.