Kopiert man VirtualBox Images mit Linux-Systemen als Gast (zumindest Ubuntu und Debian, ggf. weitere), funktionieren oftmals die Netzwerkeinstellungen nicht mehr.
Dies liegt daran, dass bei VirtualBox i.d. Regel nur das Festplatten-Image, nicht jedoch die Konfiguration der virtuellen Hardware kopiert wird (wie das z.B. bei vmWare der Fall ist). Vergleichbar ist dies also mit dem Einbau der Festplatte in eine andere Rechner-Hardware.
Um zu verhindern, dass Netzwerkkonfigurationen z.B. durch den Einbau neuer Hardware ungültig werden, werden die Konfigurationen (z.B. für das Device eth0) an die Hardwareadresse (MAC-Adresse) der jeweiligen Netzwerkkarte gebunden.
Das heisst also:
- bei der Neuinstallation eines Linux-Systems befindet sich eine Netzwerkkarte im Rechner
- diese wird als etho, also als erstes Netzwerkdevice am Bus identifiziert
- das Betriebssystem speichert in der Datei
/etc/udev/rules.d/70-persistent-net.rulesdie Zuordnung dieser Netzwerkkarte (über die MAC-Adresse) zum Devicenamen “eth0″ - die Netzwerkkarte bzw. das Netzwerk wird konfiguriert (feste IP-Adresse vs. DHCP etc.) in der Datei
/etc/network/interfaces
Der Eintrag in o.g. /etc/udev/rules.d/70-persistent-net.rules sieht ungefähr wie folgt aus:
# PCI device 0x10ec:0x8168 (r8169)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="6c:62:6d:0d:9c:93", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
Wird nun das Festplattenimage auf einen anderen Rechner kopiert, so wird i.d. Regel eine neue virtuelle Maschine angelegt, wobei VirtualBox automatisch eine zufällige MAC-Adresse für die virtuelle Netzwerkkarte erzeugt.
Beim Start erkennt das Linux-System dann ein neues Interface und trägt dieses in der Datei /etc/udev/rules.d/70-persistent-net.rules ein. Da die bisher verwendete ID (in unserem Beispiel eth0) ja bereits vergeben ist, wird entsprechend hochgezählt: Die neue virtuelle Karte erhielte dann z.B. eth1.
Da in /etc/network/interfaces die Konfiguration jeweils für das spezifische Device definiert wird (z.B. eth0), greift sie entsprechend für eth1, eth2, eth3 etc. nicht – das Netzwerk funktioniert also nicht, da das in der VM verfügbare Netzwerkdevice noch unkonfiguriert ist.
Es muss also vor dem Start des Gastes manuell eingegriffen werden. Hierfür kommen 3 Optionen in Betracht:
weiterlesen
Letzte Kommentare