(gelöst) ip (iproute2), ifupdown(2) und Netzwerkkonfiguration.

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
guennid
Beiträge: 12732
Registriert: 31.10.2002 19:15:35
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: bei Marburg

(gelöst) ip (iproute2), ifupdown(2) und Netzwerkkonfiguration.

Beitrag von guennid » 14.07.2019 07:32:35

Ich wüsste gerne, ob und wenn ja, welchen Sinn die Pflege der /etc/network/interfaces bei Verwendung von iproute2 überhaupt noch macht.
MSFree hat geschrieben:interfaces ist die Datei mit der das Netzwerk mittels ifup/ifdown konfiguriert wird. ifup wird von systemd beim Booten aufgerufen. Ich gehe einfach davon aus, daß ifup nun ip statt ifconfig verwendet, denn meine Busterkiste hier ist genau so von netinstaller eingerichtet worden.
(1)

Lassen wir systemd, diverse GUI-Netzwerkmanager und boot-Automatismen mal aus dem Spiel. Seit dem Auftauchen von Debianiproute2 gerät mir die manuelle Netzwerkkonfiguration zu einem Verwirrspiel.
Schon in stretch existieren die Pakete Debianifupdown und Debianifupdown2, welche die Kommandos ifup/ifdown bereitstellen (weiter zurück habe ich nicht recherchiert, ist für mich auch uninteressant). In welchem Verhältnis stehen die beiden Pakete zueinander? Ersetzt ifupdown2 ifupdown? Welches wird bei einer Standardinstallation via netinstall insalliert? Die Paketbeschreibungen haben mich disebezüglich nicht schlauer gemacht. Und mit Standard-Installation kenne ich mich seit Jahren nicht mehr aus.
Wenn MSFree richtig liegt, dann wird bei einer Standard-Installation aber beides (iproute2 und ifupdown(2)) installiert und /etc/network/interfaces überflüssigerweise angelegt - richtig? Wird auch Debiannet-tools noch standardmäßig installiert?
Wenn ich recht sehe, dann benötigt ip (aus iproute2) kein ifupdown, und damit auch keine /etc/network/interfaces. Jedenfalls existiert hier ein solches System, bei dem mir noch keine Netzwerkdisfunktionalitäten aufgefallen sind. Wozu ist /etc/network/interfaces dann noch gut? Wer oder was benötigt sonst die Datei?

(1) viewtopic.php?f=30&p=1211013#p1211013

Grüße, Günther
Zuletzt geändert von guennid am 16.07.2019 16:41:04, insgesamt 1-mal geändert.

inne
Beiträge: 2293
Registriert: 25.06.2013 15:45:12
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: ip (iproute2), ifupdown(2) und Netzwerkkonfiguration.

Beitrag von inne » 14.07.2019 07:39:42

guennid hat geschrieben: ↑ zum Beitrag ↑
14.07.2019 07:32:35
Wenn ich recht sehe, dann benötigt ip (aus iproute2) kein ifupdown, und damit auch keine /etc/network/interfaces. Jedenfalls existiert hier ein solches System, bei dem mir noch keine Netzwerkdisfunktionalitäten aufgefallen sind. Wozu ist /etc/network/interfaces dann noch gut? Wer oder was benötigt sonst die Datei?
Starttest Du deine Netzwerkverbinung manuell? Ansonsten ist interfaces und NM der Ort wo man die Netzwerkkonfiguration hinterlegt und ifupdown braucht ip (aus iproute2) nicht andersherum.
Zuletzt geändert von inne am 14.07.2019 07:43:34, insgesamt 1-mal geändert.
(=_=)

guennid
Beiträge: 12732
Registriert: 31.10.2002 19:15:35
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: bei Marburg

Re: ip (iproute2), ifupdown(2) und Netzwerkkonfiguration.

Beitrag von guennid » 14.07.2019 07:43:13

ifupdown braucht ip (aus iproute2)
Ich denke das ist nur bedingt richtig.

inne
Beiträge: 2293
Registriert: 25.06.2013 15:45:12
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: ip (iproute2), ifupdown(2) und Netzwerkkonfiguration.

Beitrag von inne » 14.07.2019 07:46:44

guennid hat geschrieben: ↑ zum Beitrag ↑
14.07.2019 07:43:13
ifupdown braucht ip (aus iproute2)
Ich denke das ist nur bedingt richtig.
Mit welcher Ausnahme?

Es gibt bestimmt exotische Konfigurationen die keine IP-Vergabe festlegen, aber bei static und dhcp wird es verwand (soweit ich das überblicke).
Auch ein dhclient nutzt es.
(=_=)

guennid
Beiträge: 12732
Registriert: 31.10.2002 19:15:35
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: bei Marburg

Re: ip (iproute2), ifupdown(2) und Netzwerkkonfiguration.

