Java和Windows 7:可靠地获得IPv4网络掩码?

Tim*_*ler 6 java netmask windows-7

我在Windows上遇到了Java 6的已知错误.我的理解是获取网络掩码的正常方法是查找网络前缀长度并进行一些位移.问题是在Windows上,前缀长度通常不正确地返回,因此当我们得到24或20时,我们得到128.

此解决方案中,建议-Djava.net.preferIPv4Stack=true使用Java命令行.不幸的是,在Windows 7上,将其添加为VM参数或在Java命令行上似乎没有任何效果.

(a)有没有人知道可能仍然适用于Windows 7的此问题的任何其他解决办法?

(b)或者,有一种完全不同的方法来获得可靠的网络掩码吗?

谢谢!

PS 这是与此相关的错误报告.

ecl*_*cle 3

VM-Djava.net.preferIPv4Stack=true选项应该可以在任何操作系统下工作。或者,它可以作为System.setProperty("java.net.preferIPv4Stack","true");. 除非,某些东西(图书馆或其他什么)正在重置其真实状态。