logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

MIPU - jak uzyskać zewnętrzny adres IP w sieci lokalnej?

01 Gru 2018 13:22 648 12
REKLAMA
  • #1 17597606
    Konto nie istnieje
    Poziom 1  
  • REKLAMA
  • #2 17597679
    Tommy82
    Poziom 41  
    Posty: 12139
    Pomógł: 455
    Ocena: 1072
    A pod linuxem np tak:

    Cytat:
    wget -q -O- https://www.showmyip.gr/ | grep "Your IP is:" | grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b"


    a w ogóle to przeciez można od razu grpeować po adresie IP
    Cytat:
    wget -q -O- https://www.showmyip.gr/ | grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b"
  • #3 17597756
    Konto nie istnieje
    Poziom 1  
  • REKLAMA
  • #4 17597800
    Tommy82
    Poziom 41  
    Posty: 12139
    Pomógł: 455
    Ocena: 1072
    To polecenie też nic nie zpaisuje tylko wysyła na standardowe wyjście, grep i regexpem wyłapuje IP.

    wersja z zapisem do pliku:

     wget -q -O- https://www.showmyip.gr/ | grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b"  >plik.txt
    


    Plus znajomości jak to zrobić pod linuxem jest taki że można na przykład używać tego w skryptach na routerach opartych na Tomato i podobnych.

    Wersja "periodyczna"
     watch 'wget -q -O- https://www.showmyip.gr/ | grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b"  >plik.txt'
    


    z ustawionym czasem wywołania
     watch -n 60 'wget -q -O- https://www.showmyip.gr/ | grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b"  >plik.txt'
    


    Do odpalenia na screenie. Ale można też bez watcha odpalać z crona.
  • #5 17598000
    Konto nie istnieje
    Poziom 1  
  • #6 17598029
    Tommy82
    Poziom 41  
    Posty: 12139
    Pomógł: 455
    Ocena: 1072
    Może te serwery próbują rozpoznawać kto ich pyta i jakiś "pytaczy" nie lubią.
    Może to być na przykład zabezpieczenie przed tym żeby pytania wyglądające na automatyczne filtrować.
    Ja adres stronki show IP wziąłem pierwszy z google tak że to akurat nie ma najmniejszego znaczenia który.

    W sumie ten show ip co użyłem wgetowi daje 200 bez żadnego przekierowania
    wget bez opcji q (quiet) ładnie wyświetla co robi:

    
    wget https://www.showmyip.gr/
    --2018-12-01 16:42:51--  https://www.showmyip.gr/
    Translacja www.showmyip.gr (www.showmyip.gr)... 52.87.12.163
    Łączenie się z www.showmyip.gr (www.showmyip.gr)|52.87.12.163|:443... połączono.
    Żądanie HTTP wysłano, oczekiwanie na odpowiedź... 200 OK
    


    Tak wget pozwala standardowo na zapis plików i może działać w tle ale to w zasadzie nie problem bo na linuxach można korzystać z różnych konsol czy ze screena jak nie chcemy z jakiegoś powodu utrzymywać otwartego terminala/sesji ssh.
  • REKLAMA
  • #7 17598224
    Konto nie istnieje
    Poziom 1  
  • #8 17598465
    Tommy82
    Poziom 41  
    Posty: 12139
    Pomógł: 455
    Ocena: 1072
    Ten przykład będzie bardziej przejrzysty choć dłuższy. No i grep jest narzędziem linuxowym.

    wget -q -O- https://www.showmyip.gr/

    Wget wysyła zapytanie metodą get na adres jak powyżej przełącznik -q powoduje że informacje dodatkowe (to co wkleiłem powyżej z komunikatem 200 nie są wyświetlane), one się czasem przydają jak chce ktoś prześledzić przekierowania bo wget to ładnie wypluje tu natomiast to niepotrzebne. Mnie interesuje tylko plik strony gdzie są numerki z moim IP.
    To bez -q to taki wgetowy debug. Ale on by mnię w trombę robił bo bym miał dwa adresy IP ;).
    Który wygląda tak
    
    wget https://www.showmyip.gr/
    --2018-12-01 16:42:51--  https://www.showmyip.gr/
    Translacja www.showmyip.gr (www.showmyip.gr)... 52.87.12.163
    Łączenie się z www.showmyip.gr (www.showmyip.gr)|52.87.12.163|:443... połączono.
    Żądanie HTTP wysłano, oczekiwanie na odpowiedź... 200 OK
    Długość: nieznana [text/html]
    Zapis do: `index.html'
    
        [ <=>                                   ] 14.455      --.-K/s   w 0,1s     
    
    2018-12-01 16:42:52 (123 KB/s) - zapisano `index.html' [14455]
    


    W tym trybie wget może działać jako tester łącza ;P. To IP tam to ip serwera. Zresztą to można sprawdzić w DNS: dig showmyip.gr
    troszkę skrócone
    showmyip.gr.		86400	IN	A	52.87.12.163
    


    I teraz to co wypluje z siebie serwer czyli kod strony leci zamiast do pliku na grepa.

    | grep "Your IP is:"

    Tu znajduje linię w której jest adres IP (akurat w tym przypadku jest w tej samej linii i mam pewność że to ten)

    | grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b"

    No i tu wyciągam sam adres IP. To jest po prostu wyszukiwanie wzorca wyrażeniem regularnym

    Wget pobiera dokument html który przeszukuje w poszukiwaniu adresu IP. To jak bym spojrzał co pisze na stronie www tylko automatycznie.
  • REKLAMA
  • #9 17598537
    Konto nie istnieje
    Poziom 1  
  • #10 17598584
    Tommy82
    Poziom 41  
    Posty: 12139
    Pomógł: 455
    Ocena: 1072
    @sylvi91
    Curl w sumie jest dostępny chyba wszędzie ja lubię go w PHP.
    Pomysł na narzędzie fajny no i pod Windowsa, j tylko pokazuje linuxową alternatywę. Natomiast ja bym na Twoim miejscu poszedł inną droga zrobił swoją stronkę show IP która by Ci odpowiadała tak jak chcesz. I rozbudował to narzędzie o kilka rzeczy i już by było coś fajnego taki mikro kombajn mógł by być przydatny. Natomiast webmasterom którzy produkują na platformę LAMP pod Windowsem współczuje to jest fabryka problemów z kodowaniami z klientami ftp ustawiającymi dziwne uprawnienia i tak dalej.

    Pobrał całą ale jej nigdzie nie zapisał.

    Wget wypluwa albo
    taki mini debug i zapisuje do pliku html.
    z opcją q nie wypluwa mini debugu i zapisuje html
    z opcją o wysyła na standardowe wejście i debug i html
    z opcią o i q wysyła bez debugu na standardowe wyjście i dalej grep przetwarza strumień.
    całe polecenie zwróci tylko adres IP
  • #11 17598694
    Konto nie istnieje
    Poziom 1  
  • #12 17598794
    Tommy82
    Poziom 41  
    Posty: 12139
    Pomógł: 455
    Ocena: 1072
    Czas operacyjny:
    [ <=> ] 14.455 --.-K/s w 0,1s

    Co do funkcjonalności to w jednym pod windą miejscu fajnie było by mieć funkcjonalności pinga tracerta mtra whoisa diga. To by ludziom mogło życie ułatwić bo to są pod linuxem narzędzia powszechnie stosowane a pod windowsem części brakuje. Do tego ludzie czasem nawet ich nie znają i kombinują na około.
  • #13 17600241
    Konto nie istnieje
    Poziom 1  

Podsumowanie tematu

✨ MIPU to mini aplikacja do uzyskiwania zewnętrznego adresu IP w sieci lokalnej, działająca z linii komend. Program łączy się z serwerem HTTP na porcie 80, umożliwiając użytkownikom uzyskanie adresu IP bez potrzeby przekierowywania portów na routerze. Użytkownicy mogą korzystać z polecenia `mipu server-name file-name user-name user-password`, a aplikacja wyświetla adres IP na konsoli. W dyskusji poruszono również alternatywne narzędzia, takie jak `wget` i `curl`, które mogą być używane do podobnych zadań, jednak MIPU ma na celu uproszczenie procesu. Użytkownicy zasugerowali dodanie funkcji zapisu do pliku oraz rozbudowę aplikacji o dodatkowe funkcjonalności, takie jak GUI i obsługa metod GET i POST.
Wygenerowane przez model językowy.
REKLAMA