systemd-networkd
Debian 12では、libvirt仮想マシンを簡単に設定するために、VLANフィルタリングなしでVLANあたりのブリッジを設定しようとしています。
これはVLANなしで期待どおりに機能し、いくつかの手動ヘルプを使用するとVLANでも機能します(ip link set master ...
)。問題の症状は、ブリッジとVLANインターフェイスが実際に作成されたがsystemd-networkd
接続されていないことです。
2: onbunten: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master brlan state UP group default qlen 1000
link/ether 04:92:26:b7:a9:9f brd ff:ff:ff:ff:ff:ff
4: brlan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether c6:50:f5:f2:22:8c brd ff:ff:ff:ff:ff:ff
inet 192.168.2.222/24 brd 192.168.2.255 scope global brlan
valid_lft forever preferred_lft forever
5: brvlan2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 46:ba:f7:a8:3d:d7 brd ff:ff:ff:ff:ff:ff
6: brvlan3: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 26:96:9b:cc:69:af brd ff:ff:ff:ff:ff:ff
7: onbunten.4@onbunten: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 04:92:26:b7:a9:9f brd ff:ff:ff:ff:ff:ff
8: onbunten.2@onbunten: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 04:92:26:b7:a9:9f brd ff:ff:ff:ff:ff:ff
9: onbunten3@onbunten: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 04:92:26:b7:a9:9f brd ff:ff:ff:ff:ff:ff
onbunten.2
/パターンonbunten3
の違いは意図的なものです。これにより、違いがあるかどうかをテストしてください。
私は私がやったことが解決策であることを示すように見える説明をインターネットで見つけました。私もこの声明を見つけました
この構成は廃止され、サポートされなくなりました。
このウェブサイトから(回答);残念ながら、正確に何を使用するべきではないかについての明確な説明はありません(Systemdのマニュアルページにそのようなヒントが見つかりませんでした)。
systemd-networkd
デバッグモード()で実行しましたが、SYSTEMD_LOG_LEVEL=debug
500行のロギングでVLANとブリッジインターフェイスに関連するコンテンツを同時に検出できませんでした。エラーメッセージはありません。
構成ファイル
これがうまくいくことです
==> 31-brlan.netdev <==
[NetDev]
Name=brlan
Kind=bridge
==> 32-brvlan2.netdev <==
[NetDev]
Name=brvlan2
Kind=bridge
==> 33-brvlan3.netdev <==
[NetDev]
Name=brvlan3
Kind=bridge
==> 41-onbunten-vlans.network <==
[Match]
Type=ether
Name=onbunten
[Network]
LinkLocalAddressing=no
VLAN=onbunten.2
VLAN=onbunten3
VLAN=onbunten.4
Bridge=brlan
==> 61-brlan-onbunten.network <==
[Match]
Name=onbunten
[Network]
Bridge=brlan
==> 71-brlan.network <==
[Match]
Name=brlan
[Network]
LinkLocalAddressing=no
ConfigureWithoutCarrier=yes
IgnoreCarrierLoss=yes
[Address]
Address=192.168.2.222/24
これはうまくいきません。
==> 62-brvlan2-onbunten2.network <==
[Match]
Name=onbunten.2
[Network]
Bridge=brvlan2
==> 63-brvlan3-onbunten3.network <==
[Match]
Name=onbunten3
[Network]
Bridge=brvlan3
==> 72-brvlan2.network <==
[Match]
Name=brvlan2
[Network]
DHCP=no
LinkLocalAddressing=no
# Gateway=192.168.115.1
# NTP=
ConfigureWithoutCarrier=yes
IgnoreCarrierLoss=yes
[Address]
Address=192.168.115.222/24
DuplicateAddressDetection=ipv4
Scope=global
==> 73-brvlan3.network <==
[Match]
Name=brvlan3
[Network]
DHCP=no
LinkLocalAddressing=no
Gateway=192.168.116.1
# NTP=
ConfigureWithoutCarrier=yes
IgnoreCarrierLoss=yes
[Address]
Address=192.168.116.222/24
DuplicateAddressDetection=ipv4
Scope=global
答え1
最後に、デバッグ出力で次を見つけました。
onbunten.2: Failed to manage link by its new hardware address, ignoring: Die Datei existiert bereits
(存在の事実ドイツ語はファイルはすでに存在します。)
MACAddress=
これにより、VLANインターフェイスに[NetDev]
ファイルブロックを追加しようとしましたnetdev
(まだインターフェイスの作成に問題があるとは思わなかったため、上記は表示されませんでしたDOWN
)。
Systemdやカーネルのいくつかの変更のために、これらの項目がなくても動作する前に要件があると思います。すべての文書は、これを提供する必要はないと明確に記載されています。