Uzyskaj informacje o geolokalizacji adresu IP w systemie Windows 10
W naszym poprzednim artykule widzieliśmy jak uzyskać informacje o geolokalizacji dla adresu IP za pomocą bash, curl i jq w Linuksie. Zobaczmy, jak to samo można zrobić w systemie Windows 10. W tym samym celu możemy użyć Bash na Linuksie lub PowerShell.
Reklama
Ponownie użyjemy darmowej usługi „freegeoip.net” jako źródła informacji o geolokalizacji. Zapewnia publiczny interfejs API HTTP do wyszukiwania geolokalizacji adresów IP. Wykorzystuje bazę danych adresów IP powiązanych z miastami wraz z innymi istotnymi informacjami, takimi jak strefa czasowa, szerokość i długość geograficzna. To bardzo przydatne.
Uzyskaj informacje o geolokalizacji adresu IP w systemie Windows 10 za pomocą Bash na Ubuntu
Jeśli masz zainstalowany Bash w systemie Linux, możesz go użyć w tym przypadku. Musisz zainstalować parser JSON konsoli jq. Zrób to w następujący sposób.
- Otwórz Bash na Ubuntu. Być może będziesz musiał go najpierw zainstalować. Zobacz następujący artykuł:
Jak włączyć Ubuntu Bash w Windows 10?Wskazówka: możesz dodaj Bash na Ubuntu do menu kontekstowego Eksploratora aby szybko otworzyć go w dowolnym żądanym folderze. - Wpisz następujące polecenie:
sudo apt-get zainstaluj jq
Aplikacja zostanie zainstalowana:
- Teraz możesz użyć następującego polecenia:
kędzior http://freegeoip.net/json/119.94.116.145>tmpjson.txt && jq '.' tmpjson.txt && rm tmpjson.txt
Wyjście:
To jest to samo polecenie I używany w natywnym środowisku Linux, jednak istnieje usterka. W systemie Windows 10 Bash na Ubuntu zepsuł obsługę wyjścia potoku. Z powodu tego problemu nie można łączyć wielu narzędzi, aby poprawnie ze sobą współpracować.
Użyłem więc tymczasowego pliku „tmpjson.txt”, który przechowuje odpowiedź serwera, a następnie zostaje usunięty.
Jeśli nie jesteś użytkownikiem Bash na Ubuntu, możesz zamiast tego użyć PowerShell.
Uzyskaj informacje o geolokalizacji adresu IP w systemie Windows 10 za pomocą PowerShell
Otwórz nowe wystąpienie programu PowerShell, jak opisano tutaj: Wszystkie sposoby otwierania PowerShell w systemie Windows 10
Zamiast narzędzia curl możesz użyć polecenia cmdlet Invoke-RestMethod. Jest specjalnie stworzony do pracy z usługami REST (Representational State Transfer), które zazwyczaj zwracają dane JSON lub XML.
Składnia jest następująca:
Invoke-RestMethod -Method Get -Uri http://freegeoip.net/json/119.94.116.145
Wynik polecenia będzie następujący:
Nie musisz nawet stosować dodatkowego formatowania do polecenia. Jest już ładnie wyświetlany na wyjściu.
Otóż to.