View Full Version : C - trovare ip host remoto
Dando un nome di un host (anche di una macchina remota) con che funzione si può far restituire il suo IP?
Grazie in anticipo
getaddrinfo
http://msdn.microsoft.com/en-us/library/ms738520(v=vs.85).aspx
http://linux.die.net/man/3/getaddrinfo
funziona sia su macchine in rete che per indirizzi internet?
funziona sia su macchine in rete che per indirizzi internet?
Indirizzi internet sicuro. Se con macchine in rete intendi i nomi delle macchine windows, allora sotto linux no, sotto windows non so.
ok grazie,ma se ad esempio ci sono in rete più macchine linux e dal nome si vuole l' ip in c come si può fare?
ok grazie,ma se ad esempio ci sono in rete più macchine linux e dal nome si vuole l' ip in c come si può fare?
Come ho detto sopra dipende da come e' impostato il nome macchina.
Se e' un nome impostato su /etc/hosts o su un dns, o comunque trovabile dal resolver di linux, allora con la funzione che ho indicato sopra.
ok,e se così non fosse che funzione si potrebbe usare?
ok,e se così non fosse che funzione si potrebbe usare?
Beh, devi almeno dirmi cosa intendi per nome allora... nome Samba ? Altro ?
allora per esercizio sto implementando un piccolo dns,ho provato e per esempio dando www.sito.it da l' ip,ma se abbiamo ad esempio 2 macchine in rete linux ad esempio macchinaA e macchinaB vorrei che dando da macchinaA la funzione con come parametro macchinaB restituisca l' ip della macchinaB
come dicevo prima, devi saperci dire cosa intendi con nome macchina. E' un nome in /etc/hostname, il nome della rete windows, un nome dato dal server DHCP, il post-it attaccato sopra... Come ce l'hai impostato ?
Cmq in generale un server DNS ha un database suo per i nomi delle macchine di cui e' responsabile. Se sono macchine in locale, a meno di una configurazione apposita da parte dell'amministratore di rete, devi andare scriverteli a mano da qualche parte.
intendo semplicemente il nome della macchina dando "hostname" da terminale
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.