# Die IP-Adresse des Eigenen Hostes ausgeben



## Java_RY (25. Jan 2017)

Hallo Kollegen,
ich habe wieder einmal ein kleines Problem.
Als Hausaufgabe sollten wir ein kleines ChatTool schreiben.
Der ist soweit auch am laufen.
Adlerdings möchte ich in einem JLabel meine eigene IP-Adresse,
die mein Rechner vom Netzwerk bekommen hat anzeigen.
Da kommt nun das Problem egal wie ich es anstelle ich bekomme immer nur 127.0.1.1 heraus.
Das bringt mir nichts.
Meine gescheiterten Versuche hierbei sind
1.versuch

```
try
       {
           lblip.setText(""+InetAddress.getLocalHost());
       } catch (UnknownHostException e)
       {
           // TODO Auto-generated catch block
           e.printStackTrace();
       }
```
2.versuch

```
lblipadress.setText(""+InetAddress.getLocalHost().getHostName());
```
3.versuch

```
public static String hostAddr() {
   try {
       InetAddress[] allByName = InetAddress.getAllByName(host());
       for (InetAddress inetAddress : allByName) {
           if (inetAddress instanceof Inet4Address) {
               return inetAddress.getHostAddress();
           }
       }
       return InetAddress.getByName(host()).getHostAddress();
   } catch (UnknownHostException e) {
       throw new IllegalStateException(e);
   }
}
```

Es muss doch möglich sein das zu bewerkstelligen.


----------



## Meniskusschaden (25. Jan 2017)

Dein Rechner hat vermutlich mindestens zwei IP-Adressen. Die Loopback-Adresse und mindestens eine "normale" Adresse. Du könntest deinen dritten Versuch so ändern, dass er nicht bei der ersten IP abbricht, sondern alle ausgibt.


----------



## Java_RY (25. Jan 2017)

vielen dank für deine Info.
Ich habe das jetzt so gelöst

```
public void host()
    {
        String hs=null;
        try
        {
            hs= InetAddress.getLocalHost().getHostAddress();
        } catch (UnknownHostException e)
        {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        lblip.setText(hs);
        //return System.getProperty("host", "localhost");
    }
```
Jetzt wird mir die Adresse angezeigt.


----------



## Java_RY (25. Jan 2017)

Was mich verwundert hat ist das ich das schon mal angewendet habe und da ging es nicht.
Nachdem ich mich vom Kabel Netz des Raumes getrennt und mich über W-LAN mit meinem Handy HotSpot verbunden habe ging es.
War wohl irgend eine DHCP Einstellung des Netzwerks das dazu führte das ich im Netz nicht gesehen wurde.


----------



## JuKu (31. Jan 2017)

Ich glaube es liegt daran, dass du ja mehrere IP Adressen hast (wie schon einer oben geschrieben hat) und dann die falsche angezeigt wird.

Wichtig!
Derzeit gibst du so nur die lokale IP aus (es sei denn, der Server läuft im Rechenzentrum und hat gleich ne öffentliche IP).
Lokale IPs sind z.B. 192.168.x.x oder 10.x.x.x usw.
127.0.0.1 ist localhost.
Wenn also solch eine IP dort steht, dann kannst du deinen Server auch nur im internen Netz mit dieser IP erreichen.


----------

