Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/arminhammer/node-cidr

Javascript library for manipulating IP addresses and subnets using CIDR notation.
https://github.com/arminhammer/node-cidr

Last synced: about 2 months ago
JSON representation

Javascript library for manipulating IP addresses and subnets using CIDR notation.

Awesome Lists containing this project

README

        

# node-cidr

node-cidr is a Javascript library that makes it easy to manipulate IPs and Subnets. Currently only IPv4 is supported, but IPv6 support is planned for a future release.

## Index

### Variables

* [invalidChars](#invalidchars)

### Functions

* [address](#address)
* [broadcast](#broadcast)
* [cidrCommonCidr](#cidrcommoncidr)
* [count](#count)
* [includes](#includes)
* [intCommonCidr](#intcommoncidr)
* [ipCommonCidr](#ipcommoncidr)
* [ips](#ips)
* [mask](#mask)
* [max](#max)
* [min](#min)
* [netmask](#netmask)
* [next](#next)
* [nextCidr](#nextcidr)
* [padLeft](#padleft)
* [previous](#previous)
* [previousCidr](#previouscidr)
* [random](#random)
* [reverse](#reverse)
* [subnets](#subnets)
* [toBinary](#tobinary)
* [toCidr](#tocidr)
* [toHex](#tohex)
* [toInt](#toint)
* [toIntRange](#tointrange)
* [toOctets](#tooctets)
* [toRange](#torange)
* [toString](#tostring)
* [usable](#usable)
* [validateCidr](#validatecidr)
* [validateIp](#validateip)
* [wildcardmask](#wildcardmask)

### Object literals

* [cidr](#cidr)
* [ip](#ip)

---
# Variables

### «Const» invalidChars

**● invalidChars**: *`RegExp`* = /^.*?(?=[\^#%&$\*:<>\?\/\{\|\}[a-zA-Z]).*$/

*Defined in [index.ts:3](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L3)*

___

# Functions

### «Const» address

► **address**(ip: *`string`*): `string`

*Defined in [index.ts:155](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L155)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| ip | `string` | - |

**Returns:** `string`

___

### «Const» broadcast

► **broadcast**(cidr: *`string`*): `string`

*Defined in [index.ts:175](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L175)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidr | `string` | - |

**Returns:** `string`

___

### «Const» cidrCommonCidr

► **cidrCommonCidr**(cidrs: *`string`[]*): `string`

*Defined in [index.ts:166](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L166)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidrs | `string`[] | - |

**Returns:** `string`

___

### «Const» count

► **count**(cidr: *`string`*): `number`

*Defined in [index.ts:190](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L190)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidr | `string` | - |

**Returns:** `number`

___

### «Const» includes

► **includes**(cidr: *`string`*, ip: *`string`*): `boolean`

*Defined in [index.ts:240](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L240)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidr | `string` | - |
| ip | `string` | - |

**Returns:** `boolean`

___

### «Const» intCommonCidr

► **intCommonCidr**(ips: *`number`[]*): `string`

*Defined in [index.ts:5](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L5)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| ips | `number`[] | - |

**Returns:** `string`

___

### «Const» ipCommonCidr

► **ipCommonCidr**(ips: *`string`[]*): `string`

*Defined in [index.ts:57](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L57)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| ips | `string`[] | - |

**Returns:** `string`

___

### «Const» ips

► **ips**(cidr: *`string`*): `string`[]

*Defined in [index.ts:229](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L229)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidr | `string` | - |

**Returns:** `string`[]

___

### «Const» mask

► **mask**(ip: *`string`*): `number`

*Defined in [index.ts:157](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L157)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| ip | `string` | - |

**Returns:** `number`

___

### «Const» max

► **max**(cidr: *`string`*): `string`

*Defined in [index.ts:184](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L184)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidr | `string` | - |

**Returns:** `string`

___

### «Const» min

► **min**(cidr: *`string`*): `string`

*Defined in [index.ts:177](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L177)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidr | `string` | - |

**Returns:** `string`

___

### «Const» netmask

► **netmask**(cidr: *`string`*): `string`

*Defined in [index.ts:172](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L172)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidr | `string` | - |

**Returns:** `string`

___

### «Const» next

► **next**(ip: *`string`*): `string`

*Defined in [index.ts:111](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L111)*

Returns the next adjacent address.

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| ip | `string` | - |

**Returns:** `string`

___

### «Const» nextCidr

► **nextCidr**(cidr: *`string`*): `string`

*Defined in [index.ts:245](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L245)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidr | `string` | - |

**Returns:** `string`

___

### «Const» padLeft

► **padLeft**(input: *`string`*, char: *`string`*, min: *`number`*): `string`

*Defined in [index.ts:26](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L26)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| input | `string` | - |
| char | `string` | - |
| min | `number` | - |

**Returns:** `string`

___

### «Const» previous

► **previous**(ip: *`string`*): `string`

*Defined in [index.ts:117](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L117)*

Returns the previous adjacent address.

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| ip | `string` | - |

**Returns:** `string`

___

### «Const» previousCidr

► **previousCidr**(cidr: *`string`*): `string`

*Defined in [index.ts:248](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L248)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidr | `string` | - |

**Returns:** `string`

___

### «Const» random

► **random**(cidr: *`string`*): `string`

*Defined in [index.ts:251](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L251)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidr | `string` | - |

**Returns:** `string`

___

### «Const» reverse

► **reverse**(ip: *`string`⎮`number`*): `string`

*Defined in [index.ts:73](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L73)*

Returns the reverse lookup hostname for the address.

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| ip | `string`⎮`number` | - |

**Returns:** `string`

___

### «Const» subnets

► **subnets**(cidr: *`string`*, subMask: *`number`*, limit: *`number`*): `string`[]

*Defined in [index.ts:206](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L206)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidr | `string` | - |
| subMask | `number` | - |
| limit | `number` | - |

**Returns:** `string`[]

___

### «Const» toBinary

► **toBinary**(ip: *`string`⎮`number`*): `string`

*Defined in [index.ts:84](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L84)*

Returns the binary representation of the address, in string form.

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| ip | `string`⎮`number` | - |

**Returns:** `string`

___

### «Const» toCidr

► **toCidr**(ip: *`string`⎮`number`*): `string`

*Defined in [index.ts:119](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L119)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| ip | `string`⎮`number` | - |

**Returns:** `string`

___

### «Const» toHex

► **toHex**(ip: *`string`⎮`number`*): `string`

*Defined in [index.ts:97](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L97)*

Provides the hex value of the address.

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| ip | `string`⎮`number` | - |

**Returns:** `string`

___

### «Const» toInt

► **toInt**(ipAddress: *`string`*): `number`

*Defined in [index.ts:35](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L35)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| ipAddress | `string` | - |

**Returns:** `number`

___

### «Const» toIntRange

► **toIntRange**(cidr: *`string`*): `number`[]

*Defined in [index.ts:159](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L159)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidr | `string` | - |

**Returns:** `number`[]

___

### «Const» toOctets

► **toOctets**(input: *`string`⎮`number`*): `number`[]

*Defined in [index.ts:62](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L62)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| input | `string`⎮`number` | - |

**Returns:** `number`[]

___

### «Const» toRange

► **toRange**(cidr: *`string`*): `string`[]

*Defined in [index.ts:164](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L164)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidr | `string` | - |

**Returns:** `string`[]

___

### «Const» toString

► **toString**(ipInt: *`number`*): `string`

*Defined in [index.ts:43](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L43)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| ipInt | `number` | - |

**Returns:** `string`

___

### «Const» usable

► **usable**(cidr: *`string`*): `string`[]

*Defined in [index.ts:192](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L192)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidr | `string` | - |

**Returns:** `string`[]

___

### «Const» validateCidr

► **validateCidr**(cidr: *`string`*): `string`⎮`null`

*Defined in [index.ts:256](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L256)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidr | `string` | - |

**Returns:** `string`⎮`null`

___

### «Const» validateIp

► **validateIp**(ip: *`string`*): `string`⎮`null`

*Defined in [index.ts:126](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L126)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| ip | `string` | - |

**Returns:** `string`⎮`null`

___

### «Const» wildcardmask

► **wildcardmask**(cidr: *`string`*): `string`

*Defined in [index.ts:203](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L203)*

**Parameters:**

| Param | Type | Description |
| ------ | ------ | ------ |
| cidr | `string` | - |

**Returns:** `string`

___

## Object literal: cidr

### address

**● address**: *[address]()*

*Defined in [index.ts:287](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L287)*

___

### broadcast

**● broadcast**: *[broadcast]()*

*Defined in [index.ts:280](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L280)*

___

### commonCidr

**● commonCidr**: *[cidrCommonCidr]()* = cidrCommonCidr

*Defined in [index.ts:274](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L274)*

___

### count

**● count**: *[count]()*

*Defined in [index.ts:277](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L277)*

___

### includes

**● includes**: *[includes]()*

*Defined in [index.ts:283](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L283)*

___

### ips

**● ips**: *[ips]()*

*Defined in [index.ts:282](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L282)*

___

### mask

**● mask**: *[mask]()*

*Defined in [index.ts:288](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L288)*

___

### max

**● max**: *[max]()*

*Defined in [index.ts:275](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L275)*

___

### min

**● min**: *[min]()*

*Defined in [index.ts:276](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L276)*

___

### netmask

**● netmask**: *[netmask]()*

*Defined in [index.ts:278](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L278)*

___

### next

**● next**: *[nextCidr]()* = nextCidr

*Defined in [index.ts:285](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L285)*

___

### previous

**● previous**: *[previousCidr]()* = previousCidr

*Defined in [index.ts:286](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L286)*

___

### random

**● random**: *[random]()*

*Defined in [index.ts:284](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L284)*

___

### subnets

**● subnets**: *[subnets]()*

*Defined in [index.ts:281](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L281)*

___

### toIntRange

**● toIntRange**: *[toIntRange]()*

*Defined in [index.ts:273](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L273)*

___

### toRange

**● toRange**: *[toRange]()*

*Defined in [index.ts:271](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L271)*

___

### usable

**● usable**: *[usable]()*

*Defined in [index.ts:272](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L272)*

___

### validate

**● validate**: *[validateCidr]()* = validateCidr

*Defined in [index.ts:289](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L289)*

___

### wildcardmask

**● wildcardmask**: *[wildcardmask]()*

*Defined in [index.ts:279](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L279)*

___

## Object literal: ip

### commonCidr

**● commonCidr**: *[ipCommonCidr]()* = ipCommonCidr

*Defined in [index.ts:142](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L142)*

___

### next

**● next**: *[next]()*

*Defined in [index.ts:148](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L148)*

___

### previous

**● previous**: *[previous]()*

*Defined in [index.ts:147](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L147)*

___

### reverse

**● reverse**: *[reverse]()*

*Defined in [index.ts:146](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L146)*

___

### toBinary

**● toBinary**: *[toBinary]()*

*Defined in [index.ts:145](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L145)*

___

### toCidr

**● toCidr**: *[toCidr]()*

*Defined in [index.ts:149](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L149)*

___

### toHex

**● toHex**: *[toHex]()*

*Defined in [index.ts:143](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L143)*

___

### toInt

**● toInt**: *[toInt]()*

*Defined in [index.ts:140](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L140)*

___

### toOctets

**● toOctets**: *[toOctets]()*

*Defined in [index.ts:144](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L144)*

___

### toString

**● toString**: *[toString]()*

*Defined in [index.ts:141](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L141)*

___

### validate

**● validate**: *[validateIp]()* = validateIp

*Defined in [index.ts:150](https://github.com/arminhammer/node-cidr/blob/23f2044/src/index.ts#L150)*

___