Deux machines virtuelles VirtualBox fonctionnant en parallèle se voient attribuer la même IP

9

J'avais une VM dans ma VirtualBox et je voulais l'utiliser comme modèle / image, je l'ai donc clonée. Ensuite, j'ai lancé simultanément l'original et le clone (pour simuler un cluster de serveurs pour quelque chose sur lequel je travaillais), cependant, les deux instances ont reçu la même adresse IP. Est-ce peut-être un bogue dans notre DHCP, que je pense que VirtualBox utilise pour obtenir des adresses IP? Ou peut-être quelque chose dans la façon dont je configure mes machines virtuelles? Quoi qu'il en soit, je suis finalement intéressé à résoudre ce problème afin de pouvoir simultanément utiliser deux machines virtuelles de la même image.

amphibient
la source
Sur VMWare, si vous avez démarré une VM précédemment utilisée à partir d'un chemin différent, il vous a demandé si vous l'aviez copiée ou déplacée pour pouvoir éviter de telles situations ... Comment avez-vous cloné la VM?
ppeterka
j'ai peur que ce ne soit pas la situation ici ...
amphibient
1
Il est possible que vous ayez copié la machine avec l'adresse MAC (Ethernet). C'est l'une des différences entre la copie et le déplacement dans VMware, comme mentionné par ppeterka. Pourriez-vous s'il vous plaît vérifier les adresses? Pourriez-vous également décrire comment vous avez cloné la machine exactement?
pabouk
oui, quand j'ai couru ifconfig -a, il a montré la même adresse MAC pour les deux (affiché comme HWaddr)
amphibient
mais la façon dont je l'ai cloné était dans l'interface utilisateur, juste fait un clic droit sur la machine virtuelle et frappéClone
amphibient

Réponses:

12

Ceci est connu comme un conflit IP et peut provoquer des maux de tête majeurs sur le réseau.

Vous pouvez réinitialiser l'adresse MAC de la machine virtuelle clonée; cela signifie simplement en générer un nouveau aléatoire. Sur votre machine virtuelle clonée, cliquez sur Paramètres >> Réseau >> Avancé, puis cliquez sur les deux flèches circulaires pour générer un nouveau MAC. Votre VM devra être éteinte. Lorsqu'il démarre, votre serveur DHCP doit attribuer à la machine virtuelle une adresse IP différente.

Pour votre information, lorsque vous avez cloné votre machine virtuelle, vous devriez avoir vu une case à cocher avec les mots "réinitialiser MAC", qui aurait cloné la machine virtuelle et généré un nouveau MAC au lieu de le cloner.

Si vous étiez curieux, le clonage d'une VM est souvent utilisé pour faire une sauvegarde complète de la VM, dans ce cas, vous voudriez que le MAC et l'IP soient les mêmes au cas où vous deviez utiliser la sauvegarde. Pour votre cas de clonage de la machine virtuelle pour construire un cluster, vous voudrez réinitialiser le MAC sur chaque clone.entrez la description de l'image ici

Mise à jour 1 En réponse à vos commentaires du 08/10/2013.

Assurez-vous que l'adresse IP n'est pas définie statiquement. Vous avez mentionné dans votre question que la machine virtuelle devrait obtenir son IP du DHCP. Si tel est le cas, la configuration devrait ressembler à ce qui suit. Pour les systèmes basés sur Debian, il se trouve dans / etc / network / interfaces

auto eth0
iface eth0 inet dhcp

Pour les systèmes basés sur redhat, la configuration de mise en réseau se trouve dans / etc / sysconfig / network-scripts / ifcfg-eth0

Votre deuxième commentaire mentionne que eth0 est manquant. Avez-vous un eth1? Étant donné que votre ordinateur a modifié les adresses mac, le système d'exploitation conserve le mac d'origine en tant que eth0 et attribue généralement eth1 au nouveau mac. Pour réinitialiser les périphériques eth * afin que vous ayez un eth0 et non un eth1, vous devrez effacer les règles de mise en réseau udev.

