Ich habe eine Anwendung (kein Quellcode) erhalten, die einen Server anruft (fest codierte IP) und vor dem Start eine Antwort erwartet (eine Art Login).
Da der Server die Hälfte der Zeit ausgefallen ist, möchte ich einen Dummy-Server erstellen, der das Verhalten des offiziellen Servers emuliert.
Mein Problem:
Wie kann ich den Datenverkehr auf meinen lokalen Computer umleiten?
Ich möchte, dass alle an IP wxyz gesendeten Anforderungen an localhost weitergeleitet werden (wo mein Dummy-Server ausgeführt wird).
Mehr Info:
- Mein Dummy-Server ist eine Apache / PHP-Lösung.
- Ich habe versucht, die fest codierte IP in der Anwendung mit einem Hex-Editor zu bearbeiten, aber einige Prüfsummen schlagen fehl, wenn ich die Anwendung starte.
- Da die IP in der Anwendung fest codiert ist, kann ich die Hosts-Datei nicht verwenden.
- Ich laufe win xp.
Verwandte Themen : So leiten Sie den Datenverkehr unter Windows Server 2008 auf eine IP-Adresse auf eine andere IP-Adresse um
Nun, Sie könnten Folgendes versuchen:
Richten Sie eine bestimmte Route für diese IP-Adresse ein, die den Dummy-Server wie folgt als Gateway verwendet:
Dazu benötigen Sie entweder Zugriff auf den Hauptrouter Ihres Netzwerks oder Sie müssen dies auf dem Computer tun, der die Anforderungen sendet. Dadurch werden die TCP-Pakete mit der wxyz-IP-Adresse effektiv an die MAC-Adresse des Dummy-Servers gesendet. Jetzt müssen Sie sicherstellen, dass der Dummy-Server weiß, was mit ihnen zu tun ist.
Fügen Sie dann die wxyz-IP-Adresse als sekundäre Adresse zum Dummy-Server hinzu.
Aktualisieren Sie abschließend die Apache-Konfiguration auf dem Dummy-Server, um sicherzustellen, dass auch die wxyz-Adresse abgehört wird, und stellen Sie sicher, dass der vhost auf dem Dummy-Server eingehende Anforderungen sowohl für die IP-Adresse als auch für den Domänennamen akzeptiert.
Bitte beachten Sie, dass dies nur funktioniert, wenn sich zwischen dem anfordernden Computer und dem Dummy-Server keine anderen Router befinden. Und wenn Firewalls beteiligt sind, müssen diese ebenfalls aktualisiert werden.
quelle
Sie könnten wahrscheinlich etwas zusammen mit iptables schlagen. Hier ist etwas, das ich einmal benutzt habe, aber nicht mehr tue, um Ihnen einen Haushalt zu geben:
NB: Ich habe das vor langer Zeit gemacht, da kann es Fehler geben
Das einzige, was ich sehe, das ein Problem sein könnte, ist, dass es spezifisch für die Schnittstelle ist. Ich denke, dass eth0 nur für den eingehenden Teil ist, daher könnte die Verwendung einer IP auf der lo-Schnittstelle (127.0.0.1) als Ziel möglicherweise noch funktionieren ...
quelle