Klonlanmış sanal makinelerde bozuk ağ bağlantısını nasıl düzeltebilirim?


27

Köprü ağı ile yapılandırılmış sanal bir makine kurdum . Sekiz klonu yaptıktan sonra, yeni makineler ağa bağlanamıyor.

VirtualBox'a makinelerin mac adreslerini yeniden oluşturma talimatı verdim.

Yanıtlar:


26

udevYeni arayüzün açılmasını engelleyen kurallar var

Ana makinede, yeni makineleri klonlamadan önce bunları silin:

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

( kaynak )


70-persistent-net.rules ana makinenin bir sonraki açılışında ve klonlanmış vms'de karşımıza çıkıyor. Bu problemle karşılaştın mı?
Manish,

Bir dosyayı silmek kuvvet -fbayrağını gereksiz kılar .
k0pernikus

-fBayrak yapan rmdosya yoksa bile komutu bir statü 0 ile başarılı. Alışkanlık gücü. :)
Stefano Palazzo

6

Sanal Kutu makine ayarlarını kullanarak MAC adresinizi yenileyin ve çekirdeğin ağ arayüzü arabirim kuralları dosyasını kaldırın; böylece yeniden oluşturulabilir:

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

Klon VM'niz için işe yarayacak.


1
Şahsen, geri yüklemeniz gerekebileceği durumlarda, kural dosyasını doğrudan silmek yerine bir yere kopyalarım.
David Edwards,

bu benim için çalıştı!
david.libremone

@DavidEdwards Varsa, dosya işletim sistemi tarafından işletim sistemi tarafından yaratılır. Eski kopyaya gerçekten ihtiyacınız varsa (yanlış MAC adresi olan), her zaman orijinal VM'den alabilirsiniz.
MrWonderful

4

Aylardır aynı problemle uğraşıyordum ve bugün daha iyi bir çözüm bulmaya karar verdim. Makinede Yaptığım Şablon: Şablon olarak kullanıyordum.

İyi yönetim uygulamaları için düzenlemeden önce her iki dosyayı da yedekleyin.

İki suçlu / hedef dosyanız var:

  1. /etc/sysconfig/network-scripts/ifcfg-eth0
  2. /etc/udev/rules.d/70-persistent-net.rules

Bu için çalışacak staticveya dhcpadresine:

Açık /etc/sysconfig/network-scripts/ifcfg-eth0

MAC Adres satırını silin: HWADDR=XX:11:22:XX:33:XX
Dosyayı kaydedin.

/etc/udev/rules.d/70-persistent-net.rules"VM'yi yeniden başlattıktan sonra yeniden oluşturulacak" dosyasını silin

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

Kutunuzu şimdi klonlayabilirsiniz; her klon eth0 kodunu doğru bir şekilde kurar ve görüntüler.

Bir şablon kullanmazsanız, bu işlemleri gerçek VM'de tamamlayabilirsiniz, makineyi yeniden başlatmadan önce NIC'nizi VM yazılımında yeniden başlatmayı unutmayın.


Bu daha eksiksiz bir cevap gibi görünüyor. Son paragrafta "NIC’in yeniden başlatılması" bölümü ile ilgili daha ayrıntılı bilgi verebilir misiniz? Ayrıca hangi VirtualBox sürümünü kullanıyordunuz?
RichVel

Tıpkı bir not olarak, / etc / sysconfig dizinini Ubuntu 16.04'te bulamıyorum.
MakisH

1
@ Debian / Ubuntu'dakiMakisH ağ arayüzleri / etc / sysconfig / network-scripts içindeki dosyalar tarafından tanımlanmamıştır (fark ettiğiniz gibi, / etc / sysconfig dizini bile yoktur), / etc / network / interfaces tarafından.
Devin Norgarb

1

VirtualBox'ın önceki sürümlerinde de aynı sorunla karşılaştım ve bir yerde "yeni MAC adresi oluştur" onay kutusunu gereksiz kılan bir hata olduğunu gördüm.

Şimdi VirtualBox 4.2.10 ile Ubuntu 12.04 kullanıyorum. Şimdi klonu yarattığımda, "yeni MAC adresi oluşturmak için" onay kutusunun olmadığını fark ettim.

Bu, 70-persistent-net.rules öğesini silmiş olsam bile bana bazı problemler verdi, çünkü sistem dosyayı başlangıçta orijinal olarak aynı MAC adresiyle otomatik olarak oluşturacak, böylece bağlanamadı.

Ancak, VirtualBox Manager'da klonu seçebileceğinizi, Ayarlar> Ağ> Gelişmiş'e gidip kutuyu işaretleyerek yeni bir MAC adresi oluşturabileceğinizi keşfettim.

Yaptığım şey ilk önce 70-persistent-net.rules dosyasını silmek, kapanmak, yeni MAC adresi oluşturmak ve tekrar başlatmak oldu, ve şimdi çalışıyor.

Alternatif olarak, klonlamadan önce dosyayı silebilirsiniz. Sonra MAC adresini oluşturun, sonra klonu başlatın. Bu da işe yaramalı.


0

Sanal makine ile ip ağ üzerinden birbirine bağlanması gereken paralel bilgi işlem ortamı kuruyorum.

Makinelerin mac adreslerini yeniden oluşturmakla ilgili bir şey olduğunu düşünüyorum. Ben de benzer problemle daha önce karşılaştım.

Orijinal sanal makine eth0ve vardır eth1. Ama yenilenme süreci nedeniyle, benim durumumda, yeni klonlanmış makine eth2ve eth3. Aşağıdaki komutla kontrol edebilirsiniz:

ifconfig -a | grep eth

ifconfigYeni klonlanmış makinede sadece lokayıtlı olduğunu komutla kontrol edebilirsiniz . Genellikle, olması gereken lo, eth0ve eth1yazarken ifconfigkomutu.

Klon makinesinde vardır MAC rejenerasyon nedeniyle o eth2ve eth3yerine arayüzleri Ethernet eth0ve eth1orijinal makinede. Ayrıca /etc/network/interfaces, orijinal makinede benim durumumda şöyle göründüğünü de kontrol edebilirsiniz :

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

Eğer değiştirebilir olabilir /etc/network/interfacesdosya ve değiştirmek eth0ve eth1ile eth2ve eth3hangi az ya da çok bu gibi:

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

Peki, iyi şanslar çocuklar!


0

70-persitent-net.rules dosyasını sildim ancak yeniden başlatıldıktan sonra yeniden oluşturulmadı. Daha sonra konuk ekleme modülünü yeniden kurmak ve VM'yi yeniden başlatmak benim için çalıştı.


0

Virtual BOX (4.3) ile 3 VM klonladıktan sonra aynı ip adresinde sorun yaşıyorum. SO makineleri kapattım ve yeni mac adresini yeniden oluşturdum ve yeniden çalıştırarak benim için çalıştı.

steps => klonlanan VM'yi kapatın ve ardından settings => network => advanced => MAC adresini yenile tıklayın => clik OK. sonra VM'yi başlatın.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.