Announcement

Collapse
No announcement yet.

An Profis "IP-Adresse"

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • An Profis "IP-Adresse"

    Mein Button startet ein Thread, dieser wiederum liest IP-Adresse:<BR><BR>
    <B><I>String zugewIP = InetAddress.getLocalHost().getHostAddress();</I></B><BR><BR>

    es funktioniert auch.<BR>
    Wenn ich aber wiederholt diesen Thread starte bleibt die IP-Adresse unverändert, obwohl ich zwischen zeitlich eine Verbindung mit dem Internet aufgebaut habe.<BR>
    Starte ich mein Prog. erneut während die Verbindung mit dem Internet besteht, liefert der Thread die zugewiesene IP-Adresse. Trenne ich die Verbindung, und starte den Thread erneut bleibt die IP wieder unverändert.<BR><BR>
    Wie kann ich das umgehen, ich will, dass der Thread die aktuell zugewiesene IP liefert ohne den Prog. neu zu starten.<BR><BR>

    Geht dass überhaupt - habe schon verschiedene Möglichkeiten ausprobiert.

  • #2
    hi andreas,

    du fragst lediglich immer wieder den localhost (...getLocalHost()...)
    ab und diese ip bleibt natuerlich konstant;o)

    folgende abfrage ermoeglicht das ermitteln anderer ip's als
    die des localhost's (ein name - service muss natuerlich konfiguriert
    und erreichbar sein):

    <pre>
    import java.net.*;

    ...
    InetAddress addr = null;
    String sHostAddress;
    try {
    addr = InetAddress.getByName( "3rdLD.2ndLD.1stLevelDomain." );
    sHostAddress = addr.getHostAddress();
    } catch( UnknownHostException uhe ) {
    sHostAddress = "unknown host";
    }
    System.out.prinln( sHostAddress );
    ...
    </pre>

    gruss<br>
    thomas<br>
    <br>
    --<br>
    <i>http://www.cs.uni-magdeburg.de/~funke/index.html</i&gt

    Comment


    • #3
      ...}
      System.out.println( sHostAddress );
      ...

      gruss
      thomas

      --
      http://www.cs.uni-magdeburg.de/~funke/index.htm

      Comment


      • #4
        Hi Thomas,<BR>
        das ist leider nicht dass was ich suche, aber trotzdem danke für deine Antwort.<BR>
        Mein Problem ist, ich will IP-Adresse des Localhost ermitteln, diese soll immer wieder neu gelesen werden. Wenn der Localhost neue IP zugewiesen bekommt(z.B. Internet Verbindung) sollte diese neue Adresse ausgegeben werden.<BR>
        Inzwischen weiss ich dass die <B>InetAddress-Klasse</B> cacht die lokale IP.<BR>
        ... <BR>
        Ich wollte so was wie IPCONFIG unter JAVA programmieren, und ich denke, dass das irgendwie möglich sein muss, es muss doch eine Möglichkeit geben den Zwischenspeicher zu löschen, oder zu überschreiben, ohne mein Test Prog. neu zu starten(nach dem neu Start bekomme ich diese neue zugewisene IP).<BR>
        ...<BR&gt

        Comment


        • #5
          Hallo,<br>
          auch auf die Gefahr hin dass es noch nicht richtig nutzbar ist. Java 1.4 hat eine neue Klasse...

          <pre>
          Enumeration e1 = NetworkInterface.getNetworkInterfaces();
          while (e1.hasMoreElements())
          {
          NetworkInterface netI = (NetworkInterface)e1.nextElement();
          System.out.println("Network Interface: " + netI.getDisplayName());
          Enumeration e2 = netI.getInetAddresses();
          while (e2.hasMoreElements())
          {
          InetAddress iaddr = (InetAddress)e2.nextElement();
          System.out.println(" ... InetAddress: " + iaddr);
          }
          }
          </pre>

          Viele Grüße,<br>
          Andrea

          Comment


          • #6
            <p>Hallo das ist genau das was ich gesucht hab :`) ich möchte die Ip wissen, wenn ich mich ins Internet einwähle(damit ich meinen Computer als Server nehmen kann).
            Leider bin ich aus der Diskusion nicht recht schlau geworden weiß jemand wie ich das machen kann! Danke!!! josef</p>

            <a href="http://www.cheap-online.de/Java/"JavaForum&gt

            Comment

            Working...
            X