Module: utils/ip

Classes

Address

Members

(static) types :Number

Address types.

Type:
  • Number
Properties:
Name Type Description
DNS Number
IPV4 Number
IPV6 Number
ONION Number
Source:

(static, constant) ZERO_IP :Buffer

IP address of all zeroes.

Type:
  • Buffer
Source:

Methods

(static) fromHostname(addr, fallbacknullable) → {Object}

Parse a hostname.

Parameters:
Name Type Attributes Description
addr String
fallback Number <nullable>

Fallback port.

Source:
Returns:

Contains host, port, and type.

Type
Object

(static) getStringType(strnullable) → {Number}

Get address type (-1=dns, 4=ipv4, 6=ipv6, 10=tor).

Parameters:
Name Type Attributes Description
str String <nullable>
Source:
Returns:
Type
Number

(static) getType(raw) → {Number}

Get address type.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Number

(static) hasPrefix(raw, prefix) → {Boolean}

Test whether an IP has a prefix.

Parameters:
Name Type Description
raw Buffer
prefix Buffer
Source:
Returns:
Type
Boolean

(static) isBroadcast() → {Boolean}

Test whether the host is a broadcast address.

Source:
Returns:
Type
Boolean

(static) isEqual(a, b) → {Boolean}

Test whether two IPs are equal.

Parameters:
Name Type Description
a Buffer
b Buffer
Source:
Returns:
Type
Boolean

(static) isIPv4() → {Boolean}

Test whether the address is IPv4.

Source:
Returns:
Type
Boolean

(static) isIPv6() → {Boolean}

Test whether the address is IPv6.

Source:
Returns:
Type
Boolean

(static) isLocal(raw) → {Boolean}

Test whether the ip is local.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isMapped(raw) → {Boolean}

Test whether a buffer is an ipv4-mapped ipv6 address.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isMulticast(raw) → {Boolean}

Test whether the ip is a multicast address.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isNull() → {Boolean}

Test whether the host is null.

Source:
Returns:
Type
Boolean

(static) isOnion(raw) → {Boolean}

Test whether the ip has a tor onion prefix.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isOnionString(strnullable) → {Boolean}

Test whether a string is an onion address.

Parameters:
Name Type Attributes Description
str String <nullable>
Source:
Returns:
Type
Boolean

(static) isRFC1918(raw) → {Boolean}

Test whether the ip is RFC 1918.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isRFC2544(raw) → {Boolean}

Test whether the ip is RFC 2544.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isRFC3849(raw) → {Boolean}

Test whether the ip is RFC 3849.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isRFC3927(raw) → {Boolean}

Test whether the ip is RFC 3927.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isRFC3964(raw) → {Boolean}

Test whether the ip is RFC 3964.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isRFC4193(raw) → {Boolean}

Test whether the ip is RFC 4193.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isRFC4380(raw) → {Boolean}

Test whether the ip is RFC 4380.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isRFC4843(raw) → {Boolean}

Test whether the ip is RFC 4843.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isRFC4862(raw) → {Boolean}

Test whether the ip is RFC 4862.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isRFC5737(raw) → {Boolean}

Test whether the ip is RFC 5737.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isRFC6052(raw) → {Boolean}

Test whether the ip is RFC 6052.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isRFC6145(raw) → {Boolean}

Test whether the ip is RFC 6145.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isRFC6598(raw) → {Boolean}

Test whether the ip is RFC 6598.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isRoutable(raw) → {Boolean}

Test whether the ip is routable.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) isV4String(strnullable) → {Boolean}

Test whether a string is IPv4.

Parameters:
Name Type Attributes Description
str String <nullable>
Source:
Returns:
Type
Boolean

(static) isV6String(strnullable) → {Boolean}

Test whether a string is IPv6.

Parameters:
Name Type Attributes Description
str String <nullable>
Source:
Returns:
Type
Boolean

(static) isValid(raw) → {Boolean}

Test whether the ip is valid.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
Boolean

(static) normalize(str) → {String}

Normalize an ip.

Parameters:
Name Type Description
str String
Source:
Returns:
Type
String

(private, static) parseV4(str, raw, offset) → {Buffer}

Convert an IPv4 string to a buffer.

Parameters:
Name Type Description
str String
raw Buffer
offset Number
Source:
Returns:
Type
Buffer

(private, static) parseV6(str, raw, offset) → {Buffer}

Convert an IPv6 string to a buffer.

Parameters:
Name Type Description
str String
raw Buffer
offset Number
Source:
Returns:
Type
Buffer

(static) toBuffer(str) → {Buffer}

Parse an IP string and return a buffer.

Parameters:
Name Type Description
str String
Source:
Returns:
Type
Buffer

(static) toHostname(host, port) → {String}

Concatenate a host and port.

Parameters:
Name Type Description
host String
port Number
Source:
Returns:
Type
String

(static) toString(raw) → {String}

Convert a buffer to an ip string.

Parameters:
Name Type Description
raw Buffer
Source:
Returns:
Type
String