The BlockList
object can be used with some network APIs to specify rules for disabling inbound or outbound access to specific IP addresses, IP ranges, or IP subnets.
class
net.BlockList
class BlockList
- @param address
An IPv4 or IPv6 address.
@param typeEither
'ipv4'
or'ipv6'
.@param addressAn IPv4 or IPv6 address.
- start: string,end: string,): void;
Adds a rule to block a range of IP addresses from
start
(inclusive) toend
(inclusive).@param startThe starting IPv4 or IPv6 address in the range.
@param endThe ending IPv4 or IPv6 address in the range.
@param typeEither
'ipv4'
or'ipv6'
.): void;Adds a rule to block a range of IP addresses from
start
(inclusive) toend
(inclusive).@param startThe starting IPv4 or IPv6 address in the range.
@param endThe ending IPv4 or IPv6 address in the range.
- prefix: number): void;
Adds a rule to block a range of IP addresses specified as a subnet mask.
@param netThe network IPv4 or IPv6 address.
@param prefixThe number of CIDR prefix bits. For IPv4, this must be a value between
0
and32
. For IPv6, this must be between0
and128
.net: string,prefix: number,): void;Adds a rule to block a range of IP addresses specified as a subnet mask.
@param netThe network IPv4 or IPv6 address.
@param prefixThe number of CIDR prefix bits. For IPv4, this must be a value between
0
and32
. For IPv6, this must be between0
and128
.@param typeEither
'ipv4'
or'ipv6'
. - ): boolean;
Returns
true
if the given IP address matches any of the rules added to theBlockList
.const blockList = new net.BlockList(); blockList.addAddress('123.123.123.123'); blockList.addRange('10.0.0.1', '10.0.0.10'); blockList.addSubnet('8592:757c:efae:4e45::', 64, 'ipv6'); console.log(blockList.check('123.123.123.123')); // Prints: true console.log(blockList.check('10.0.0.3')); // Prints: true console.log(blockList.check('222.111.111.222')); // Prints: false // IPv6 notation for IPv4 addresses works: console.log(blockList.check('::ffff:7b7b:7b7b', 'ipv6')); // Prints: true console.log(blockList.check('::ffff:123.123.123.123', 'ipv6')); // Prints: true
@param addressThe IP address to check
address: string,): boolean;Returns
true
if the given IP address matches any of the rules added to theBlockList
.const blockList = new net.BlockList(); blockList.addAddress('123.123.123.123'); blockList.addRange('10.0.0.1', '10.0.0.10'); blockList.addSubnet('8592:757c:efae:4e45::', 64, 'ipv6'); console.log(blockList.check('123.123.123.123')); // Prints: true console.log(blockList.check('10.0.0.3')); // Prints: true console.log(blockList.check('222.111.111.222')); // Prints: false // IPv6 notation for IPv4 addresses works: console.log(blockList.check('::ffff:7b7b:7b7b', 'ipv6')); // Prints: true console.log(blockList.check('::ffff:123.123.123.123', 'ipv6')); // Prints: true
@param addressThe IP address to check
@param typeEither
'ipv4'
or'ipv6'
. - value: unknown
Returns
true
if thevalue
is anet.BlockList
.@param valueAny JS value