Artikel ini menjelaskan metode untuk mendapatkan alamat IP server dan alamat MAC dengan pemrograman Java. Bagikan untuk referensi Anda, sebagai berikut:
Sistem yang Diuji:
Windows Linux Unix
Kecualikan IP abnormal seperti 127.0.0.1 dan 0.0.0.1
Impor java.net.inetaddress; import java.net.networkinterface; import java.net.socketexception; import java.util.arraylist; import java.util.en umerasi; ) {} / ** * Metode ini menjelaskan: Dapatkan alamat IP server * @Author: [email protected] * @Version: 5 September 2014 di 4:57:15 PM * / String statis publik getLocalip () {String sip = ""; ) {Break; if (! ip.isloopbackAddress () && ip.getHostAddress (). moothes ("(//d{1,3}//.) {3}//d{1,3}")) {bfindip = true; BREAK; / ** * Metode ini menjelaskan: dapatkan alamat IP server (beberapa kartu jaringan) * @Author: [email protected] * @Version: 5 September 2014 pada pukul 16:57:15 */ Daftar statis publik < String> getLocalips () {Inemaddress IP = NULL; hasmoreElements ()) {NetworkInterface Ni = (NetworkInterface) NetInterfaces .NextElement (); if (! ip. isLoopBackAddress () && ip.getHostAddress (). moothes ("(//d{1,3}//.) {3}//d{1,3}")) {iPlist.add ( ip.gethostaddress ()); dari server * @Author: [email protected] * @version: 5 September 2014 pada 1:27:25 pm */ string statis public getMacid () {string macid = ""; = null; ) NetInterfaces .NextElement (); // -------------- Situasi tertentu, Anda dapat mempertimbangkan untuk menggunakan ni.getname untuk menilai // traverse semua enumerasi IP ); D {1,3} //.) {3}//d {1,3} ")) {bfindip = true; break;}}}}} catch (pengecualian e) {oututil.error (iPutil.class, e.getMessage ());} if (null! = ip) {coba {macid = getMacFrombytes (ni.gethardwareaddress ()); ;}} return macid;} /** * Metode ini menjelaskan ya: dapatkan alamat MAC dari server (kartu multi-jaringan) * @Author: [email protected] * @Version: 5 September 2014 di 1:27 : 25 PM */ Daftar Statis Public <string> getMacIds () {Inetaddress IP = NULL; Ne twininterface>) networkInterface .getNetWorkIndInterfaces (); Anda dapat mempertimbangkan untuk menggunakan ni.getName untuk menilai // melintasi semua enumerasi IPS <inetaddress> ips = ni.getInetadd resses (); ip.isloopbackAddress () // non-127.0.0.1 && ip.getHostaddress (). mencocokkan ("(// d {1,3} //.) {3} // d {1,3}")) { maclist.add (getMacFrombytes (ni.gethardwareaddress ())); byte [] bytes) {StringBuffer Mac = New StringBuffer (); (B & 240) >> 4); } return mac.toString (). ToUpercase ();}}Saya harap artikel ini akan membantu pemrograman Java semua orang.