Qual è l'uso esatto di un indirizzo MAC?

Capisco che gli indirizzi IP sono gerarchici, in modo che i router in tutto il mondo sapessero quale direzione di inoltrare un pacchetto. Con gli indirizzi MAC non esiste una gerarchia, e quindi l'inoltro di pacchetti non sarebbe ansible. Quindi, gli indirizzi MAC non vengono utilizzati per il trasferimento dei pacchetti.

Non credo sia seduto lì per nessun motivo. Quindi la mia domanda è, where esattamente un indirizzo MAC entra in gioco durante un trasferimento di pacchetti?

TL; DR> Gli indirizzi MAC sono un componente a basso livello di una networking Ethernet (e altri standard simili, come ad esempio WiFi). Consentono a un dispositivo di comunicare con una macchina sulla networking fisica locale (LAN) e non può essere instradato su Internet, perché in teoria l'hardware fisico potrebbe essere collegato in qualsiasi parte del mondo.

Al contrario, gli indirizzi IP coprono l'integer Internet e i router li utilizzano per capire where submit dati anche se necessita di più luppoli per raggiungere la destinazione, ma non sono utili per interfacersi con l'hardware fisico della networking locale.

Se abbiamo mai trovato uno standard migliore di Ethernet, potrebbe non utilizzare indirizzi MAC, ma il traffico IP da internet potrebbe ancora scorrere attraverso di esso, anche se altre persone su Internet non avevano mai sentito parlare di esso.

Se abbiamo mai trovato uno standard migliore di IP (ad esempio IPv6 se tutti gli indirizzi IPv4 esaurivano), la maggior parte degli hardware Ethernet potrebbe portre il nuovo tipo di traffico senza modifiche – e un semplice aggiornamento software / firmware risolverebbe la maggior parte dei restanti.

Gli indirizzi MAC sono necessari per eseguire una function di networking locale (o wifi) locale. Consentono a un dispositivo di networking di attirare l'attenzione di un singolo dispositivo collegato direttamente, anche se la connessione fisica viene condivisa. Ciò può essere importnte quando migliaia di dispositivi sono collegati insieme in un'unica organizzazione. Non servono alcuna function sul più ampio internet.

Per comprendere veramente la risposta a questa domanda, è necessario comprendere l' OSI (talvolta noto come il model a 7 livelli) .

Per la comunicazione tra due applicazioni eseguite su macchine separate che non dispongono di una connessione fisica diretta, occorre fare molta attività.

Nei giorni passati, each applicazione avrebbe saputo esattamente le istruzioni del codice macchina che wherevano essere eseguite per produrre un segnale appropriato che avrebbe raggiunto e potrebbe essere decodificato dall'applicazione all'estremità. Tutta la comunicazione era effettivamente point-to-point, e il software whereva essere scritto per adattarsi alla situazione esatta in cui whereva essere distribuita. Ovviamente era insostenibile.

Invece, il problema della networking è stato suddiviso in livelli e ciascun livello sapeva come parlare con il livello corrispondente su una macchina remota e come comunicare con il livello sottostante (e talvolta sopra) nella propria macchina locale. Non sapeva niente di più su altri strati in atto – in modo che il tuo browser web non debba preoccuparsi se è in esecuzione su una macchina che utilizza un'anello token, networking ethernet o wifi – e sicuramente non è necessario sapere quali hardware utilizza la macchina remota.

Per fare questo lavoro, il model a 7 livelli utilizza un sistema piuttosto come buste nidificate; l'applicazione crea i suoi dati e lo avvolge in una busta per il sistema operativo da consegnare. Il sistema operativo lo avvolge in un'altra busta e lo passa al driver di networking. Il driver della networking avvolge questo contenuto in un'altra busta e lo mette sul cavo fisico. E così via.

