Получить MAC-адрес текущего компьютера с node.js

Материал из support.qbpro.ru
Версия от 21:30, 24 июля 2024; Vix (обсуждение | вклад) (Новая страница: «В NodeJS ≥ 0.11 адрес MAC для каждого сетевого интерфейса находится на выходе os.networkInterfaces(), например. 1. Пример: require('os').networkInterfaces() { eth0: [ { address: 'fe80::cae0:ebff:fe14:1dab', netmask: 'ffff:ffff:ffff:ffff::', family: 'IPv6', mac: 'c8:e0:eb:14:1d:ab', scopeid: 4, internal: false }, { address: '192.168.178....»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)

В NodeJS ≥ 0.11 адрес MAC для каждого сетевого интерфейса находится на выходе os.networkInterfaces(), например.

1. Пример:

require('os').networkInterfaces()

{ eth0: 
   [ { address: 'fe80::cae0:ebff:fe14:1dab',
       netmask: 'ffff:ffff:ffff:ffff::',
       family: 'IPv6',
       mac: 'c8:e0:eb:14:1d:ab',
       scopeid: 4,
       internal: false },
     { address: '192.168.178.22',
       netmask: '255.255.255.0',
       family: 'IPv4',
       mac: 'c8:e0:eb:14:1d:ab',
       internal: false } ] }

В NodeJS ≤ 0,10 вам нужно узнать собственные адреса mac, но есть пакеты, которые помогут вам в этом:
node-macaddress (отказ от ответственности: я я автор этого пакета).

2. Пример:

В режиме node ≥ 0.11 вам не требуется использовать асинхронную версию:

var addr = require('node-macaddress').one();

Поскольку вас обычно интересует только "macaddress хостов" (хотя нет такой вещи, как хост может иметь несколько сетевых интерфейсов,
каждый из которых имеет отдельный MAC-адрес), этот вызов даст вам именно это.