MAC/Adresse: Unterschied zwischen den Versionen
Zeile 95: | Zeile 95: | ||
[[Kategorie:OSI/2 Data Link]] | [[Kategorie:OSI/2 Data Link]] | ||
[[Kategorie:Netzwerk/Adresse]] | [[Kategorie:Netzwerk/Adresse]] | ||
= TMP = | |||
[[Datei:UMTS Router Surf@home II, o2-0017.jpg|mini|Aufkleber auf dem Boden eines [[UMTS-Router]]s, u. a. mit den MAC-Adressen für [[Local Area Network|LAN]] und [[Wireless Local Area Network|WLAN]]]] | |||
Die '''MAC-Adresse''' ([[Media Access Control|Media-Access-Control]]-Adresse, auch Media-Access-Code-Adresse<ref>{{RFC-Internet |RFC=4578 |Titel=Dynamic Host Configuration Protocol (DHCP) Options for the Intel Preboot eXecution Environment (PXE) |Datum=2006-11}}</ref>) ist die Nummer eines Gerätes auf einer Datenverbindung. Anhand dieser Nummer werden über die Verbindung laufende Daten den Geräten zugeordnet. | |||
Die '''MAC-Adresse''' ist die Hardware-Adresse jedes einzelnen [[Netzwerkkarte|Netzadapters]], die als eindeutiger [[Identifikator]] des Geräts in einem [[Rechnernetz]] dient. Man spricht auch von '''physischer Adresse'''<ref>Mark A. Dye, Rick McDonald, Antoon W. Rufi: ''Netzwerkgrundlagen: CCNA exploration companion guide.'' 2008, ISBN 3-8273-2685-0, S. 93 ({{Google Buch |BuchID=0bS195LOjNMC |Seite=93}})</ref> oder '''Geräteadresse'''.<ref>Wobei das auch als nur ein Teil davon gesehen werden kann: MAC-Adresse = Herstellercode + Geräteadresse; Frank Morkowsky: ''Grundlagen der Netzwerktechnik.'' 2015, ISBN 3-7347-7451-9, S. 20 ({{Google Buch |BuchID=5F5hBwAAQBAJ |SeitenID=PT20}})</ref> Bei [[Apple]] wird sie auch ''Ethernet-ID'', ''Airport-ID'' oder ''Wi-Fi-Adresse'' genannt. | |||
== Einzelheiten == | |||
=== Medium === | |||
Die in Rechnernetzen verwendeten Übertragungsmedien sind üblicherweise Kupferkabel ([[Twisted-Pair-Kabel]]), [[Lichtwellenleiter]] und Funk ([[Wireless Local Area Network|WLAN]]). Über das Übertragungsmedium werden in der [[Bitübertragungsschicht]] Bitsequenzen gesendet, die in der nächsthöheren Schicht ([[Sicherungsschicht]]) zu Frames zusammengefügt werden. Zur eindeutigen Adressierung von Rechnern auf der Leitungsschicht dient die MAC-Adresse. Jede Ethernet-, WLAN- oder Bluetooth-Netzwerkkarte besitzt solch eine eindeutige MAC-Adresse, unter der sie angesprochen werden kann. Obwohl sie effektiv nur in lokalen Netzen eine Bedeutung haben, sind MAC-Adressen üblicherweise global eindeutig und besitzen keinerlei Strukturmerkmale, die für die Wegewahl (Routing) genutzt werden können. | |||
{{Siehe auch|Ethernet#Ethernet-Medientypen}} | |||
=== Physische Adresse === | |||
Die MAC-Adresse wird auch als physische Adresse bezeichnet, weil er teilweise vom Hersteller in ein Gerät fest und nicht veränderbar einprogrammiert ist. Sofern Betriebssystem und Hardware dies unterstützen, kann die MAC-Adresse jedoch auch von dem Benutzer geändert werden. Dazu wird seit 2020 auf die [[Randomisierung]] von MAC-Adressen gesetzt, wie das seit [[Android 10]] oder [[iOS 14]] standardmäßig der Fall ist. Damit soll ein [[Nutzerverfolgung|Nachverfolgen]] von Nutzern verhindert werden, da dies ein [[Datenschutz]]risiko darstellt. | |||
=== Zugriffssteuerung (Access Control) === | |||
==== Zugriff vom Medium (Media Access Control) ==== | |||
Auf einem Funkkanal oder einem Koaxialkabel sind die Daten mehrerer Geräte unterwegs, die für verschiedene Empfänger bestimmt sind. Anhand der MAC-Adresse sucht der Empfänger die Daten heraus, die für das eigene Gerät bestimmt sind. Dazu beginnt jedes Datenpaket mit der MAC-Adresse des Empfängers. Passt die MAC-Adresse nicht, wird das Datenpaket nicht verarbeitet. | |||
Da die MAC-Adresse vom Hersteller in die Schaltung eingebaut wurde, ist die Schaltung unmittelbar nach dem Einschalten des Stromes betriebsbereit. Das Lesen des Mediums verbraucht keine Rechenzeit. Während der Übertragung von Datenpaketen mit unpassender MAC-Adresse können Teile des Empfängers abgeschaltet werden, um Strom zu sparen. | |||
Bei Ethernet, WLAN und ähnlichen Netzwerktechnologien steuert die MAC-Adresse nicht den schreibenden (sendenden) Zugriff auf das Medium. | |||
==== Zugriff auf das Netzwerk (Network Access Control) ==== | |||
Die MAC-Adresse kann benutzt werden, um Geräte zu identifizieren und den Zugriff auf ein Netz zu steuern. | |||
Jugendschutz: Im Heimnetz kann den Geräten der Kinder nachts der Zugriff auf das Netz entzogen werden. | |||
Spionageschutz: Im Unternehmen kann Geräten mit unbekannter MAC-Adresse der Zugriff auf das Firmennetz verweigert werden. | |||
Gastnetze: Sowohl im Heim als auch im Unternehmen können fremde Geräte mit speziellen Gastnetzen verbunden werden. | |||
Ein Zugriffsschutz anhand der MAC-Adresse ist begrenzt. Der Zugriff auf das (Funk-)Medium wird nicht unterbunden. So können die im Heimnetz ausgesperrten Kinder u. U. das Netz eines Nachbarn benutzen. | |||
Wenn ein Gerät die Änderung der MAC-Adresse erlaubt, können Sperren umgangen werden. | |||
Um die Anonymität eines Gerätes zu verbessern, benutzen manche Geräte eine MAC-Adresse, die vollständig oder zum Teil aus Zufallszahlen besteht und gelegentlich gewechselt wird. Damit ist die Identifikation eines Gerätes anhand der MAC-Adresse nicht mehr gegeben. Nach dem Wechsel der MAC-Adresse muss das Gerät in den Netzwerken, die nur bekannte Geräte bedienen, erneut bekannt gemacht werden. | |||
=== Code === | |||
In einer MAC-Adresse sind folgende Angaben kodiert: | |||
* Ist die Adresse eindeutig einem Gerät zugeordnet oder betrifft sie mehrere Geräte (Multicast, Broadcast), siehe unten [[#Empfängergruppe|Empfängergruppe]] | |||
* Ist die Adresse weltweit eindeutig koordiniert oder wurde sie unkoordiniert vergeben, siehe unten [[#Vergabestelle|Vergabestelle]] | |||
* Bei den koordinierten Adressen ist der Hersteller enthalten, siehe unten [[#Herstellerkennungen|Herstellerkennungen]] | |||
* Der Hersteller kann in der MAC-Adresse die Seriennummer des Gerätes einbringen | |||
== Funktion im Netzwerk == | |||
Die MAC-Adresse wird der [[Sicherungsschicht]] (Schicht 2) des [[OSI-Modell]]s zugeordnet; im vom [[Institute of Electrical and Electronics Engineers|IEEE]] erweiterten OSI-Modell wird sie der Unterschicht [[Media Access Control]] (Schicht 2a) zugeordnet. Um die Sicherungsschicht mit der nächsthöheren Schicht, der [[Vermittlungsschicht]], zu verbinden, wird z. B. bei [[Ethernet]] das [[Address Resolution Protocol]] im Rahmen von [[IPv4]] verwendet. Im [[IPv6]] übernimmt ein neues Protokoll diese Funktion, das [[Neighbor Discovery Protocol]] (NDP). | |||
Netzwerkgeräte brauchen dann eine MAC-Adresse, wenn sie auf Schicht 2 explizit adressiert werden sollen, um Dienste auf höheren Schichten anzubieten; leitet das Gerät dagegen wie ein [[Repeater]] oder [[Hub (Netzwerktechnik)|Hub]] die Netzwerkpakete nur weiter, so ist es auf der Sicherungsschicht nicht sichtbar und braucht folglich keine MAC-Adresse. | |||
[[Bridge (Netzwerk)|Bridges]] und [[Switch (Netzwerktechnik)|Switches]] untersuchen zwar die Pakete der Sicherungsschicht, um das Netzwerk in mehrere [[Kollisionsdomäne]]n aufzuteilen, nehmen aber selbst nicht aktiv an der Kommunikation teil, brauchen also für diese Basisfunktionen ebenfalls keine MAC-Adresse. Ein Switch benötigt jedoch eine MAC-Adresse, wenn er selbst über das Rechnernetz administriert wird oder [[Netzwerk-Monitoring|Monitoring]]-Dienste anbietet (z. B. über [[Telnet]], [[Simple Network Management Protocol|SNMP]] oder [[Hypertext Transfer Protocol|HTTP]]). Eine MAC-Adresse wird ebenfalls benötigt, wenn Bridges oder Switches den [[Spanning Tree Protocol|Spanning-Tree-Algorithmus]] zur Vermeidung von Schleifen in [[Redundanz (Technik)|redundant]] ausgelegten Rechnernetzen verwenden. | |||
== Form (Syntax) == | |||
Im Falle von [[Ethernet]]-Netzen besteht die MAC-Adresse aus 48 [[Bit]] bzw. sechs [[Byte]]s. Die Adressen werden in der Regel [[Hexadezimalsystem|hexadezimal]] geschrieben. | |||
Üblich ist dabei eine byteweise Schreibweise, wobei die einzelnen Bytes durch Bindestriche oder Doppelpunkte voneinander getrennt werden, z. B. | |||
* <code>00-80-41-ae-fd-7e</code> | |||
* <code>008041-aefd7e</code> oder | |||
* <code>00:80:41:ae:fd:7e</code>. | |||
Seltener zu finden sind Angaben wie | |||
* <code>008041aefd7e</code> oder | |||
* <code>0080.41ae.fd7e</code>. | |||
Die Reihenfolge der Zeichen ist allerdings nicht bei allen Anwendungen gleich. Man unterscheidet hier zwischen der kanonischen und der „Bit-reversed“-Darstellung. Die kanonische Form wird für Darstellungen bevorzugt. | |||
=== Kanonische Darstellung === | |||
Die übliche Darstellung von MAC-Adressen, wie sie beispielsweise in der Ausgabe von [[ipconfig]]/[[ifconfig]] erscheint, wird auch als ''kanonisches Format'' („canonical form“, „LSB format“ bzw. „Ethernet format“) bezeichnet. Es gibt die Reihenfolge an, in der die Adresse in [[Ethernet|IEEE 802.3]] (Ethernet) und [[Token Bus|IEEE 802.4]] (Token Bus) übertragen wird. Hier startet die Übertragung mit dem niederwertigsten Bit (''[[Least Significant Bit]]'', LSB) eines [[Oktett (Informatik)|Oktetts]] (Ausnahme ist die ''[[Frame Check Sequence]]'', FCS). | |||
=== Bit-reversed-Darstellung === | |||
[[Token Ring|IEEE 802.5]] (Token Ring) und [[IEEE 802.6]] starten die Übertragung mit dem höchstwertigen Bit (MSB, [[Bitwertigkeit|most significant bit]]). Dies kann leicht zu Missverständnissen führen, wenn nicht angegeben wird, ob von der kanonischen Darstellung in normaler Bytedarstellung oder von der umgekehrten Bitübertragungsdarstellung die Rede ist. Eine Adresse, deren kanonische Form beispielsweise <code>12-34-56-78-9A-BC</code> ist, wird bei der Übertragung mit LSB zuerst (heißt: von rechts nach links gelesen) auf der Leitung in Form der | |||
Bitfolge <code>01001000 00101100 01101010 00011110 01011001 00111101</code> übertragen. | |||
In Token-Ring-Netzwerken (MSB zuerst, heißt: von links nach rechts gelesen, also natürlichsprachlich) würde die Übertragung in Form der | |||
Bitfolge <code>00010010 00110100 01010110 01111000 10011010 10111100</code> stattfinden. | |||
Wenn dies bei der Umsetzung der Bitfolgen in die kanonische Darstellung nicht konsistent beachtet wird, kann z. B. die letztere Darstellung fälschlicherweise als <code>48-2C-6A-1E-59-3D</code> (LSB zuerst) interpretiert werden. | |||
Die Darstellung in Token-Ring-Netzwerken wird dann aber als „Bit-reversed order“, „Non-canonical form“, „MSB format“, „IBM format“, oder „Token Ring format“ wie in <nowiki>RFC 2469</nowiki><ref>{{RFC-Internet |RFC=2469 |Titel=A Caution On The Canonical Ordering Of Link-Layer Addresses |Datum=1998-12}}</ref> aufgeführt bezeichnet. | |||
== Funktion == | |||
[[Datei:Ethernet MAC.png|mini|500px|MAC-Adressen in einem Ethernet-Typ-II-Frame]] | |||
In jedem Frame nach Ethernet-II-Variante wird vor dem Typfeld und den Daten zunächst die MAC-Adresse des Empfängers und des Senders übertragen. Empfänger und Sender müssen Teil des [[Local Area Network]]s (LAN) sein. Soll ein Paket in ein anderes Netz geschickt werden, wird es auf Ethernet-Ebene zunächst an einen [[Router]] geschickt. Dieser analysiert die Daten auf der untergeordneten Schicht und vermittelt das Paket dann weiter. Er erzeugt dazu einen neuen Ethernet-Frame, wenn es sich bei dem Nachbarnetz ebenfalls um ein Ethernet handelt. Dazu ersetzt ein Router die MAC-Adressen, d. h. wenn Router R1 ein Ethernet-Frame empfängt und es an den Router R2 weitergeben soll, ersetzt R1 die Quelladresse mit seiner eigenen MAC-Adresse und die Zieladresse mit der Mac-Adresse von R2. | |||
=== Pseudo-Empfänger „Broadcast-Adresse“ === | |||
[[Datei:Ethernet Broadcast MAC.png|mini|500px|Ethernet-Broadcast-Frame]] | |||
Die MAC-Adresse, bei der alle 48 Bits auf 1 gesetzt sind (<code>ff-ff-ff-ff-ff-ff</code>), wird als [[Broadcast]]-Adresse verwendet, die an alle Geräte in einem LAN gesendet wird. Broadcast-Frames werden ohne besondere Maßnahmen nicht in ein anderes LAN übertragen. | |||
=== Besondere Kennungen === | |||
[[Datei:09 Ethernet-MAC-Adresse.png|mini|Aufbau einer MAC-Adresse]] | |||
==== Empfängergruppe ==== | |||
Das [[Bitwertigkeit|niederwertigste Bit]] (engl. ''Least Significant Bit'', ''LSB'') des ersten Bytes (Bit 0) einer MAC-Adresse gibt an, ob es sich um eine Einzeladresse oder Gruppenadresse (I/G für Individual/Group) handelt. Bei einem Broadcast oder [[Multicast]] wird I/G = 1 gesetzt, sonst und bei Quelladressen ist I/G = 0. | |||
Kurz: I/G ist | |||
* 0 für I (Individual) oder | |||
* 1 für G (Group). | |||
Die meisten Protokolle, welche auf OSI Layer 2 arbeiten, haben besondere MAC-Adressen, sogenannte MAC-Multicast-Adressen. Das [[VLAN Trunking Protocol]] beispielsweise verwendet die Adresse 01-00-0C-CC-CC-CC.<ref>[http://www.cisco.com/en/US/tech/tk389/tk689/technologies_tech_note09186a0080094c52.shtml VTP reference.] cisco.com</ref> Dadurch ist ein Frame an alle [[Switch (Netzwerktechnik)|Switches]] gleichzeitig adressiert. Es gibt auch ganze Gruppen von MAC-Multicast-Adressen: Das [[TRILL]]-Protokoll beispielsweise verwendet unter anderem 01-80-C2-00-00-00 bis 01-80-C2-00-00-0F.<ref>{{RFC-Internet |RFC=6325 |Titel=Routing Bridges (RBridges): Base Protocol Specification |Datum=2011-07 |Autor=R. Perlman, D. Eastlake 3rd, D. Dutt, S. Gai, A. Ghanwani}}</ref> Auch andere Protokolle besitzen besondere, fest zugewiesene, MAC-Adressen. | |||
==== Vergabestelle ==== | |||
Das folgende 2. Bit (Bit 1, genannt U/L für Universal/Local) zeigt an, ob die MAC-Adresse global eindeutig ist ([[Universally Administered Address]] (UAA); U/L = 0) oder lokal administriert wird und nur dort eindeutig ist ([[Locally Administered Address]] (LAA); U/L = 1).<ref>{{cite web|url=http://www.ieee802.org/secmail/pdfocSP2xXA6d.pdf|title=Std 802-2001 – IEEE Standard for Local and Metropolitan Area Networks: Overview and Architecture|date=2002-02-07|accessdate=2010-07-09|publisher=IEEE (The Institute of Electrical and Electronics Engineers, Inc.)|pages=21|language=Englisch|quote=The Universally or Locally administered (U/L) address bit is the bit of octet 0 adjacent to the I/G address bit. This bit indicates whether the address has been assigned by a local or universal administrator. Universally administered addresses have this bit set to 0. If this bit is set to 1, the entire address (i. e., 48 bits) has been locally administered.}}</ref> | |||
Kurz: U/L ist | |||
* 0 für U (Universal) oder | |||
* 1 für L (Local). | |||
Die folgenden Adressbereiche sind lokal und können z. B. für virtuelle Maschinen verwendet werden: | |||
x2:xx:xx:xx:xx:xx | |||
x6:xx:xx:xx:xx:xx | |||
xA:xx:xx:xx:xx:xx | |||
xE:xx:xx:xx:xx:xx | |||
=== Herstellerkennungen === | |||
{| class="wikitable float-right" | |||
|+ Herstellercodes von MAC-Adressen (Auswahl) | |||
| <code>00-50-8B-xx-xx-xx</code> || [[Compaq]] | |||
|----- | |||
| <code>00-07-E9-xx-xx-xx</code> || [[Intel]] | |||
|----- | |||
| <code>00-60-2F-xx-xx-xx</code> || [[Cisco Systems|Cisco]] | |||
|----- | |||
| <code>00-15-F2-xx-xx-xx</code> || [[Asus]] | |||
|} | |||
In den nächsten 22 Bits (Bit 2 bis 23) wird eine von der [[Institute of Electrical and Electronics Engineers|IEEE]] vergebene Herstellerkennung (auch '''OUI''' – '''O'''rganizationally '''U'''nique '''I'''dentifier genannt) beschrieben, die weitgehend in einer Datenbank einsehbar sind.<ref>{{Internetquelle |url=https://regauth.standards.ieee.org/standards-ra-web/pub/view.html#registries |titel=IEEE Registration Authority: Assignments, Abfrage der Hersteller-OUI |sprache=en |abruf=2022-10-26}}</ref> Die verbleibenden 24 Bits (Bit 24 bis 47) werden vom jeweiligen Hersteller für jede Schnittstelle individuell festgelegt. Compaq zum Beispiel hat eine OUI mit der Adresse 00-50-8b. Innerhalb dieser OUI darf Compaq alle verfügbaren Adressen verwenden, also 00-50-8b-xx-xx-xx. Es ergeben sich 2<sup>24</sup> = 16777216 (16,8 Millionen) individuelle Adressen. | |||
Neben der OUI existieren zwei kleinere Adressbereiche: | |||
* ein OUI-28, oder MAC Address Block Medium (MA-M), bestehend aus 28 Bits<ref>[https://standards.ieee.org/develop/regauth/oui28/index.html Registration Authority. MA-M.] IEEE (englisch); abgerufen am 30. Oktober 2014.</ref> | |||
* ein OUI-36, oder MAC Address Block Small (MA-S), bestehend aus 36 Bits<ref>[https://standards.ieee.org/develop/regauth/oui36/index.html Registration Authority. MA-S.] IEEE (englisch); abgerufen am 30. Oktober 2014.</ref> | |||
Diese sind für Privatpersonen und kleinere Firmen und Organisationen vorgesehen, die nicht so viele Adressen benötigen. Die OUI-36 Adresse beginnt mit 36 Bits, die für eine Organisation vergeben werden. Damit verbleibt der Adressbereich innerhalb der Bits 11 bis 0 nutzbar, wodurch 2<sup>12</sup> = 4096 individuelle Adressen möglich sind. Die MA-M werden durch 28 Bits eindeutig gekennzeichnet und ergeben mit den restlichen 20 Bits: 2<sup>20</sup> = 1.048.576 individuelle Adressen nach [[EUI-48]]. Mehr Geräte können adressiert werden, wenn [[EUI-64]] verwendet wird. | |||
Die Adressen der Schnittstellen jedes netzwerkfähigen Geräts sollten theoretisch weltweit eindeutig vorbelegt sein (es sind aber schon Einzelfälle bekannt geworden, bei denen zwei Netzwerkkarten im selben Netzwerk identische MAC-Adressen besaßen, was zu zunächst völlig unerklärlichen Fehlern führte). Dies kann zur automatischen Konfiguration von Geräten eingesetzt werden und wird von Protokollen wie [[Reverse Address Resolution Protocol|RARP]], [[Bootstrap Protocol|BOOTP]] und [[Dynamic Host Configuration Protocol|DHCP]] genutzt. Die Software unterstützt es jedoch auch häufig, jeden beliebigen Wert als MAC-Adresse verwenden zu können. Dies wird zum Beispiel bei Backup-Systemen genutzt, wo Ersatzgeräte die MAC-Adresse eines ausgefallenen Geräts übernehmen können. | |||
Manche [[Software]] verwendet die MAC-Adresse der ersten Netzwerkkarte zur Identifikation des Rechners, auf dem lizenzierte Programme ausgeführt werden dürfen. Auch die Berechnung einer universellen Identifikation ([[Universally Unique Identifier|UUID]] oder [[Globally Unique Identifier|GUID]]) verwendet neben anderen Teilen diese MAC-Adresse. Da die MAC-Adresse geändert werden kann, raten Sicherheitsexperten allerdings davon ab, die MAC-Adresse als alleiniges Authentifizierungskriterium zu verwenden. | |||
=== Herstellerunabhängige Kennungen === | |||
Neben der Broadcast-Adresse <code>FF-FF-FF-FF-FF-FF</code>, die alle Geräte in einem lokalen Netzwerk adressiert, werden für IPv4-[[Multicast]] MAC-Adressen im Bereich <code>01-00-5e-00-00-00</code> bis <code>01-00-5e-7f-ff-ff</code> verwendet. Dabei werden dann die unteren 23 Bit der IP-Multicast-Adresse direkt auf die untersten 23 Bit der MAC-Adresse abgebildet. Der [[IP-Adresse|IP-Multicast-Adresse]] 224.0.0.1 ist somit die Multicast-MAC-Adresse <code>01-00-5e-00-00-01</code> fest zugeordnet. | |||
Neben den obersten vier Bit, die bei IPv4-Multicast-Adresse stets 1110 sind, verbleiben 5 Bits der IP-Adresse, die nicht in der MAC-Multicast-Adresse abgebildet werden können. Dadurch ist es möglich, dass ein Host MAC-Multicast-Pakete einer Multicast-Gruppe empfängt, zu der er nicht gehört. Diese Pakete werden dann von der IP-Schicht verworfen, da dort die Erkennung auf Basis der IP-Multicast-Adresse möglich ist. | |||
Für [[IPv6]]-Multicast wurde der MAC-Adressbereich 33-33-xx-xx-xx-xx reserviert. Dabei werden die untersten 32 Bit der IPv6-Multicast-Adresse in die MAC-Adresse eingebettet. | |||
Für hochverfügbare logische Router nach [[Virtual Router Redundancy Protocol|VRRP]] ist die herstellerunabhängige Kennung <code>00-00-5E-00-01-''ID''</code> (im Bereich <code>00-00-5E</code>) reserviert, wobei das letzte Byte ''ID'' für die Kennung des virtuellen Routers steht.<ref>{{RFC-Internet |RFC=3768 |Titel=Virtual Router Redundancy Protocol (VRRP) |Datum= |Abschnitt=7.3 |Abschnittstitel=Virtual Router MAC Address}}</ref> Sie bleibt gleich, selbst wenn ein anderer Router den Dienst übernimmt. | |||
==== Stolperfalle: Kennzeichnung „PRIVATE“ ==== | |||
Die Herstellerkennungen, die – wie zum Beispiel <code>AC-DE-48</code><ref>{{Internetquelle |url=http://standards-oui.ieee.org/oui/oui.txt |titel=Public OUI listing |hrsg=IEEE |abruf=2018-09-13}}</ref> – in der OUI-Datenbank als „PRIVATE“ gekennzeichnet wurden, sind für Firmen registriert, die ihre Identität nicht öffentlich preisgeben wollen. Adressen aus diesen Bereichen können daher nicht, wie man vermuten würde, für lokale Zwecke eingesetzt werden. (Für lokale Zwecke wird das unter „[[#Vergabestelle|Vergabestelle]]“ beschriebene „U/L address bit“ verwendet.) | |||
== Ermittlung und Vergabe == | |||
Häufig steht die MAC-Adresse, zum Teil in der [[Seriennummer]] integriert, auf dem Gerät oder der Netzwerkkarte. Daneben kann man sie per Software auslesen, üblicherweise mit der im Gerät eingebauten [[Firmware]] / [[BIOS]]. Seit Jahrzehnten werden zusätzliche [[Computerprogramm|Programme]] entwickelt, um sie anzuzeigen oder zu ändern. Die Entwicklungen sind nicht abgeschlossen. Eine Auswahl zeigt die folgende Tabelle: | |||
{| class="wikitable" | |||
|- | |||
! Betriebssystem | |||
! Auslesen (im eigenen System) | |||
! Auslesen (in einem fremden System) | |||
! Vergabe | |||
|- | |||
|[[AROS (Betriebssystem)|AROS]], [[MorphOS]] || <code>ifconfig -a</code> || <code>arp -a</code> || | |||
|- | |||
|[[AIX]] || <code>netstat -ia</code> || <code>arp -a</code> || | |||
|- | |||
|style="vertical-align:top"| [[Android (Betriebssystem)|Android]] || <code>Einstellungen → Telefoninfo → Statusinformationen</code> || || | |||
|- | |||
|[[bada (Betriebssystem)|bada]] || <code>Einstellungen → Telefoninfo → Systeminfo</code> || || | |||
|- | |||
|[[FreeBSD]] || <code>[[ifconfig]]</code> || <code>arp -a</code> || <code>ifconfig ''<Interface>'' link ''<MAC-Adresse>''</code> | |||
|- | |||
|[[HP-UX]] || <code>lanscan</code> || || <code>lanadmin -A ''0x<MAC-Adresse>''</code> | |||
|- | |||
|style="vertical-align:top"| [[iOS (Betriebssystem)|Apple iOS]] || <code>Einstellungen → Allgemein → Info → Wi-Fi-Adresse</code> || || ''offiziell nicht möglich'' | |||
|- | |||
|[[Internetwork Operating System|IOS (Cisco)]] || <code>show interfaces</code> || || <code>configure<br />interface <type> <number> <br />mac-address <H.H.H><br />end</code> | |||
|- | |||
|[[IRIX]] || <code>netstat -ia</code> || <code>arp -a</code> || <code>ifconfig ''<Interface>'' ether ''<MAC-Adresse>''</code> | |||
|- | |||
|style="vertical-align:top"| [[Linux]]<br />[[Programmpaket|Paket]] <code>net-tools</code> | |||
| <code>[[ifconfig]]</code> | |||
| <code>arp -a</code> | |||
| Bei einigen Netzwerkkarten funktioniert es nur im [[Promiskuitiver Modus|Promiscuous Mode]] richtig, also<br /> | |||
<code>ifconfig ''<Interface>'' promisc</code><br /> | |||
Anschließend:<br /> | |||
<code>ifconfig ''<Interface>'' hw ether ''<MAC-Adresse>''</code> | |||
|- | |||
|style="vertical-align:top"| [[Linux]]<br />Paket <code>iproute2</code> | |||
|<code>ip link</code> | |||
|<code>ip neigh</code> | |||
|<code>ip link set dev ''<Interface>'' addr ''<MAC-Adresse>''</code> | |||
|- | |||
|style="vertical-align:top"| [[Linux]]<br />Paket <code>macchanger</code> | |||
|<code>macchanger --show</code> | |||
| | |||
|<code>macchanger --mac ''<MAC-Adresse>'' ''<Interface>''</code> | |||
|- | |||
|style="vertical-align:top"| [[OS X|Mac OS X]] | |||
| <code>ifconfig</code><br /> | |||
| <code>arp -a</code> | |||
| <code>ifconfig ''<Interface>'' ether ''<MAC-Adresse>''</code><br /> oder:<br /> | |||
<code> ifconfig ''<Interface>'' lladdr ''<MAC-Adresse>''</code><br /> oder: <code>/System/Library/PrivateFrameworks/Apple80211.framework/Resources/airport --mac=''<MAC-Adresse>''</code><br /> für AirPort Extreme (802.11n) WLAN<br /> (beide Methoden funktionieren nicht für alle Modelle)<br /> für Leopard (OS X 10.5) <code>/System/Library/PrivateFrameworks/Apple80211.framework/Resources/airport -z; sudo ifconfig ''<dev>'' lladdr ''<MAC-Adresse>''</code> | |||
|- | |||
|[[NetBSD]] || <code>ifconfig -a</code> || <code>arp -a</code> || <code>ifconfig ''<Interface>'' link ''<MAC-Adresse>'' activate</code> | |||
|- | |||
|[[NeXTStep]] || <code>ifconfig -a</code> || || | |||
|- | |||
|style="vertical-align:top"| [[S60|Nokia S60]] | |||
| <code>*#MAC0WLAN#</code> (als [[Buchstabenwahl|Vanity-Code]]) ''oder''<br /> | |||
<code>*#62209526#</code><br /> | |||
(im Standby-Bildschirm bzw. in der Rufnummernwahl eingeben) | |||
| | |||
| | |||
|- | |||
| [[OpenBSD]] || <code>ifconfig -a</code> || <code>arp -a</code> || <code>ifconfig ''<Interface>'' lladdr ''<MAC-Adresse>''</code> | |||
|- | |||
| [[OpenVMS]] || <code>tcpip show interface /full</code> || <code>tcpip show arp</code> || | |||
|- | |||
| [[OS/2]] || <code>netstat -n</code> || || über LAPS/MPTS | |||
|- | |||
| [[SCO Unix]] || <code>ndstat</code> || || | |||
|- | |||
|style="vertical-align:top"| [[Solaris (Betriebssystem)|Solaris]] | |||
| | |||
; 8,9,10,11 <code>ifconfig -a</code> | |||
: (man muss als root eingeloggt sein, ansonsten wird die MAC-Adresse nicht angezeigt) | |||
; 11 | |||
: zusätzlich alternativ mit <code>dladm show-phys -m</code> oder <code>dladm show-linkprop -p mac-address</code> | |||
|<code>arp -a</code> | |||
|style="vertical-align:top"| | |||
; 8,9,10,11 | |||
: <code>ifconfig ''<Interface>'' ether ''<MAC-Adresse>''</code> | |||
; 11 | |||
: <code>dladm set-linkprop -p mac-address=''<MAC-Adresse>'' ''<Interface>''</code> | |||
|- | |||
| [[Tru64 UNIX]] || <code>netstat -ia</code> || || | |||
|- | |||
|style="vertical-align:top"| [[Microsoft Windows|Windows]]<ref>[http://support.microsoft.com/kb/141698 Verwendung von „Winipcfg“ zum Einsehen von TCP/IP-Einstellungen.] MicrosoftTechNet.</ref><ref>[http://technet.microsoft.com/en-us/library/bb490890.aspx Command-line reference A–Z.] MicrosoftTechNet (englisch).</ref> | |||
| | |||
; 95, 98, ME | |||
: <code>winipcfg</code> | |||
; Ab Windows 2000 | |||
: <code>[[ipconfig]] /all</code> | |||
; ab ''XP Professional Edition'' und Nachfolgern | |||
: <code>getmac /v</code> (Aneinanderreihung aller MAC-Adressen, z. B. Funk und Kabel) | |||
| | |||
# <code>ping ''<IP-Adresse>''</code> | |||
# <code>arp -a</code> | |||
; mit ''XP Professional Edition'' auch | |||
: <code>getmac /s ''<IP-Adresse/Name>''</code> | |||
; unter ''Vista Home (64-bit)'' und höher funktioniert es ebenfalls, Details über | |||
: <code>getmac /?</code> | |||
| | |||
; in der [[Windows-Registrierungsdatenbank]]<ref>{{Webarchiv |url=http://www.fics.ro/Change_MAC_w98.htm |text=''MAC Address Spoofing for Windows 98/ME''. |wayback=20080408074101 |archiv-bot=2022-03-21 21:02:44 InternetArchiveBot}} fics.ro (englisch).</ref><ref>[http://www.libe.net/themen/MAC_Adresse_softwaremaessig_aendern_.php ''MAC Address Spoofing für Windows 2000/XP''.] libe.net</ref> | |||
# <code>regedit</code> | |||
#; 95, 98, ME | |||
#: <code>HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Net</code> | |||
#; 2000, XP | |||
#: <code>HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}</code> | |||
# <code>(xxxx)</code> <sub>(Passenden Schlüssel z. B. anhand von Unterschlüssel ''DriverDesc'' heraussuchen)</sub> | |||
# MAC-Adresse ohne Trennzeichen in den (neuen) Zeichenfolge-Schlüssel ''NetworkAddress'' eintragen | |||
#; 95, 98, ME | |||
#: System neustarten | |||
#; 2000, XP | |||
#: Netzwerkverbindung neustarten | |||
; in der [[Systemsteuerung]] | |||
: Manche [[Gerätetreiber]] ermöglichen es, die MAC-Adresse über die Hardware-Eigenschaften (Gerätemanager) zu verändern. | |||
|- | |||
|style="vertical-align:top"| [[Windows Mobile 5.0]] (Pocket PC) | |||
| | |||
: <code>Start → Einstellungen → Verbindungen → Drahtlos-LAN → Erweitert</code> | |||
| | |||
| | |||
|- | |||
|style="vertical-align:top"| [[Microsoft Windows Phone 7|Windows Phone 7]] (Ab Version 7.0.7389.0) | |||
| | |||
: <code>Einstellungen → Info → Weitere Informationen</code> | |||
| | |||
| | |||
|} | |||
== Erwerb eines eigenen MAC-Adressraumes == | |||
Auf einer Webseite des IEEE<ref>[http://standards.ieee.org/products-programs/regauth/oui/ Preisliste.] IEEE (englisch).</ref> können Preise für die Registrierung eigener MAC-Adressbereiche eingesehen werden. Für einen eigenen ''MAC Address Block'' werden zwischen 830 und 3275 US-Dollar verlangt (Stand: 1. August 2023). Gegen eine zusätzliche jährliche Gebühr kann man diesen Adressbereich auch geheim halten; er ist dann anderen nicht bekannt und man wird nicht in einer öffentlichen Datenbank eingetragen. | |||
== Weitere Verwendung == | |||
Häufig wird die MAC-Adresse als Zugangsschutz ([[MAC-Filter]]) für [[Local Area Network|LANs]] und WLANs verwendet. Wegen der leichten Änderungsmöglichkeit von MAC-Adressen bietet ein MAC-Filter jedoch nur schwachen Schutz und kann leicht durch [[MAC-Filter#MAC-Spoofing|MAC-Spoofing]] ausgehebelt werden. | |||
== Weblinks == | |||
* {{Internetquelle | |||
|url=http://standards-oui.ieee.org/oui/oui.csv | |||
|titel=Aktuelle OUI-Liste (CSV-Format) | |||
|werk=standards-oui.ieee.org | |||
|abruf=2018-12-21}} | |||
* {{RFC-Internet |RFC=2469 |Titel=A Caution On The Canonical Ordering Of Link-Layer Addresses |Datum=1998-12}} | |||
[[Kategorie:Mobilfunktechnik]] | |||
[[Kategorie:Netzwerkarchitektur]] | |||
</noinclude> | </noinclude> |
Version vom 12. Januar 2024, 10:13 Uhr
topic - Kurzbeschreibung
Beschreibung
- IEEE 802.3 MAC-Adresse (48 Bit)
- Bei der Abbildung der 48 Bit langen IEEE 802.3 auf die 64 Bit langen IPv6-Interface ID Adresse, führt der Weg über die Abbildung auf eine IEEE EUI-64 Adresse [RFC2464].
- Dazu werden die ersten drei Oktette der IEEE 802.3 MAC-Adresse (OUI = Organizational Unique Identfier) in die IEEE EUI-64 Adresse übernommen.
- In das vierte und das fünfte Oktett wird die Zahlen FF16 und FE16 eingefügt.
- Die letzten 3 Oktette der IEEE 802.3 MAC-Adresse werden zu den letzten drei Oktetten der IEEE EUI-64 Adresse. Zusätzlich wird auch das u-Bit invertiert.
Adresse | 0–7 | 8–15 | 16–23 | 24–31 | 32–39 | 40–47 |
---|---|---|---|---|---|---|
MAC-Adresse (48 Bit) | cccc ccUG | cccc cccc | cccc cccc | xxxx xxxx | xxxx xxxx | xxxx xxxx |
- Jede Netzwerkkarte hat eine NetzwerkHardware-AdresseMAC Adresse eindeutige, einmalige vom Herstellerfestgelegt 48-Bit-Numme
- Zieladresse identifiziert die Netzwerkstation welche Daten empfangen soll (den Empfänger).
- Die Quelladresse identifiziert den Sender.
- Diese Adresse kann auch eine Multicast- oder Broadcast-Adresse sein.
- Gekaufte Netzwerkkarten haben eine weltweit eindeutige MAC-Adresse, die global von einem Konsortium und der Herstellerfirma verwaltet wird.
Ziel- und Quell-MAC-Adresse
Aufbau
In jedem Frame nach Ethernet-II-Variante wird vor dem Typfeld und den Daten zunächst die MAC-Adresse des Empfängers und des Senders übertragen. Empfänger und Sender müssen Teil des Local Area Network LAN sein.
- Jede MAC-Adresse der beiden Felder (Ziel/Quelle) hat eine Länge von sechs Bytes (48 Bit).
- Zwei Bit der MAC-Adresse werden zu ihrer Klassifizierung verwendet.
- MAC-Adressen werden traditionell als Abfolge von sechs zweistelligen Hex-Zahlen dargestellt, die mit Doppelpunkten getrennt sind, z. B. als „08:00:01:EA:DE:21“, was der Übertragungsreihenfolge am Medium entspricht.
- Die einzelnen Bytes werden beginnend mit dem LSB (least significant bit) gesendet.
Herstellerkennungen
00-50-8B-xx-xx-xx |
Compaq |
00-07-E9-xx-xx-xx |
Intel |
00-60-2F-xx-xx-xx |
Cisco |
00-15-F2-xx-xx-xx |
Asus |
In den nächsten) wird eine von der (IEEE) vergebene Herstellerkennung (auch OUI – Organizationally Unique Identifier genannt) beschrieben, die weitgehend in einer Datenbank einsehbar sind der Herstellerkennungen in der OUI-Datenbank bei der IEEE
Pseudo-Empfänger „Broadcast-Adresse“
Die MAC-Adresse, bei der alle 48 Bit auf 1 gesetzt sind (ff-ff-ff-ff-ff-ff
), wird als Broadcast-Adresse verwendet, die an alle Geräte in einem LAN gesendet wird. Broadcast-Frames werden ohne besondere Maßnahmen nicht in ein anderes LAN übertragen.
Klassifizierung
- Das erste übertragene Bit (Bit 0 des ersten Bytes) entscheidet, ob Unicast- (0) oder Broadcast-/Multicast-Adresse (1).
- Das zweite übertragene Bit (Bit 1 des ersten Bytes) entscheidet, ob die restlichen 46 Bit der MAC-Adresse global (0) oder lokal (1) administriert werden.
- Man kann jederzeit individuelle MAC-Adressen wählen und den meisten Netzwerkkarten über die Treiberkonfiguration zuweisen, in denen man für das Bit 1 den Wert (1) wählt und eben spezifikationsgemäß die restlichen 46 Bit lokal verwaltet und in der Broadcast-Domäne eindeutig hält.
- I/G - Bit
I/G = 0 I/G = 1
- U/L – Bit
U/L = 0
* (nur mit I/G-Bit = 0):
U/L = 1
* (nur mit I/G-Bit = 0)
Beispiele
Windowns
ipconfig /all Arp -a Netstat -r
UNIX/LINUX
ifconfig ip a
Anhang
Siehe auch
Links
Weblinks
TMP
Die MAC-Adresse (Media-Access-Control-Adresse, auch Media-Access-Code-Adresse[1]) ist die Nummer eines Gerätes auf einer Datenverbindung. Anhand dieser Nummer werden über die Verbindung laufende Daten den Geräten zugeordnet.
Die MAC-Adresse ist die Hardware-Adresse jedes einzelnen Netzadapters, die als eindeutiger Identifikator des Geräts in einem Rechnernetz dient. Man spricht auch von physischer Adresse[2] oder Geräteadresse.[3] Bei Apple wird sie auch Ethernet-ID, Airport-ID oder Wi-Fi-Adresse genannt.
Einzelheiten
Medium
Die in Rechnernetzen verwendeten Übertragungsmedien sind üblicherweise Kupferkabel (Twisted-Pair-Kabel), Lichtwellenleiter und Funk (WLAN). Über das Übertragungsmedium werden in der Bitübertragungsschicht Bitsequenzen gesendet, die in der nächsthöheren Schicht (Sicherungsschicht) zu Frames zusammengefügt werden. Zur eindeutigen Adressierung von Rechnern auf der Leitungsschicht dient die MAC-Adresse. Jede Ethernet-, WLAN- oder Bluetooth-Netzwerkkarte besitzt solch eine eindeutige MAC-Adresse, unter der sie angesprochen werden kann. Obwohl sie effektiv nur in lokalen Netzen eine Bedeutung haben, sind MAC-Adressen üblicherweise global eindeutig und besitzen keinerlei Strukturmerkmale, die für die Wegewahl (Routing) genutzt werden können.
Physische Adresse
Die MAC-Adresse wird auch als physische Adresse bezeichnet, weil er teilweise vom Hersteller in ein Gerät fest und nicht veränderbar einprogrammiert ist. Sofern Betriebssystem und Hardware dies unterstützen, kann die MAC-Adresse jedoch auch von dem Benutzer geändert werden. Dazu wird seit 2020 auf die Randomisierung von MAC-Adressen gesetzt, wie das seit Android 10 oder iOS 14 standardmäßig der Fall ist. Damit soll ein Nachverfolgen von Nutzern verhindert werden, da dies ein Datenschutzrisiko darstellt.
Zugriffssteuerung (Access Control)
Zugriff vom Medium (Media Access Control)
Auf einem Funkkanal oder einem Koaxialkabel sind die Daten mehrerer Geräte unterwegs, die für verschiedene Empfänger bestimmt sind. Anhand der MAC-Adresse sucht der Empfänger die Daten heraus, die für das eigene Gerät bestimmt sind. Dazu beginnt jedes Datenpaket mit der MAC-Adresse des Empfängers. Passt die MAC-Adresse nicht, wird das Datenpaket nicht verarbeitet.
Da die MAC-Adresse vom Hersteller in die Schaltung eingebaut wurde, ist die Schaltung unmittelbar nach dem Einschalten des Stromes betriebsbereit. Das Lesen des Mediums verbraucht keine Rechenzeit. Während der Übertragung von Datenpaketen mit unpassender MAC-Adresse können Teile des Empfängers abgeschaltet werden, um Strom zu sparen.
Bei Ethernet, WLAN und ähnlichen Netzwerktechnologien steuert die MAC-Adresse nicht den schreibenden (sendenden) Zugriff auf das Medium.
Zugriff auf das Netzwerk (Network Access Control)
Die MAC-Adresse kann benutzt werden, um Geräte zu identifizieren und den Zugriff auf ein Netz zu steuern.
Jugendschutz: Im Heimnetz kann den Geräten der Kinder nachts der Zugriff auf das Netz entzogen werden.
Spionageschutz: Im Unternehmen kann Geräten mit unbekannter MAC-Adresse der Zugriff auf das Firmennetz verweigert werden.
Gastnetze: Sowohl im Heim als auch im Unternehmen können fremde Geräte mit speziellen Gastnetzen verbunden werden.
Ein Zugriffsschutz anhand der MAC-Adresse ist begrenzt. Der Zugriff auf das (Funk-)Medium wird nicht unterbunden. So können die im Heimnetz ausgesperrten Kinder u. U. das Netz eines Nachbarn benutzen.
Wenn ein Gerät die Änderung der MAC-Adresse erlaubt, können Sperren umgangen werden.
Um die Anonymität eines Gerätes zu verbessern, benutzen manche Geräte eine MAC-Adresse, die vollständig oder zum Teil aus Zufallszahlen besteht und gelegentlich gewechselt wird. Damit ist die Identifikation eines Gerätes anhand der MAC-Adresse nicht mehr gegeben. Nach dem Wechsel der MAC-Adresse muss das Gerät in den Netzwerken, die nur bekannte Geräte bedienen, erneut bekannt gemacht werden.
Code
In einer MAC-Adresse sind folgende Angaben kodiert:
- Ist die Adresse eindeutig einem Gerät zugeordnet oder betrifft sie mehrere Geräte (Multicast, Broadcast), siehe unten Empfängergruppe
- Ist die Adresse weltweit eindeutig koordiniert oder wurde sie unkoordiniert vergeben, siehe unten Vergabestelle
- Bei den koordinierten Adressen ist der Hersteller enthalten, siehe unten Herstellerkennungen
- Der Hersteller kann in der MAC-Adresse die Seriennummer des Gerätes einbringen
Funktion im Netzwerk
Die MAC-Adresse wird der Sicherungsschicht (Schicht 2) des OSI-Modells zugeordnet; im vom IEEE erweiterten OSI-Modell wird sie der Unterschicht Media Access Control (Schicht 2a) zugeordnet. Um die Sicherungsschicht mit der nächsthöheren Schicht, der Vermittlungsschicht, zu verbinden, wird z. B. bei Ethernet das Address Resolution Protocol im Rahmen von IPv4 verwendet. Im IPv6 übernimmt ein neues Protokoll diese Funktion, das Neighbor Discovery Protocol (NDP).
Netzwerkgeräte brauchen dann eine MAC-Adresse, wenn sie auf Schicht 2 explizit adressiert werden sollen, um Dienste auf höheren Schichten anzubieten; leitet das Gerät dagegen wie ein Repeater oder Hub die Netzwerkpakete nur weiter, so ist es auf der Sicherungsschicht nicht sichtbar und braucht folglich keine MAC-Adresse.
Bridges und Switches untersuchen zwar die Pakete der Sicherungsschicht, um das Netzwerk in mehrere Kollisionsdomänen aufzuteilen, nehmen aber selbst nicht aktiv an der Kommunikation teil, brauchen also für diese Basisfunktionen ebenfalls keine MAC-Adresse. Ein Switch benötigt jedoch eine MAC-Adresse, wenn er selbst über das Rechnernetz administriert wird oder Monitoring-Dienste anbietet (z. B. über Telnet, SNMP oder HTTP). Eine MAC-Adresse wird ebenfalls benötigt, wenn Bridges oder Switches den Spanning-Tree-Algorithmus zur Vermeidung von Schleifen in redundant ausgelegten Rechnernetzen verwenden.
Form (Syntax)
Im Falle von Ethernet-Netzen besteht die MAC-Adresse aus 48 Bit bzw. sechs Bytes. Die Adressen werden in der Regel hexadezimal geschrieben.
Üblich ist dabei eine byteweise Schreibweise, wobei die einzelnen Bytes durch Bindestriche oder Doppelpunkte voneinander getrennt werden, z. B.
00-80-41-ae-fd-7e
008041-aefd7e
oder00:80:41:ae:fd:7e
.
Seltener zu finden sind Angaben wie
008041aefd7e
oder0080.41ae.fd7e
.
Die Reihenfolge der Zeichen ist allerdings nicht bei allen Anwendungen gleich. Man unterscheidet hier zwischen der kanonischen und der „Bit-reversed“-Darstellung. Die kanonische Form wird für Darstellungen bevorzugt.
Kanonische Darstellung
Die übliche Darstellung von MAC-Adressen, wie sie beispielsweise in der Ausgabe von ipconfig/ifconfig erscheint, wird auch als kanonisches Format („canonical form“, „LSB format“ bzw. „Ethernet format“) bezeichnet. Es gibt die Reihenfolge an, in der die Adresse in IEEE 802.3 (Ethernet) und IEEE 802.4 (Token Bus) übertragen wird. Hier startet die Übertragung mit dem niederwertigsten Bit (Least Significant Bit, LSB) eines Oktetts (Ausnahme ist die Frame Check Sequence, FCS).
Bit-reversed-Darstellung
IEEE 802.5 (Token Ring) und IEEE 802.6 starten die Übertragung mit dem höchstwertigen Bit (MSB, most significant bit). Dies kann leicht zu Missverständnissen führen, wenn nicht angegeben wird, ob von der kanonischen Darstellung in normaler Bytedarstellung oder von der umgekehrten Bitübertragungsdarstellung die Rede ist. Eine Adresse, deren kanonische Form beispielsweise 12-34-56-78-9A-BC
ist, wird bei der Übertragung mit LSB zuerst (heißt: von rechts nach links gelesen) auf der Leitung in Form der
Bitfolge 01001000 00101100 01101010 00011110 01011001 00111101
übertragen.
In Token-Ring-Netzwerken (MSB zuerst, heißt: von links nach rechts gelesen, also natürlichsprachlich) würde die Übertragung in Form der
Bitfolge 00010010 00110100 01010110 01111000 10011010 10111100
stattfinden.
Wenn dies bei der Umsetzung der Bitfolgen in die kanonische Darstellung nicht konsistent beachtet wird, kann z. B. die letztere Darstellung fälschlicherweise als 48-2C-6A-1E-59-3D
(LSB zuerst) interpretiert werden.
Die Darstellung in Token-Ring-Netzwerken wird dann aber als „Bit-reversed order“, „Non-canonical form“, „MSB format“, „IBM format“, oder „Token Ring format“ wie in RFC 2469[4] aufgeführt bezeichnet.
Funktion
In jedem Frame nach Ethernet-II-Variante wird vor dem Typfeld und den Daten zunächst die MAC-Adresse des Empfängers und des Senders übertragen. Empfänger und Sender müssen Teil des Local Area Networks (LAN) sein. Soll ein Paket in ein anderes Netz geschickt werden, wird es auf Ethernet-Ebene zunächst an einen Router geschickt. Dieser analysiert die Daten auf der untergeordneten Schicht und vermittelt das Paket dann weiter. Er erzeugt dazu einen neuen Ethernet-Frame, wenn es sich bei dem Nachbarnetz ebenfalls um ein Ethernet handelt. Dazu ersetzt ein Router die MAC-Adressen, d. h. wenn Router R1 ein Ethernet-Frame empfängt und es an den Router R2 weitergeben soll, ersetzt R1 die Quelladresse mit seiner eigenen MAC-Adresse und die Zieladresse mit der Mac-Adresse von R2.
Pseudo-Empfänger „Broadcast-Adresse“
Die MAC-Adresse, bei der alle 48 Bits auf 1 gesetzt sind (ff-ff-ff-ff-ff-ff
), wird als Broadcast-Adresse verwendet, die an alle Geräte in einem LAN gesendet wird. Broadcast-Frames werden ohne besondere Maßnahmen nicht in ein anderes LAN übertragen.
Besondere Kennungen
Empfängergruppe
Das niederwertigste Bit (engl. Least Significant Bit, LSB) des ersten Bytes (Bit 0) einer MAC-Adresse gibt an, ob es sich um eine Einzeladresse oder Gruppenadresse (I/G für Individual/Group) handelt. Bei einem Broadcast oder Multicast wird I/G = 1 gesetzt, sonst und bei Quelladressen ist I/G = 0.
Kurz: I/G ist
- 0 für I (Individual) oder
- 1 für G (Group).
Die meisten Protokolle, welche auf OSI Layer 2 arbeiten, haben besondere MAC-Adressen, sogenannte MAC-Multicast-Adressen. Das VLAN Trunking Protocol beispielsweise verwendet die Adresse 01-00-0C-CC-CC-CC.[5] Dadurch ist ein Frame an alle Switches gleichzeitig adressiert. Es gibt auch ganze Gruppen von MAC-Multicast-Adressen: Das TRILL-Protokoll beispielsweise verwendet unter anderem 01-80-C2-00-00-00 bis 01-80-C2-00-00-0F.[6] Auch andere Protokolle besitzen besondere, fest zugewiesene, MAC-Adressen.
Vergabestelle
Das folgende 2. Bit (Bit 1, genannt U/L für Universal/Local) zeigt an, ob die MAC-Adresse global eindeutig ist (Universally Administered Address (UAA); U/L = 0) oder lokal administriert wird und nur dort eindeutig ist (Locally Administered Address (LAA); U/L = 1).[7]
Kurz: U/L ist
- 0 für U (Universal) oder
- 1 für L (Local).
Die folgenden Adressbereiche sind lokal und können z. B. für virtuelle Maschinen verwendet werden:
x2:xx:xx:xx:xx:xx x6:xx:xx:xx:xx:xx xA:xx:xx:xx:xx:xx xE:xx:xx:xx:xx:xx
Herstellerkennungen
00-50-8B-xx-xx-xx |
Compaq |
00-07-E9-xx-xx-xx |
Intel |
00-60-2F-xx-xx-xx |
Cisco |
00-15-F2-xx-xx-xx |
Asus |
In den nächsten 22 Bits (Bit 2 bis 23) wird eine von der IEEE vergebene Herstellerkennung (auch OUI – Organizationally Unique Identifier genannt) beschrieben, die weitgehend in einer Datenbank einsehbar sind.[8] Die verbleibenden 24 Bits (Bit 24 bis 47) werden vom jeweiligen Hersteller für jede Schnittstelle individuell festgelegt. Compaq zum Beispiel hat eine OUI mit der Adresse 00-50-8b. Innerhalb dieser OUI darf Compaq alle verfügbaren Adressen verwenden, also 00-50-8b-xx-xx-xx. Es ergeben sich 224 = 16777216 (16,8 Millionen) individuelle Adressen.
Neben der OUI existieren zwei kleinere Adressbereiche:
- ein OUI-28, oder MAC Address Block Medium (MA-M), bestehend aus 28 Bits[9]
- ein OUI-36, oder MAC Address Block Small (MA-S), bestehend aus 36 Bits[10]
Diese sind für Privatpersonen und kleinere Firmen und Organisationen vorgesehen, die nicht so viele Adressen benötigen. Die OUI-36 Adresse beginnt mit 36 Bits, die für eine Organisation vergeben werden. Damit verbleibt der Adressbereich innerhalb der Bits 11 bis 0 nutzbar, wodurch 212 = 4096 individuelle Adressen möglich sind. Die MA-M werden durch 28 Bits eindeutig gekennzeichnet und ergeben mit den restlichen 20 Bits: 220 = 1.048.576 individuelle Adressen nach EUI-48. Mehr Geräte können adressiert werden, wenn EUI-64 verwendet wird.
Die Adressen der Schnittstellen jedes netzwerkfähigen Geräts sollten theoretisch weltweit eindeutig vorbelegt sein (es sind aber schon Einzelfälle bekannt geworden, bei denen zwei Netzwerkkarten im selben Netzwerk identische MAC-Adressen besaßen, was zu zunächst völlig unerklärlichen Fehlern führte). Dies kann zur automatischen Konfiguration von Geräten eingesetzt werden und wird von Protokollen wie RARP, BOOTP und DHCP genutzt. Die Software unterstützt es jedoch auch häufig, jeden beliebigen Wert als MAC-Adresse verwenden zu können. Dies wird zum Beispiel bei Backup-Systemen genutzt, wo Ersatzgeräte die MAC-Adresse eines ausgefallenen Geräts übernehmen können.
Manche Software verwendet die MAC-Adresse der ersten Netzwerkkarte zur Identifikation des Rechners, auf dem lizenzierte Programme ausgeführt werden dürfen. Auch die Berechnung einer universellen Identifikation (UUID oder GUID) verwendet neben anderen Teilen diese MAC-Adresse. Da die MAC-Adresse geändert werden kann, raten Sicherheitsexperten allerdings davon ab, die MAC-Adresse als alleiniges Authentifizierungskriterium zu verwenden.
Herstellerunabhängige Kennungen
Neben der Broadcast-Adresse FF-FF-FF-FF-FF-FF
, die alle Geräte in einem lokalen Netzwerk adressiert, werden für IPv4-Multicast MAC-Adressen im Bereich 01-00-5e-00-00-00
bis 01-00-5e-7f-ff-ff
verwendet. Dabei werden dann die unteren 23 Bit der IP-Multicast-Adresse direkt auf die untersten 23 Bit der MAC-Adresse abgebildet. Der IP-Multicast-Adresse 224.0.0.1 ist somit die Multicast-MAC-Adresse 01-00-5e-00-00-01
fest zugeordnet.
Neben den obersten vier Bit, die bei IPv4-Multicast-Adresse stets 1110 sind, verbleiben 5 Bits der IP-Adresse, die nicht in der MAC-Multicast-Adresse abgebildet werden können. Dadurch ist es möglich, dass ein Host MAC-Multicast-Pakete einer Multicast-Gruppe empfängt, zu der er nicht gehört. Diese Pakete werden dann von der IP-Schicht verworfen, da dort die Erkennung auf Basis der IP-Multicast-Adresse möglich ist.
Für IPv6-Multicast wurde der MAC-Adressbereich 33-33-xx-xx-xx-xx reserviert. Dabei werden die untersten 32 Bit der IPv6-Multicast-Adresse in die MAC-Adresse eingebettet.
Für hochverfügbare logische Router nach VRRP ist die herstellerunabhängige Kennung 00-00-5E-00-01-ID
(im Bereich 00-00-5E
) reserviert, wobei das letzte Byte ID für die Kennung des virtuellen Routers steht.[11] Sie bleibt gleich, selbst wenn ein anderer Router den Dienst übernimmt.
Stolperfalle: Kennzeichnung „PRIVATE“
Die Herstellerkennungen, die – wie zum Beispiel AC-DE-48
[12] – in der OUI-Datenbank als „PRIVATE“ gekennzeichnet wurden, sind für Firmen registriert, die ihre Identität nicht öffentlich preisgeben wollen. Adressen aus diesen Bereichen können daher nicht, wie man vermuten würde, für lokale Zwecke eingesetzt werden. (Für lokale Zwecke wird das unter „Vergabestelle“ beschriebene „U/L address bit“ verwendet.)
Ermittlung und Vergabe
Häufig steht die MAC-Adresse, zum Teil in der Seriennummer integriert, auf dem Gerät oder der Netzwerkkarte. Daneben kann man sie per Software auslesen, üblicherweise mit der im Gerät eingebauten Firmware / BIOS. Seit Jahrzehnten werden zusätzliche Programme entwickelt, um sie anzuzeigen oder zu ändern. Die Entwicklungen sind nicht abgeschlossen. Eine Auswahl zeigt die folgende Tabelle:
Betriebssystem | Auslesen (im eigenen System) | Auslesen (in einem fremden System) | Vergabe |
---|---|---|---|
AROS, MorphOS | ifconfig -a |
arp -a |
|
AIX | netstat -ia |
arp -a |
|
Android | Einstellungen → Telefoninfo → Statusinformationen |
||
bada | Einstellungen → Telefoninfo → Systeminfo |
||
FreeBSD | ifconfig |
arp -a |
ifconfig <Interface> link <MAC-Adresse>
|
HP-UX | lanscan |
lanadmin -A 0x<MAC-Adresse>
| |
Apple iOS | Einstellungen → Allgemein → Info → Wi-Fi-Adresse |
offiziell nicht möglich | |
IOS (Cisco) | show interfaces |
configure
| |
IRIX | netstat -ia |
arp -a |
ifconfig <Interface> ether <MAC-Adresse>
|
Linux Paket net-tools
|
ifconfig
|
arp -a
|
Bei einigen Netzwerkkarten funktioniert es nur im Promiscuous Mode richtig, also
|
Linux Paket iproute2
|
ip link
|
ip neigh
|
ip link set dev <Interface> addr <MAC-Adresse>
|
Linux Paket macchanger
|
macchanger --show
|
macchanger --mac <MAC-Adresse> <Interface>
| |
Mac OS X | ifconfig |
arp -a
|
ifconfig <Interface> ether <MAC-Adresse> oder:
|
NetBSD | ifconfig -a |
arp -a |
ifconfig <Interface> link <MAC-Adresse> activate
|
NeXTStep | ifconfig -a |
||
Nokia S60 | *#MAC0WLAN# (als Vanity-Code) oder
|
||
OpenBSD | ifconfig -a |
arp -a |
ifconfig <Interface> lladdr <MAC-Adresse>
|
OpenVMS | tcpip show interface /full |
tcpip show arp |
|
OS/2 | netstat -n |
über LAPS/MPTS | |
SCO Unix | ndstat |
||
Solaris |
|
arp -a
|
|
Tru64 UNIX | netstat -ia |
||
Windows[13][14] |
|
|
|
Windows Mobile 5.0 (Pocket PC) |
|
||
Windows Phone 7 (Ab Version 7.0.7389.0) |
|
Erwerb eines eigenen MAC-Adressraumes
Auf einer Webseite des IEEE[17] können Preise für die Registrierung eigener MAC-Adressbereiche eingesehen werden. Für einen eigenen MAC Address Block werden zwischen 830 und 3275 US-Dollar verlangt (Stand: 1. August 2023). Gegen eine zusätzliche jährliche Gebühr kann man diesen Adressbereich auch geheim halten; er ist dann anderen nicht bekannt und man wird nicht in einer öffentlichen Datenbank eingetragen.
Weitere Verwendung
Häufig wird die MAC-Adresse als Zugangsschutz (MAC-Filter) für LANs und WLANs verwendet. Wegen der leichten Änderungsmöglichkeit von MAC-Adressen bietet ein MAC-Filter jedoch nur schwachen Schutz und kann leicht durch MAC-Spoofing ausgehebelt werden.
Weblinks
- ↑ Vorlage:RFC-Internet
- ↑ Mark A. Dye, Rick McDonald, Antoon W. Rufi: Netzwerkgrundlagen: CCNA exploration companion guide. 2008, ISBN 3-8273-2685-0, S. 93 (Vorlage:Google Buch)
- ↑ Wobei das auch als nur ein Teil davon gesehen werden kann: MAC-Adresse = Herstellercode + Geräteadresse; Frank Morkowsky: Grundlagen der Netzwerktechnik. 2015, ISBN 3-7347-7451-9, S. 20 (Vorlage:Google Buch)
- ↑ Vorlage:RFC-Internet
- ↑ VTP reference. cisco.com
- ↑ Vorlage:RFC-Internet
- ↑ Vorlage:Cite web
- ↑
- ↑ Registration Authority. MA-M. IEEE (englisch); abgerufen am 30. Oktober 2014.
- ↑ Registration Authority. MA-S. IEEE (englisch); abgerufen am 30. Oktober 2014.
- ↑ Vorlage:RFC-Internet
- ↑
- ↑ Verwendung von „Winipcfg“ zum Einsehen von TCP/IP-Einstellungen. MicrosoftTechNet.
- ↑ Command-line reference A–Z. MicrosoftTechNet (englisch).
- ↑ Vorlage:Webarchiv fics.ro (englisch).
- ↑ MAC Address Spoofing für Windows 2000/XP. libe.net
- ↑ Preisliste. IEEE (englisch).