Package Hope.ipaddress.demo;import Java.net.inetaddress;import Java.net.networkinterface;import Java.net.socketexception;import java.util.enumeration;/** * Get current server IP * @author HP * */public class Ipdemo {/** * @param args */public static void main (string[] args) {System.out.println (Getmyip ()); } @SuppressWarnings ("Rawtypes") public static string Getmyip () {string localip = null;//Local IP, return it if not configured with an external network IP String netip = null;//Extranet IP try {enumeration netinterfaces = Networkinterface.getnetworkinterfa CES (); inetaddress IP = null; Boolean finded = false;//whether to find the extranet IP while (netinterfaces.hasmoreelements () &&!finded) { NetworkInterface ni = (networkinterface) netinterfaces.nextelement (); Enumeration address = ni.getinetaddresses (); while (Address.hasmoreelements ()) {IP = (inetaddress) address.nextelement (); if (!ip.issitelocaladdress () &&!ip.isloopbackaddress () && ip.gethostaddress (). IndexOf (":") = =-1) {// Extranet IP Netip = ip.gethostaddress (); Finded = true; Break } else if (ip.issitelocaladdress () &&!ip.isloopbackaddress () && ip.gethostaddress (). IndexOf (":") = =-1 ) {//Intranet IP Localip = ip.gethostaddress (); }}}} catch (SocketException e) {e.printstacktrace (); } if (Netip! = NULL &&! "". Equals (Netip)) {return netip; } else {return localip; } }}
Java gets the current server IP