Se um ou mais endereços IP podem ser mapeados para o mesmo endereço MAC, por que os endereços MAC são necessários? Embora o MAC seja um endereço de camada de enlace de dados e o IP seja um protocolo de camada de rede, por que um IP não é suficiente?
Esta pergunta fala sobre por que os endereços MAC não são suficientes, mas eu queria saber por que os endereços IP não são suficientes.
No início, não havia essa separação entre as camadas, e os endereços Ethernet eram usados diretamente como endereços de host. Mas assim que você tiver mais de um protocolo de camada de rede, a separação se tornará inevitável, pois o endereço de "rede" do protocolo original - cujo formato é definido naquele ponto - se tornará o endereço de "camada de enlace de dados" para os protocolos recém-introduzidos .
Originalmente, a Ethernet não foi construída para transportar IPv4 (que ainda não existia) – ela foi construída para transportar o conjunto de protocolos Pup da Xerox , e a "Experimental Ethernet" inicial usava diretamente endereços de 8 bits que eram os mesmos que 8 Endereços de filhote de -bit.
Então, quando outras pessoas escreveram especificações sobre como transportar IPv4 pela Ethernet Experimental , esses endereços Pup de 8 bits se tornaram os endereços "MAC" de 8 bits do ponto de vista do IPv4.
Mais tarde, quando a Xerox mudou para o endereçamento de 48 bits (porque 8 bits não eram longos o suficiente), eles novamente usaram diretamente o endereço Ethernet de 48 bits como parte do endereço do host XNS. E neste ponto eles já estavam na situação em que os endereços Pup de 8 bits tinham que ser traduzidos para endereços Ethernet de 48 bits.
Agora imagine que o hardware Ethernet trabalhou diretamente com endereços IPv4 de 32 bits. Se fosse esse o caso, para transportar outros protocolos, como IPv6 em redes existentes (sem ter que copiar e substituir cada switch e NIC), você ainda precisaria incluir um cabeçalho IPv4 residual abaixo do novo cabeçalho IPv6 e precisa de uma maneira de mapear dinamicamente o(s) endereço(s) IPv6 de um nó para seu endereço IPv4 (soa muito como ARP, não é), e então você ainda acabaria com exatamente a mesma situação de hoje, exceto o "MAC" endereço seria de 32 bits.
(De certa forma, você poderia dizer que isso é exatamente o que aconteceu. Como os endereços Ethernet eram (em parte) endereços XNS, você poderia realmente dizer que o endereço MAC de 48 bits era originalmente um endereço "IP" de outro mundo - apenas tornou-se um endereço "MAC" quando a Ethernet foi adaptada para transportar diferentes tipos de protocolos que não usavam o mesmo formato de endereço.)
A causa em todos os casos é que o endereço da "camada de link" não é apenas conhecido pelo sistema operacional, mas também usado pelo hardware. Por exemplo, na antiga Ethernet de barramento compartilhado (onde cada nó via cada pacote), o hardware olhava para o campo "destination MAC" e descartava os pacotes indesejados para que a CPU permanecesse intacta.
Com melhorias posteriores na Ethernet, os endereços MAC não se limitam apenas aos hosts – eles também são rastreados por switches Ethernet. Cada switch cria uma "tabela de roteamento Ethernet" na memória que diz quais endereços MAC (L2) estão atrás de qual porta física (L1), para que ele entregue corretamente os quadros L2 apenas para a porta específica que os deseja (em vez de inundar cada pacote em toda a ethernet).
Isso significa que qualquer formato de cabeçalho e endereço escolhido, literalmente é incorporado ao hardware de todas as placas de rede Ethernet e todos os switches Ethernet, e torna-se obrigatório o uso por todos os outros protocolos da camada de rede.
é fácil projetar uma interface física que usa apenas dados IP e você pode eliminar completamente o endereço MAC. Você teria que repensar como o dhcp funciona, já que o endereço mac é essencial para como o dhcp funciona hoje, mas muitas transações dhcp já não usam macaddress como o id exclusivo do cliente. no lado negativo, grande parte do silício envolvido terá que inspecionar uma porção maior e mais dinâmica do cabeçalho. imagine se seu switch e adaptador ethernet tivessem que ser substituídos para passar de ipv4 para ipv6.
Além disso, existem muitos recursos de rede, como ligação e assim por diante, que teriam que ser redesenhados. mesmo agora, as redes ip não são universais, por exemplo, redes de canal de fibra e infiniband não falavam ip por um tempo, e muitas implantações não têm interesse em IP nessas redes.
O IP está devorando lentamente grande parte da rede, assim como o http3 está devorando lentamente o TCP. Portanto, é perfeitamente possível que um novo design de rede pule a operação com endereços de maca, mas isso provavelmente só aconteceria dentro de uma fábrica de nuvem como aws ou google.
MAC ou endereço de controle de acesso de mídia iniciado por um identificador exclusivo para um dispositivo. Também foi chamado de BIA ou Burned In Address. Estava no firmware.
Em seguida, grandes empresas começaram a encomendar adaptadores de rede com um determinado intervalo de endereços MAC. O que começou a destruir a singularidade.
Agora, os celulares costumam usar endereços MAC aleatórios.
Ainda assim, na maioria das vezes, posso usá-lo para identificar dispositivos na rede, especialmente quando quero atribuir alguns deles endereços IP estáticos.