Siduction Forum > Free Speech
[DE] Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
bluelupo:
Hallo zusammen,
hier das angekündigte zweite HowTo zur Umstellung der Netzwerkkonfiguration von ifupdown bzw. dem Netzwerk-Manager auf systemd-networkd.
Ich beschreibe erst einmal die kabelgebundene Config (LAN), da ich das wireless Szenario für meinen stationären Desktop-PC nicht benötige. Ich nehme dies aber gerne in mein HowTo auf, sollten sich User finden die dazu schon erfolgreich eine WLAN Konfiguration erstellt haben.
Ausgangssituation:
* Desktop mit fester IP-Adresse im lokalen Netzwerk (hier im Beispiel das Netzwerk 192.168.10.0)
* LAN Netzwerkkarte (wired eth0 IP: 192.168.10.50 und Gateway IP: 192.168.10.1)
Wie bin ich vorgegangen:
Netzwerk stoppen (ifupdown bzw. NM)
--- Code: ---# systemctl stop networking.service
oder
# systemctl stop NetworkManager.service
--- End code ---
interfaces umbennen oder verschieben bzw. leeren (nur bei ifupdown)
--- Code: ---# mv /etc/network/interfaces /etc/network/interfaces.ORIG
# touch /etc/network/interfaces
--- End code ---
Network Service dauerhaft deaktivieren
--- Code: ---# systemctl disable networking.service
bzw.
# systemctl disable NetworkManager.service
--- End code ---
Die Links des "networking" in /etc/rc* entfernen (nur bei ifupdown)
--- Code: ---# update-rc.d networking remove
--- End code ---
im Verzeichnis /etc/systemd/network die Config anlegen
eth.network anlegen
--- Code: ---[Match]
Name=eth0
[Network]
DNS=8.8.8.8
[Address]
Address=192.168.10.50/24
[Route]
Gateway=192.168.10.1
--- End code ---
networkd und resolved Service starten
--- Code: ---# systemctl start systemd-networkd.service
# systemctl start systemd-resolved.service
--- End code ---
Überprüfen
--- Code: ---# systemctl status systemd-networkd.service
# systemctl status systemd-resolved.service
--- End code ---
networkd und resolved Service dauerhaft aktivieren
--- Code: ---# systemctl enable systemd-networkd.service
# systemctl enable systemd-resolved.service
--- End code ---
Link zur resolv.conf löschen und neu anlegen
--- Code: ---# rm /etc/resolv.conf
# ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
--- End code ---
Zustand der Netzwerkinfaces überprüfen
--- Code: ---# networkctl status eth0
--- End code ---
Ob ein Service "enabled" bzw. "disabled" ist kann man, wie nachfolgend gezeigt, überprüfen. networking.service muss deaktiviert und die anderen beiden aktiviert sein.
--- Code: ---# systemctl is-enabled networking.service
# systemctl is-enabled systemd-networkd
# systemctl is-enabled systemd-resolved
--- End code ---
Zum Schluß ein Reboot - fertig!
EDIT:
Falls nachfolgender Fehler zum DHCPv6 im Journal auftauschen sollten die *.network Dateien ergänzt werden.
--- Code: ---Apr 07 19:04:27 snowcat systemd-networkd[953]: eth0: Starting DHCPv6 client on NDisc request failed: Invalid argument
--- End code ---
In der Network-Section folgendes ergänzen.
--- Code: ---[Network]
IPv6AcceptRouterAdvertisements=0
--- End code ---
Geier0815:
Funktionieren bei systemd-networkd eigentlich alias-devices? Und wenn ja, wie? Vor allen Dingen wie schalte ich sie einzeln an und aus? Über ip-Befehl? Irgendwie konnte ich im Wiki bei arch nichts entsprechendes finden, evtl. auch nur nicht intensiv genug geguckt...
bluelupo:
Hi Geier0815,
meinst du mehrere IP-Adressen auf einer Netzwerkkarte?
zB. drei IP's auf einer Netzwerkkarte geht so:
--- Code: ---# einrichten
# ip addr add 192.168.1.10/24 dev eth0 label eth0:NAME1
# ip addr add 192.168.1.20/24 dev eth0 label eth0:NAME2
# ip addr add 192.168.1.30/24 dev eth0 label eth0:NAME3
#
# löschen
# ip addr del 192.168.1.10/24 dev eth0:NAME1
# ip addr del 192.168.1.20/24 dev eth0:NAME2
# ip addr del 192.168.1.30/24 dev eth0:NAME3
--- End code ---
Geier0815:
Moin bluelupo,
ganz genau, mehrere Adressen auf einer Netzwerkkarte. Da in der interfaces diese statisch hinterlegt werden konnten, hatte ich die Hoffnung das dies in der/etc/systemd/network auch gehen würde. Beim ip-Befehl sind diese nach einem reboot ja wieder weg. Müßte ich mir wohl Notizzettel machen statt wie in der interfaces einfach immer nur ein- und aus-kommentieren.
Danke soweit.
der_bud:
Aus "man systemd.network":
--- Quote from: man systemd.network --- ...[Network] Section Options...
Address=
A static IPv4 or IPv6 address and its prefix length, separated by a "/" character. Specify this key more than once to configure several addresses. The format of the address must be as described in inet_pton(3). This is a short-hand for an [Address] section only containing an Address key (see below). This option may be specified more than once...
...
...[Address] Section Options
An "[Address]" section accepts the following keys. Specify several "[Address]" sections to configure several addresses.
Address=
As in the "[Network]" section. This key is mandatory.
--- End quote ---
Würde ich so verstehen dass man das entweder mit 'Address=IP1 IP2 IP3...' in der Network Sektion oder mit mehreren Address-Sektionen untereinander erreichen könnte.
Navigation
[0] Message Index
[#] Next page
Go to full version