以下代码:
InetAddress localHost = Inet4Address.getLocalHost();
NetworkInterface networkInterface = NetworkInterface.getByInetAddress(localHost);
for (InterfaceAddress address : networkInterface.getInterfaceAddresses()) {
System.out.println(address.getAddress() + "/" + address.getNetworkPrefixLength());
}
返回:
/fe80:0:0:0:11da:433a:412a:8c23%13/64
/192.168.1.107/128
我的子网掩码是/24,而不是/128。这是 Java 错误吗?
最佳答案
也许您遇到了这个错误:http://bugs.sun.com/view_bug.do?bug_id=6707289
(请停止投票......这只有 1 个谷歌距离......)
关于java - getNetworkPrefixLength() 返回奇怪的子网掩码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6665808/