Hallo zusammen, ich habe eine Software, die auf dem Port 50000 Daten sendet. Mit "telnet localhost 50000" kann ich die Daten anzeigen. Nun möchte ich von einem anderen Netzwerk Device die Daten einlesen. Das funktioniert leider nicht, da der Port nur für localhost "freigegeben" ist: netstat -nlp liefert folgende Information: Local Address: 127.0.0.1:50000 An der Software kann ich leider nichts ändern. Kann ich nicht einfach einen Port mit Local Address 0.0.0.0 auf den internen Port weiterleiten? Ich habe mich gerade mit iptables versucht, bin aber noch nicht durchgestiegen. Vielleicht hat jemand von euch einen Tipp für mich. Ich habe es mir so vorgestellt: Port 50001 mit Local Address 0.0.0.0 auf Port 50000 mit Local Address 127.0.0.1 weiterleiten? Vielen Dank! Steffen
Hallo Marc, danke, dass du dir das anschaust. Meine Linux Kenntnisse sind leider noch etwas rudimentär. Meine Versuche: iptables -A INPUT -i wlan0 -p tcp --dport 50001 -j ACCEPT sudo iptables -t nat -A PREROUTING -t nat -p tcp -d 127.0.0.1 --dport 50000 -j DNAT --to 0.0.0.0:50001 sudo iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE Das habe ich im Internet als Beispiel gefunden und entsprechend angepasst. LG
Steffen schrieb: > An der Software kann ich leider nichts ändern. Sicher? Was ist das denn für ein Programm? Wenn man wollte, könnte man es vermutlich mit LD_PRELOAD ändern. > Ich habe mich gerade mit iptables versucht, bin aber noch nicht > durchgestiegen. Vielleicht hat jemand von euch einen Tipp für mich. Doch, das sollte schon gehen. Schau mal nach Anleitungen für Portforwarding, das ist hier eigentlich nichts anderes. > Ich habe es mir so vorgestellt: Port 50001 mit Local Address 0.0.0.0 Bei iptables hast Du keine "Local Address", sondern Selektoren. Da nimmst Du einfach nur -p tcp --dport 50001 und leitest das dann mit -j DNAT --to 127.0.0.1:50000 weiter. Das ganze natürlich im prerouting der nat-table. Ich meine mich aber dunkel zu erinnern daß es irgendwo noch einen speziellen schutz für 127.0.0.1 gab der dort den Empfang fremder Pakete verhindert hat. Weiß nicht ob das genau für diesen Fall gilt oder was ähnliches war. Wenn es nicht geht also einfach mal in die messages/journal schauen. Evtl. musst du den Schutz dann noch irgendwo unter /proc/sys/net abschalten.
erstmal port freischalten: sudo iptables -A INPUT -p tcp --dport 50000 -j ACCEPT Ausprobieren, und wenns klappt in die permanent einbinden.. wie das geht kommt da auch auf die Distribution an. EDIT:Ups, falsch verstanden..das musste ich auch noch nicht machen aber googles erster Eintrag hört sich nach der Lösung an. http://forum.ubuntuusers.de/topic/portweiterleitung-zum-loopbackinterface-localh/
:
Bearbeitet durch User
@Philipp: Vielen Dank. Die erste Konfiguration in dem Post hat super funktioniert. @all: Vielen Dank für eure Unterstützung
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.