| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Retrieve MAC addresses in Linux, OS X, and Windows.
A common misconception about MAC addresses is that every host had one MAC address, while a host may have multiple MAC addresses – since every network interface may have its own MAC address.
This library allows to discover the MAC address per network interface and chooses an appropriate interface if all you're interested in is one MAC address identifying the host system (see API + Examples below).
Features:
npm install --save macaddress
var macaddress = require('macaddress');(async) .one(iface, callback) → string
(async) .one(callback) → string
(async) .all(callback) → { iface: { type: address } }
(sync) .networkInterfaces() → { iface: { type: address } }
Retrieves the MAC address of the given iface.
If iface is omitted, this function automatically chooses an appropriate device (e.g. eth0 in Linux, en0 in OS X, etc.).
Without iface parameter:
macaddress.one(function (err, mac) {
console.log("Mac address for this host: %s", mac);
});→ Mac address for this host: ab:42:de:13:ef:37
With iface parameter:
macaddress.one('awdl0', function (err, mac) {
console.log("Mac address for awdl0: %s", mac);
});→ Mac address for awdl0: ab:cd:ef:34:12:56
Retrieves the MAC addresses for all non-internal interfaces.
macaddress.all(function (err, all) {
console.log(JSON.stringify(all, null, 2));
});{
"en0": {
"ipv6": "fe80::cae0:ebff:fe14:1da9",
"ipv4": "192.168.178.20",
"mac": "ab:42:de:13:ef:37"
},
"awdl0": {
"ipv6": "fe80::58b9:daff:fea9:23a9",
"mac": "ab:cd:ef:34:12:56"
}
}A useful replacement of os.networkInterfaces(). Reports only non-internal interfaces.
console.log(JSON.stringify(macaddress.networkInterfaces(), null, 2));{
"en0": {
"ipv6": "fe80::cae0:ebff:fe14:1dab",
"ipv4": "192.168.178.22"
},
"awdl0": {
"ipv6": "fe80::58b9:daff:fea9:23a9"
}
}| Back | FazBrowse Home | New Git URL |