Socket
Socket
Sign inDemoInstall

is-in-subnet

Package Overview
Dependencies
0
Maintainers
1
Versions
26
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    is-in-subnet

Check if an IPv4 or IPv6 address is contained in the given CIDR subnet


Version published
Weekly downloads
10K
decreased by-6.29%
Maintainers
1
Install size
151 kB
Created
Weekly downloads
 

Readme

Source

is-in-subnet npm dependencies license node

Check if an IPv4 or IPv6 address is contained in the given CIDR subnet.

  • Small
  • Fast
  • Simple syntax
  • Full test coverage
  • TypeScript-friendly
  • Zero dependencies
  • 🆕 Browser-friendly

See the 📖 Reference page for complete documentation.

Installation

With Node.js

npm install is-in-subnet

In a browser

This module is compatible with Browserify and other bundling tools. If you prefer to load it as a single file from a CDN:

The module is loaded as a global named isInSubnet.

Basic Usage

Node.js

const { isInSubnet } = require('is-in-subnet');

console.log(isInSubnet('10.5.0.1', '10.4.5.0/16')); // false
console.log(isInSubnet('10.5.0.1', '10.4.5.0/15')); // true

console.log(isInSubnet('2001:db8:f53a::1', '2001:db8:f53b::1:1/48')); // false
console.log(isInSubnet('2001:db8:f53a::1', '2001:db8:f531::1:1/44')); // true

Browser

console.log(isInSubnet.isInSubnet('10.5.0.1', '10.4.5.0/16'));
// if you don’t like that syntax, you may use this instead:
console.log(isInSubnet.check('10.5.0.1', '10.4.5.0/16'));

More ways to use it

Test multiple subnets at once

  • You can pass an array instead of a single subnet.
const inAnySubnet = isInSubnet('10.5.0.1', ['10.4.5.0/16', '192.168.1.0/24']);

Amortise the parsing cost using a functional version

  • createChecker(subnetOrSubnets) returns a function used to check an address
const checker = createChecker(['10.4.5.0/16', '192.168.1.0/24']);
console.log(checker('10.5.0.1')); // true

Test for special types of addresses

  • isPrivate(address) — Private addresses (like 192.168.0.0)
  • isLocalhost(address) — Localhost addresses (like ::1)

And more. See the documentation.

Check if an address is valid

  • isIPv4(address), isIPv6(address), isIP(address) — works just like the similarly-named functions in Node’s net module.

Keywords

FAQs

Last updated on 10 Dec 2020

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc