Fügen Sie einem Server mit systemd-networkd mehrere statische IP-Adressen hinzu

10

Wir haben einen Server mit mehreren IP-Adressen. In letzter Zeit sind wir auf systemd migriert und benötigen noch mehrere IPs auf diesem Server. Mit systemd-networkd haben wir einige Probleme, ein Konfigurationsbeispiel zu finden. Daher verwenden wir am Ende des Startvorgangs ein Bash-Skript, um die IPs zur Schnittstelle hinzuzufügen.

Kann jemand ein systemd-networkd-Konfigurationsbeispiel zum Hinzufügen von mehr als einer IP zu einer Schnittstelle bereitstellen?

user61664
quelle
Hast du nachgesehen man systemd.network? Nur eine Randnotiz, Sie müssen nicht ALLE in einem use systemd-networkd gehen. Über welche Verteilung sprechen wir?
Phoops
Wir haben die Manpage überprüft. Ich denke, es ist sehr kompatibel und portabel, wenn wir systemd-netword verwenden, da es bald in allen Distributionen verfügbar sein wird. Distribution ist Gentoo.
user61664

Antworten:

11

Gemäß systemd.network (5) können Sie Address=dem [Network]Abschnitt einfach mehrere Zeilen mit den erforderlichen Adressen hinzufügen .

[Network]
Address=10.2.3.4/16
Address=10.6.7.8/16
Gateway=...

Alternativ können Sie [Address]für jede Adresse einen eigenen Abschnitt erstellen .

[Network]
Gateway=...

[Address]
Address=10.2.3.4/16

[Address]
Address=10.6.7.8/16

(Gleiches gilt für [Route]Abschnitte und Gateway=Parameter.)

Beachten Sie, dass systemd-networkd noch sehr neu ist und fast täglich Fehlerbehebungen erhält. Stellen Sie sicher, dass Sie die neueste systemd-Version verwenden, und testen Sie die Git-Builds, wenn möglich. Siehe die Mailingliste und die IRC-Kanäle #systemd& #gentoo-systemdauf Freenode im Falle von Fehlern.

user1686
quelle
3
In Ubuntu 16.04 LTS scheint die erste Methode nicht zu funktionieren (nur die erste IP-Adresse ist erreichbar). Die zweite Methode mit separaten [AddressAbschnitten funktioniert jedoch. Für das, was es wert ist, habe ich ein einzelnes Gateway unter dem [Network]Abschnitt definiert, wie im zweiten Beispiel. Ich sollte auch hinzufügen, dass ich nicht in der Lage bin, zwei statische IP-Adressen auf zwei separaten physischen Netzwerkschnittstellen zu verwenden, egal was ich versuche (ich habe noch kein Beispiel dafür in der systemdDokumentation oder an anderer Stelle im Web gefunden). Ich muss mich mit zwei IP-Adressen auf einer einzigen Schnittstelle zufrieden geben.
Ben Johnson
1

Ich verwende einen Container unter Proxmox und Proxmox schreibt einen eigenen /etc/systemd/network/eth0.networkin den Container. Um zu umgehen, dass Sie sich nicht darauf verlassen können, dass diese Datei nicht überschrieben wird, können Sie eine Drop-In-Datei mit den zusätzlichen IP-Adressen erstellen./etc/systemd/network/eth0.network.d/additional-ips.conf

[Match]
Name = eth0

[Address]
Address = 192.168.1.102/24
Bob
quelle