KVM-Installation und Konfiguration eines Bridge-Netzwerks unter Debian und Ubuntu
KVM (Kernel-based Virtual Machine) ist eine leistungsstarke Open-Source-Virtualisierungslösung für Linux. Standardmäßig isoliert KVM virtuelle Maschinen (VMs) hinter einem NAT-Netzwerk. Um den VMs jedoch direkte IP-Adressen aus dem physischen lokalen Netzwerk zuzuweisen, wird eine Netzwerkbrücke (Bridge) benötigt.
Diese Anleitung führt Schritt für Schritt durch die Installation von KVM und das Einrichten eines Bridge-Netzwerks unter Debian und Ubuntu.
Voraussetzungen
-
Hardware-Virtualisierung (VT-x / AMD-V) prüfen: Prüfen Sie vorab, ob die CPU Virtualisierung unterstützt.
egrep -c '(vmx|svm)' /proc/cpuinfoWenn das Ergebnis größer als 0 ist, wird Virtualisierung unterstützt.
-
System aktualisieren:
sudo apt update && sudo apt upgrade -y
Schritt 1: KVM und Virtualisierungs-Tools installieren
Installieren Sie den KVM-Hypervisor, libvirt zur Verwaltung und nützliche Tools:
sudo apt install -y qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virtinst virt-manager
Paketübersicht:
qemu-kvm: Der eigentliche Hypervisor.libvirt-daemon-system: Systemdienst zur Steuerung der Virtualisierung.bridge-utils: Werkzeuge zur Konfiguration von Netzwerkbrücken.virtinst: CLI-Tools zum Erstellen von VMs (z. B.virt-install).virt-manager: Grafische Benutzeroberfläche (optional, falls Desktop vorhanden).
Schritt 2: Dienste starten und Berechtigungen setzen
-
Libvirt-Dienst aktivieren und starten:
sudo systemctl enable --now libvirtd -
Eigenen Benutzer zur
kvm- undlibvirt-Gruppe hinzufügen: Damit können VMs ohne Root-Rechte verwaltet werden:sudo usermod -aG kvm,libvirt $USER(Melden Sie sich einmal ab und wieder an, damit die Gruppenrechte aktiv werden).
Schritt 3: Ermitteln der physischen Netzwerkschnittstelle
Finden Sie den Namen Ihrer aktiven Netzwerkschnittstelle (z. B. eth0, enp3s0):
ip link
# oder
ip addr
Merken Sie sich diesen Schnittstellennamen (im Folgenden exemplarisch als enp3s0 bezeichnet).
Schritt 4: Netzwerkbrücke (Bridge) konfigurieren
Die Konfiguration unterscheidet sich je nach Distribution:
- Ubuntu nutzt standardmäßig Netplan.
- Debian nutzt standardmäßig /etc/network/interfaces.
Wählen Sie die für Ihr System passende Methode:
Option A: Unter Ubuntu (via Netplan)
-
Öffnen Sie die Netplan-Konfigurationsdatei (der Name kann variieren, z. B.
01-netcfg.yamloder50-cloud-init.yaml):sudo nano /etc/netplan/01-netcfg.yaml -
Passen Sie die Datei an (Achtung: YAML erfordert exakte Einrückung mit Leerzeichen, keine Tabs):
network: version: 2 renderer: networkd ethernets: enp3s0: dhcp4: false dhcp6: false bridges: br0: interfaces: [enp3s0] dhcp4: true parameters: stp: false forward-delay: 0(Falls Sie eine statische IP bevorzugen, konfigurieren Sie diese unter
br0anstelle vondhcp4: true). -
Konfiguration testen und anwenden:
sudo netplan try sudo netplan apply
Option B: Unter Debian (via /etc/network/interfaces)
-
Bearbeiten Sie die Netzwerkkonfiguration:
sudo nano /etc/network/interfaces -
Kommentieren Sie die bestehende Konfiguration Ihrer physischen Schnittstelle aus und fügen Sie die Bridge
br0hinzu:# Physische Schnittstelle (ohne IP) auto enp3s0 iface enp3s0 inet manual # Bridge-Schnittstelle (DHCP) auto br0 iface br0 inet dhcp bridge_ports enp3s0 bridge_stp off bridge_fd 0 bridge_maxwait 0 -
Netzwerkdienst neu starten:
sudo systemctl restart networking
Schritt 5: Bridge-Konfiguration überprüfen
Prüfen Sie, ob die Bridge br0 eine IP-Adresse erhalten hat und die physische Schnittstelle zugeordnet ist:
ip addr show br0
Die Ausgabe von brctl show sollte nun zeigen, dass enp3s0 an br0 gebunden ist:
bridge name bridge id STP enabled interfaces
br0 8000.xxxxxxxxxxxx no enp3s0
Schritt 6: KVM die neue Bridge mitteilen
Damit KVM die Bridge als virtuelles Netzwerk nutzen kann:
-
Erstellen Sie eine temporäre XML-Datei:
nano host-bridge.xml -
Fügen Sie folgenden Inhalt ein:
<network> <name>host-bridge</name> <forward mode="bridge"/> <bridge name="br0"/> </network> -
Registrieren und aktivieren Sie das Netzwerk in
libvirt:virsh net-define host-bridge.xml virsh net-start host-bridge virsh net-autostart host-bridge -
Überprüfen Sie den Status der KVM-Netzwerke:
virsh net-list --allhost-bridgesollte als active und autostart: yes gelistet sein.
Schritt 7: Neue VM mit Bridge-Netzwerk erstellen (Test)
Beim Erstellen einer neuen VM (z. B. via virt-install auf der Konsole) können Sie nun direkt die Bridge angeben:
virt-install \
--name debian-vm \
--ram 2048 \
--vcpus 2 \
--disk size=20 \
--os-variant debiantesting \
--network bridge=br0 \
--graphics none \
--console pty,target_type=serial \
--location 'http://deb.debian.org/debian/dists/stable/main/installer-amd64/' \
--extra-args 'console=ttyS0,115200n8 serial'
Wichtig ist der Parameter --network bridge=br0.
Alternativ wählen Sie im grafischen Virtual Machine Manager (virt-manager) bei der Netzwerkauswahl einfach:
"Bridge-Gerät..." und tragen br0 ein.
Die erstelle VM erhält nun automatisch eine IP-Adresse direkt von Ihrem physischen Router und ist im gesamten lokalen Heim- oder Firmennetzwerk erreichbar.