ip-address
v10.0.1
Published
A library for parsing IPv4 and IPv6 IP addresses in node and the browser.
Downloads
67,693,707
Maintainers
Readme
ip-address
ip-address
is a library for validating and manipulating IPv4 and IPv6
addresses in JavaScript.
Upgrading from 9.x to 10.x
The dependency on jsbn
was removed thanks to
michal-kocarek. Thanks Michal! For
clarity, all methods with BigInteger in the name were renamed to BigInt.
Breaking changes
#fromBigInteger()
→#fromBigInt()
; now returns a native BigInt#bigInteger()
→#bigInt()
; now returns a native BigInt
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
- anon which powers @congressedits, among many others
- base85: base85 encoding/decoding
- contrail-web-core: part of Contrail, a network virtualization solution made by Juniper Networks
- dhcpjs: a DHCP client and server
- epochtalk: next generation forum software
- geoip-web: a server for quickly geolocating IP addresses
- hexabus: an IPv6-based home automation bus
- hubot-deploy: GitHub Flow via hubot
- heroku-portscanner: nmap hosted on Heroku
- ipfs-swarm: a swarm implementation based on IPFS
- javascript-x-server: an X server written in JavaScript
- libnmap: a node API for nmap
- mail-io: a lightweight SMTP server
- maxmind-db-reader: a library for reading MaxMind database files
- proxy-protocol-v2: a proxy protocol encoder/decoder built by Ably
- Samsara: a Docker web interface
- sis-api: a configuration management database API
- socks5-client: a SOCKS v5 client
- socksified: a SOCKS v5 client
- socksv5: a SOCKS v5 server/client
- ssdapi: an API created by the University of Portsmouth
- SwitchyOmega: a Chrome extension for switching between multiple proxies with ~311k users!
- swiz: a serialization framework built and used by Rackspace