Newsgroup: it.comp.reti.locali
Titolo: servizi my ip

Ho bisogno di sapere quando mi cambia l'ip remoto.
Per diversi anni mi sono servito di uno script bash (linux debian) che interroga 
http://www.indirizzo-ip.com
[¹].
Da ieri, il servizio è morto.
Ho in alternativa 
http://checkip.dyndns.org/[
²], ma tempo fa dovetti passare al primo in quanto bloccava gli accessi dopo 3-4 interrogazioni.
Conoscete altri siti che con semplice interrogazione diano in chiaro il mio ip senza frozoli, javascript, imagini o altro?
Vorrei mettere nello script che uso, la possibilità di interrogarne diversi nel caso che qualcuno in quel momento sia down.
 
[¹]
wget -q -O - 
http://www.indirizzo-ip.com/ip.php?.txt
 | sed "s/.* \([[:digit:]]*\.[[:digit:]]*\.[[:digit:]]*\.[[:digit:]]*\).*/\1/g"
 
[²]
wget -q -O - 
http://checkip.dyndns.org/
 | sed "s/.* \([[:digit:]]*\.[[:digit:]]*\.[[:digit:]]*\.[[:digit:]]*\).*/\1/g"
 
 
-- 
... facciano attenzione ai genitali coloro che vagano per le alt.binaries...:)
--- zine 0.4beta
 * Origin: Trying to throw my bytes around the world (2:332/439.26)

 
 
Io mi servo di questo:
 
  MYIP=$(curl -sw '\n' 
ident.me
); echo $MYIP
 
angelo
 

 dare come output l'ip che lo interroga.
 
Ho bisogno di sapere il mio ip per impostare i miei dominii su 
dyn.com
 (che
pago) che girano in casa mia.
 
 
 
-- 
.. e' un mio vizio... quando sentivo "Berlusconi" pensavo a un politico!
--- Blue Wave/X11 v2.12
 * Origin: Tel-In BBS HST-DS +39-55-432xxx/4231xxx Firenze !! (2:332/109)

In date: Thu, 19 Mar 2020 16:52:16 on group: it.comp.reti.locali,

Ottimo aggiunto. Grazie.


 pago) che girano in casa mia.
ma dyn te lo da questo o ho capito male?

In date: Thu, 19 Mar 2020 18:42:01 on group: it.comp.reti.locali,

A dyn devo impostare a quale ip puntare quando devo (o devono) accedere ai miei dominii.
Ogni tanto al mio router, avendo un ip dinamico, viene cambiato l'ip.
Per cui ho uno script che gira da me, che ogni pochi minuti verifica il mio ip
esterno e se è cambiato aggiorna il dns su dyn.
 
Fino alle ore 4 di notte di ieri, usando 
http://www.indirizzo-ip.com
 funzionava tutto bene.
Poi mi sono arrivati continui messaggi di impossibilità verifica del mio ip.
Ho controllato ed ho visto che 
indirizzo-ip.com
 sembra morto.
 
Precedentemente per questo scopo usavo 
checkip.dyndns.org
, ma dopo un po' di
tempo ho visto che interrogazioni ripetute a pochi minuti, venivo bannato.
 
Per ora sono tornato a 
checkip.dyndns.org
, che sembra non bannare più, ma nella
possibilità che ci siano problemi, qualsiasi tipo, volevo avere un ventaglio di
più possibilità. Oltre a dilazionare le interrogazioni cicliche su più dominii
in modo da evitare a loro sovraccarichi.
 
Non devo fare servizi particolari, è solo una cosa riservata per me e poche
persone, ma nel bisogno devo poter accedere.
 
 
 
-- 
--- Terminate 4.00/Pro
 * Origin: Due persone su una sono schizofreniche ... (2:332/243.19)

 minuti verifica il mio ip esterno e se è cambiato aggiorna il dns su dyn.
 
Scusa eh, ma 
http://checkip.dyn.com/
 ?
 
Non so, la butto lì visto che sei su dyn.com...
 
-- 
Cio' che si vede, e'.
 

 Non so, la butto lì visto che sei su dyn.com...
 
Su 
dyn.com
 ho solo i dominii.
I dns li devo impostare io ad ogni variazione!
 
