Siduction Forum

Siduction Forum => Free Speech => Topic started by: bluelupo on 2015/06/08, 08:32:07

Title: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: bluelupo on 2015/06/08, 08:32:07
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: [Select]
# systemctl stop networking.service
oder
# systemctl stop NetworkManager.service

interfaces umbennen oder verschieben bzw. leeren (nur bei ifupdown)
Code: [Select]
# mv  /etc/network/interfaces /etc/network/interfaces.ORIG
# touch /etc/network/interfaces


Network Service dauerhaft deaktivieren
Code: [Select]
# systemctl disable networking.service
bzw.
# systemctl disable NetworkManager.service

Die Links des "networking" in /etc/rc* entfernen (nur bei ifupdown)
Code: [Select]
# update-rc.d networking remove

im Verzeichnis /etc/systemd/network die Config anlegen
eth.network anlegen
Code: [Select]
[Match]
Name=eth0

[Network]
DNS=8.8.8.8

[Address]
Address=192.168.10.50/24

[Route]
Gateway=192.168.10.1

networkd und resolved Service starten
Code: [Select]
# systemctl start systemd-networkd.service
# systemctl start systemd-resolved.service

Überprüfen
Code: [Select]
# systemctl status systemd-networkd.service
# systemctl status systemd-resolved.service

networkd und resolved Service dauerhaft aktivieren
Code: [Select]
# systemctl enable systemd-networkd.service
# systemctl enable systemd-resolved.service

Link zur resolv.conf löschen und neu anlegen
Code: [Select]
# rm /etc/resolv.conf
# ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf

Zustand der Netzwerkinfaces überprüfen
Code: [Select]
# networkctl status eth0

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: [Select]
# systemctl is-enabled networking.service
# systemctl is-enabled systemd-networkd
# systemctl is-enabled systemd-resolved

Zum Schluß ein Reboot - fertig!


EDIT:
Falls nachfolgender Fehler zum DHCPv6 im Journal auftauschen sollten die *.network Dateien ergänzt werden.

Code: [Select]
Apr 07 19:04:27 snowcat systemd-networkd[953]: eth0: Starting DHCPv6 client on NDisc request failed: Invalid argument

In der Network-Section folgendes ergänzen.
Code: [Select]
[Network]
IPv6AcceptRouterAdvertisements=0
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: Geier0815 on 2015/06/08, 09:14:42
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...
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: bluelupo on 2015/06/08, 11:13:45
Hi Geier0815,

meinst du mehrere IP-Adressen auf einer Netzwerkkarte?

zB. drei IP's auf einer Netzwerkkarte geht so:
Code: [Select]
# 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
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: Geier0815 on 2015/06/08, 12:54:45
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.
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: der_bud on 2015/06/08, 13:33:10
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.

 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.
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: bluelupo on 2015/06/08, 13:47:49
Beispiel vom ArchWiki https://wiki.archlinux.de/title/Systemd/systemd-networkd (2 IPs auf einer Karte mit unterschiedlichen Routen)

Code: [Select]
[Match]
Name=enp0s25

[Address]
Address=10.10.0.10/24

[Address]
Address=192.168.2.50/24

[Route]
Gateway=10.10.0.1
Destination=10.10.0.0/24

[Route]
Gateway=192.168.2.255
Destination=192.168.2.0/24
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: walloac on 2015/06/08, 22:18:21
Hallo bluelupo

Ich habe nach der Anleitung die Netzwerkkonfiguration umgestellt - es klappt prima - keine Probleme.
Danke für die Mühe.

Eine Frage habe ich in Bezug auf den DNS-Eintrag.
Ich habe zwei Einträge eingetragen, getrennt durch ein Komma. Eine Fehlermeldung konnte ich nicht feststellen da ich nicht den nötigen Befehl kenne.

Groetjes

WalloAC
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: bluelupo on 2015/06/09, 13:10:10
Hi walloc,

zwei DNS Einträge gehen auch.

