Package com.bytedesk.core.utils
Class IpUtils
java.lang.Object
com.bytedesk.core.utils.IpUtils
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic String
getClientIp
(jakarta.servlet.http.HttpServletRequest request) 获取访客来源ipstatic String
getIp
(jakarta.servlet.http.HttpServletRequest request) 获取客户端ipstatic String
获取服务器IP地址static String
hostname()
获取本机hostnamestatic long
ipToLong
(InetAddress ip) static boolean
isIpInCidr
(String ip, String cidr) 检查IP是否匹配CIDR格式的IP段static boolean
isIpInCidrRange
(String ip, String cidr) 检查IP是否匹配CIDR格式的IP段(支持IPv4和IPv6)static boolean
isIpInRange
(InetAddress ip, InetAddress rangeStart, InetAddress rangeEnd) static boolean
isValidCidr
(String cidr) 验证CIDR格式是否正确static boolean
验证IP地址格式是否正确static void
测试CIDR功能的方法static boolean
-
Field Details
-
IPV4_PATTERN
- See Also:
-
IPV6_PATTERN
- See Also:
-
-
Constructor Details
-
IpUtils
public IpUtils()
-
-
Method Details
-
isValidIp
验证IP地址格式是否正确- Parameters:
ip
- 要验证的IP地址- Returns:
- 如果格式正确则返回true,否则返回false
-
getIp
获取客户端ip- Parameters:
request
-- Returns:
-
getClientIp
获取访客来源ip- Returns:
- ip
-
hostname
获取本机hostname- Returns:
- hostname
-
getServerIp
获取服务器IP地址- Returns:
-
ipToLong
-
isIpInRange
-
testIsIpInRange
-
isIpInCidr
检查IP是否匹配CIDR格式的IP段- Parameters:
ip
- 要检查的IP地址cidr
- CIDR格式的IP段,如 "192.168.1.0/24"- Returns:
- 如果IP在CIDR范围内返回true,否则返回false
-
isIpInCidrRange
检查IP是否匹配CIDR格式的IP段(支持IPv4和IPv6)- Parameters:
ip
- 要检查的IP地址cidr
- CIDR格式的IP段- Returns:
- 如果IP在CIDR范围内返回true,否则返回false
-
isValidCidr
验证CIDR格式是否正确- Parameters:
cidr
- CIDR格式字符串,如 "192.168.1.0/24"- Returns:
- 如果格式正确返回true,否则返回false
-
testCidrFunctionality
public static void testCidrFunctionality()测试CIDR功能的方法
-