Package org.apache.commons.net.util
Class SubnetUtils
java.lang.Object
org.apache.commons.net.util.SubnetUtils
Performs subnet calculations given a network address and a subnet mask.
- Since:
- 2.0
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionfinal class
Convenience container for subnet summary information. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final int
private static final Pattern
private final int
private static final Pattern
private boolean
Whether the broadcast/network address are included in host countprivate static final String
private static final int
private final int
private final int
private static final String
private static final String
-
Constructor Summary
ConstructorsConstructorDescriptionSubnetUtils
(String cidrNotation) Constructs an instance from a CIDR-notation string, e.g.SubnetUtils
(String address, String mask) Constructs an instance from a dotted decimal address and a dotted decimal mask. -
Method Summary
Modifier and TypeMethodDescriptionfinal SubnetUtils.SubnetInfo
getInfo()
Gets aSubnetUtils.SubnetInfo
instance that contains subnet-specific statisticsgetNext()
boolean
Tests if the return value ofSubnetUtils.SubnetInfo.getAddressCount()
includes the network and broadcast addresses.private static int
matchAddress
(Matcher matcher) private static int
rangeCheck
(int value, int begin, int end) void
setInclusiveHostCount
(boolean inclusiveHostCount) Sets totrue
if you want the return value ofSubnetUtils.SubnetInfo.getAddressCount()
to include the network and broadcast addresses.private static int
toString()
Converts this instance to a debug String.
-
Field Details
-
IP_ADDRESS
- See Also:
-
SLASH_FORMAT
- See Also:
-
ADDRESS_PATTERN
-
CIDR_PATTERN
-
NBITS
private static final int NBITS- See Also:
-
PARSE_FAIL
- See Also:
-
netmask
private final int netmask -
address
private final int address -
network
private final int network -
broadcast
private final int broadcast -
inclusiveHostCount
private boolean inclusiveHostCountWhether the broadcast/network address are included in host count
-
-
Constructor Details
-
SubnetUtils
Constructs an instance from a CIDR-notation string, e.g. "192.168.0.1/16"- Parameters:
cidrNotation
- A CIDR-notation string, e.g. "192.168.0.1/16"- Throws:
IllegalArgumentException
- if the parameter is invalid, i.e. does not match n.n.n.n/m where n=1-3 decimal digits, m = 1-2 decimal digits in range 0-32
-
SubnetUtils
Constructs an instance from a dotted decimal address and a dotted decimal mask.- Parameters:
address
- An IP address, e.g. "192.168.0.1"mask
- A dotted decimal netmask e.g. "255.255.0.0"- Throws:
IllegalArgumentException
- if the address or mask is invalid, i.e. does not match n.n.n.n where n=1-3 decimal digits and the mask is not all zeros
-
-
Method Details
-
matchAddress
-
rangeCheck
private static int rangeCheck(int value, int begin, int end) -
toInteger
-
getInfo
Gets aSubnetUtils.SubnetInfo
instance that contains subnet-specific statistics- Returns:
- new instance
-
getNext
-
getPrevious
-
isInclusiveHostCount
public boolean isInclusiveHostCount()Tests if the return value ofSubnetUtils.SubnetInfo.getAddressCount()
includes the network and broadcast addresses.- Returns:
- true if the host count includes the network and broadcast addresses
- Since:
- 2.2
-
setInclusiveHostCount
public void setInclusiveHostCount(boolean inclusiveHostCount) Sets totrue
if you want the return value ofSubnetUtils.SubnetInfo.getAddressCount()
to include the network and broadcast addresses. This also applies toSubnetUtils.SubnetInfo.isInRange(int)
- Parameters:
inclusiveHostCount
- true if network and broadcast addresses are to be included- Since:
- 2.2
-
toString
Converts this instance to a debug String.
-