programistycznyDuet
Nieszablonowo o programowaniu
0 obserwujących
4 notki
1235 odsłon
  216   0

Omijanie geolokalizacji? To takie proste!

Pixabay.com
Pixabay.com

Problem

Pojawił się problem. Aplikacja którą miałem używać mogła być używana tylko na terenie największego anglojęzycznego kraju. Nie byłem miałem możliwości jej używania, ponieważ zaraz po podaniu loginu i hasła użytkownika pojawiał „Błąd geolokalizacji”.


Pomysł

Mam dostęp do VPSa w USA. Nie ingerując w samą aplikację przekieruję ruch w taki sposób, żeby ze strony serwera połączenie wyglądało na przychodzące z terenu USA. Zacząłem od podejrzenia ruchu sieciowego, który jest generowany przez aplikację.


Okazało się, że ten ruch sieciowy ląduje w chmurze Amazon’a. Dla znalezionych domen sprawdziłem adresy IP w chmurze Amazon’a do których ruch sieciowy jest kierowany.


Przykładowe adres IP

23.20.144.78

50.16.81.45

Zapomniałem o jednym, istotnym założeniu. Aplikacja działa na niezależnym urządzenia w ramach sieci lokalnej. Dlatego na routerze dla tej sieci przekierowałem cały ruch do sieci określonych wcześniej jako adresy należące do AWS Amazon’a. W tym celu zmieniłem statyczne routy na routerze i przekierowałem cały ruch do mojego komputera w sieci lokalnej.


23.20.0.0/16 via 192.168.0.141

50.16.0.0/16 via 192.168.0.141


Z mojego komputera(192.168.0.141), za pomocą sshuttle przygotowałem przekierowanie ruchu dla określonych wcześniej sieci do VPS’a w USA.


sshuttle --listen 0.0.0.0:0 -r username@sshserver 23.20.0.0/16 50.16.0.0/16


Żeby powyższe polecenie zadziałało ipv4_forward musi być ustawione na true.


Mimo tak skomplikowanego połączenia, mogłem bez problemu zalogować się do aplikacji bez dalszych komplikacji.

Lubię to! Skomentuj2 Napisz notkę Zgłoś nadużycie

Więcej na ten temat

Komentarze

Inne tematy w dziale