Il livello inferiore, livello 1 , è il livello fisico. Questo è lo strato di fili e transistori e onde radio, e a questo livello, la comunicazione è per lo più solo un stream di quelli e nomi. I dati vanno ovunque che è fisicamente connesso. Si collega la port di networking del computer all'interruttore utilizzando un cavo CAT-5.

Lo strato 2 è il livello di collegamento dati. Ciò fornisce una certa struttura a quelle e nozze, alcune funzionalità di rilevamento e correzione degli errori e alcune indicazioni su quale dispositivo collegato fisicamente (le connessioni fisiche qui possono effettivamente superare il wifi) dovrebbero prestare attenzione al messaggio. Questo è il livello che gli indirizzi MAC entrano in gioco e ci ritorneremo più tardi. Ma gli indirizzi MAC non sono l'unica possibilità a questo livello. Ad esempio, le reti ad anello Token richiedono un'implementazione diversa dei dati.

Lo strato 3 è lo strato di networking. Questo è il livello che opera a IP (anche se non è l'unico protocollo a livello di networking) e questo consente ai computer di submit un messaggio che può arrivare a qualsiasi macchina in qualsiasi punto della "networking". Non c'è bisogno di una connessione diretta tra le macchine in questione.

I livelli 4-7 sono protocolli di livello superiore. Hanno sempre più lontano dall'hardware e più vicino all'applicazione. TCP, ad esempio, siede in cima all'IP e fornisce meccanismi che riescono automaticamente i messaggi quando vanno a mancare.

Quindi gli indirizzi MAC funzionano nello strato 2 e consentono 2 macchine fisicamente connesse tra loro per submit messaggi che saranno ignorati da altre macchine che condividono la stessa connessione fisica.

Supponiamo di avere un'applicazione che desideri submit alcuni dati alla macchina con l'indirizzo IP 8.8.8.8

Lo strato 3 avvolge i dati in una busta che contiene, tra l'altro, l'indirizzo IP 8.8.8.8 e poi lo passa al livello 2.

Layer 2 esamina questo indirizzo IP e decide quale macchina con cui è direttamente collegata è in grado di gestire questo messaggio. Avrà una tabella di ricerca di una selezione degli indirizzi IP direttamente connessi con l'indirizzo MAC corrispondente della scheda di networking in quella macchina. Questa tabella di ricerca è costruita utilizzando un protocollo denominato ARP, che consente a una scheda di networking di porre domande sugli altri dispositivi direttamente collegati. Ethernet riserva un indirizzo MAC specifico, FF: FF: FF: FF: FF: FF, che consente a un dispositivo di parlare a tutti i dispositivi collegati fisicamente.

Se l'indirizzo IP è nella tabella (o può essere risolto tramite ARP), avvolge la busta dello strato 3 in una busta dello strato 2 con l'indirizzo MAC nella nuova intestazione e quindi passerà l'integer pacchetto all'hardware dello strato 1 La scheda di networking con l'indirizzo MAC corrispondente riceverà il messaggio e il driver di networking aprirà la busta Livello 2 e passerà il contenuto a qualsiasi parte del sistema operativo prevede di ricevere messaggi nell'indirizzo IP specifico.

In alternativa, se l'indirizzo IP non è presente sulla networking locale, la nuova busta avrà l'indirizzo MAC del gateway predefinito (Router) configurato per questa interface di networking e l'hardware trasporterà il pacchetto al router.

Il router nota il proprio indirizzo MAC nella busta del livello 2 e apre il pacchetto livello 2. Esamina l'indirizzo IP sulla busta di livello 3 e spiega where deve andare il messaggio, probabilmente sarà il router presso l'ISP. Se il router utilizza NAT (o simili), può anche modificare la busta del livello 3 a questo punto, per mantenere gli indirizzi IP interni privati. Successivamente, avvolge la busta del livello 3 in una nuova busta di livello 2 indirizzata all'indirizzo MAC del router dell'ISP e invierà il messaggio.

Questo process di rimozione della busta esterna e avvolgimento del contenuto in una nuova busta indirizzata al passo successivo della catena continuerà fino a quando il messaggio non raggiunge la macchina di destinazione.

Le buste continueranno ad essere strappate mentre il messaggio cambia gli strati finché non raggiunge finalmente il proprio destinatario, che sarà un'applicazione da qualche parte che, speriamo, saprà cosa fare con il messaggio – ma non avrà idea di come il messaggio è arrivato lì, nemless tutti i passaggi necessari per riportre la risposta alla macchina originale.

Ma tutto funziona, quasi come la magia!

Si noti che gli switch di networking possono utilizzare indirizzi MAC per ottimizzare il stream del traffico di networking. Mentre un hub ethernet inoltra semplicemente tutto il traffico in entrata a tutte le sue porte, per contro, un interruttore può inoltrare il traffico solo alla singola port con cui è connesso l'indirizzo MAC di destinazione del pacchetto. Ciò aumenta la width di banda effettiva della networking; targeting porte specifiche, l'interruttore evita l'inoltro del traffico su segmenti inutili della networking. L'interruttore utilizzerà ARP o sniffing dei pacchetti per identificare i dispositivi connessi a quale port. Gli interruttori ignorano completamente il contenuto dei pacchetti Layer 2.

Quali sono gli indirizzi MAC utilizzati?

Gli indirizzi MAC sono le basi di basso livello che fanno funzionare la networking di networking ethernet.

Le tabs di networking dispongono di un indirizzo MAC unico. I pacchetti inviati su ethernet sono sempre provenienti da un indirizzo MAC e inviati a un indirizzo MAC. Se una scheda di networking sta ricevendo un pacchetto, sta confrontando l'indirizzo MAC di destinazione del pacchetto con l'indirizzo MAC del proprio adattatore. Se gli indirizzi corrispondono, il pacchetto viene elaborato, altrimenti viene scartato.

Esistono indirizzi MAC speciali, ad esempio ff: ff: ff: ff: ff: ff, che è l'indirizzo broadcast e indirizza each scheda di networking della networking.

Come gli indirizzi IP e gli indirizzi MAC funzionano insieme?

IP è un protocollo che viene utilizzato su un livello sopra ethernet. Un altro protocollo, ad esempio, sarebbe IPX.

Quando il computer desidera submit un pacchetto ad un indirizzo IP xxxx, il primo controllo è se l'indirizzo di destinazione è nella stessa networking IP del computer stesso. Se xxxx è nella stessa networking, l'IP di destinazione può essere raggiunto direttamente, altrimenti il ​​pacchetto deve essere inviato al router configurato.

Fino ad ora le cose sembrano aver peggiorato, perché ora abbiamo due indirizzi IP: uno è l'indirizzo di destinazione originale del pacchetto IP, l'altro è l'IP del dispositivo al quale dovremmo submit il pacchetto (il prossimo hop, destinazione o router).

Poiché ethernet utilizza indirizzi MAC, il mittente ha bisogno di get l'indirizzo MAC del hop successivo. Esiste un protocollo speciale ARP (protocollo di risoluzione degli indirizzi) che viene utilizzato per questo. Una volta che il mittente ha recuperato l'indirizzo MAC del prossimo hop, scrive l'indirizzo MAC target nel pacchetto e invia il pacchetto.

Come funziona l'ARP?

ARP stesso è un protocollo sopra ethernet, come IP o IPX. Quando un dispositivo vuole conoscere l'indirizzo MAC per un determinato indirizzo IP, invia un pacchetto all'indirizzo MAC di trasmissione chiedendo "Chi ha indirizzo IP yyyy?" Tutti i dispositivi ricevono quel pacchetto, ma solo quello con l'indirizzo IP yyyy risponderà con un pacchetto "Sono io". Il dispositivo richiedente riceve la risposta e ora sa che l'indirizzo MAC di origine è l'indirizzo MAC giusto da utilizzare. Naturalmente il risultato verrà memorizzato nella cache, quindi il dispositivo non ha bisogno di risolvere each volta l'indirizzo MAC.

Routing

Ho quasi dimenticato di citare: non esiste un routing basato sugli indirizzi MAC. Gli indirizzi Ethernet e MAC a basso livello possono raggiungere solo tutti i dispositivi della stessa networking (cablata o wireless). Se si dispone di due reti con un router tra di voi non è ansible avere un dispositivo nella networking A submit un pacchetto all'indirizzo MAC di un dispositivo nella networking B. Nessun dispositivo nella networking A ha l'indirizzo MAC del dispositivo nella networking B, quindi il pacchetto a questo indirizzo MAC verrà scartato da tutti i dispositivi della networking A (anche dal router).

Il routing avviene a livello IP. Semplicemente visto il router sta facendo quello che ho descritto sopra nella sezione "Come gli indirizzi IP e gli indirizzi MAC funzionano insieme?". Il router riceverà pacchetti per il proprio indirizzo MAC ma per un diverso indirizzo IP. Verrà quindi verificato se può raggiungere direttamente l'indirizzo IP di destinazione. Se è così, invia il pacchetto all'objective. Altrimenti il ​​router stesso dispone anche di un router upstream configurato e invierà il pacchetto a quel router.

Naturalmente è ansible configurare più router. Il router di casa avrà solo un router di tipo upstream configurato, ma nel backbone internet i grandi router hanno grandi tabelle di routing in modo che conoscano i modi migliori per tutti i pacchetti.

Altri casi d'uso per gli indirizzi MAC

  1. Gli switch di networking memorizzano un elenco di indirizzi MAC visualizzati in each port e solo i pacchetti inoltro alle porte che necessitano di vedere il pacchetto.

  2. I punti di accesso wireless spesso utilizzano indirizzi MAC per il controllo dell'accesso. Consentono solo l'accesso a dispositivi noti (l'indirizzo MAC è unico e identifica i dispositivi) con la corretta passphrase.

  3. I server DHCP utilizzano l'indirizzo MAC per identificare i dispositivi e fornire alcuni dispositivi gli indirizzi IP fisse.

L'indirizzo MAC (Media Access Control) in generale è l'identificatore dei dispositivi in ​​una networking. Così each NIC (controller di interface di networking trovato in un router, PC, printingnte di networking, server, ecc) hanno indirizzi MAC. Alcuni server hanno più di una scheda di networking incorporata e quindi hanno più indirizzi MAC. L'indirizzo MAC è lungo 6 byte (6 ottetti). La sinistra è la Byte più significativa e corrisponde al byte less significativo. Come potete vedere nell'image qui sotto, i primi 3 byte sono l' identificatore organizzativo univoco . Ciò indica il produttore che ha fatto questo dispositivo.

Ecco un elenco di identificatore organizzativo univoco : Standards.ieee.org

Ecco un'alternativa a quanto sopra: MAC-Vendor-Lookup

Alcuni esempi di comuni produttori noti:

  • 00-05-5D (D-Link Systems Inc.)
  • 00-09-5B (Netgear Inc.)
  • 00-E0-4C (Realtek Semiconductor Corp.)
  • 00-E0-4F (Cisco Systems Inc.)
  • 00-E0-64 (Samsung Electronics)

Gli ultimi 3 byte (3 ottetti) vengono assegnati casualmente dal constructor.

Come pjc50 ha dichiarato correttamente l'indirizzo MAC in una networking Ethernet aiuta gli switch decidere quale pacchetto da submit where. C'è anche un Broadcast-MAC-Address. ff: ff: ff: ff: ff: ff viene utilizzato per l'Broadcast-MAC-Address. Si noti che l'indirizzo MAC può essere modificato in modo da essere attenti utilizzando come identificatore di un dispositivo definito! L'indirizzo MAC viene utilizzato anche con il protocollo ARP (Address Resolution Protocol). Quindi, come funziona, PC A invia una richiesta ARP a PC B con il proprio indirizzo IP, indirizzo MAC, indirizzo IP del ricevitore e l'indirizzo di trasmissione di cui sopra (ff: ff: ff: ff: ff : ff). Dopo che il PC B controlla se il pacchetto è stato inviato a lui o no. Se sì, allora il PC B invia indietro il proprio indirizzo MAC, l'indirizzo IP, l'indirizzo MAC del ricevitore e l'indirizzo IP del ricevitore. Gli altri dispositivi scartano il pacchetto.

Entrambi i PC A e B solitamente salvarono la connessione di successo nella cosiddetta ARP-Cache. Il modo in cui i PC salvarono la connessione differisce da dispositivo a dispositivo. Se non conosci l'indirizzo IP, puoi get l'indirizzo IP con il Reverse Address Resolution Protocol (RARP). Con RARP il dispositivo contatta un client centrale e lo chiede per l'indirizzo IP. Ma questo metodo è tuttora usato al giorno d'oggi.

Le seguenti tecnologie utilizzano il formato dell'identificatore MAC-48:

  • Ethernet
  • 802.11 reti wireless
  • Bluetooth
  • Anello di token IEEE 802.5
  • la maggior parte delle altre reti IEEE 802
  • FDDI
  • ATM (connessioni virtuali commutate solo come parte di un indirizzo NSAP) Fibre Channel e Serial Attached SCSI (come parte di un nome World Wide)

Sono utilizzati per il trasferimento dei pacchetti: su una networking Ethernet, ci sono un certo numero di dispositivi e l'indirizzo MAC specifica quale dispositivo dovrebbe ricevere il pacchetto. Gli switch Ethernet utilizzeranno per scegliere la port per submit un pacchetto ricevuto.

Dimentica la gerarchia in questo caso, non è un problema molto importnte.

Indirizzo MAC sono indirizzi per il livello 2 (layer link) nei templates ISO / OSI o TCP / IP. Gli indirizzi IP sono dal livello 3 (livello di networking) negli stessi templates.

In una networking di livello 2, ad esempio una networking Ethernet comune, esiste un dominio di collisione, in cui tutte le apparecchiature collegate possono ricevere tutti i frame (dati di livello 2) da qualsiasi punto finale. Ma nessuno al di fuori della networking può ricevere questi fotogrammi. Gli indirizzi MAC sono indirizzi in questi domini.

I pacchetti sono i dati dell'unità di livello 3, tipicamente, pacchetti IP. Essi percorrono uno o più domini di collisione. Gli indirizzi IP sono gli indirizzi di questo dominio.

Gli interruttori sono dispositivi di livello 2 e frame in avanti utilizzando tabelle di indirizzi MAC. I router sono dispositivi di livello 3 e inoltrano i pacchetti utilizzando tabelle di indirizzi IP.

Ethernet assume che l'altro computer (l'altro MAC) con cui vuole parlare è direttamente raggiungibile dalla sua scheda di networking. IP non lo fa. IP presume che possa raggiungere qualsiasi altro IP in tutto il mondo e che se non riesce a raggiungere la substring corrente, un router lo porterà lì, a prescindere da NAT. La nozione di gateway non esiste in Layer 2 o Ethernet.

Se hai un numero di macchine collegate ad un interruttore e non avrai mai bisogno di scambiare traffico con altre reti / Internet tramite un router, allora non è necessario disporre di IP e di esecuzione. Naturalmente, un'applicazione dovrà implementare o fornire il proprio protocollo sopra lo strato 2, in quanto praticamente tutti gli OS e le applicazioni presuppongono che si desidera sempre utilizzare TCP / IP.

Ricorda sempre il "Internet" in IP significa che "internetworking" significa veramente che sia interessato a get traffico tra le reti più che in una networking, anche se ovviamente può essere (e) utilizzato per quello troppo.

L'indirizzo MAC viene utilizzato sul trasferimento fisico. Un adattatore ethernet non sa nulla di IP. Quindi la scheda ethernet utilizza l'indirizzo MAC per indirizzare il destinatario del pacchetto di dati.

Se l'adattatore ethernet sapesse qualcosa di IP, allora dobbiamo aggiornare tutto il nostro firmware per passare a un nuovo protocollo (come IPv4 a IPV6).

Anche l'indirizzo MAC ha alcune informazioni sul produttore in esso.

Viene utilizzato quando l'ARP (Protocollo di risoluzione degli indirizzi) per IPv4 o NDP (Neighbor Discovery Protocol) per IPv6, traduce gli indirizzi IP in indirizzi MAC per determinare quale host univoco i frame dovrebbero essere inviati.

Per completare le risposte di altri, aggiungerei che l'indirizzo MAC è ancora più critico per i router che per gli switch. Quello che intendo per più critico è che gli switch non sono realmente necessari per la networking IP esistere. Il tuo look 20 anni all'indietro (prima di RJ-45) Le reti IP locali funzionavano perfettamente senza interruttori. Le reti ethernet non indirizzate erano semplicemente collegando dispositivi sullo stesso filo (per esempio, guardare la tecnologia X ethernet base-T).

D'altra parte le reti IP sono state inventate per supportre il routing e si basano su schemi di indirizzamento MAC e IP.

I pacchetti di routing in reti IP significa che quando non è ansible accedere direttamente alla macchina di destinazione, esso verrà innanzitutto inviato ad un'altra macchina (il gateway) più vicina al target IP finale.

In termini di intestazioni di pacchetti di networking significa che un pacchetto inviato a un gateway avrà come destinazione nell'intestazione a livello ethernet l'indirizzo MAC del gateway, l'intestazione del livello IP rimane invariata.

Dovresti anche notare che gli indirizzi MAC di solito significa oggi MAC-48 (indirizzo del dispositivo fisico) o EUI-48 (indirizzo del dispositivo logico) o persino gli indirizzi EUI-64 da 8 byte utilizzati in reti più grandi. Storicamente MAC è stato inventato da Xerox per la tecnologia Ethernet e successivamente riutilizzato per altre tecnologie di trasporto di networking (802.11, Bluetooth, FibreChannel, BlueTooth) che hanno bisogno di identificare un dispositivo.

Come ho detto, è ansible utilizzare un altro layer-2 invece di ethernet, ma la maggior parte usa un indirizzo MAC come identificatore di networking e il sottostante schema di corrispondenza MAC / IP e si può ancora utilizzare ARP. Per quanto so che tutte le pile IP si affidano alla tabella corrispondenze tra indirizzi MAC e indirizzi IP.

Alcuni altri tipi di identificatori di nodes di dispositivo esistono per le stack non IP. Ad esempio, X.25 non si basa sugli indirizzi MAC, ma sui canali virtuali stabiliti su una base di connessione oi dispositivi ATM vengono identificati in reti ATM utilizzando SNPA. Ma né X.25 né ATM sono stack IP (e anche ATM utilizza il formato di indirizzi MAC come parte di esso SNA, equivalente rough di un indirizzo IP per ATM).

Pensate ai giorni pre-switch (hub).

Se le persone sono computer, l'indirizzo MAC è il loro nome.

Pnetworkingndiamo che un sacco di persone (i computer) siano nella stessa telefonata. Ognuno sta parlando contemporaneamente.

TU (un calcolatore) ascolta tutto questo chiacchiere, ma non sai cosa devi ascoltare, finché qualcuno dice il tuo nome (il tuo indirizzo MAC) all'inizio di una frase (un pacchetto).

"FRED, THERE IS ICE CREAM!"

Naturalmente ascoltate anche le sentenze inviate all'indirizzo broadcast . Basti pensare che essere qualcuno che urla,

"EVERYONE, THERE IS ICE CREAM!"

Poichè più persone (computer) hanno ricevuto la chiamata in conferenza, più si deve filtrare. La tecnologia avanzata e gli switch hanno permesso di parlare direttamente a una persona (computer / MAC) in modo che non dovrebbero lavorare così tanto per filtrare tutto quel rumore (e per liberare più width di banda).

IP è molto simile nell'analogia di base, ma ha più caratteristiche e livelli in cima all'indirizzo MAC. Livelli 2 e 3 nel model OSI , rispettivamente.

L'indirizzo MAC è necessario perché ci sono più indirizzi collegati al "bus" (la networking Ethernet). Un mittente deve essere in grado di identificare il ricevitore, nonché identificarsi al ricevitore.

Tutti gli autobus hardware necessitano di indirizzamento, perché più mittenti e ricevitori condividono gli stessi fili, ei messaggi devono andare a specifici ricevitori e identificare anche i mittenti originari.

I2C, PCI, Ethernet, lo denomini.

Abbiamo indirizzi multipli in networking (indirizzo IP e indirizzo hardware) perché un indirizzo a livello hardware è solo locale di una determinata networking fisica. Come un datagramma va da networking a networking, tende a mantenere il suo indirizzo di livello di networking, ma cambia gli indirizzi hardware numerose volte lungo la strada. Quando si superano alcune reti, potrebbe non avere affatto un indirizzo hardware e in alcuni altri potrebbe avere un indirizzo hardware che non è un MAC ethernet. (Indirizzi di networking possono essere riscritti da un gateway NAT, ovviamente, ma gli indirizzi hardware vengono rimossi e sostituiti con quelli diversi each volta che un pacchetto attraversa un router.)

Nelle vecchie giornate le reti sono state condivise di autobus. Ogni dispositivo in networking connesso allo stesso cavo oa un hub, il che significa che each pacchetto che hai inviato è stato ricevuto da each dispositivo della networking.

Il software di networking era quindi più semplice. Ogni dispositivo disponeva di un indirizzo MAC, garantito per essere unico. Non aveva bisogno di essere altro – tutto quello che faceva era assicurarsi che due dispositivi sulla stessa networking non avessero lo stesso indirizzo.

Se il tuo dispositivo desiderava parlare con un altro dispositivo, invierebbe un pacchetto con l'indirizzo MAC del destinatario e il destinatario lo avrebbe scelto dalla networking. Tutti gli altri dispositivi lo ignorerebbero – non è stato indirizzato al loro indirizzo MAC.

Nel corso del tempo le persone hanno collegato troppi dispositivi alla networking e non hanno potuto tenere il passo con il traffico, quindi hanno iniziato a separare le reti e avrebbero collegato due reti con switch. Questi interruttori avevano tabelle enormi che dicevano loro quali MAC si indirizzano in each networking. Se hanno visto un pacchetto in una networking indirizzata a un indirizzo MAC dell'altro network, copriranno il messaggio nell'altra networking. Non copiare tutti i messaggi, però, solo quelli che wherevano andare all'altra networking.

Questa riduzione della congestione ha permesso a più dispositivi di essere in networking e più traffico globale da gestire. Questa è una networking a pacchetto commutata .

Tuttavia non è riuscito a risolvere tutti i problemi e ha subito un enorme svantaggio – poiché i tavoli di commutazione sono diventati più grandi, le reti sono rallentate. Se hai collegato 5.000 macchine a 50 reti diverse interconnesse con gli switch, each switch whereva imparare tutti i 5.000 indirizzi MAC e pacchetti di route in base a ciò.

Non era un grosso problema fino a quando le persone provenienti da diverse istituzioni, come le università, avrebbero voluto colbind le proprie reti e le tabelle necessarie sarebbero state enormi. Tenendo traccia di poche centinaia di migliaia di indirizzi MAC oggi non sembra un grosso problema, ma negli anni '70 in cui si verificavano questi interruttori erano i computer stessi, con memory limitata e velocità, e tenere traccia e passare rapidamente pacchetti per pochi cento era un problema.

La soluzione stava per una networking IP e utilizzando router. Questo è costruito sulla parte superiore della networking di pacchetti commutata a MAC. Piuttosto che dati grezzi, i pacchetti ora contengono un pacchetto IP – un pacchetto all'interno di un pacchetto.

Ora le reti più grandi sono collegate con i router. Questi aspettano di vedere un pacchetto con il loro indirizzo MAC, quindi prelevano il pacchetto IP e esaminano l'indirizzo IP. Quindi ri-avvolgono il pacchetto IP in un altro pacchetto con un nuovo destinatario di indirizzo MAC e invialo in una nuova networking. Quel indirizzo MAC probabilmente è un altro router sulla nuova networking, ma potrebbe anche essere la macchina con l'indirizzo IP.

Nelle reti di oggi si vedono raramente hub e bus (ad exception delle reti wireless, where il supporto è intrinsecamente condiviso) e invece la mia macchina si collega direttamente ad un interruttore che li collega a un router.

La mia macchina ha una varietà di algoritmi e protocolli in modo da sapere come è impostata la networking.

Se invio un pacchetto IP ad una macchina sulla mia networking locale, la mia macchina lo metterà all'interno di un pacchetto con l'indirizzo MAC corretto. Gli interruttori lo commuteranno alla networking corretta localmente e la macchina destinata riceverà perché ha il giusto indirizzo MAC. Esso li estrae il pacchetto IP e verifica che l'indirizzo IP sia anche destinato ad esso e agire di conseguenza.

Se invio un pacchetto IP destinato a una macchina da qualche altra parte su Internet, la mia macchina sa spedirla al router, quindi la mette all'interno di un pacchetto con l'indirizzo MAC del router. È nuovamente commutato localmente nella mia networking fino a raggiungere la networking che il router è acceso, quindi il router lo prende, estrae il pacchetto IP, esamina il pacchetto IP e, sulla base della sua conoscenza di internet, lo invia ad un altro router un'altra networking, avvolgendola in un pacchetto con l'indirizzo MAC per il router o il computer destinatario previsto.

Ci sono molti piccoli dettagli che ho riflessa e alcuni algoritmi e protocolli veramente interessanti in gioco che fanno funzionare tutto, ma questa è la storia di base di ciò che l'indirizzo MAC fa per noi, anche oggi.

La differenza principale è che il MAC viene assegnato dal constructor al momento della produzione, mentre l'indirizzo IP viene assegnato al momento della connessione.

MAC è necessario perché può essere utilizzato per identificare un dispositivo prima di connettersi alla networking; tuttavia perché è assegnato staticamente, è abbastanza distribuito in modo random, quindi non è adatto per un routing efficiente su più di una singola networking (in questo modo sarebbe necessario che each dispositivo sul pianeta disponga di una tabella di routing enorme a tutti gli altri dispositivi del pianeta ). Pertanto, l'indirizzo IP è necessario perché è assegnato all'ora di connessione e il modo in cui il suo assegnato consente un più efficiente routing a distanza (con IP, la maggior parte dei dispositivi deve conoscere solo le reti adiacenti).

Se esiste solo un indirizzo IP, i dispositivi che non sono stati assegnati un indirizzo IP non saranno in grado di determinare quali messaggi sono destinati. Come stabilirebbe che questo DHCP è destinato per te e non qualcun altro che richiede l'assegnazione di indirizzi allo stesso tempo?

Naturalmente il MAC è utilizzato anche per altre parti di invio di pacchetti, ma la maggior parte di questi usi sono abbastanza accidentali e possono (alless in teoria) essere sostituiti con numero dinamico assegnato (ad es. Indirizzo IP).