Я створив віртуальну машину, налаштовану на мостові мережі . Зробивши з нього вісім клонів, нові машини не можуть підключитися до мережі.
Я доручив VirtualBox повторно генерувати mac-адреси машин.
Я створив віртуальну машину, налаштовану на мостові мережі . Зробивши з нього вісім клонів, нові машини не можуть підключитися до мережі.
Я доручив VirtualBox повторно генерувати mac-адреси машин.
Відповіді:
Існують udev
правила, які не дозволяють створювати новий інтерфейс.
У машині Master просто видаліть їх перед тим, як клонувати нові машини:
sudo rm -f /etc/udev/rules.d/70-persistent-net.rules
( джерело )
-f
прапор сили непотрібним.
-f
Прапор робить rm
команду успіху зі статусом 0 , навіть якщо файл не існує. Сила звички. :)
Оновіть свою MAC-адресу за допомогою налаштувань машини Virtual Box і видаліть файл правил мережевого інтерфейсу ядра, щоб його можна було відновити:
sudo rm -f /etc/udev/rules.d/70-persistent-net.rules
sudo reboot
Він буде працювати для вашого клона VM.
Я місяцями займався однією і тією ж проблемою, і сьогодні вирішив знайти кращу помилку. Ось що я робив на машині, яку я використовував як шаблон.
Для хорошої практики адміністрування резервного копіювання обох файлів перед редагуванням.
У вас є два образи / цілі файлу:
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/udev/rules.d/70-persistent-net.rules
Це буде працювати для адреси static
чи dhcp
адреси:
відчинено /etc/sysconfig/network-scripts/ifcfg-eth0
Видаліть рядок MAC-адреси: HWADDR=XX:11:22:XX:33:XX
збережіть файл.
Видаліть файл /etc/udev/rules.d/70-persistent-net.rules
"він буде відтворений після перезавантаження VM"
sudo rm -f /etc/udev/rules.d/70-persistent-net.rules
Тепер ви можете клонувати свою скриньку, і кожен клон буде правильно розгортати та відображати eth0.
Якщо ви не використовуєте шаблон, ви можете виконати ці процедури на фактичному VM, просто пам’ятайте про повторну ініціалізацію свого NIC у програмному забезпеченні VM перед перезавантаженням машини.
У попередній версії VirtualBox я зіткнувся з тією ж проблемою, і десь прочитав, що сталася помилка, яка поставила галочку "генерувати нову MAC-адресу" непотрібною.
Зараз я використовую Ubuntu 12.04 з VirtualBox 4.2.10. Зараз я помітив, що коли я створив клон, не було галочки, щоб "генерувати нову MAC-адресу".
Це дало мені певні проблеми, навіть якщо я видалив 70-стійкі-net.rules, оскільки система автоматично генерувала файл при запуску з тією ж MAC-адресою, що й оригінал, через що не вдалося підключитися.
Але я виявив, що у VirtualBox Manager ви можете обрати клон, перейти в Налаштування> Мережа> Додатково та генерувати нову MAC-адресу, поставивши галочку біля поля.
Тому я спершу видалив 70-стійкі-net.rules, вимкнути, створити нову MAC-адресу та запустити заново, і тепер це працює.
Ви також можете спочатку видалити файл перед клонуванням. Потім генеруйте MAC-адресу, а потім запустіть клон. Це також повинно працювати.
Я будую паралельне обчислювальне середовище, яке потребує взаємозв'язку між віртуальною машиною через ip мережу.
Я думаю, що є щось, пов’язане з повторним генеруванням мак-адрес машин. Я раніше стикався з подібною проблемою.
На оригінальній віртуальній машині є eth0
і eth1
. Але завдяки процесу регенерації у моєму випадку нова машина клонованих має eth2
і eth3
. Ви можете перевірити це за допомогою наступної команди:
ifconfig -a | grep eth
За допомогою ifconfig
команди можна перевірити, що в новій клонованій машині lo
зареєстровано лише . Як правило, ви повинні мати lo
, eth0
і eth1
при введенні ifconfig
команди.
Це пов’язано з регенерацією MAC, що в машині-клоні є eth2
і eth3
інтерфейси Ethernet замість eth0
і eth1
в оригінальній машині. Ви також можете перевірити /etc/network/interfaces
в оригінальній машині, що в моєму випадку буде виглядати як:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet static
address 192.168.xxx.xxx
netmask 255.xxx.xxx.0
network 192.168.xxx.0
broadcast 192.168.xxx.255
gateway 10.0.x.xx
Можливо, ви можете змінити /etc/network/interfaces
файл і змінити eth0
і eth1
з, eth2
і eth3
, що більш-менш схоже на це:
auto lo
iface lo inet loopback
auto eth2
iface eth2 inet dhcp
auto eth3
iface eth3 inet static
address 192.168.xxx.xxx
netmask 255.xxx.xxx.0
network 192.168.xxx.0
broadcast 192.168.xxx.255
gateway 10.0.x.xx
Отже, удачі хлопці!
Я видалив 70-persitent-net.rules файл, але його не було створено після перезавантаження. Тоді для мене працювала перевстановлення модуля доповнень для гостей та перезавантаження VM.
У мене є проблема з тим же ip-адресою після клонування 3 VM з Virtual BOX (4.3). Так що я вимкнув електроенергію та відновив нову мак-адресу та перезапустив, що вона працювала на мене.
кроки => вимкнути клонований VM, а потім налаштування => мережа => розширений => натисніть на оновити MAC-адресу => клацніть OK. потім запустіть VM.