Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [JAVA]getLocalHost

    Sto facendo un progetto per un esame, ma è agosto e devo provarlo a casa...il problema è che chiamando getLocalHost ottengo l'indirizzo di loopback 127.0.0.1, e questo mi crea problemi, come posso risolvere?
    www.valeweb.net

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,480

    Moderazione

    Ho spostato la discussione nel forum dedicato a Java.
    In futuro, poni qui le tue domande relative a questo linguaggio.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [JAVA]getLocalHost

    Originariamente inviato da bettola
    Sto facendo un progetto per un esame, ma è agosto e devo provarlo a casa...il problema è che chiamando getLocalHost ottengo l'indirizzo di loopback 127.0.0.1, e questo mi crea problemi, come posso risolvere?
    InetAddress.getLocalHost () restituisce l'indirizzo IP della macchina in modo corretto (non il loopback). A meno che .... tu non l'abbia chiamata da una applet. In quel caso il security manager molto probabilmente ti ha negato l'accesso.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    56
    Se ho capito bene, il problema è che l'esecuzione su un PC non collegato in rete comporta che l'indirizzo restituito è 127.0.0.1 anziché un indirizzo di rete locale.
    Per creare un InetAddress con un indirizzo IP qualunque (InetAddress non ha costruttori) puoi provare:

    codice:
    //InetAddress inetaddress=InetAddress.getLocalHost();
    InetAddress inetaddress=InetAddress.getByName("192.168.1.254");
    Non sono sicurissimo che il metodo getByName() non cerchi di accedere alla rete se l'argomento è una stringa in forma di indirizzo IP per fare un reverse DNS lookup, ma non credo. Lo scopri subito: se non puoi usare un indirizzo che sulla rete non esiste, il metodo ti restituirà una UnknownHostException.

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da engiman
    Se ho capito bene, il problema è che l'esecuzione su un PC non collegato in rete comporta che l'indirizzo restituito è 127.0.0.1 anziché un indirizzo di rete locale.
    Sì, è vero, c'è anche questo caso. Ma se il PC non è in rete (o, come ho fatto io, ho disabilitato un attimo la rete sul mio PC) il PC .... non ha un "vero" indirizzo IP, ha solo il localhost (127.0.0.1).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  6. #6
    Solo che il pc è in rete locale...ha come ip 192.168.1.6 ...è questa la cosa strana
    www.valeweb.net

  7. #7
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da bettola
    Solo che il pc è in rete locale...ha come ip 192.168.1.6 ...è questa la cosa strana
    Allora prova questa semplice applicazione:
    codice:
    import java.net.*;
    
    public class Prova
    {
        public static void main (String[] args)
        {
            try
            {
                String s = InetAddress.getLocalHost ().getHostAddress ();
    
                System.out.println (s);
            }
            catch (Exception e)
            {
                e.printStackTrace ();
            }
        }
    }
    Questa stampa l'indirizzo IP, non il loopback ma quello ad es. 192.168.xxx
    Se non ti funziona così, c'è qualcos'altro che adesso non saprei dirti.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.