Ich habe zwei Schnittstellen: eth0 und wlan0 auf einem Notebook.
Mögliche Anwendungsfälle:
- eth0 gewährt mir einen Internetzugang und wlan0 ist derzeit mit einem Router verbunden, der keine Internetverbindung hat. Für Entwicklungszwecke muss ich standardmäßig eine Verbindung zum wlan0 herstellen, zum Surfen jedoch eth0 verwenden
- eth0 und wlan0 sind beide mit dem Internet verbunden. Für eine Torrent-Anwendung sollte eth0 aus Gründen der Geschwindigkeit verwendet werden, für die Portabilität des Notebooks sollte SSH jedoch eine Verbindung über wlan0 haben
- eth0 ist eine drahtgebundene Verbindung, wlan0 ist eine drahtlose Verbindung. Sinnvolle Daten sollten über eth0 übertragen werden, aber auch anderer Datenverkehr kann über wlan0 übertragen werden.
Gibt es eine Möglichkeit, Anwendungen (wie nc.traditional
oder firefox
) zu zwingen , eine bestimmte Netzwerkschnittstelle zu verwenden? Ein Wrapper wie example-wrapper eth0 program
ist auch in Ordnung, wenn ein solches Programm existiert. Es wäre schön, wenn es in Firefox (zur Laufzeit) konfiguriert werden könnte. Ich möchte IPTables-Lösungen nach Möglichkeit vermeiden.
networking
firefox
Lekensteyn
quelle
quelle
Antworten:
Was Sie suchen, ist eine LS_PRELOAD-Unterlegscheibe. Eine ausführliche Erklärung und einen Beispielcode finden Sie im Blogeintrag von Daniel Lange .
quelle
Sie können einen komplexeren Ansatz für die Verbindungsmarkierung und die Routenrichtlinie verwenden.
Es wird gut funktionieren, wenn Sie einen Benutzer haben, der eine Software und eine andere ausführt.
Auf diese Weise können Sie die Verbindungen eines Benutzers markieren und eine bestimmte Routing-Tabelle verwenden, während alle anderen Benutzer die Standard-Routing-Tabelle verwenden.
Das grundlegende Dokument, um alles zu verstehen, finden Sie unter: http://www.lartc.org/lartc.html Hier finden Sie
auch ein Beispiel für zwei Verbindungen: /unix/58635/iptables- set-mark-route-diferent-ports-through-different-interfaces
Sie können das iptables-Modul "owner" verwenden, das die Verbindungen markiert, um Routing-Richtlinien zuzulassen.
quelle
LD_PRELOAD
scheint der Weg zu gehen (nicht für bösartige Programme / aus Sicherheitsgründen), könnte vielleicht jemand Bob Lebins Beitrag ausarbeiten?Hier ist eine Musterlösung. Es verwendet den SOCKS-Server, der auf dem aktuellen Computer eingerichtet ist, um Verbindungen weiterzuleiten. Jede Anwendung sollte so konfiguriert sein, dass sie jeden Server verwendet.
quelle
Sie können auch einen VMware-Arbeitsplatzrechner verwenden, um verschiedene Netzwerkschnittstellen gemeinsam zu nutzen. Ich habe viel getan, um sie von einer Schnittstelle herunterzuladen und die andere für Netflix zu belassen.
Sie müssen sowohl ethX als auch wlanX auf VMware einrichten, aber sobald Sie es konfiguriert haben, können Sie es herunterladen oder durchsuchen.
Es ist ziemlich glatt. Sie können auch eine Firewall zum Verbinden von Schnittstellen verwenden, was ebenfalls hervorragend funktioniert.
quelle