可能重复:
How to get a unique computer identifier in Java (like disk id or motherboard id)
Need to identify local machine somehow in java
我想获得某种计算机的唯一ID(即IP地址)。
我试过了:
InetAddress inetAddress = null;
try {
inetAddress = InetAddress.getLocalHost();
} catch (final UnknownHostException ex) {}
return inetAddress.getHostAddress();
这给了一个IP,但这个似乎定期改变。有没有办法让一个人不改变?
提前致谢!
注:
我需要能够将此ID与计算机相关联。
答案 0 :(得分:2)
如果计算机使用DHCP,则IP地址将定期更改。您可以使用主机名,也可以使用MAC地址,java.net.NetworkInterface.getHardwareAddress()
可以使用该地址答案 1 :(得分:0)
您是否考虑过使用保证唯一的UUID?
import com.eaio.uuid.UUID;
public class UUIDTest {
public static void main(String[] args) {
UUID u = new UUID();
System.out.println(u);
}
}