ip-protocols
TypeScript icon, indicating that this package has built-in type declarations

1.2.6 • Public • Published

IPv4 protocols

List of all IPv4 encapsulation protocols. Provides a general list of all protocol, and searching methods by name /decimal number/hex digit, and also you are able to direct import protocol which you need. See examples below...

NPM
Github
Link to wikipedia

Model

Every Protocol instance meet this model:

{
  Hex: string;
  Number: number;
  Name: string;
  Description: string;
}

Using

Specific protocols
import { ICMP, UDP } from 'ip-protocols';

const myProtocol = 17;
const isMyProtocolICMP = ICMP.Number === myProtocol; // false
const isMyProtocolUDP = UDP.Number === myProtocol; // true

console.log(ICMP);

/* Output:
{
  Hex: '0x01',
  Number: 1,
  Name: 'ICMP',
  Description: 'Internet Control Message Protocol'
}
*/
Searching methods
import { findByNumber } from 'ip-protocols';

const protocol = findByNumber(6);

console.log(protocol);

/* Output:
{
  Hex: '0x06',
  Number: 6,
  Name: 'TCP',
  Description: 'Transmission Control Protocol'
}
*/
findByName - is case-insensitive
import { findByName } from 'ip-protocols';

const protocol = findByName('uDp');

console.log(protocol);

/* Output:
{
  Hex: '0x11',
  Number: 17,
  Name: 'UDP',
  Description: 'User Datagram Protocol'
}
*/
findByHex
import { findByHex } from 'ip-protocols';

const protocol = findByHex('0x3C');

console.log(protocol);

/* Output:
{
  Hex: '0x3C',
  Number: 60,
  Name: 'IPv6-Opts',
  Description: 'Destination Options for IPv6'
}
*/
General array
import { protocolList } from 'ip-protocols';

const pr1 = protocolList[120];
const pr2 = protocolList[44];
const pr3 = protocolList[78];

console.log(pr1);
console.log(pr2);
console.log(pr3);

/* Output:
{
  Hex: '0x78',
  Number: 120,
  Name: 'UTI',
  Description: 'Universal Transport Interface Protocol'
}
{
  Hex: '0x2C',
  Number: 44,
  Name: 'IPv6-Frag',
  Description: 'Fragment Header for IPv6'
}
{
  Hex: '0x4E',
  Number: 78,
  Name: 'WB-MON',
  Description: 'WIDEBAND Monitoring'
}
*/

Package Sidebar

Install

npm i ip-protocols

Weekly Downloads

2

Version

1.2.6

License

ISC

Unpacked Size

51.6 kB

Total Files

16

Last publish

Collaborators

  • mauzzz0