JAVA获取子网掩码源代码,查看了jdk以后,知道可以通过NetworkInterface、InterfaceAddress这两个类来实现,可以获得子网掩码前缀,然后通过运算就能得到子网掩码,要说明的是,我计算掩码的方法很土但是很好用,代码也很容易看的懂,还有一个要说明的是,我是xp系统,没有安装ipv6协议.
public class SubnetMask {
/**
* @param args
*/
public static String getSubnetMask(){
int prefix=0;
int[] ipSplit=new int[4];
String subnetMask=null;
InetAddress localMachine=null;
try {
localMachine=InetAddress.getLocalHost();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
NetworkInterface netCard=null;
try {
netCard=NetworkInterface.getByInetAddress(localMachine);
} catch (SocketException e) {
// TODO Auto-generated catch block