Beitrag von guennid » 14.07.2019 19:32:16

Ich weiß nicht, ob meine Konfiguration so exotisch ist. Ich bilde mir ein, eigentlich nur ein Standardwerkzeug, nämlich ip, zu benutzen und das benötigt weder ifupdown nocht /etc/network/interfaces. Ergo weiß ich nach wie vor nicht, wozu letztere Datei eigentlich noch vom Debian-Installer mit Angaben zu der den NICs, DHCP, etc beschickt wird. Ich habe auch keine deutschsprachige Info dazu gefunden. Einzig bei den Ubuntus wird darauf hingewiesen das lo konfiguriert sein müsse: „Fehlt diese Schnittstelle oder ist sie falsch konfiguriert, so können Programme nicht mehr untereinander kommunizieren“ (1), was wohl mit den Zeilen

Code: Alles auswählen

auto lo
iface lo inet loopback
geschieht, die ja auch jeder Netzwerkmanager unangetastet lässt. Aber ich vermute, dass sich auch das unabhänig von /etc/network/interfaces gestalten ließe. Zum Konfigurieren der eigentlichen NICs wird sie nach meinen Erfahrung nicht (mehr) benötigt. Ergo bleibt die Frage: warum existiert sie “standardmäßig"(?) nach wie vor. Oder wird selbst in buster standardmäßig noch net-tools und nicht iproute2 installiert und benutzt? Mir kommt das so vor, als wolle man sich bei debian (oder bei den Kundigeren dieses Froums) nicht so recht entscheiden zwischen neueren Ansätzen (iproute2) und hergebrachtem ifupdown, net-tools.

(1) https://wiki.ubuntuusers.de/interfaces/

Grüße, Günther

inne
Beiträge: 2293
Registriert: 25.06.2013 15:45:12
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: ip (iproute2), ifupdown(2) und Netzwerkkonfiguration.

Beitrag von inne » 14.07.2019 19:46:58

Warum die interfaces angelegt wird, kann ich nicht mit Gewissheit sagen, nur das sie vom Paket ifupdown angelegt wird, wenn sie fehlt. Denn daraus nimmt das ifup und ifdown usw. die Informationen, um die Kommandos wie ip aufzurufen (soweit ich das überblicke). Es gibt da so wohl keine Lib o.ä. im eigentlichen Sinn für.

Warscheinlich ist ifupdown einfach auch vom Installer installiert und die interfaces wird dann im Zuge der Paketinstallation generiert? Priorität Requierd/Importend ist das Paket jedenfalls nicht.

Wenn du ip direkt aufrufst oder analog bei DHCP dhclient, wirst Du die interfaces nicht brauchen und diese leer lassen können. Aber sie stellt eine mMn auch Heute noch zeitgemäße Art der Netzwerkkonfiguartion bereit und ist in Debian wohl einfach eine von vier Methoden das Netzwerk zu konfigurieren (direkt ip oder dhclient aufrufen, ifupdown (via systemd), systemd-units direkt oder NetworkManager). Welche man davon wählt sollte noch beliebig sein und auch ein Mix ist bedingt möglich.

Zum loopback habe ich u.a. folgendes gelesen:
ifupdown-0.8.34ubuntu2/examples/network-interfaces hat geschrieben: # The loopback interface isn't really required any longer,
# but can be used if needed.
Das bezieht sich wohl auf die explizite Konfiguration selbiges (in der interfaces), es kann also auch entfallen - ich habe es noch nie weggelassen.
(=_=)

inne
Beiträge: 2293
Registriert: 25.06.2013 15:45:12
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: ip (iproute2), ifupdown(2) und Netzwerkkonfiguration.

Beitrag von inne » 14.07.2019 20:22:35

guennid hat geschrieben: ↑ zum Beitrag ↑
14.07.2019 19:32:16
... Oder wird selbst in buster standardmäßig noch net-tools und nicht iproute2 installiert und benutzt? Mir kommt das so vor, als wolle man sich bei debian (oder bei den Kundigeren dieses Froums) nicht so recht entscheiden zwischen neueren Ansätzen (iproute2) und hergebrachtem ifupdown, net-tools.
Du wirfst da glaube ich zu viel in einen Topf: Das iproute2, net-tools usw. sind alle samt das "Backend" für ifupdown und auch für systemd-units (wenn man das so ausdrücken will - beim NetworkManager bin ich mir nicht ganz sicher). Im Quälcode zu ifupdown, den ich nur bedingt entworren habe, sind das dann Aufrufe von system(3), exec(3), usw. mit den Tools aus bspw. iproute2.

Wenn Du nur ip zur Einrichtung deiner Netzwerkschnittstellen brauchst, solltest du alles andere de-installieren können, soweit die Paketverwaltung das zulässt und mit iproute2 state-of-the-art sein ;-)
(=_=)

