Dostałem aplikację (bez kodu źródłowego) dzwoniącą do serwera (na stałe zakodowane IP) i oczekującą odpowiedzi przed uruchomieniem (rodzaj logowania).
Ponieważ serwer nie działa w połowie czasu, chcę stworzyć fałszywy serwer, który będzie emulował zachowanie oficjalnego serwera.
Mój problem:
Jak mogę przekierować ruch na moją maszynę lokalną?
Chcę, aby wszystkie żądania wysłane do IP wxyz zostały przekierowane na localhost (gdzie działa mój atrapa serwera)
Więcej informacji:
- mój fikcyjny serwer to rozwiązanie apache / php.
- Próbowałem edytować zakodowany adres IP w aplikacji za pomocą edytora szesnastkowego, ale niektóre sumy kontrolne zawiodły podczas uruchamiania aplikacji.
- ponieważ adres IP jest na stałe zakodowany w aplikacji, nie mogę użyć pliku hosts.
- Korzystam z Win XP.
powiązane: Jak przekierować ruch do jednego adresu IP na inny adres IP w systemie Windows Server 2008
Możesz spróbować:
Ustaw określoną trasę dla tego adresu IP, który będzie używał fikcyjnego serwera jako bramy:
W tym celu potrzebujesz dostępu do głównego routera sieci lub musisz to zrobić na komputerze, który wysyła żądania. To skutecznie wysyła pakiety TCP z adresem wxyz IP na adres MAC fikcyjnego serwera. Teraz musisz się upewnić, że atrapa serwera wie, co z nimi zrobić.
Następnie dodaj adres IP wxyz jako adres pomocniczy do fikcyjnego serwera.
Na koniec zaktualizuj konfigurację apache na fikcyjnym serwerze, aby upewnić się, że nasłuchuje również na adresie wxyz, i upewnij się, że vhost na fikcyjnym serwerze akceptuje przychodzące żądania zarówno adresu IP, jak i nazwy domeny.
Należy pamiętać, że zadziała to tylko wtedy, gdy nie będzie innych routerów między maszyną żądającą a serwerem zastępczym. A jeśli w grę wchodzą jakieś zapory ogniowe, wymagają one również aktualizacji.
źródło
Prawdopodobnie możesz uderzyć coś razem z iptables. Oto coś, z czego kiedyś korzystałem, ale nie robię już więcej, aby dać ci szansę:
NB: Zrobiłem to dawno temu, mogą tam być błędy
Jedyne, co widzę, może być problemem, to to, że jest specyficzne dla interfejsu. Myślę, że eth0 jest tylko dla części przychodzącej, więc używanie ip na interfejsie lo (127.0.0.1), ponieważ cel może nadal działać ...
źródło