Nach Hersteller basierend auf Mac-Adresse suchen?

15

Ich möchte die Möglichkeit, einen Hersteller anhand einer Mac-Adresse zu ermitteln, in eine Software integrieren. Durch das googeln von "Mac Address Lookup" und ähnlichem habe ich mehrere Websites bemerkt, die diese Korrelation herstellen, was darauf hindeutet, dass diese Datenquelle irgendwo verfügbar ist. Wo finde ich diese Datenquelle, die eine MAC-Adresse (Eingabe) mit einem Hersteller (Ausgabe) korreliert?

John R
quelle
Ich würde den Autoren einer solchen Software eine E-Mail schicken.
SpacemanSpiff

Antworten:

27

Die erste Hälfte (24 Bit) Ihrer Mac-Adresse wird als OUI (Organizationally Unique Identifier) bezeichnet und identifiziert das Unternehmen. Die Liste ist auf ieee.org verfügbar:

http://standards.ieee.org/develop/regauth/oui/oui.txt

Sie sind folgendermaßen formatiert:

00-03-93   (hex)        Apple Computer, Inc.
000393     (base 16)    Apple Computer, Inc.
                        20650 Valley Green Dr.
                        Cupertino CA 95014
                        UNITED STATES

Die Lücken zwischen aufeinanderfolgenden Hex-Nummern sind wahrscheinlich privat registrierte OUIs. Für diese gibt es keine offene Liste, aber ich habe in solchen Bereichen noch nie eine MAC-Adresse gefunden.

Bart De Vos
quelle
Eine Frage: Wie zuverlässig spiegeln Mac-Adressen, die normalerweise in der Hardware zurückgesetzt werden können, diese Datenbank wider?
Danny Staple
1
Es ist in der Tat ziemlich einfach, Ihre Mac-Adresse zu ändern. Es gibt jedoch keine Möglichkeit, es dann zu wissen. Daran können Sie nichts ändern.
Bart De Vos
@Danny: In 15 Jahren bin ich noch nie auf eine MAC-Adresse gestoßen, die geändert wurde. (oder zumindest, wenn der MAC nicht mit dem Hersteller übereinstimmt, nachdem wir den Artikel identifiziert haben). Es mag Branchen geben, in denen es typisch ist, dies zu ändern, aber in den meisten Fällen geschieht dies nie.
Joe H.
Ich dachte daran, weil ich in einer Umgebung gearbeitet habe, in der wir routinemäßig die MAC-Adresse ändern mussten und verschiedene Dinge verwenden mussten, um Kollisionen zu vermeiden / auf Kollisionen zu prüfen (nicht gut). Ich arbeite in Umgebungen mit normalerweise eingebetteten Geräten - entweder in der Entwicklung oder bei der Entwicklung / Integration. Manchmal kommt eine ganze Charge mit 1 MAC-Adresse.
Danny Staple
@JoeH. Ein häufiger Fall, von dem ich weiß, dass der MAC nicht mit dem Hersteller der Netzwerkkarte übereinstimmt, sind CARP-Schnittstellen auf * BSD-Betriebssystemen (die MAC-OUI ist 00: 00: 5E, IANA zugewiesen). Dies macht es ziemlich schwierig, den Hersteller zu bestimmen, wenn Sie nur über eine Netzwerkkonnektivität verfügen und keine Login- oder andere Möglichkeit, den MAC von der Netzwerkkarte selbst auszulesen. Auch die unscharfen Bits meines Speichers besagen, dass Sie auf Sun-Systemen, die die MAC-Adresse des EEPROM ("System-MAC-Adresse") verwenden, die OUI mit einer von Sun nicht genehmigten Hackerei des EEPROM ändern können.
voretaq7
20

Wie @Bart De Vos sagt, führt das IEEE die kanonische Liste der OUIs. Unter http://standards.ieee.org/develop/regauth/iab/iab.txt befindet sich außerdem eine Liste mit individuellen Adressblöcken (IAB) . Allerdings können Einträge privat registriert , was bedeutet , dass sie von weggelassen werden oui.txtund iab.txt. Das Wireshark-Entwicklungsteam führt eine viel umfassendere Liste:

https://code.wireshark.org/review/gitweb?p=wireshark.git;a=blob_plain;f=manuf

Wir ziehen Einträge aus den öffentlichen OUI- und IAB-Listen des IEEE, aus einzelnen Mitwirkenden und aus jeder anderen Quelle, die wir können.

Das Nmap-Team unterhält eine separate Liste unter http://nmap.org/svn/nmap-mac-prefixes .

Gerald Combs
quelle
-1

Vielleicht haben Sie mehr Glück, wenn Sie dies über die Hardware-ID herausholen, die viel spezifischer und schwerer zu fälschen ist

PCI\VEN_8086&DEV_10EA&SUBSYS_040A1028&REV_05

Sie sollten es über einen einfachen WMI-Aufruf an Win32_PnPSignedDriver erhalten können

Leider würde dies nur für Windows-basierte Maschinen funktionieren.

Matt Hamende
quelle
lspci gibt dir die gleichen Informationen über Linux
Julian