Come ho risposto ad Allen, che dice che googlando si trovano infiniti siti che
ti dicono il tuo ip.
Certo, ma sono per accesso con browser, con tanta fuffa, immagini, cartine,
collegamenti a maps.google, whois eccetera che per trovare l'ip tocca filtrare
decine di migliaia di caratteri....
 
 
 
-- 
... Chi s'accontenta gode, ma chi gode e' piu' contento!!!
--- Blue Wave/386 v2.30 [NR]
 * Origin: -  Biolus BBS Torino  -  011/4347xxx-4347xxx (2:334/501)

 in quanto bannava richieste ripetute, non mi sembra una cosa affidabile.
 
Con google, in tre minuti:
 
https://ipify.org
 
https://ifconfig.co/
 
https://seeip.org/
 
https://ip.sb/api/
 
https://www.my-ip.io/api
 
http://plain-text-ip.com/
 
 
 
altri qui
https://superuser.com/questions/420969/services-that-just-return-your-public-ip-as-text
 
 
e qui
 
https://unix.stackexchange.com/questions/22615/how-can-i-get-my-external-ip-address-in-a-shell-script
 
 
(nota il metodo che usa dig)
 
e mi sono fermato, ma ci sono altre n-cento pagine di risultati.


 persone, ma nel bisogno devo poter accedere.
bah continuo a non capire... vabbè sarò un pò tonto ma è così.... a me 
pare che si stia mischiando qualcosa ma non fateci caso è solo una mia 
impressione...

 Ottimo aggiunto. Grazie.
 
Io ho questo qui che sfrutta il dns “opendns”:
 
dig +short 
myip.opendns.com
 @
resolver1.opendns.com
 
 
Ritorna l’ip remoto con cui si presenta il sistema da cui viene lanciato
al server opendns.

 (nota il metodo che usa dig)
 
Ecco, io facevo la ricerca per il semplice ip, e non per il modo solo testo.
Per questo mi venivano fuori cose inutili!
 
Interessante il modo dig!
 
 
-- 
J’ai cherché dans l’amour un sommeil oublieux;
Mais l’amour n’est pour moi qu’un matelas d’aiguilles
Fait pour donner à boire à ces cruelles filles!

In date: Fri, 20 Mar 2020 09:14:34 on group: it.comp.reti.locali,

Fino a quando lavoravo, spesse volte all'estero, mi serviva avere un tunnel ssh
per vedere tramite ipcam, non accessibile direttamente da internet, quando mia
madre molto anziana, si addormentava davanti al tv.
 
Ora (be, prima di questa pestilenza) ho alcuni ex colleghi che si recano
all'estero in luoghi con fuso orario molto distante, e che necessitano di
informazioni, tabulati, schemi, appunti di miei lavori fatti.
Do il link ad una sottopagina in cui metto la raba che può servire a loro.
Alcuni documenti sono diversi mega.
 
Sicuramente non è un modo efficente, ma...


 Alcuni documenti sono diversi mega.
 
cito da te:
"Ho bisogno di sapere il mio ip per impostare i miei dominii su 
dyn.com
 
(che pago) che girano in casa mia."
 
ma *cosa* paghi a dyn? non basta la risoluzione di dominio eseguita da dyn?

In date: Mon, 23 Mar 2020 14:14:26 on group: it.comp.reti.locali,

Ho 2 dominii registrati a pagamento su dyn.
Ma devo dire a dyn l'ip a cui puntare, che è quello di casa.
 
Mi spiego: attualmente il mio ip è 151.1.2.3
 
Aggiorno su dyn in modo che chi punta a 
miosito.pippo.dyn.com
 possa accedere al
mio ip del momento, ossia 151.1.2.3.
 
Il provider internet (libero) mi cambia ip, per rotazione, cade la connessione,
salta per un istante la linea elettica, eccetera.
 
Su dyn miosito.pippo.dyn punta a ancora a 151.1.2.3 che ora non corrisponde più
a me. Palese, come farebbe a sapere dyn che quell'ip non è più il mio?
 
Ma devo invece risettare nuovamente 
miosito.pippo.dyn.com
 al nuovo ip che
adesso è 151.7.14.38.
 
Periodicamente ho uno script quì a casa mia, che verifica il mio ip, ed era il
motivo della mia richiesta, che, se è cambiato, aggiorna in automatico
miosito.pippo.dyn.com
 al nuovo ip 151.7.14.38.
 
 
 
