Portweiterleitung

8

Ich habe eine einfache Anforderung einer Portweiterleitung / Tunnelung der Socket-basierten Kommunikation auf Softwareebene.

  • Ich habe einen Quellserver und einen Port mit Sockets. Dies ist ein Java-Programm, das sowohl in Windows als auch in Linux funktioniert und das ist irrelevant.
  • Ich habe Geräte, die Daten an diesen Port senden. Es kann eine bidirektionale Kommunikation geben
  • Ich möchte diese Daten zu einem anderen entfernten Server und Port umleiten. Für die Clients müssen sie sich also keine Gedanken über die Änderung der IP-Adresse machen, wenn ich meinen App-Server bewege.

Gibt es Tools / Deamon / Service-Programme, mit denen ich das konfigurieren und tun kann?

Ich habe versucht, SSH, aber nach meinem Verständnis benötigt dies einen SSH-Protokoll-Server aktiviert. In meinem Fall ist dies nicht anwendbar. Ich habe auch versucht, JSch zu verwenden, aber dies ist wiederum eine Implementierung von SSH im Java-Format.

Kann jemand ein paar Hinweise geben? Ist es möglich, iptables NAT in Linux zu verwenden?

    
Muthu 04.12.2011, 08:05
quelle

3 Antworten

4

Sie können versuchen netcat oder socat (es ist leistungsfähiger als netcat)

Ein Beispiel für Socat, Port 80 mit tcp4 weiterzuleiten:

%Vor%

und Ссылка für netcat

Beide sind nicht Java-bezogen.

    
Tony Wang 04.12.2011, 08:27
quelle
2

In code.google.com ist ein Dienstprogramm zur Weiterleitung von TCP / IP-Ports mit dem Namen portforward verfügbar. Es ist vollständig in Java geschrieben.

    
Jomoos 04.12.2011 08:21
quelle
0

Wenn Sie xinetd bereits auf Ihrem System ausführen, bietet es eine einfache Portweiterleitung Mechanismus , der nützlich sein könnte, wenn Sie nicht bereits IPTables ausführen.

Wenn Sie IPTables ausführen, hat Server Fault eine ausgezeichnete kurze Frage mit ein sehr ähnliches Ziel . Obwohl ich es etwas knapp finde, ist eine ausführlichere Dokumentation verfügbar .

    
sarnold 04.12.2011 08:33
quelle

Tags und Links