Come può un'applicazione (come Firefox) essere forzata ad utilizzare una determinata interfaccia di rete?

20

Ho due interfacce: eth0 e wlan0 su un notebook.

Possibili casi d'uso:

  • eth0 mi garantisce l'accesso a Internet e wlan0 è attualmente connesso a un router che non ha connettività Internet. Per motivi di sviluppo, ho bisogno di connettermi a wlan0 di default, ma usare eth0 per navigare
  • eth0 e wlan0 sono entrambi connessi a Internet. Per un'applicazione torrent, eth0 deve essere utilizzato per la velocità, ma per la portabilità del notebook, SSH dovrebbe avere una connessione su wlan0
  • eth0 è una connessione via cavo, wlan0 è una connessione wireless. I dati sensibili devono essere trasferiti su eth0, ma il traffico può superare anche wlan0.

C'è un modo per forzare le applicazioni (come nc.traditional o firefox ) per utilizzare una determinata interfaccia di rete? Un wrapper come example-wrapper eth0 program va bene anche se tale programma esiste. Sarebbe bello se potesse essere configurato all'interno di Firefox (in runtime). Mi piacerebbe evitare le soluzioni IPTables se possibile.

    
posta Lekensteyn 11.02.2011 - 10:26

4 risposte

1

Quello che stai cercando è uno shim LS_PRELOAD, vedi Daniel Lange's post di blog per una spiegazione dettagliata e un codice di esempio.

    
risposta data Bob Lebin 12.04.2014 - 16:32
1

È possibile utilizzare un approccio più complesso per la marcatura delle connessioni e la politica di percorso.
Funzionerà bene se hai un utente che esegue un software e un altro.
In questo modo è possibile contrassegnare le connessioni di un utente e utilizzare una specifica tabella di routing per esso mentre tutte le altre utilizzeranno quella predefinita.
Il documento di base per comprendere tutto questo è: link
Anche un esempio per due connessioni che puoi vedere qui: link
Puoi utilizzare il modulo "proprietario" iptables che segnerà le connessioni per consentire la politica di routing.

    
risposta data elico 17.09.2014 - 17:24
0

Qui è una soluzione di esempio. Usa il server SOCKS, l'installazione sulla macchina corrente per instradare le connessioni. Ogni applicazione deve essere configurata per utilizzare ciascun server.

    
risposta data Vadim Rutkovsky 14.02.2011 - 15:31
0

Puoi anche usare una macchina workstation VMware per condividere diverse interfacce di rete che faccio molto per scaricare da un'interfaccia e lasciare l'altra per il mio Netflix.

È necessario configurare sia ethX che wlanX su VMware, ma una volta configurato, sei pronto per scaricare o sfogliare.

È abbastanza liscio. Puoi anche usare un firewall per collegare interfacce che funzionano alla grande.

    
risposta data nauseous 12.09.2014 - 03:47

Leggi altre domande sui tag