Code: [Select]
[...]
[Network]
DNS=8.8.8.8
DNS=8.8.4.4
[...]
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: Lanzi on 2015/06/09, 13:38:26
@Bluelupo:
ich habe da irgendwas nicht mitbekommen, so wie es scheint...  :-[
Oder kann ich Networkmanager am Lappi und einen direkten Eintrag in /etc/networking/interfaces noch nutzen?

Hast Du mal nen Link zum Hintergrund oder zur Erklärung?
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: bluelupo on 2015/06/09, 15:29:09
@Lanzi, hier ist nicht vom NetworkManager die Rede sondern vom systemd-networkd.

Du kannst für die Netzwerk-Konfiguration einen von beiden nutzen ;-)
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: der_bud on 2015/06/09, 15:34:57
Lanzi, keine Sorge, Du kannst wohl wieder alles nutzen ;). Vor ein paar Tagen kam ziemlich plötzlich systemd 220 rein (http://forum.siduction.org/index.php?topic=5557.0), was u.a. neu funktionierendes systemd-networkd mitbrachte (das wäre sozusagen "die Zukunft", es lohnt sich damit mal zu beschäftigen). Gleichzeitig gab es in der Zeit Probleme mit ceni, das einige devices aus /etc/network/interfaces nicht mehr erkannt wurden (inzwischen gefixt) und auch noch die Meldung das ifupdown verwaist weil der Maintainer aufgibt (http://forum.siduction.org/index.php?topic=5563.0)  (inzwischen auch erledigt, neuer Maintainer).
Daher haben in letzter Zeit einige die Chance genutzt und entweder auf systemd-networkd umgestellt oder auf die ebenfalls empfehlenswerte Kombi connman/cmst, und posten das Vorgehen dazu hier. Aber zurzeit sollte alles wieder gefixt sein und wie gewohnt laufen.
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: Lanzi on 2015/06/09, 15:58:22
Dank Euch beiden, und auch Danke für das Howto... Momentan ist meine Baustelle EasyVDR und mein alter Diseqc-MOtor... keine Zeit für Systemd  ;D ;D ;D
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: harley-peter on 2015/06/09, 17:25:27
Bringt es denn irgendwelche Vorteile auf systemd-networkd umzustellen? Außer dass man damit ganz up to date ist.  :)
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: bluelupo on 2015/06/09, 18:07:21
Hi Peter,

dazu kann ich mit entschiedenen "Jein" antworten ;-)

Ja, bei einen Desktop-PC der faktisch nicht anderen LANs bzw. WLANs beweget wird. Bei Notebooks sieht die Sache (für mich) schon wieder ganz anders aus. Auf einem NB möchte ich schnell mal ein WLAN-Hotspot oder ein WLAN-Gastzugang einrichten ohne in Configfiles rumfrickeln zu müssen. Geht zwar auch mit systemd-networkd aber umständlicher auf der Kommandozeile. Solange es dazu keine GUI gibt bleibe ich persönlich bei meinen NBs beim Network-Manager.

Vorteile bietet systemd-networkd schon, zB einfache und übersichtliche Configfiles (auch für Nicht-Standard Netzwerkconfigs). Du legst DNS, IP, Interfacename usw. alles in einem File ab und nicht in mehreren Dateien wie bei ifupdown an. Durch die Integration in den systemd ist natürlich das Netzwerk zu einem frühen Zeitpunkt beim Booten "Up" und verkürzt auch noch die Bootzeit gegenüber ifupdown.

Umstellung ist einfach und in 20 Minuten erledigt.
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: harley-peter on 2015/06/10, 17:48:19
Hi Michael,

danke für die Info dann werde ich meinen Desktop doch mal umstellen.
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: hendrikL on 2015/06/23, 11:52:46
Hier mal kurz und schmerzlos für die, die es mit dhcp wollen

/etc/systemd/network/<interface>.network

Code: [Select]
[Match]
NAME=<INTERFACE>

[Network]
DHCP=yes

## oder ##
# DHCP=ipv4
# DHCP=ipv6
# DHCP=both
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: michaa7 on 2015/07/01, 17:54:44
...Gleichzeitig gab es in der Zeit Probleme mit ceni, das einige devices aus /etc/network/interfaces nicht mehr erkannt wurden (inzwischen gefixt) ...

