1.0.12 • Published 3 years ago

subnet-cidr-calculator v1.0.12

Weekly downloads
345
License
MIT
Repository
github
Last release
3 years ago

subnet-cidr-adviser

=================

JavaScript class for calculating all possible subnets, subnet validity, ip range

What does it do?

  • Calculates all possible subnets within the given vpc.

  • Calculates IP range available within each of the subnet.

  • Calculates if subnet you are trying to create is already taken or overlapping with existing subnet (you need to provide a list of existing subnets).

  • Suggest next possible subnet (you need to provide a list of existing subnets).

  • Takes a Subnet CIDR network address and returns information ( all hosts, start address, end address)

Download

Demo

Support

  • Node.js
  • ... in progress

Installation

> bower install subnet-cidr-calculator

> npm install subnet-cidr-calculator

Node.js

var SubnetCIDRAdviser = require( 'subnet-cidr-calculator' );

var existingSubnetCIDR = ['10.0.32.0/19'];
var probabal_subnets = SubnetCIDRAdviser.calculate('10.0.0.0' , '16', existingSubnetCIDR);
var is_overlap = SubnetCIDRAdviser.isSubnetOverlap(existingSubnetCIDR, '10.0.32.0/20');
console.log(is_overlap, 'subnetOverlap');
var ip_range = SubnetCIDRAdviser.getIpRangeForSubnet( '10.0.32.0/20' );
console.log('IP range for 10.0.32.0/20 is', ip_range);

var subnetdetails = SubnetCIDRAdviser.getSubnetDetails( '10.0.32.0/20' );
console.log('Details for 10.0.32.0/20 is', subnetdetails);

var parentVPC_CIDR = '10.0.0.0/16';
var cidrToValidate = '';
var getNextValidCIDR = SubnetCIDRAdviser.getNextValidCIDR( parentVPC_CIDR, existingSubnetCIDR, probabal_subnets, cidrToValidate );
console.log('getNextValidCIDR is', getNextValidCIDR);

RequireJS

require( [ 'ip-subnet-calculator' ],

function( SubnetCIDRAdviser )
{
   console.log( SubnetCIDRAdviser.calculate( '10.0.0.0', '16', existingSubnetCIDR ) ); 
} );

Direct browser use

<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>
<script src="./lib/SubnetCIDRAdviser.js"></script>
<script type="text/javascript">
  var existingSubnetCIDR = ['10.0.32.0/19'];
  var probabal_subnets = SubnetCIDRAdviser.calculate('10.0.0.0' , '16', existingSubnetCIDR);
  var is_overlap = SubnetCIDRAdviser.isSubnetOverlap(existingSubnetCIDR, '10.0.32.0/20');
  console.log(is_overlap, 'subnetOverlap');
  var ip_range = SubnetCIDRAdviser.getIpRangeForSubnet( '10.0.32.0/20' );
  console.log('IP range for 10.0.32.0/20 is', ip_range);


  var subnetdetails = SubnetCIDRAdviser.getSubnetDetails( '10.0.32.0/20' );
  console.log('Details for 10.0.32.0/20 is', subnetdetails);


  var parentVPC_CIDR = '10.0.0.0/16';
  var cidrToValidate = '';
  var getNextValidCIDR = SubnetCIDRAdviser.getNextValidCIDR( parentVPC_CIDR, existingSubnetCIDR, probabal_subnets, cidrToValidate );
  console.log('getNextValidCIDR is', getNextValidCIDR);

API

SubnetCIDRAdviser.calculate( '10.0.0.0', '16', existingSubnetCIDR )

Calculates all possible subnets within the given vpc ... in progress.. more to come... :)

1.0.12

3 years ago

1.0.9

3 years ago

1.0.11

3 years ago

1.0.8

9 years ago

1.0.7

10 years ago

1.0.6

10 years ago

1.0.5

10 years ago

1.0.4

10 years ago

1.0.3

10 years ago

1.0.2

10 years ago

1.0.1

10 years ago

1.0.0

10 years ago