Wie benutze ich 2 Internetverbindungen von einem Computer - eine nur für ssh und die andere für alles andere?

3

Die Bibliothek und andere öffentliche WLANs beschränken den Internetzugang auf bestimmte Ports, manchmal nur auf Port 80. Ich müsste in der Lage sein, ssh und andere Programme zu verwenden, die einen anderen Port erfordern.

Meine derzeitige Lösung besteht darin, an mein Telefon anzubinden und das öffentliche WLAN vollständig zu umgehen. Aber dann geht der gesamte Datenverkehr über mein Telefon, was langsam ist.

Gibt es eine Möglichkeit, eine Verbindung zu beiden Verbindungen gleichzeitig herzustellen (Verbindung zum Telefon über Bluetooth oder USB) und dann auszuwählen, welcher Verkehr eine bestimmte Verbindung verwendet? Im Idealfall wird standardmäßig nur eine Verbindung verwendet, und nur die manuell konfigurierten Elemente werden über die zweite Verbindung (mein Telefon) beendet.

Ich verwende ein MacBook Air mit OSX 10.7.3.

AKTUALISIEREN:

Natürlich habe ich die Lösung nach dem Posten gefunden. Stellen Sie eine Verbindung zu beiden Internetverbindungen her und vergewissern Sie sich, dass die "Standard" -Verbindung in der Liste im Menü "Servicereihenfolge festlegen" im Bereich "Netzwerkeinstellungen" aufgeführt ist. Klicken Sie auf die Schaltfläche "Erweitert" für die Netzwerkverbindung des Telefons und kopieren Sie die IP-Adresse des "Routers". Dann geben Sie im Terminal "sudo route add [IP der Box, in die wir senden wollen] [Router-IP für die Telefonverbindung]" ein.

Folge Frage 1: Wie kann ich das Aktivieren und Deaktivieren so einfach gestalten? Gibt es eine Möglichkeit, diese spezifischen Routen als Teil eines Netzwerk-Standortprofils zu konfigurieren? Oder muss ich ein Ein / Aus-Skript erstellen?

Folgefrage 2: Gibt es eine Möglichkeit, dies basierend auf dem Zielport anstelle der IP-Adresse zu tun? Routen funktionieren nicht. Vielleicht eine Art lokaler Proxy?

mpoisot
quelle
Ja entschuldigung. Es ist erstaunlich, wie ich diese erst finden konnte, nachdem ich sie gepostet habe.
mpoisot

Antworten:

3

check out 'route'. (Gehen Sie zum Terminal und geben Sie "man route" ein). Sie können bestimmten Datenverkehr zu bestimmten Schnittstellen erzwingen

Speziell, route PRINT ist das gleiche wie netstat -r

Dies zeigt, wie tcpip eine Ziel-IP (mit ihrer Subnetzmaske) über eine angegebene Schnittstelle an das Standard-Gateway weiterleitet (und wie viele Hops / die Metrik zum Ziel).

z.B:

 route ADD someIp MASK 255.255.255.0 gatewayIp METRIC 1 IF {interfaceID}

Jede Schnittstelle hat eine ID, Sie haben vier. (benutzen ipconfig ifcount um sicher zu wissen, ODER können Sie verwenden networksetup -listallhardwarereports um eine übersichtlichere Auflistung der gleichen Informationen anzuzeigen.)

localhost (lo0), Ihr Hardwire (en0), Ihr Wireless (en1) und Ihr Telefon (??). Benutzen ifconfig um alle Details für jede Schnittstelle zu sehen.

Die Schnittstellen-ID für route ist der Index der Schnittstelle. Ich bin gleich wieder da, wie ich das ausdrucken soll. hmm .. ipconfig soll den Index ausgeben, unter OSX jedoch nicht. immer noch suchend...

AKTUALISIEREN:

Unter OSX ist das networksetup Befehl könnte einen Weg haben, um zu tun, was route tun soll. Ich persönlich kenne es nicht, aber seine Optionen sind alle etwas selbsterklärend.

Sassafras_wot
quelle
Es stellt sich heraus, dass es in OSX keinen "Routendruck" gibt, danke für den Hinweis auf netstat -r. Hast du irgendwelche Gedanken zu meinen Folgefragen?
mpoisot
Tatsächlich stellt sich heraus, dass die Routensyntax alle anders ist ... ugh.
mpoisot
In Bezug auf q # 2 .. ya .. würde ein lokal gehosteter Socken-Server tun, was Sie wollen. Adress-Routing ist genau das ... für Adressen. Port Forwarding ist ein anderer Fischkessel.
Sassafras_wot