java如何获取Linux *** 作系统下的ip地址和网

java如何获取Linux *** 作系统下的ip地址和网,第1张

以下代码需要 JDK 6 及以后版本,如果是 JDK 6 以下版本的话,没有直接获得 MAC 的 API。

import java.net.InetAddressimport java.net.NetworkInterfaceimport java.net.SocketExceptionimport java.util.Enumerationpublic class NetworkInfo { private final static char[] HEX = "0123456789ABCDEF".toCharArray()public static void main(String[] args) throws SocketException {for(Enumeration<NetworkInterface>i = NetworkInterface.getNetworkInterfaces()i.hasMoreElements()) {NetworkInterface ni = i.nextElement() System.out.println("NETWORK CARD NAME: " + ni.getDisplayName()) System.out.println("MAC: " + toMacString(ni.getHardwareAddress())) for(Enumeration<InetAddress>j = ni.getInetAddresses()j.hasMoreElements()) {System.out.println(" " + j.nextElement()) }}} private static String toMacString(byte[] bys) {if(bys == null) {return null }char[] chs = new char[bys.length * 3 - 1] for(int i = 0, k = 0i <bys.lengthi++) {if(i >0) {chs[k++] = '-' }chs[k++] = HEX[(bys[i] >>4) &0xf] chs[k++] = HEX[bys[i] &0xf] }return new String(chs) }}

这个网上很多,主要是机器必须支持ICMP和NETBIOS协议。你参考一下:

public String getIP()

{

InetAddress inet

try {

inet =

InetAddress.getLocalHost()

InetAddress.getByName("")

return

inet.getHostAddress()

} catch (UnknownHostException e) {

// TODO

Auto-generated catch block

e.printStackTrace()

}

return ""

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8947079.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-23
下一篇2023-04-23

发表评论

登录后才能评论

评论列表(0条)

    保存