TomL
Beiträge: 4190
Registriert: 24.07.2014 10:56:59

Re: ip (iproute2), ifupdown(2) und Netzwerkkonfiguration.

Beitrag von TomL » 14.07.2019 20:40:20

guennid hat geschrieben: ↑ zum Beitrag ↑
14.07.2019 19:32:16
Ich bilde mir ein, eigentlich nur ein Standardwerkzeug, nämlich ip, zu benutzen und das benötigt weder ifupdown nocht /etc/network/interfaces.
Ja, das ist aber nur 1 Weg... und zwar der zu Fuss. Darüber hinaus gibts noch den mit dem Fahrrad "ifup" und "ifup@.service oder den mit dem Moped "networkd" und schließlich 1 mit dem Auto "networkmanager" . Und alle nutzen letztlich iproute2-Tools, um das Netzwerk zu verbinden, weil das die Tools sind, die mit dem Kernel quatschen. Einige der Wege greifen auf die /etc/network/interfaces (ifup und ifup@service) zurück, andere wie networkd auf eine eigene Datei mit fast gleicher Zielsetzung, und wieder andere (Dein Weg) auf die Tastatur mit vollständigem (resp. mehreren) Shell-Befehl (die man natürlich auch in einer Datei ablegen kann). Aber alle benötigen das iproute2-Paket, um zum Ziel zu kommen und alle brauchen mehr oder weniger die gleichen Angaben, die lediglich auf unterschiedlichen Wegen übergeben/mitgeteilt werden.

Code: Alles auswählen

$ apt show iproute2
Package: iproute2
Version: 4.20.0-2
::::
  Diese Programme kommunizieren mit dem Linux-Kernel über die
 (rt)netlink-Schnittstelle. Sie bieten gegenüber den in den veralteten
 net-tools enthaltenen Programmen »ifconfig« und »route« erweiterte
 Möglichkeiten.
vg, Thomas

guennid
Beiträge: 12732
Registriert: 31.10.2002 19:15:35
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: bei Marburg

Re: ip (iproute2), ifupdown(2) und Netzwerkkonfiguration.

Beitrag von guennid » 14.07.2019 21:54:42

Es ist nicht so, dass ich das Netzwerk nicht konfiguriert kriegte. Ich wundere mich nur, dass in Zeiten von iproute2, systemd und Netzwerkmanger immer noch auf ifupdown und /etc/network/interfaces rekurriert wird, die man, wenn man diese „modernen Tools nutzt, nicht mehr benötigt. Zuletzt hier: (1).

Zu TomL:
War mir weitgehend alles klar, dass das nur ein Weg ist, widerlegt aber immer noch nicht meine Vermutung, dass /etc/network/interfaces obsolet ist, "wenn alle letztlich iproute2-Tools ( nutzen)".

zu inne:
Nochmal: iproute2 (ip) benötigt kein ifupdown zur Konfiguration des Netzwerks, wenn es das doch nutzt, dann ist das eigentlich eine überflüssige Methode, der nichts mit „Moped- oder Fahrradnutzung“ im Unterschied zur Fußgänger methode, um mich Thomas' Metaphern zu bedienen, sprich mit Verbesserung oder Vereinfachung, zu tun hat. Das machen dann die anderen genannten Tools wie die entsprechende systemd-Abteilung, Networkmanager, etc, die aber, soweit ich sehe, alle weder ifupdown noch /etc/network/interfaces benutzen.

(1) viewtopic.php?f=30&t=173993

Grüße, Günther
Zuletzt geändert von guennid am 14.07.2019 22:26:22, insgesamt 2-mal geändert.

TomL
Beiträge: 4190
Registriert: 24.07.2014 10:56:59

Re: ip (iproute2), ifupdown(2) und Netzwerkkonfiguration.

Beitrag von TomL » 14.07.2019 22:04:35

guennid hat geschrieben: ↑ zum Beitrag ↑
14.07.2019 21:54:42
War mir weitgehend alles klar, dass das nur ein Weg ist, widerlegt aber immer noch nicht meine Vermutung, dass /etc/network/interfaces obsolet ist, "wenn alle letztlich iproute2-Tools ( nutzen)".
Da ist wohl noch nicht wirklich alles obsolet, weil die Einträge (i.ü.S. wie aus einer conf) eben vom Programmen ifup und der Unit ifup@service genutzt/gelesen wird, wobei ifup@.service wohl auch nur das Programm ifup nutzen wird. Also, wer das Netzwerk darüber verbindet, braucht diese interfaces. Networkd hat ebenfalls eine eigene Einstellungsdatei, z.B. die NIC.network. Mein Tool selnic hat ebenfalls eine eigene Einstellungsdatei, der Networkmanager ebenfalls. Man muss das also losgelöst von iproute2 sehen... das sind alles conf-Files für jeweils bestimmte Programme, wo aber dennoch überall mehr oder weniger das gleiche (DHCP ja/nein, static-ip, usw.) drinsteht.... und diese Programme nutzen dann diese Einstellung, um letztlich via iproute2-Programme das Netz zu bedienen. Wirklich obsolet ist nur das Paket net-tools.
vg, Thomas

