eth0 und wlan0 parallel verwenden?

Rund um die Software von Revolution Pi
Post Reply
dennis.boldt
Posts: 12
Joined: 02 Oct 2019, 14:33

eth0 und wlan0 parallel verwenden?

Post by dennis.boldt »

Ich habe festgestellt, dass sobald WLAN (über USB) funktioniert die Ethernet-Schnittstelle nicht mehr fuktioniert.
Ich habe herausgefunden, dass in der /etc/dhcpcd.conf folgendes gesetzt ist:

Code: Select all

interface wlan0
   metric 100
Damit wird das Interface wlan0 dem Interface eth0 höher priorisiert (beide bekommen eine IP).
Heißt: Verbindung nur über WLAN und keine Verbindung mehr zum RevPi über die Ethernetschnittstelle möglich (z.B. SSH).

Wenn ich die Metrik beim Interface wlan0 deaktiviere und beim eth0 aktiviere, dann wird das Interface eth0 höher priorisiert (beide bekommen eine IP).
Heißt: Verbindung nur über Ethernetschnittstelle und keine Verbindung mehr zum RevPi über die WLAN möglich (z.B. SSH).

Das ist soweit klar, der Pi muss sich für eine Schnittstelle entscheiden, über welche er "nach außen" kommuniziert.

Frage: Kann man beim RevPi beide Schnittstellen parallel aktivieren (für einen SSH-Zugriff)?
User avatar
nicolaiB
KUNBUS
Posts: 931
Joined: 21 Jun 2018, 10:33
Location: Berlin
Contact:

Re: eth0 und wlan0 parallel verwenden?

Post by nicolaiB »

Hallo Dennis,

klar das geht. Jedoch müssen dann beide Schnittstellen IP-Adressen aus unterschiedlichen Subnetzen haben, da sonst nicht klar ist über welches der beiden die jeweilige Gegenseite erreicht werden kann. Wenn das nicht möglich ist, kannst du beide Schnittstellen jedoch mit einer Bridge "überbrücken" und weißt dieser Brücke dann die IP zu. In den meisten Fällen ist aber Ersteres das Mittel der Wahl.

Gruß Nicolai
User avatar
lukas
Expert
Posts: 186
Joined: 13 Feb 2017, 10:29

Re: eth0 und wlan0 parallel verwenden?

Post by lukas »

Dass eine WLAN-Schnittstelle gegenüber einer drahtgebundenen priorisiert wird, kommt durch Commit a1019f51deab. In der Commit Message ist auch die Motivation dafür dokumentiert.

Die Entscheidung, über welche Schnittstelle der RevPi Pakete verschickt, wird durch die Default Route bestimmt. Hast du zwei Default Routen, entscheidet die Metric, welche "gewinnt". Wenn Pakete von außen über eine Schnittstelle reinkommen, auf die nicht die aktive Default Route deutet, kann es sein, dass diese vom Reverse Path Filter gedroppt werden. Das lässt sich umkonfigurieren, reduziert dann aber die Sicherheit. Ob ein RP Filter in Benutzung ist, siehst du mit "sudo sysctl -a | grep rp_filter".

Unabhängig von der Default Route müsstest du stets aus dem angeschlossenen drahtgebundenen Ethernet per ssh auf den RevPi kommen, einfach indem du dich auf die IP-Adresse von eth0 verbindest.

(Du kannst prinzipiell beiden Default Routen die gleiche Metric geben, ich meine dass der Kernel dann round-robin mal die eine und mal die andere benutzt. Sowas ist allerdings in den seltensten Fällen sinnvoll. Du kannst theoretisch auch auf eine Default Route verzichten indem du mittels quagga oder BIRD die komplette Internet Routing Tabelle über BGP4 empfängst, aber dafür könnte das RAM des Raspberry Pi Compute Module nicht ausreichen.)
Post Reply