|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- address
- =======
-
- [![NPM version][npm-image]][npm-url]
- [![build status][travis-image]][travis-url]
- [![Test coverage][coveralls-image]][coveralls-url]
- [![Gittip][gittip-image]][gittip-url]
- [![David deps][david-image]][david-url]
- [![npm download][download-image]][download-url]
-
- [npm-image]: https://img.shields.io/npm/v/address.svg?style=flat-square
- [npm-url]: https://npmjs.org/package/address
- [travis-image]: https://img.shields.io/travis/node-modules/address.svg?style=flat-square
- [travis-url]: https://travis-ci.org/node-modules/address
- [coveralls-image]: https://img.shields.io/coveralls/node-modules/address.svg?style=flat-square
- [coveralls-url]: https://coveralls.io/r/node-modules/address?branch=master
- [gittip-image]: https://img.shields.io/gittip/fengmk2.svg?style=flat-square
- [gittip-url]: https://www.gittip.com/fengmk2/
- [david-image]: https://img.shields.io/david/node-modules/address.svg?style=flat-square
- [david-url]: https://david-dm.org/node-modules/address
- [download-image]: https://img.shields.io/npm/dm/address.svg?style=flat-square
- [download-url]: https://npmjs.org/package/address
-
- Get current machine IP, MAC and DNS servers.
-
- DNS servers receive from `/etc/resolv.conf`.
-
- ## Install
-
- ```bash
- $ npm install address
- ```
-
- ## Usage
-
- Get IP is sync and get MAC is async for now.
-
- ```js
- var address = require('address');
-
- // default interface 'eth' on linux, 'en' on osx.
- address.ip(); // '192.168.0.2'
- address.ipv6(); // 'fe80::7aca:39ff:feb0:e67d'
- address.mac(function (err, addr) {
- console.log(addr); // '78:ca:39:b0:e6:7d'
- });
-
- // local loopback
- address.ip('lo'); // '127.0.0.1'
-
- // vboxnet MAC
- address.mac('vboxnet', function (err, addr) {
- console.log(addr); // '0a:00:27:00:00:00'
- });
- ```
-
- ### Get all addresses: IPv4, IPv6 and MAC
-
- ```js
- address(function (err, addrs) {
- console.log(addrs.ip, addrs.ipv6, addrs.mac);
- // '192.168.0.2', 'fe80::7aca:39ff:feb0:e67d', '78:ca:39:b0:e6:7d'
- });
-
- address('vboxnet', function (err, addrs) {
- console.log(addrs.ip, addrs.ipv6, addrs.mac);
- // '192.168.56.1', null, '0a:00:27:00:00:00'
- });
- ```
-
- ### Get an interface info with family
-
- ```js
- address.interface('IPv4', 'eth1');
- // { address: '192.168.1.1', family: 'IPv4', mac: '78:ca:39:b0:e6:7d' }
- ```
-
- ### Get DNS servers
-
- ```js
- address.dns(function (err, addrs) {
- console.log(addrs);
- // ['10.13.2.1', '10.13.2.6']
- });
- ```
-
- ## benchmark
-
- run `$ npm run benchmark`
-
- ```
- 18,929 op/s » #ip
- 17,622 op/s » #ipv6
- 16,347 op/s » #mac
- 11,906 op/s » #dns
- ```
-
- ## License
-
- [MIT](LICENSE.txt)
|