Ich habe die neueste ceni version 2014.10.12 installiert, aber es werden keine netzwerkdevices mehr erkannt, insbesondere habe ich kein funktionierendes wlan mehr. Was meinst du mit "gefixt"?
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: michaa7 on 2015/07/01, 17:58:13
Quote
...Bei Notebooks sieht die Sache (für mich) schon wieder ganz anders aus. Auf einem NB möchte ich schnell mal ein WLAN-Hotspot oder ein WLAN-Gastzugang einrichten ohne in Configfiles rumfrickeln zu müssen. ...
Funktioniert NM mit systemd 220-7?

Und mit welcher GUI arbeite ich am besten unter fluxbox, gibt ja keine gtk oder qt gui, nut GNome oder KDE (womit ich von mehr abhängigkeiten ausgehe als unter toolkit varianten üblich wäre)
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: der_bud on 2015/07/01, 21:38:24
...Was meinst du mit "gefixt"?
Da ich da ganze nur am Rande mitverfolgte weil hier interfaces funktioniert: es gab in diesem Thread zu systemd-220 (http://forum.siduction.org/index.php?topic=5557.msg45407#msg45407) u.a. zuerst den Kommentar
...udev (part of systemd) has an issue which breaks network for "allow-hotplug" devices configured in /etc/network/interfaces.
see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=787263
This will affect users of our former tool ceni which uses allow-hotplug for wired interfaces.
Users should switch to either systemd-networkd or connman or network-manager...
Später dann
... and it will bring the fixed version of udev 220-3, see changelog:
  * sd-device: fix device_get_properties_strv(). Fixes environment for
    processes spawned by udev, in particular "allow-hoplug" ifupdown
    interfaces via ifup@.service. (Closes: #787263)

so just wait 3 or 4 hours more before you dist-upgrade
...
durch einen Bug in udev funktioniert die klassische Netzwerkkonfiguration momentan nicht, so dass Anwender von Ceni betroffen sind.
Mit dem nächsten Repo-Sync in etwa 3-4 Stunden kommt der Fix....

Ich hab jetzt weitergelesen dass es für einige funktioniert, für andere nicht, letztere kriegen den Tipp auf systemd-networkd umzustellen. Als Alternative (oder ist's ein Frontend?) sollte connman + cmst gehen, eventuell auch für Fluxbox(?).
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: michaa7 on 2015/07/01, 22:41:03
Es funktioniert jetzt mit wicd.

Dazu habe ich den gtk klienten (wicd-gtk) genutzt. Da es neben einem CLI-Klienten auch einen ncurses Klienten (noch nicht getestet) gibt, die nutzung des gtk klienten selbsterklären ist frage ich mich, was andere genannte programme wicd voraus haben sollen, ausser dass sie gegenwärtig nicht funktionieren.

BTW: bei der installation habe ich den (offenbar nicht benötigten) wpa_supplicant versucht mit zu installieren. Ich bekam die befremdliche fehlermeldung die architektur (amd64) passe nicht zum paket /amd64). Soweit nur für diejenigen, die wicd ausprobieren wollen.
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: holgerw on 2015/07/02, 13:36:42
Hallo Michaa7,

Quote
Da es neben einem CLI-Klienten auch einen ncurses Klienten (noch nicht getestet) gibt, die nutzung des gtk klienten selbsterklären ist frage ich mich, was andere genannte programme wicd voraus haben sollen, ausser dass sie gegenwärtig nicht funktionieren.

Ich benötige beim Start von siduction mit aktuellen Kerneln noch den

NetworkManager-wait-online.service

Sonst hängt das System beim Versuch, meine nfs-shares einzubinden. Nach anderthalb Minuten läuft der Start dann weiter und ich habe dann ein aktives Netzwerk und sogar gemountete nfs-shares. Aber diese anderthalb Minuten mag ich nicht bei jedem Start warten.

Mit dem NetworkManager-wait-online.service dauert der Start wenige Sekunden.

Viele Grüße,
  Holger
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: bluelupo on 2016/04/07, 19:38:08
Beschreibung im Original-Post oben ergänzt.
Title: Re: Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd
Post by: bluelupo on 2016/08/17, 16:37:51
Artikel dazu im siduction Wiki erstellt:

Umstellung des kabelgebundenen Netzwerkes auf systemd-networkd (http://wiki.siduction.de/index.php?title=Umstellung_des_kabelgebundenen_Netzwerkes_auf_systemd-networkd)