Se il mio computer ha un indirizzo IP, perché ha bisogno di un indirizzo MAC?
Se il mio computer ha un indirizzo IP, perché ha bisogno di un indirizzo MAC?
Risposte:
senza entrare nel modello OSI, livello TCP, ecc .:
Indietro nel tempo, sono state create reti: alcuni computer avrebbero comunicare tra loro per condividere qualcosa. Per farlo, hanno bisogno di sapere chi stava parlando e con chi si stava parlando. Quindi, invece di assegnare un nome a ciascun computer, abbiamo assegnato loro un ID. Questo ID si chiama indirizzo MAC, deve identificare in modo univoco ogni computer.
(ok, identifica ogni scheda di rete, ma a quel tempo, potresti pensare un indirizzo MAC per ogni computer).
Non c'era una specifica unica su come i computer si sarebbero scambiati l'un l'altro: apparvero molti protocolli: TCP / IP, IPX / SPX e così via. Ogni protocollo avrebbe specificato le cose come pensavano fosse ok. Ad esempio, IPX / SPX indirizzerebbe ogni computer utilizzando l'indirizzo MAC e alcune ulteriori informazioni.
Ma il protocollo TCP / IP è stato progettato in modo leggermente diverso: hanno deciso che avere un indirizzo virtuale, composto da 4 byte (da 0.0.0.0 a 255.255.255.255) era abbastanza ed era ancora più facile da gestire: non importa se le tue schede di rete hanno tutte un indirizzo MAC simile oppure no, raggrupperemo il nostro computer in modo che tutti gli indirizzi TCP / IP che iniziano con 10.0.xx facciano parte del gruppo tecnico e quelli di 10.1.xx siano le stampanti e. ..
Quindi, se un indirizzo TCP / IP deve comunicare con un altro, utilizza solo l'indirizzo TCP / IP. Ma i dispositivi di rete devono sapere su quale scheda di rete sta andando quel messaggio, quindi, in qualche modo, traducono l'indirizzo TCP / IP con l'indirizzo MAC.
Perché non semplicemente eliminare il MAC e utilizzare invece solo TCP / IP?
alcuni motivi:
Gli indirizzi MAC e IP funzionano su diversi livelli della suite di protocolli Internet . Gli indirizzi MAC vengono utilizzati per identificare le macchine all'interno della stessa rete di trasmissione sul livello 2, mentre gli indirizzi IP vengono utilizzati sul livello 3 per identificare le macchine su reti diverse.
Anche se il tuo computer ha un indirizzo IP, ha ancora bisogno di un indirizzo MAC per trovare altre macchine sulla stessa rete (in particolare il router / gateway verso il resto della rete / internet), poiché ogni livello utilizza i livelli sottostanti. Nella pagina menzionata in precedenza puoi trovare alcuni diagrammi che spiegano in dettaglio la suite di protocolli.
Quando capisci che la comunicazione da IP a IP è in realtà solo una serie di comunicazioni da MAC a MAC che avvengono su ciascun router router, allora capirai perché entrambi sono necessari.
L'intestazione IP di un pacchetto che lascia la workstation destinata a un IP in una sottorete diversa manterrà l'IP di origine e IP di destinazione, dimenticando per il momento il NAT. [Più avanti discuterò cosa succede quando la destinazione si trova nella stessa sottorete.] L'intestazione Ethernet contiene il MAC di origine e il MAC di destinazione del gateway predefinito. Non c'è conoscenza del MAC di destinazione finale dal tuo punto di vista. Quel primo router riscriverà il MAC di origine su se stesso e il MAC di destinazione sull'hop router successivo, e così via, fino a quando il pacchetto arriva all'ultimo router direttamente collegato alla sottorete di destinazione.
Per tentare una semplice illustrazione, considera le intestazioni L2 / L3 mentre un pacchetto si sposta dall'IP di origine (sIP) a un IP di destinazione (dIP) e i MAC di origine e destinazione vengono riscritti lungo il percorso - fs = first-source e ld = last-destination e r1-r3 sono router:
fsMAC-r1MAC / sIP-dIP
r1MAC-r2MAC / sIP-dIP
r2MAC-r3MAC / sIP-dIP
r3MAC-ldMAC / sIP-dIP
Eventuali switch L2 coinvolti non modificheranno gli indirizzi MAC.
Ora per comunicare con un altro IP all'interno della tua sottorete, è necessaria la comunicazione MAC diretta, ma per ottenere quell'add MAC è necessario il protocollo ARP che utilizza una trasmissione nella sottorete per trovarlo. A proposito, è così che la tua workstation ottiene l'indirizzo MAC del tuo gateway predefinito che deve esistere nella tua stessa sottorete.
MAC
è ciò che porta il messaggio da un hop all'altro, mentre l'IP tiene traccia dell'origine e della destinazione originali. Questo sembra analogo a un ufficio postale, dove rivolgo la mia lettera alla nonna a Phoenix, ma il postino che lo prende dalla cassetta postale si preoccupa solo di portarlo all'ufficio postale, e l'ufficio postale si preoccupa solo di portarlo allo smistamento centro ecc ...
Non c'è nulla che ti impedisca fisicamente di progettare una rete che ha solo un indirizzo IP per L2 e L3. Quindi 'switch ethernet' apprenderebbe l'indirizzo SIP dei pacchetti in entrata e si inonderebbe o inoltrerebbe verso l'indirizzo DIP.
Tuttavia, questa rete supporterà sempre l'IP, quando arriverà la prossima generazione di IPvX, non funzionerebbe, poiché lo "switch ethernet" non potrebbe supportare quel protocollo. Inoltre, non puoi eseguire vari altri protocolli, come IPX e AppleTalk, o alcuni nuovi protocolli che stai sviluppando e testando a casa tua.
Gli strati di astrazione aumentano la velocità di sviluppo e incoraggiano l'innovazione, poiché non è necessario ricostruire l'intera casa per cambiare finestra.
Ora avresti potuto eseguire gli stessi switch Ethernet e migrare la tua rete tra IPX, IPv4 e IPv6, senza toccare affatto la tua LAN.
L'indirizzo IP e l'indirizzo MAC hanno scopi diversi (ma cruciali):
L'indirizzo MAC ottiene un frame da una scheda NIC alla successiva. L'indirizzo IP ottiene un pacchetto da un computer al server
Quindi, dato il seguente:
Source Computer <---> RouterA <---> RouterB <---> Destination Server
Ciò che dirige il pacchetto da "Origine" a "Destinazione" è l'indirizzo IP. Ma ciò che ottiene il pacchetto dal computer di origine a RouterA, quindi da RouterA a RouterB, quindi da RouterB a Destinazione sono gli indirizzi MAC.
Puoi vedere la relazione in questa illustrazione:
Il protocollo IP fornisce le basi per supportare la nozione di sottoreti e routing . Questo significa che l'IP non presume che la tua destinazione sia nella stessa rete; in caso contrario, il tuo traffico deve essere inoltrato attraverso un dispositivo intermedio come un router. IP ha campi TTL / Hop Limit e tali che lo supportano.
Ethernet presuppone che il MAC di destinazione sia direttamente raggiungibile quando i dati vengono spediti dalla sua interfaccia. La rete Ethernet è stata originariamente progettata quando il modo più comune per collegare i computer in una rete era attraverso una topologia di bus fisico. Anche se quasi tutto il traffico Ethernet cablato viene commutato ora, logicamente funziona ancora come una topologia di bus. Quindi il presupposto di base con Ethernet è che il nodo con il MAC di destinazione si trova fisicamente sulla stessa rete. Non esiste tale presupposto con IP.
Immagino che potresti "hackerare" Ethernet nel fare sottoreti e routing, ma potresti anche progettare un protocollo che non si basa sui dettagli e sui presupposti di basso livello di Ethernet, ed è per questo che abbiamo IP.
Per essere il più semplice possibile:
Un indirizzo Mac è l'indirizzo fisico o virtuale della scheda NIC o dell'interfaccia di rete. Dal punto di vista di una rete, è l'indirizzo fisico della scheda NIC di quel computer. È usato per portare informazioni a quel computer sul Livello 2 del modello OSI.
L' indirizzo IP è richiesto al livello 3. È necessario che comunichi con i computer su diverse sottoreti e dispositivi. L' indirizzo IP verifica "dove" si trova il dispositivo all'interno di una rete.
Gli indirizzi IP e gli indirizzi Mac vengono utilizzati in tandem. Il protocollo di risoluzione dell'indirizzo viene utilizzato per collegare i due elementi risolvendo gli indirizzi IP agli indirizzi Mac all'interno del livello di collegamento all'interno di una singola rete.
Potresti voler controllare anche qui per una spiegazione più approfondita.
L'indirizzo MAC rappresenta quelli hardware che ha assemblato è che i sistemi costanti e diversi nella nostra rete realizzati da diversi fornitori hanno una gamma molto diversa di mac addrees in modo che siano difficili da organizzare come rete. Ma utilizzando gli indirizzi IP possiamo sistemare i dispositivi nella nostra rete in arange ovvero indirizzi simultanei. Inoltre non possiamo inviare i nostri componenti aggiuntivi a reti esterne
Per cominciare, questa è un'ottima domanda, che tocca le basi della rete di base. La linea di fondo per la tua domanda è che non abbiamo davvero bisogno di un indirizzo MAC per raggiungere la connettività. Teoricamente, una rete potrebbe essere costruita implementando solo indirizzi IP! Tuttavia, alcune difficoltà pratiche possono derivare dall'utilizzo di un tale schema. Se si prevede di assegnare manualmente un indirizzo IP a ciascun dispositivo di rete, è possibile evitare le principali insidie. Tuttavia, se è necessario assegnare automaticamente gli indirizzi IP, come quando ci sono troppi nodi di rete da amministrare manualmente, allora non c'è modo di assicurarsi che a ciascun nodo sia assegnato esattamente un singolo indirizzo IP, o un numero predeterminato, perché non possono distinguere l'uno dall'altro, a meno che l'entità di distribuzione dell'indirizzo non sia in grado di identificare in modo univoco e inequivocabile il dispositivo richiedente, ad es. dal suo indirizzo MAC, che si presume sia univoco per qualsiasi dispositivo in una LAN. Un dispositivo così non identificabile può richiedere ripetutamente indirizzi IP aggiuntivi e, infine, provocare danni alla vitalità della rete. Tornando all'argomento, tutto ciò che serve per stabilire una rete solo IP, è lasciare che il livello di collegamento dati dell'adattatore di interfaccia di rete passi attraverso qualsiasi frame di dati che riceve, direttamente al livello di rete, indipendentemente da qualsiasi tipo di indirizzo MAC comparabile, dove può essere filtrato in base all'indirizzo IP di destinazione, anziché essere filtrato a livello di dati. Giusto per illustrare il concetto, supponiamo che una rete sia stabilita collegando le porte UART RS-232: i dispositivi UART non hanno indirizzi MAC o qualsiasi altro identificatore univoco, tuttavia, è possibile costruire una rete locale utilizzando UART e indirizzi IP solo, fornendo l'installazione dei driver UART corretti. Spero che questo passaggio ti abbia dato alcuni spunti sull'argomento.