Wir haben einen Server mit mehreren IP-Adressen. Vor Kurzem sind wir auf systemd umgestiegen und benötigen auf diesem Server immer noch mehrere IPs. 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?
Antwort1
Entsprechendsystemd.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 erstellen Sie [Address]
für jede Adresse einen separaten Abschnitt.
[Network]
Gateway=...
[Address]
Address=10.2.3.4/16
[Address]
Address=10.6.7.8/16
(Dasselbe gilt für [Route]
Abschnitte und Gateway=
Parameter.)
Beachten Sie, dasssystemd-networkdist noch sehr neu und erhält fast täglich Fehlerbehebungen. Stellen Sie sicher, dass Sie die neueste systemd-Version verwenden, und testen Sie die Git-Builds, wenn möglich. Weitere Informationen finden Sie unterMailinglisteund die IRC-Kanäle #systemd
und #gentoo-systemd
auf Freenode im Falle von Fehlern.
Antwort2
Ich verwende einen Container unter Proxmox und Proxmox schreibt seine eigene Datei /etc/systemd/network/eth0.network
in den Container. Um zu vermeiden, dass man sich nicht darauf verlassen kann, dass diese Datei nicht überschrieben wird, kann man 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
Antwort3
Unter Arch Linux, SystemD 249.2-1, funktioniert keine dieser (3) Methoden (habe diese Antwort auch versucht)
-------------------------
[Network]
Address=10.2.3.4/16
Address=10.6.7.8/16
-------------------------
[Network]
Address=192.168.59.1/24 192.168.1.5/24
-------------------------
[Address]
Address=10.2.3.4/16
[Address]
Address=10.6.7.8/16
-------------------------
Stattdessen können Sie mit einem einfachen SystemD-Dienst nach dem Booten eine zweite IP festlegen ... Siehediese Antwortfür weitere Einzelheiten zur Erstellung des systemd-Dienstes ... Bonuspunkt: Mit dieser Methode können Sie eine statische oder DHCP-Adresse als primäre Adresse verwenden.
- touch /usr/local/bin/zweite_IP
- chmod +x /usr/local/bin/zweite_IP
- Bearbeiten Sie die Datei wie unten beschrieben
#!/bin/bash ip address add 10.10.128.128/16 dev eth0
berühren Sie /etc/systemd/system/zweite-ip.service
Bearbeiten Sie die Datei wie unten beschrieben
systemctl aktiviere zweite IP
[Unit] Description=second ip service After=network.target [Service] User=root ExecStart=/usr/local/bin/second_ip Type=simple [Install] WantedBy=multi-user.target