Как устранить неисправную сеть в клонированных виртуальных машинах?

Я установил виртуальную машину, сконфигурированную с мостовым сетью . После создания восьми клонов новые машины не могут подключиться к сети.

Я поручил VirtualBox повторно генерировать MAC-адреса компьютеров.

26
задан 24 November 2011 в 19:27

7 ответов

Существуют правила udev, препятствующие воссозданию нового интерфейса.

На мастер-машине просто удалите их перед клонированием новых машин:

sudo rm -f /etc/udev/rules.d/70-persistent-net.rules

(источник)

24
ответ дан 25 May 2018 в 16:33
  • 1
    70-persistent-net.rules появляется при следующей загрузке мастер-машины и клонированных vms. Вы столкнулись с этой проблемой? – Manish 15 August 2012 в 23:56
  • 2
    При удалении файла флага force -f не требуется. – k0pernikus 6 August 2014 в 16:13
  • 3
    Флаг -f делает команду rm успешной с статусом 0, даже если файл не существует. Сила привычки. :) – Stefano Palazzo♦ 8 August 2014 в 20:15

Обновите свой MAC-адрес с помощью параметров машины Virtual Box и удалите файл правил сетевого интерфейса ядра, чтобы он мог быть регенерирован:

sudo rm -f /etc/udev/rules.d/70-persistent-net.rules
sudo reboot

Он будет работать для вашей клонов VM.

6
ответ дан 25 May 2018 в 16:33
  • 1
    Лично я бы скопировал файл правил где-нибудь, а не просто удалил его прямо, на случай, если вам нужно его восстановить. – David Edwards 8 January 2014 в 15:03
  • 2
    это сработало для меня! – d3vid 18 February 2014 в 00:06
  • 3
    @DavidEdwards Если файл отсутствует, файл создается ОС во время запуска. Если вам действительно нужна старая копия (с неправильным MAC-адресом), вы всегда можете извлечь ее из оригинальной виртуальной машины. – MrWonderful 10 April 2014 в 01:13

Я занимался той же проблемой в течение нескольких месяцев, и сегодня я решил, что найду лучшее решение. Вот что я сделал на машине, которую я использовал в качестве шаблона.

Для правильной практики администрирования резервное копирование обоих файлов перед редактированием.

У вас есть два файла: /! d2] /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 «он будет воссоздан после перезапуска виртуальной машины»

sudo rm -f /etc/udev/rules.d/70-persistent-net.rules

Теперь вы можете клонируйте свою коробку, и каждый клон будет правильно разворачиваться и отображать eth0.

Если вы не используете шаблон, вы можете выполнить эти процедуры на виртуальной виртуальной машине, просто не забудьте повторно инициализировать сетевой адаптер в программном обеспечении VM перед перезагрузкой машины.

4
ответ дан 25 May 2018 в 16:33
  • 1
    Это похоже на более полный ответ. Можете ли вы предоставить более подробную информацию о «повторной инициализации сетевого адаптера»? часть в последнем абзаце? Какую версию VirtualBox вы использовали? – RichVel 14 April 2016 в 08:11
  • 2
    Как и примечание, я не могу найти каталог / etc / sysconfig в Ubuntu 16.04. – MakisH 19 October 2016 в 15:49
  • 3
    Сетевые интерфейсы @MakisH в Debian / Ubuntu не определяются файлами в / etc / sysconfig / network-scripts (как вы заметили, нет даже каталога / etc / sysconfig), но через / etc / network / interfaces. – Devin Norgarb 31 January 2018 в 19:18

Я столкнулся с той же проблемой в предыдущей версии VirtualBox, и где-то я где-то читал, что была ошибка, которая сделала галочку «генерировать новый MAC-адрес» бесполезной.

Теперь я использую Ubuntu 12.04 с VirtualBox 4.2.10. Я заметил теперь, что когда я создал клон, не было флажка для «создания нового MAC-адреса».

Это дало мне некоторые проблемы, даже если я удалил 70-persistent-net.rules, потому что система автоматически создайте файл при запуске с тем же MAC-адресом, что и оригинал, из-за которого он не смог подключиться.

Но я обнаружил, что в VirtualBox Manager вы можете выбрать клон, перейдите в «Настройки»> «Сеть»> «Дополнительно» и сгенерируйте новый MAC-адрес, пометив поле.

Итак, я сделал, чтобы сначала удалить 70-persistent-net.rules, выключить, сгенерировать новый MAC-адрес и начать снова, и теперь он работает.

Кроме того, вы можете сначала удалить файл перед клонированием. Затем сгенерируйте MAC-адрес, затем запустите клон. Это тоже должно работать.

1
ответ дан 25 May 2018 в 16:33

Я создаю параллельную вычислительную среду, которая нуждается в взаимосвязи между виртуальной машиной через ip-сеть.

Я думаю, что есть что-то, связанное с повторным созданием MAC-адресов машин. Раньше я сталкивался с подобной проблемой.

У исходной виртуальной машины есть 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

Итак, удачи, ребята!

0
ответ дан 25 May 2018 в 16:33

Я удаляю файл 70-persistent-net.rules, но после перезагрузки он не был повторно создан. Затем переустановить модуль гостевых дополнений и перезагрузить виртуальную машину для меня.

0
ответ дан 25 May 2018 в 16:33

У меня проблема с тем же ip-адресом после клонирования 3 виртуальных машин с Virtual BOX (4.3). Итак, я отключил компьютеры и обновил новый MAC-адрес и перезапустил его.

steps => выключить клонированную виртуальную машину, а затем настройки => network => advanced => нажать на обновить MAC-адрес => clik ОК. затем запустите VM.

0
ответ дан 25 May 2018 в 16:33

Другие вопросы по тегам:

Похожие вопросы: