PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Zwischen zwei Netzwerken umschalten oder Netzteil komplett ausschalten



Alter Schwede
14.07.18, 11:05
Hallo,

ist es unter Debian möglich, wenn man in 2 Netzwerke eingeloggt ist, festzulegen welche Programme Downloads über welches Netzwerk ziehen sollen? Kann man ein bestimmtes Netzwerk für ein bestimmtes Programm komplett ausschließen? Ist es möglich eines der Netzwerk zeitweise über ein einfaches Script auszuschalten? Der Server ist headless und läuft auf einem Raspberry. Ich hab einmal eine Ethernet und eine WLAN-Verbindung. Ethernet über /etc/dhcpcd.conf


interface eth0
static ip_address=192.168.10.30/24
static routers=192.168.10.1
static domain_name_servers=192.168.10.1

Die WLAN-Verbindung klassisch über /etc/network/interfaces


source-directory /etc/network/interfaces.d

auto lo
iface lo inet loopback

#iface eth0 inet manual => muss auskommentiert werden, sonst hab ich NUR WLAN
allow-hotplug wlan0
iface wlan0 inet static
address 192.168.20.201
netmask 255.255.255.0
gateway 192.168.20.1
dns-nameservers 192.168.20.1
wpa-ssid "ssid"
wpa-psk "passwort"

Entweder ich richte es so ein, dass beide dauerhaft an sind und ich sperre WLAN für alle Anwendungen und es gibt eine Möglichkeit explizit einen DL über WLAN anzustoßen, z. B. durch ein Prefix vor 'wget' oder so.

Oder ich schalte wlan aus und starte es über ein simples kleines Script im Home-Ordner. Hier müsste aber auch sichergestellt sein, dass nur die gewünschten Anwendungen darüber DL laden.

Oder man kombiniert beides: default aus + DL über wlan nur auf konkrete Anweisung.

Jemand eine Idee?

marce
14.07.18, 17:15
Was ist denn der konkrete Hintergrund des Wunsches?

"der übelste" Workarround könnte sein, vor dem jeweiligen Download eine ded. Host-Route zu setzen - eigentlich ergibt sich das Problem aber normalerweise eh nicht, weil man ja WLan und Lan als getrennte Netze hat und damit Downloads vom System eh nur über die default-Route gehen und damit eh immer nur das gewünschte Netz zum tragen kommen sollte. Oder verstehe ich Deine Problemformulierung falsch?

nopes
14.07.18, 17:50
Früher (IPv4) war es so, dass du dafür lediglich die "default route" entsprechend einstellen musstest. Für fortgeschrittenere Dinge kann man noch die Metric je Route anpassen, je kleiner die Zahl, desto besser ist die Route. Spontan fällt mir nicht ein warum man nicht mehrere Default Routen haben darf, du könntest dann eine fürs LAN (Metric 0) und eine fürs WLAN einstellen (Metric 1), wenn LAN da ist wird es wegen der besseren Metric auch verwendet. Das kann man auch relativ einfach testen - tcpdump/wireshark.

Ob das bei heute noch so gilt, kann ich nicht sicher sagen, mir fehlt Zeit und vor allem Lust IPv6 mal ernsthaft anzuwenden. Wobei das von den Funktionen her ja hoffentlich kein Rückschritt ist; seit Systemd bin ich bei solchen Annahmen deutlich konservativer geworden ;).

Alter Schwede
20.07.18, 08:01
Der Grund ist simple, dass wir hier mäßig schnelles Internet haben, v.a. tags über. Ich habe aber Zugriff auf ein zweites WLAN meiner Eltern, die esveh selten nutzen. Ich möchte bei Bedarf festlegen können, dass eine Anwendung einen DL über WLAN statt LAN ausführt.

Angenommen der Usenet-Client zieht über LAN und es soll ein zweiter DL durch wget oder youtube-dl erfolgen, könnte der über WLAN angestoßen werden. Frage ist wie? Unter Metric versteh ich etwas anderes.

Was heißt enn Host-Route?

Alter Schwede
20.07.18, 08:37
Hab hier https://superuser.com/questions/241178/how-to-use-different-network-interfaces-for-different-processes was gefunden. Hab ich vorher noch nie was gehört von.

Das mit dem Network Namespace hab ich aber bisher nicht verstanden. Ich sehe das mal als eine Art abgekappelten Teil des OS an der mit einem Interface verbunden ist. Heißt: nur ein Prozess der in diesem Namespace läuft kann das Interface nutzen, für alle anderen ist es nicht da. Richtig?