Este artigo descreve o método de obter o endereço IP do servidor e o endereço MAC por programação Java. Compartilhe -o para sua referência, como segue:
Sistema testado:
Windows Linux Unix
Exclua IPs anormais como 127.0.0.1 e 0.0.0.1
importar java.net.inetAddress; importar java.net.networkInterface; importar java.net.socketexception; importar java.util.arraylist; importar java.util.en Umração; importar java.util.list; classe pública iputil {private iputtil ( ) {} / ** * Este método descreve: Obtenha o endereço IP do servidor * @Author: [email protected] * @version: 5 de setembro de 2014 às 16:57:15 * / public static string getLocalip () {String sip = " ) {break; if (! ip.isloopbackAddress () && ip.gethostaddress (). Matches ("(//d {1,3 }//.) {3a }//d {1,3}")) {bfindip = true; Break; / ** * Este método descreve: Obtenha o endereço IP do servidor (cartão de rede múltipla) * @Author: [email protected] * @version: 5 de setembro de 2014 às 16:57:15 */ Lista de estática pública < String> getLocalips () {Inemaddress ip = null; hasMoreElements ()) {NetworkInterface Ni = (NetworkInterface) NetInterfaces .NextElement (); if (! ip. IsloopbackAddress () && ip.gethostaddress (). Matches ("(//d (1,3a }//.) {3}//d {1,3}")) {iplist.add ( ip.gethostAddress ()); do servidor * @Author: [email protected] * @VERSION: 5 de setembro de 2014 às 13:27:25 */ public static string getMacid () {string macid = ""; = NULL; ) netinterfaces .nextElement (); ); d {1,3} //.) {3}//d {1,3} ")) {bfindip = true; break;}}}}} catch (exceção e) {oututil.error (iputil.class, E.GetMessage ()); ; : 25 pm */ Lista estática pública <string> getMacids () {inetaddress ip = null; NE TwinInterface>) NetworkInterface .getNetworkInterfaces (); Você pode considerar o uso de ni.getName para julgar // atravessar toda a enumeração do IPS <Inetaddress> ips = ni.getinetadd resses (); ip.isloopbackAddress () // non-27.0.0.1 && ip.gethostaddress (). Matches ("(// d {1,3} //.) {3} // d {1,3}") { MacList.Add (getMacFrombes (ni.gethardwareaddress ())); Byte [] (B & 240) >> 4); } retornar mac.toString (). touppercase ();Espero que este artigo seja útil para a programação Java de todos.