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

    8.1.0 • Public • Published

    travis codecov downloads npm snyk

    ip-address

    ip-address is a library for validating and manipulating IPv4 and IPv6 addresses in JavaScript.

    Migrating from 6.x to 7.x

    ip-address was rewritten in TypeScript for version 7. If you were using version 6 you'll need to make these changes to upgrade:

    • Instead of checking isValid(), which has been removed, you'll need to use a try/catch if you're accepting unknown input. This made the TypeScript types substantially easier as well as allowed the use of an AddressError class which will contain a parseMessage if an error occurred in the parsing step.
    • Instead of using the error, parseError, and valid attributes you'll need to use the message and parseMessage of the thrown AddressError.

    Documentation

    Documentation is available at ip-address.js.org.

    Examples

    var Address6 = require('ip-address').Address6;
    
    var address = new Address6('2001:0:ce49:7601:e866:efff:62c3:fffe');
    
    var teredo = address.inspectTeredo();
    
    teredo.client4;    // '157.60.0.1'

    Features

    • Usable via CommonJS or ESM
    • Parsing of all IPv6 notations
    • Parsing of IPv6 addresses and ports from URLs with Address6.fromURL(url)
    • Validity checking
    • Decoding of the Teredo information in an address
    • Whether one address is a valid subnet of another
    • What special properties a given address has (multicast prefix, unique local address prefix, etc.)
    • Number of subnets of a certain size in a given address
    • Display methods
      • Hex, binary, and decimal
      • Canonical form
      • Correct form
      • IPv4-compatible (i.e. ::ffff:192.168.0.1)
    • Works in node and the browser (with browserify)
    • ~1,600 test cases

    Used by

    Install

    npm i ip-address

    DownloadsWeekly Downloads

    276,728

    Version

    8.1.0

    License

    MIT

    Unpacked Size

    230 kB

    Total Files

    57

    Last publish

    Collaborators

    • beaugunderson