Namespace: IP

IP

Internet Protocol address operations.

Author:
  • <p>n1474335 [n1474335@gmail.com]</p>
License:
  • Apache-2.0
Source:

Members


<static, constant> INCLUDE_NETWORK_INFO

Default Value:
  • true
Source:

<static, constant> ENUMERATE_ADDRESSES

Default Value:
  • true
Source:

<static, constant> ALLOW_LARGE_LIST

Source:

<static, constant> IPv4_REGEX

Default Value:
  • /^\s*((?:\d{1,3}\.){3}\d{1,3})\s*$/
Source:

<static, constant> IPv6_REGEX

Default Value:
  • /^\s*(((?=.*::)(?!.*::.+::)(::)?([\dA-F]{1,4}:(:|\b)|){5}|([\dA-F]{1,4}:){6})((([\dA-F]{1,4}((?!\4)::|:\b|(?![\dA-F])))|(?!\3\4)){2}|(((2[0-4]|1\d|[1-9])?\d|25[0-5])\.?\b){4}))\s*$/i
Source:

<static, constant> IP_FORMAT_LIST

Default Value:
  • ["Dotted Decimal","Decimal","Hex"]
Source:

<static, constant> DELIM_OPTIONS

Default Value:
  • ["Line feed","CRLF","Space","Comma","Semi-colon"]
Source:

<static, constant> GROUP_CIDR

Default Value:
  • 24
Source:

<static, constant> GROUP_ONLY_SUBNET

Source:

<private, static, constant> _LARGE_RANGE_ERROR

Default Value:
  • The specified range contains more than 65,536 addresses. Running this query could crash your browser. If you want to run it, select the "Allow large queries" option. You are advised to turn off "Auto Bake" whilst editing large ranges.
Source:

Methods


<static> run_parse_ip_range(input, args)

Parse IP range operation.

Parameters:
Name Type Description
input string
args Array.<Object>
Source:
Returns:
Type
string

<static> run_parse_ipv6(input, args)

Parse IPv6 address operation.

Parameters:
Name Type Description
input string
args Array.<Object>
Source:
Returns:
Type
string

<static> run_change_ip_format(input, args)

Change IP format operation.

Parameters:
Name Type Description
input string
args Array.<Object>
Source:
Returns:
Type
string

<static> run_group_ips(input, args)

Group IP addresses operation.

Parameters:
Name Type Description
input string
args Array.<Object>
Source:
Returns:
Type
string

<private, static> _ipv4_cidr_range(cidr, include_network_info, enumerate_addresses, allow_large_list)

Parses an IPv4 CIDR range (e.g. 192.168.0.0/24) and displays information about it.

Parameters:
Name Type Description
cidr RegExp
include_network_info boolean
enumerate_addresses boolean
allow_large_list boolean
Source:
Returns:
Type
string

<private, static> _ipv6_cidr_range(cidr, include_network_info)

Parses an IPv6 CIDR range (e.g. ff00::/48) and displays information about it.

Parameters:
Name Type Description
cidr RegExp
include_network_info boolean
Source:
Returns:
Type
string

<private, static> _gen_ipv6_mask(cidr)

Generates an IPv6 subnet mask given a CIDR value.

Parameters:
Name Type Description
cidr number
Source:
Returns:
Type
Array.<number>

<private, static> _ipv4_hyphenated_range(range, include_network_info, enumerate_addresses, allow_large_list)

Parses an IPv4 hyphenated range (e.g. 192.168.0.0 - 192.168.0.255) and displays information
about it.

Parameters:
Name Type Description
range RegExp
include_network_info boolean
enumerate_addresses boolean
allow_large_list boolean
Source:
Returns:
Type
string

<private, static> _ipv6_hyphenated_range(range, include_network_info)

Parses an IPv6 hyphenated range (e.g. ff00:: - ffff::) and displays information about it.

Parameters:
Name Type Description
range RegExp
include_network_info boolean
Source:
Returns:
Type
string

<private, static> _str_to_ipv4(ip_str)

Converts an IPv4 address from string format to numerical format.

Parameters:
Name Type Description
ip_str string
Source:
Returns:
Type
number
Example
// returns 168427520
IP._str_to_ipv4("10.10.0.0");

<private, static> _ipv4_to_str(ip_int)

Converts an IPv4 address from numerical format to string format.

Parameters:
Name Type Description
ip_int number
Source:
Returns:
Type
string
Example
// returns "10.10.0.0"
IP._ipv4_to_str(168427520);

<private, static> _str_to_ipv6(ip_str)

Converts an IPv6 address from string format to numerical array format.

Parameters:
Name Type Description
ip_str string
Source:
Returns:
Type
Array.<number>
Example
// returns [65280, 0, 0, 0, 0, 0, 4369, 8738]
IP._str_to_ipv6("ff00::1111:2222");

<private, static> _ipv6_to_str(ipv6, compact)

Converts an IPv6 address from numerical array format to string format.

Parameters:
Name Type Description
ipv6 Array.<number>
compact boolean

Whether or not to return the address in shorthand or not

Source:
Returns:
Type
string
Example
// returns "ff00::1111:2222"
IP._ipv6_to_str([65280, 0, 0, 0, 0, 0, 4369, 8738], true);

// returns "ff00:0000:0000:0000:0000:0000:1111:2222"
IP._ipv6_to_str([65280, 0, 0, 0, 0, 0, 4369, 8738], false);

<private, static> _generate_ipv4_range(ip, end_ip)

Generates a list of IPv4 addresses in string format between two given numerical values.

Parameters:
Name Type Description
ip number
end_ip number
Source:
Returns:
Type
Array.<string>
Example
// returns ["0.0.0.1", "0.0.0.2", "0.0.0.3"]
IP._generate_ipv4_range(1, 3);