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

e.printStackTrace();

}

List localInterface=null;

localInterface=netCard.getInterfaceAddresses();

Iterator iterator=null;

iterator=localInterface.iterator();

while(iterator.hasNext()){

InterfaceAddress temp=null;

temp=iterator.next();

prefix=temp.getNetworkPrefixLength();

}

int index=0;

int split=0;

int remainder=0;

split=prefix/8;

remainder=prefix%8;

while(index

ipSplit[index]=255;

index++;

}

if(remainder==1)

ipSplit[index]=128;

if(remainder==2)

ipSplit[index]=192;

if(remainder==3)

ipSplit[index]=224;

if(remainder==4)

ipSplit[index]=240;

if(remainder==5)

ipSplit[index]=248;

if(remainder==6)

ipSplit[index]=252;

if(remainder==7)

ipSplit[index]=254;

index++;

while(index

ipSplit[index]=0;

index++;

}

subnetMask=String.valueOf(ipSplit[0])+"."+String.valueOf(ipSplit[1])+"."+String.valueOf(ipSplit[2])+"."+String.valueOf(ipSplit[3]);

return subnetMask;

}

public static void main(String[] args) {

// TODO Auto-generated method stub

String subnetMask=getSubnetMask();

System.out.println(subnetMask);

}

}

子网掩码计算java,JAVA获取子网掩码源代码相关推荐

  1. java socket 获取网页源代码_通过java.net.Socket 类抓取网页内容

    /** 文件名 : Firstsocket.java 描述 :通过 java.net.Socket 类访问一个web页面,并且返回结果 作者: 慈勤强 cqq1978@yeah.net 参考:http ...

  2. java 10进制 掩码运算_ipv6子网掩码计算java

    IP地址优选网写过很多相关文章介绍,一些朋友还是对子网掩码.ip地址的网段等不太了解,我们下面一起来看看网友常常问到的一些相关问题.ipv6子网掩码计算java 一.什么是子网掩码? 在了解ip地址的 ...

  3. java获取页面标签_java获取网页源代码后,提取标签内容……

    java获取网页源代码后,提取标签内容-- 关注:245  答案:2  mip版 解决时间 2021-02-01 09:11 提问者咏bù琂败 2021-01-31 13:49 import java ...

  4. 如何实现IP分配、子网划分、和子网掩码计算

    最近再看java网络编程精解,书中提到了一些过去很模糊的概念.在这里做一些记录,下面的内容是在百度知道里面查到的. 一.子网掩码的含义和根据子网掩码划分子网 一个IP地址必然属于某一个网络,或者叫子网 ...

  5. 用Java线程获取优异性能(II)——使用同步连载线程访问关键代码部份

    摘要 开发者有时创建的多线程程序会生成错误值或产生其它奇怪的行为.古怪行为一般出现在一个多线程程序没使用同步连载线程访问关键代码部份的时候.同步连载线程访问关键代码部份是什么意思呢?在这篇文章中解释了 ...

  6. Java中获取当前函数名

    Java中获取当前函数名 博客分类: Java JavathreadJDKIDEA  有时候我们需要在程序中获取当前运行的函数名,如何简单的做到这点呢?我们可以用getStackTrace轻松搞定. ...

  7. java 获取远程服务器信息,java 远程获取服务器信息

    java 远程获取服务器信息 内容精选 换一换 已成功登录Java性能分析.待安装Guardian的服务器已开启sshd.待安装Guardian的服务器已安装JRE,JRE版本要求为Huawei JD ...

  8. java:获取两个日期相隔天数

    java:获取两个日期相隔天数 1 LocalDateTime使用 package com.xiaoxu.tool.demo;import org.springframework.lang.NonNu ...

  9. java如何获取一个对象的大小

    Refrence https://cloud.tencent.com/developer/article/1060294 什么时候需要知道对象的内存大小 在内存足够用的情况下我们是不需要考虑java中 ...

  10. Java中获取日期和时间

    Java中获取日期和时间 1.创建 java.util.Calendar 实例,调用其 get()方法传入不同的参数即可获 得参数所对应的值 import java.util.Calender; // ...

最新文章

  1. “theform._eventtarget 为空或者不是对象”,解决办法
  2. 乾坤 微前端_前端优秀资源整理(持续更新~)
  3. IDEA代码生成插件CodeMaker
  4. spring事务传播属性与隔离级别
  5. 小长假来了,送 40 本 Python 好书
  6. 计算找到出现最多的数字和次数 ,实现数组去重 ,进行排序。
  7. 框架基础:深入理解Java注解类型(@Annotation)
  8. Java对象转出json并过滤指定属性
  9. 织梦CMS调用文章列表时,怎么显示短时间格式
  10. 4月上旬中国万网域名总量增至245.8万个 国内份额上扬
  11. css 列表内容滚动,stroll.js 炫酷的 CSS3 列表滚动动画集合 - 文章教程
  12. rmarkdown+flexdashboard制作dashboard原型
  13. stm32f4 自旋锁_STM32L0系列控制器低功耗模式详解
  14. AI人工智能简史-人工智能与炼金术
  15. 机器人辅助符文天赋符文天赋_机器人符文天赋
  16. 利用批处理脚本批量删除电脑上的空文件夹
  17. n平方的求和公式_1到N的平方和,立方和公式是怎么推导的
  18. ubuntu18.04 安装惠普打印机驱动GUI界面
  19. sql镶嵌查询_SQL语句 - 嵌套查询
  20. try、catch、finally

热门文章

  1. 什么是计算机图形学?
  2. 爱立信、EMC笔试面试
  3. 郑州大学linux安装锐捷客户端
  4. android怎么改名字,手把手教你如何修改安卓软件的图标和名字
  5. 隐式人体表示生成虚拟视点+构建关节点的3D神经模型
  6. Win7系统更新错误代码80073712的解决办法
  7. c 易语言dll 循环,易语言的Dll命令及程序集知识点
  8. parent.dialogArguments兼容问题
  9. JAVA调用WebService的三种方法
  10. javascript将页面设为首页代码大全