Beim Booten wird keine Systemd-Networkd-Brücke erstellt

Beim Booten wird keine Systemd-Networkd-Brücke erstellt

Ich versuche, mit systemd-networkd eine Ethernet-Brücke zu erstellen, damit KVM-Gäste auf das Netzwerk zugreifen können. Ich verwende Debian 11 Bullseye und versuche, die Brücke „host1“ auf dem physischen Gerät „eno1“ zu erstellen.

root@debian-kvm:/etc/systemd/network# ls
    
20-wired.network  host1.netdev  host1.network  uplink.network

root@debian-kvm:/etc/systemd/network# cat 20-wired.network

[Match]
Name=eno1

[Network]
DHCP=No
Address=192.168.1.57/24
Gateway=192.168.1.1
DNS=1.1.1.1

root@debian-kvm:/etc/systemd/network# cat host1.netdev

[Netdev]
Name=host1
Kind=bridge

root@debian-kvm:/etc/systemd/network# cat host1.network

[Match]
Name=host1

[Network]
Address=192.168.1.2/24
Gateway=192.168.1.1
DNS=1.1.1.1

root@debian-kvm:/etc/systemd/network# cat uplink.network

[Match]
Name=eno1

[Network]
Bridge=host1

Es funktioniert jedoch nicht, wenn ich „systemctl restart systemd-networkd“ ausführe. eno1 ist in Ordnung und behält die Netzwerkverbindung bei, und ich kann Websites und IP-Adressen anpingen, aber die Bridge host1 wird nie angezeigt.

root@debian-kvm:/etc/systemd/network# networkctl

IDX LINK TYPE     OPERATIONAL SETUP
  1 lo   loopback carrier     unmanaged
  2 eno1 ether    routable    configured
  3 eno2 ether    off         unmanaged
  4 eno3 ether    off         unmanaged
  5 eno4 ether    off         unmanaged

root@debian-kvm:/etc/systemd/network# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether b8:ca:3a:64:65:88 brd ff:ff:ff:ff:ff:ff
    altname enp1s0f0
3: eno2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether b8:ca:3a:64:65:89 brd ff:ff:ff:ff:ff:ff
    altname enp1s0f1
4: eno3: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether b8:ca:3a:64:65:8a brd ff:ff:ff:ff:ff:ff
    altname enp1s0f2
5: eno4: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether b8:ca:3a:64:65:8b brd ff:ff:ff:ff:ff:ff
    altname enp1s0f3

Soweit ich das beurteilen kann, sollte es funktionieren. Die Dateien befinden sich in /etc/systemd/network, das die höchste Priorität hat, es gibt eine .netdev-Datei mit der richtigen Syntax und dem richtigen Namen, es gibt eine uplink.network-Datei, die angibt, dass das übergeordnete Element eno1 ist, und es gibt eine host1.network-Datei, die IP, DNS usw. konfiguriert. Das Verschieben von host1.network nach 25-wired.network hilft auch nicht, es scheint also nicht an den Dateinamen zu liegen.

Falls es etwas in /etc/network/interfaces ist, glaube ich aber nicht, dass systemd-networkd diese Datei liest:

root@debian-kvm:/etc/systemd/network# cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eno1
iface eno1 inet manual

# KVM Host interface, use this to avoid conflicts, physical device is just for physical connection
iface host1 inet manual

# FreeBSD KVM bridge
#iface frbsd1 inet static
#   bridge_ports eno1
#   address 192.168.1.45
#   broadcast 192.168.1.255
#   netmask 255.255.255.0
#   gateway 192.168.1.1

Ich weiß, ich könnte einfach ein Init-Skript erstellen, um bei jedem Booten eine Brücke zu erstellen, aber das ist ein bisschen umständlich und ich möchte das Problem auf nachhaltige Weise beheben.

Was passiert hier und wie kann ich es beheben, um die Brücke ordnungsgemäß zu erstellen?

Antwort1

Wie wangkaibule in den Fragekommentaren erwähnt hat, hätte ich [NetDev] und nicht [Netdev] schreiben sollen.

Für alle, die sich in einer ähnlichen Situation befinden: Bei systemd-Konfigurationsdateien wird zwischen Groß- und Kleinschreibung unterschieden. Stellen Sie sicher, dass alles richtig und mit der richtigen Schreibweise eingegeben wird, sonst funktioniert es nicht.

verwandte Informationen