Heim >Java >javaLernprogramm >Wie erhalte ich die richtige IP-Adresse Ihrer Java-Maschine?

Wie erhalte ich die richtige IP-Adresse Ihrer Java-Maschine?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-23 03:09:17254Durchsuche

How to Get the Correct IP Address of Your Java Machine?

Abrufen der IP-Adresse der aktuellen Maschine mit Java

In verteilten Systemen kommunizieren Knoten häufig über ihre IP-Adressen miteinander. Allerdings kann es eine Herausforderung sein, die richtige IP-Adresse für das aktuelle Gerät zu erhalten, da mehrere Netzwerkschnittstellen und verschiedene Arten von IP-Adressen vorhanden sein können.

Bestimmen der geeigneten IP-Adresse

Standardmäßig gibt InetAddress.getLocalHost() die IP-Adresse der ersten aktiven Netzwerkschnittstelle zurück. Dies ist jedoch möglicherweise nicht in allen Fällen die gewünschte Adresse, insbesondere wenn eine bestimmte IP-Adresse erforderlich ist, wie z. B. die PPP-IP oder die LAN-IP.

Iterieren über Netzwerkschnittstellen

Ein Ansatz besteht darin, NetworkInterface.getNetworkInterfaces() zu verwenden, um alle Netzwerkschnittstellen auf dem Computer abzurufen. Jede Schnittstelle kann dann mit getInetAddresses() auf verfügbare IP-Adressen überprüft werden. Durch Durchlaufen aller verfügbaren IP-Adressen kann der gewünschte IP-Typ (z. B. PPP, LAN) identifiziert werden.

Beispielcode

Der folgende Codeausschnitt zeigt, wie das geht Durchlaufen Sie Netzwerkschnittstellen und zeigen Sie die jeweils zugeordneten IP-Adressen an Schnittstelle:

Enumeration e = NetworkInterface.getNetworkInterfaces();
while(e.hasMoreElements()) {
  NetworkInterface n = (NetworkInterface) e.nextElement();
  Enumeration ee = n.getInetAddresses();
  while (ee.hasMoreElements()) {
    InetAddress i = (InetAddress) ee.nextElement();
    System.out.println(i.getHostAddress());
  }
}

Unterscheiden von IP-Adressen

Sobald die IP-Adressen erhalten wurden, können sie durch Überprüfen ihres Typs unterschieden werden. Loopback-Adressen (127.0.0.1), private (standortlokale) Adressen (192.168.x.x, 10.x.x.x, 172.16.x.x), Link-Local-Adressen (169.254.x.x), Multicast-Adressen (224.x.x.x) und Broadcast-Adressen (255.255.x.x). .255.255) können mithilfe der von InetAddress bereitgestellten Methoden identifiziert werden API.

Auswahl der richtigen IP-Adresse

Die spezifischen Kriterien für die Auswahl der richtigen IP-Adresse variieren je nach den Anforderungen der Anwendung. Im Allgemeinen können die folgenden Schritte in Betracht gezogen werden:

  1. Suchen Sie nach einer öffentlich zugänglichen IP-Adresse (kein Loopback, Link Local oder Privat).
  2. Wenn verfügbar, verwenden Sie die PPP-IP Adresse.
  3. Wenn die PPP-IP nicht verfügbar ist, verwenden Sie die LAN-IP-Adresse.
  4. Als letzten Ausweg verwenden Sie 127.0.0.1.

Das obige ist der detaillierte Inhalt vonWie erhalte ich die richtige IP-Adresse Ihrer Java-Maschine?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn