[java] view plaincopyprint?
01./**
02. * 判断ip是否在指定网段中
03. * @author dh
04. * @param iparea
05. * @param ip
06. * @return boolean
07. */
08. public static boolean ipIsInNet(String iparea, String ip) {
09. if (iparea == null)
10. throw new NullPointerException("IP段不能为空!");
11. if (ip == null)
12. throw new NullPointerException("IP不能为空!");
13. iparea = iparea.trim();
14. ip = ip.trim();
15. final String REGX_IP = "((25[0-5]|2[0-4]//d|1//d{2}|[1-9]//d|//d)//.){3}(25[0-5]|2[0-4]//d|1//d{2}|[1-9]//d|//d)";
16. final String REGX_IPB = REGX_IP + "//-" + REGX_IP;
17. if (!iparea.matches(REGX_IPB) || !ip.matches(REGX_IP))
18. return false;
19. int idx = iparea.indexOf('-');
20. String[] sips = iparea.substring(0, idx).split("//.");
21. String[] sipe = iparea.substring(idx + 1).split("//.");
22. String[] sipt = ip.split("//.");
23. long ips = 0L, ipe = 0L, ipt = 0L;
24. for (int i = 0; i < 4; ++i) {
25. ips = ips << 8 | Integer.parseInt(sips[i]);
26. ipe = ipe << 8 | Integer.parseInt(sipe[i]);
27. ipt = ipt << 8 | Integer.parseInt(sipt[i]);
28. }
29. if (ips > ipe) {
30. long t = ips;
31. ips = ipe;
32. ipe = t;
33. }
34. return ips <= ipt && ipt <= ipe;
35. }
分享到:
相关推荐
ip工具类(用于判断IP是否在网段内,给定网段判断IP的范围)
Java IP地址网段计算是网络编程中的一个重要概念,它可以帮助开发者计算出某个IP地址的网段信息,包括网段的起始IP、结束IP和子网掩码等。在Java语言中,可以使用各种算法和技巧来实现IP地址网段计算。下面是一个...
Java,运用了多线程内部执行,不影响其他登录验证操作。在Controller类获取客户端的IP地址的方法是:request....所以我们这里添加了条件验证,将客户端IP及Mac地址(同网段)与本地本地IP及Mac地址方法分开。
shell 判断输入的ip是否和本机的ip同网段 包含两种实现方法
用c#实现的判断两个ip地址是否属于同一网段,用于网络传输判断
判断两个IP是否属于同一个子网(java) 简单代码
网络安全技术- IP地址和子网划分-06 判断IP地址所属的网段.mp3
TIA下如何访问不同IP网段中的PLC.pdf
应用场景: 多个工业现场设备的IP地址出厂默认设置(IP地址一样),或者设备的IP地址不在同一个网段,需要将这些设备的IP地址转换成同一网段的独立的IP地址,便于组网通讯。
此工具类包含根据ip和掩码(cidr)计算网段 判断ip是否在网段内 判断是否是ip ip转long long类型的ip转string
在本文档中,我们可以看到IP地址的分配命令,如`Switch(config-if)#ip add 192.168.10.254 255.255.255.0`等,这些命令将为vlan 10分配IP地址192.168.10.254/24。 三、DHCP服务器的配置 DHCP(Dynamic Host ...
在C#中实现网段扫描涉及到网络编程的基本概念和技术,主要是通过使用.NET框架中的System.Net命名空间提供的类。本文将详细介绍如何利用C#进行网络扫描,包括获取本地主机IP地址、远程查询以及实现网段扫描。 1. ...
本文主要介绍了如何在 Java 中判断两个时间段是否重叠的案例。时间段是指具有起始时间和终止时间的时间范围,在实际开发中,我们经常需要判断两个时间段是否存在重叠的情况。下面,我们将通过代码实现来详细介绍如何...
在Red Hat Linux系统中,配置DHCP服务器来为多个不同网段的客户端分配IP地址时,需要解决跨网段通信的问题。由于DHCP的通信基于广播,它不能直接跨越路由器。为了解决这个问题,可以设置一个DHCP中继代理(dhcprelay...
Java ip 地址排序Java ip 地址排序Java ip 地址排序Java ip 地址排序
自动Ping一个网段内从0~255的所有IP地址,并写入“不通.txt"文件中,方便查找一个网段内的IP使用情况。
- 根据ping结果判断IP是否在使用,如果所有ping都成功,则标记为已使用;否则标记为空闲 3. 脚本的两种变体: - 脚本1:使用while循环和expr表达式,通过grep匹配"ttl="来确定IP是否可用 - 脚本2:使用for循环和...