Jouer avec le réseautage peut devenir poilu. Une option serait de supprimer votre VM clonée et de cloner à nouveau l'original et de cocher "réinitialiser le mac". Je ne suis pas certain que cela résoudra votre problème, mais cela pourrait.

tbenz9
la source
4
Je l'ai fait et j'ai redémarré les deux machines virtuelles, mais elles ont toujours reçu la même adresse IP :(
amphibient
le clone n'a pas eth0quand je coursifconfig
amphibient
J'ai mis à jour ma réponse pour répondre aux problèmes dont vous avez parlé dans les commentaires.
tbenz9
@amphibient, j'ai recréé votre problème et j'ai pu le résoudre facilement en supprimant tout du fichier /etc/udev/rules.d/70-persistent-net.rules et en redémarrant. Bonne chance!
tbenz9
1

J'ai obtenu les mêmes machines 10.0.2.15virtuelles IP lorsque j'ai cloné Ubuntu sur Mac.
Pour résoudre le problème, j'ai d'abord arrêté les machines virtuelles.
Ensuite, pour chaque machine virtuelle,
je sélectionne les paramètres, puis cliquez sur l'onglet Réseau, puis changez attaché à: Bridged Adapter
puis je clique sur Avancé, sélectionnez Autoriser tout pour le mode promiscuous,
enfin actualisez l'adresse MAC pour changer l'adresse MAC. Cliquez sur OK.
Maintenant, démarrez les VM et vous obtiendrez les différentes adresses IP.
J'ai obtenu 192.168.0.14pour le premier et 192.168.0.15pour le deuxième. Ils pouvaient également être exécutés depuis le Mac hôte.

entrez la description de l'image ici

Mian Asbat Ahmad
la source
0

Veuillez lire les adaptateurs disponibles dans VirtualBox ( https://www.virtualbox.org/manual/ch06.html#networkingmodes ). Si vous souhaitez une connexion uniquement entre des machines virtuelles, alors pour vos tests, l'adaptateur de réseau interne sera plus adapté. Cependant, d'après vos commentaires, je comprends que vous utilisez NAT.

J'ai vérifié le scénario ci-dessous sur VirtualBox 5.0.2 sur l'hôte Mint 17.2 et les invités Fedora 21:

Créez la machine virtuelle principale avec l'adaptateur NAT par défaut. Créez un clone lié ( https://www.virtualbox.org/manual/ch01.html#clone ) avec la réinitialisation des MAC. La machine virtuelle clonée et d'origine ont les mêmes valeurs dans le fichier:

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

toutefois

ip a

affiche différentes adresses MAC sur chacun.

Quand j'ai mis à jour HWADDR dans ce fichier en fonction de la valeur link / ether de la commande ip et changé l'UUID avec un nouveau en utilisant

uuidgen

puis, malgré la même IP sur ces interfaces (enp0s3) sur les machines virtuelles d'origine et clonées, le réseau externe (Internet) fonctionnait bien.

edwardo
la source
0

J'ai rencontré cette même situation aujourd'hui. J'utilisais un adaptateur NAT et un adaptateur Ethernet hôte uniquement pour ma machine virtuelle Solaris. L'IP du clone a changé lorsque j'ai actualisé l'adresse mac de l'adaptateur hôte uniquement.

xbox
la source
-1

Je comprends ta douleur. J'ai cloné mon vm. Généré un nouveau Mac sur la boîte virtuelle oracle, cloné démarré, changé le nom d'hôte et mis à jour le fichier de scripts réseau avec un nouveau mac.

Au redémarrage, il utilisait toujours la même ip de dhcp. L'interface est sur le paramètre Nat.

:(

Dave

David Sives-Rutherford
la source
1
Gentil et sympathique mais pas une réponse à la question.
Alexx Roche