# address **Repository Path**: mirrors_node-modules/address ## Basic Information - **Project Name**: address - **Description**: Get current machine IP and MAC address. - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-08-19 - **Last Updated**: 2025-12-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # address [![NPM version][npm-image]][npm-url] [![Node.js CI](https://github.com/node-modules/address/actions/workflows/nodejs.yml/badge.svg)](https://github.com/node-modules/address/actions/workflows/nodejs.yml) [![Test coverage][coveralls-image]][coveralls-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 [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 [download-image]: https://img.shields.io/npm/dm/address.svg?style=flat-square [download-url]: https://npmjs.org/package/address Get current machine IPv4, IPv6, 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. - esm & typescript ```ts import { ip, ipv6, mac } from 'address'; // default interface 'eth' on linux, 'en' on osx. ip(); // '192.168.0.2' ipv6(); // 'fe80::7aca:39ff:feb0:e67d' mac(function (err, addr) { console.log(addr); // '78:ca:39:b0:e6:7d' }); // local loopback ip('lo'); // '127.0.0.1' // vboxnet MAC mac('vboxnet', function (err, addr) { console.log(addr); // '0a:00:27:00:00:00' }); ``` - commonjs ```js const { ip, ipv6, mac } = require('address'); // default interface 'eth' on linux, 'en' on osx. ip(); // '192.168.0.2' ipv6(); // 'fe80::7aca:39ff:feb0:e67d' mac(function (err, addr) { console.log(addr); // '78:ca:39:b0:e6:7d' }); // local loopback ip('lo'); // '127.0.0.1' // vboxnet MAC mac('vboxnet', function (err, addr) { console.log(addr); // '0a:00:27:00:00:00' }); ``` ### Get all addresses: IPv4, IPv6 and MAC - esm & typescript ```ts import { address } from 'address'; address((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', (err, addrs) => { console.log(addrs.ip, addrs.ipv6, addrs.mac); // '192.168.56.1', null, '0a:00:27:00:00:00' }); ``` - commonjs ```js const { address } = require('address'); address((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', (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 - esm & typescript ```ts import { getInterfaceAddress } from 'address'; getInterfaceAddress('IPv4', 'eth1'); // { address: '192.168.1.1', family: 'IPv4', mac: '78:ca:39:b0:e6:7d' } ``` - commonjs ```js const { getInterfaceAddress } = require('address'); getInterfaceAddress('IPv4', 'eth1'); // { address: '192.168.1.1', family: 'IPv4', mac: '78:ca:39:b0:e6:7d' } ``` ### Get DNS servers - esm & typescript ```js import { dns } from 'address'; dns((err, servers) => { console.log(servers); // ['10.13.2.1', '10.13.2.6'] }); ``` - commonjs ```js const { dns } = require('address'); dns((err, servers) => { console.log(servers); // ['10.13.2.1', '10.13.2.6'] }); ``` ### Promise style apis ```ts import { address, mac, dns } from 'address/promises'; const addr = await address(); const macAddress = await mac(); const servers = await dns(); ``` ## License [MIT](LICENSE.txt) ## Contributors |[
fengmk2](https://github.com/fengmk2)
|[
alsotang](https://github.com/alsotang)
|[
jkelleyrtp](https://github.com/jkelleyrtp)
|[
slyon](https://github.com/slyon)
|[
mariodu](https://github.com/mariodu)
|[
mathieutu](https://github.com/mathieutu)
| | :---: | :---: | :---: | :---: | :---: | :---: | [
zhangyuheng](https://github.com/zhangyuheng)
|[
semantic-release-bot](https://github.com/semantic-release-bot)
|[
coolme200](https://github.com/coolme200)
|[
whxaxes](https://github.com/whxaxes)
This project follows the git-contributor [spec](https://github.com/xudafeng/git-contributor), auto updated at `Fri Sep 22 2023 20:49:32 GMT+0800`.