9.0.5 • Published 7 months ago

ip-address v9.0.5

Weekly downloads
282,593
License
MIT
Repository
github
Last release
7 months ago

CircleCI 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

socks@stackmate/engineprolinkwiretestexpress-crowdsec-bouncerttt-minion3dsecureio-mappings@infinitebrahmanuniverse/nolb-ip-assisted-ui-libminearc-guardian@everything-registry/sub-chunk-1928geoip-lite-updpostgresql-type-parserszxinc-ipv6weristyountxs-js-libp2p-tcpxs-js-multiaddr@helpdotcom/is@marketplace-co/geoip-lite@marsupialtail/util-backendtime-line-prolinktest_lib_module_aarwhois-rdap@jsonhero/json-infer-types@leverj/geoip-litefacet-libeligendiquam@moretall/ip-trace@openshift-assisted/ui-lib@microsoft/windows-admin-center-sdkforest-ip-utils@lxe/maxmind-db-readerfirewalkergeneral_lib@neo-one/node-protocolgeoip-lite-zhgeoip-lite2geoip-native-litegeoip2-litegeoipfindgeoip-countrygeoip-litegeoip-lite-buffer-polyfillgeoip-lite-latestgeoip-lite-updatedgeoip-lite-updated2@network-utils/ip-rangeget-ip-rangegerimismalamsenin@neo-one/node-protocol-browserify@neo-one/node-protocol-es2018-cjs@neo-one/node-protocol-esnext-cjs@neo-one/node-protocol-esnext-esmgeofeed-findereum-utilitieseum-utilities2demo-ci-cd-moduleextws-driver-uwsextws-driver-wsextws-server@kirick/ip@jen20/pulumi-aws-vpc@jsreport/jsreport-cliicebreaker-network@dwns/record-locatorhubot-deployhubot-deploy-lentusipfix_nodeipfs-swarmip-traceip-range-localaddress-agent@rsw31106/xengineip-indexip-cidrip-cidr-webpack@heroku/socksv5@isopod/chasm@isopod/chasm-test@interactiveplus/pdk2021-backend-simplecaptcha@interactiveplus/pdk2021-commonensemblejsepochtalkhomebridge-lutron-radiora3@propelcommerce/node-geoiphttp-trick@operator-error/pulumi-aws-vpc@outtacontrol/socksgundam5@raven-crypto/raven-app-util@eventi/interfaces@extrieve_technologies/quickcapture_react_native@expo/entity-ip-address-fieldjpeix1ng-util@postgresql-typed/parsersjsreport-cli@terafin2/lutron-leap@squeep/indieauth-helper@spreaker/lambda-powertools
9.0.5

7 months ago

9.0.4

7 months ago

9.0.3

7 months ago

9.0.2

7 months ago

9.0.1

7 months ago

9.0.0

7 months ago

8.1.0

3 years ago

8.0.0

3 years ago

7.1.0

4 years ago

7.0.1

4 years ago

7.0.0

4 years ago

7.0.0-beta.1

4 years ago

7.0.0-beta.0

4 years ago

6.4.0

4 years ago

6.3.0

4 years ago

6.2.0

4 years ago

6.1.0

5 years ago

6.0.0

5 years ago

5.9.4

5 years ago

5.9.3

5 years ago

5.9.2

5 years ago

5.9.1

5 years ago

5.9.0

5 years ago

5.8.9

6 years ago

5.8.8

7 years ago

5.8.7

7 years ago

5.8.6

7 years ago

5.8.5

7 years ago

5.8.4

7 years ago

5.8.3

7 years ago

5.8.2

8 years ago

5.8.0

8 years ago

5.7.0

8 years ago

5.6.0

8 years ago

5.5.0

8 years ago

5.4.1

8 years ago

5.4.0

8 years ago

5.3.0

8 years ago

5.2.0

8 years ago

5.1.1

8 years ago

5.1.0

8 years ago

5.0.2

9 years ago

5.0.1

9 years ago

4.2.0

9 years ago

4.1.0

9 years ago

4.0.0

9 years ago

3.2.0

9 years ago

3.2.1

9 years ago