guennid
Beiträge: 12732
Registriert: 31.10.2002 19:15:35
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: bei Marburg

Re: ip (iproute2), ifupdown(2) und Netzwerkkonfiguration.

Beitrag von guennid » 14.07.2019 22:25:41

Zu Thomas:
Habe während deines letzten Beitrages meinen nochmal editiert.

inne
Beiträge: 2293
Registriert: 25.06.2013 15:45:12
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: ip (iproute2), ifupdown(2) und Netzwerkkonfiguration.

Beitrag von inne » 14.07.2019 22:45:18

Die interfaces ist nur für ifupdown gedacht (ifupdown2 ist einfach eine neu-implementierung des "Konzeptes" von ifupdown). Die systemd-units oder korrekt networkd wie TomL es nennt hat die systemd-units anstelle der interfaces und NetworkManager irgendwas in den Tiefen vom GNOME und dessen GUI.

Und nun noch mal konkret etwas aus dem UU.de Wiki, das du oben schon angeführt hast:
https://wiki.ubuntuusers.de/systemd/networkd/ hat geschrieben: Da systemd-networkd derzeit noch nicht vollständig implementiert ist, ist dessen Nutzung als experimentell anzusehen!
Der networkd also die Konfiguration mittels systemd-units, als Ersatz für ifupdown mitters interfaces wird dort noch als experimentell angesehen. Was vlt. auch Grund ist warum noch ifupdown installiert und verwand wird.
Zuletzt geändert von inne am 16.07.2019 12:38:19, insgesamt 1-mal geändert.
(=_=)

MSfree
Beiträge: 4336
Registriert: 25.09.2007 19:59:30

Re: ip (iproute2), ifupdown(2) und Netzwerkkonfiguration.

Beitrag von MSfree » 14.07.2019 22:56:55

inne hat geschrieben: ↑ zum Beitrag ↑
14.07.2019 22:45:18
... und NetworkManager irgendwas in den Tiefen vom GNOME und dessen GUI.
Der Networkmanager hat mit Gnome und GUI nichts zu tun. Es gibt zwar GUIs für den Networkmanager aber nicht nur für Gnome sondern auch z.B. für KDE, es gibt aber genauso nmcli, was ein reines Kommandozeileninterface für den Networkmanager ist.

inne
Beiträge: 2293
Registriert: 25.06.2013 15:45:12
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: ip (iproute2), ifupdown(2) und Netzwerkkonfiguration.

Beitrag von inne » 14.07.2019 23:00:42

Stimmt, das "speichern" der Konfiguration teilt sich dort wohl auf in NetworkManager.conf erstmal alleinstehend.
Zuletzt geändert von inne am 16.07.2019 12:38:01, insgesamt 1-mal geändert.
(=_=)

TomL
Beiträge: 4190
Registriert: 24.07.2014 10:56:59

Re: ip (iproute2), ifupdown(2) und Netzwerkkonfiguration.

Beitrag von TomL » 14.07.2019 23:02:11

inne hat geschrieben: ↑ zum Beitrag ↑
14.07.2019 22:45:18
Und nun noch mal konkret etwas aus dem UU.de Wiki, das du oben schon angeführt hast:
Da systemd-networkd derzeit noch nicht vollständig implementiert ist, ist dessen Nutzung als experimentell anzusehen!
Das glaub ich ja nun überhaupt nicht... vor allem deshalb, weil der Artikel reichlich überaltet ist. Ubuntu ist außerdem dafür vermutlich auch kein guter Maßstab. systemd-networkd funktioniert bei mir für Basic-Kabel-Setups seit Jessie ohne jegliche Probleme.... also ein experimental-feeling hatte ich da zu keiner Zeit.Ganz sicher wurde da während der ganzen Zeit noch dran rumgeschraubt.... aber das wurde ja auch am gesamten systemd getan.
Was vlt. auch Grund ist warum noch ifupdown installiert und verwand wird.
Ich denke, dass es deshalb noch installiert ist, damit die Abwärtskompatibilität zu älteren Setups gewährleistet ist. Dieser Linie wird seit längerem konsequent gefolgt:
fstab -> autogen-mount-units
init.d -> autogen-service-units
iptables -> nftables-wrapper
net-tools -> iproute-wrapper
symlinks -> usr-merge

Da war noch mehr... habs aber schon wieder vergessen.... :roll: ... aber brauchen tut man das alte Zeugs nicht mehr, funktionieren tuts aber trotzdem.
vg, Thomas

Antworten