-- 
Your story is so touching, but it sounds just like a lie
"Straighten up and fly right"

 
basta getto la spugna!

a me. Palese, come farebbe a sapere dyn che quell'ip non č piů il mio?
 
Imposta l'aggiornamento sul tuo router.
 
 
-- 
Ci sono 10 tipi di persone al mondo: quelle che capiscono il sistema binario
e quelle che non lo capiscono.

 come farebbe a sapere dyn che quell'ip non è più il mio?
 
https://dyndns.it/knowledgebase/client-software-aggiornamento-ip/
 
 
(come suggerito proprio da loro)
 
 
Ciao,
un TJL73 che ha il dubbio di non aver capito il problema...
 
-- 
"Non ho la soluzione, ma ammiro il problema."
                                                   -- Ashleigh Brilliant

 Conoscete altri siti
 
no, non mi vengono in mente adesso, ma una volta avevo configurato il pc 
remoto per rispondere automaticamente a un certo tipo di mail contenente in 
oggetto un particolare codice
 
dalla mail di risposta ricavavo l'indirizzo del mittente e lo usavo per 
connettermi :)
 
-- 
/-\ /\/\ /\/\ /-\ /\/\ /\/\ /-\ T /-\
-=- -=- -=- -=- -=- -=- -=- -=- - -=-
........... [ al lavoro ] ...........


Tempo fa, prima che cambiassi il router usavo uno script (ddclient) 
scaricato da dyndns faceva esattamente quello che vuoi.
 
Ora quel lavoro lo fa il router.
 
Ciao
Giovanni
-- 
   A computer is like an air conditioner,
   it stops working when you open Windows.
   < 
http://giovanni.homelinux.net/
 >

 (come suggerito proprio da loro)
 
Una decina di anni fa, suggerivano 2 script.
Uso da una decina di anni, uno di quelli.
 
Ma il post iniziale, era su un sito alternativio my-ip.
Come ho scritto un po' di post fa, il loro servizio mi aveva dato problemi.
 
 
-- 
INGSOC
War is peace. Freedom is slavery. Ignorance is strenght.
Who  controls  the  past,  controls  the  future.
Who  controls  the  present,  controls  the  past.

 scaricato da dyndns faceva esattamente quello che vuoi.
 
Non so se lo script che uso io sia lo stesso, l'ho rinominato, ma faccio appunto così.
Come ho già scritto, la mia richiesta era SOLO di un sito alternativo di my-ip a cui ho già avuto risposta.
Grazie comunque.


 Ho bisogno di sapere quando mi cambia l'ip remoto.
 
ad esempio
 
https://api.ipify.org/
 
 
https://ident.me/
 
 
http://requestbin.net/ip
 
 
ma ne esistono altri, non solo, se per caso hai un tuo sito web da
qualche parte, mettere in piedi una paginetta che ritorni l'IP del
client che effettua la richiesta, è banale, quello che segue è un
esempio scritto in PHP
 
// Function to get the client IP address
function get_client_ip() {
    $ipaddress = '';
    if (isset($_SERVER['HTTP_CLIENT_IP']))
        $ipaddress = $_SERVER['HTTP_CLIENT_IP'];
    else if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
        $ipaddress = $_SERVER['HTTP_X_FORWARDED_FOR'];
    else if(isset($_SERVER['HTTP_X_FORWARDED']))
        $ipaddress = $_SERVER['HTTP_X_FORWARDED'];
    else if(isset($_SERVER['HTTP_FORWARDED_FOR']))
        $ipaddress = $_SERVER['HTTP_FORWARDED_FOR'];
    else if(isset($_SERVER['HTTP_FORWARDED']))
        $ipaddress = $_SERVER['HTTP_FORWARDED'];
    else if(isset($_SERVER['REMOTE_ADDR']))
        $ipaddress = $_SERVER['REMOTE_ADDR'];
    else
        $ipaddress = 'UNKNOWN';
    return $ipaddress;
}
 
con quanto sopra ti basta richiamare la funzione "get_client_ip" e poi
scrivere in output (text/plain) l'indirizzo ritornato, a quel punto
avrai il tuo servizio "what's my ip" personale :)
 
 
 

 non è più il mio?
 
