oui
oui copied to clipboard
CLI to look up MAC addresses for their vendor in the IEEE OUI database
oui
Look up MAC addresses for their vendor in the IEEE OUI database
The data used in this module comes from the IEEE OUI Data which is updated once a week on Sunday. The module is also able self-update on demand.
Installation
$ npm i oui
Example
var oui = require('oui');
console.log(oui('20:37:06:12:34:56'));
//=> Cisco Systems, Inc
//=> 80 West Tasman Drive
//=> San Jose CA 94568
//=> United States
console.log(oui.search('*Juniper Systems*'))
//=> [
//=> {
//=> oui: '0C0535',
//=> organization: 'Juniper Systems\n1132 W. 1700 N.\nLogan UT 84321\nUnited States'
//=> }
//=> ]
Installation (CLI)
$ npm install -g oui
Examples (CLI)
$ oui 20:37:06:12:34:56
Cisco Systems, Inc
80 West Tasman Drive
San Jose CA 94568
United States
$ oui --search cisco theory
OUI ORGANZATION ADDRESS COUNTRY
000C41 Cisco-Linksys LLC 121 Theory Dr. Irvine CA 92612
000F66 Cisco-Linksys LLC 121 Theory Dr. Irvine CA 92612
001217 Cisco-Linksys LLC 121 Theory Dr. Irvine CA 92612
001310 Cisco-Linksys LLC 121 Theory Dr. Irvine CA 92612
To update the local OUI database:
$ oui --update
Or from the original IEEE source (slow):
$ oui --update http://standards.ieee.org/develop/regauth/oui/oui.txt
API
oui(input, [options])
inputstring: The input string. Non-hexadecimal characters and characters after 6 hex characters are found are ignored unlessoptions.strictis set.optionsObject: A optional options object.strictboolean: Whentrue, only strict input formats will be accepted. Will throw an error when an invalid format is supplied.filestring: A absolute file path tooui.json, which contains the parsed oui data. Defaults to theoui.jsonin the module directory.
Returns: Either a string, or null if no matches are found. Throws if input is not a string.
oui.update([options])
optionsObject: A optional options object.urlstring: The URL from where to retrieveoui.txt. Default"https://standards-oui.ieee.org/oui/oui.txt".filestring: A absolute file path foroui.json, which is used to store the parsed oui data. Defaults to theoui.jsonin the module directory.
Returns: A Promise that indicates when the internal database has been updated. Rejects on error.
oui.search(patterns [, options])
patternsstring/Array: One or more wildcard patterns to search the vendor data, as supported by minimatch.optionsObject: A optional options object.fileString: A absolute file path foroui.json, which is used to store the parsed oui data. Defaults to theoui.jsonin the module directory.- All minimatch options are supported as well.
Returns a array of objects in the format {oui, organization}.
strict formats
00000000:00:0000-00-000000000000000000.0000.000000:00:00:00:00:0000-00-00-00-00-00
© silverwind, distributed under BSD licence