Ok, però OCCHIO, alla maggior parte dei servizi di dynamic DNS non
"piace" che un client si aggiorni "troppo spesso", anzi se ci provi
finisce che ti bloccano (l'account), per cui conviene usare una logica
un filo "furba", ossia
 
1. Leggi il tuo indirizzo IP corrente (curl, wget...)
 
2. Leggi l'indirizzo dinamico usando una query DNS
 
3. se sono uguali vai a 5
 
4. aggiorni l'indirizzo sul DNS dinamico
 
5. fine
 
 

 avrai il tuo servizio "what's my ip" personale :)
 
Per chiarezza, lo script seguente (ora ho un windows sottomano per cui
l'ho buttato giù al volo in VBscript, ma crearlo in bash non dovrebbe
comportare troppi problemi) fa quello che vuoi, ovviamente dovrai
impostare il nome host "dinamico" come ti serve
 
' servizio IP e nome dyn da controllare
Const IP_URL = "
https://api.ipify.org/
"
Const DYN_NAME = "
foobar.dyndns.org
"
 
  ' prova...
  If IsIPchanged() Then
    WScript.Echo "IP changed"
  Else
    WScript.Echo "IP unchanged"
  End If  
 
 
' controlla se IP riportato e IP DNS sono uguali
Function IsIPchanged()
  Dim sAddr1, sAddr2
 
  IsIPchanged = False
  sAddr1 = GetIPfromServer(IP_URL)
  sAddr2 = GetIPfromHost(DYN_NAME)
 
  If sAddr1 = sAddr2 Then
    Exit Function
  End If
 
  IsIPchanged = True
End Function  
 
' legge IP riportato da host remoto
Function GetIPfromServer(sIPserv)
  Dim oHTTP, sResult
 
  On Error Resume Next
  err.Clear
  GetIPfromServer = ""
 
  Set oHTTP = CreateObject("MSXML2.XMLHTTP")
  Call oHTTP.Open("GET", sIPserv, FALSE)
  oHTTP.send
  If err.number <> 0 Then
    Exit Function
  End If
 
  If CLng(oHTTP.status) > 300 Then
    Exit Function
  End If
 
  sResult = oHTTP.responseText
  GetIPfromServer = sResult
End Function
 
' legge IP da DNS
Function GetIPfromHost(sHost)
  Dim sQuery
  Dim oWMI, oPing, oStatus
  Dim sAddr
 
  sQuery = "Select * From Win32_PingStatus" & _
           " Where Address = '" & sHost & "'"
 
  Set oWMI = GetObject("winmgmts:\\.\root\cimv2")
  Set oPing = oWMI.ExecQuery(sQuery)
 
  For Each oStatus In oPing
    If oStatus.StatusCode = 0 Then
      sAddr = oStatus.ProtocolAddress
      Exit For
    Else
      sAddr = ""
    End If
  Next
 
  GetIPfromHost = sAddr
End Function 
 
 

 5. fine
 
Ovvio che faccio così[¹].
Altrimenti mi avrebbero segato anni fa   :)
 
 
[¹] Mi sembra che il limite sia nelle dita di una mano.
 
 
-- 
Noto che da un po' di anni il brodo del lesso non si schiuma più...
Forse perchè le vacche si fanno la doccia prima di essere macellate?

 Altrimenti mi avrebbero segato anni fa   :)
 
Ok, era giusto per sicurezza :) comunque vedi l'altro mio post, credo
che quei servizi (e ce ne sono ancora altri) possano fare al tuo caso,
un'idea furba potrebbe essere quella di avere una lista di URL in modo
che, nel caso in cui il primo non funzioni si possa provare il secondo
e così via; per quanto riguarda "ipify", trovi ulteriori info qui
 
https://www.ipify.org/
 
 
non che ce ne sia bisogno, alla fine della fiera è semplicissimo usarlo
però, se ti servisse qualche dettaglio sul chi/come e perchè ... ;-D !!
 
 

 
https://www.ipify.org/
 
 
due righe al volo giusto come esempio
 
 extip=$(curl -s 
https://api.ipify.org
)
 dnsip=$(dig +short 
foobar.dyndns.org
)
 
a quel punto confronti i due IP e decidi cosa fare, ovvio che il nome
host (nell'esempio 
foobar.dyndns.org
) andrà modificato per usare il tuo
oppure potresti passarlo come argomento allo script