Por que é necessária a tradução de endereços IP para MAC?

9

Em redes que usam o protocolo TCP / IP, por que o endereço IP é convertido em um endereço MAC?

Quero dizer, quando todo dispositivo conhece seu IP, por que usar ainda o endereço MAC e não usar o número IP como endereço diretamente?

user32569
fonte

Respostas:

18

A principal diferença é que o endereço IP é usado por IP, que é um protocolo de rede, e o endereço MAC é usado por Ethernet, um protocolo de camada de link (2). O IP pode ser executado em diferentes protocolos da camada 2, portanto, não inclui a funcionalidade "acesso à mídia". Você pode executar IP através de linhas seriais, Ethernet, DSl, ISDN, etc.

Por exemplo, o DHCP fornece endereços IP dinâmicos por Ethernet; o servidor DHCP precisa do endereço MAC para poder atribuir um endereço IP a um PC.


fonte
2
+1 Esta é realmente a questão principal. O IP pode ser executado em diferentes camadas físicas. Diferentes camadas físicas requerem diferentes endereços físicos. MAC é o endereçamento usado pela Ethernet. E existem outros protocolos baseados em Ethernet que não usam IP, incluindo BootP, DUX e IPX. A mesma Ethernet física também pode lidar com IPv4 e IPv6 simultaneamente. Mas, no final, tudo é entregue para um MAC na Ethernet.
Rob Napier
Também é importante entender que em momentos diferentes você verá peças diferentes. Seu computador pode receber um pacote de alguém ao qual precisa responder e ainda não conhece o MAC (o mac que ele vê seria do dispositivo de conexão mais próximo, mas isso não é importante) e precisa arp ou o inverso e Rarp. Ou ter o nome do host, mas precisa do mac ou ..... qualquer número de diferentes configurações e combinações de protocolo
PsychoData
5

Porque o TCP / IP é usado na Ethernet , que usa endereços MAC.

Jakob Borg
fonte
4

Outra maneira de analisar isso é fazer a pergunta inversa: Por que precisamos de endereços IP quando já temos endereços MAC atribuídos ao hardware?

Isso foi discutido no episódio # 29 do podcast Security Now ( transcrição em HTML ).

Com endereços MAC, nossos computadores podem se comunicar diretamente com uma única máquina. Mas, para saber como chegar lá, precisamos ter nossos pacotes roteados para ele. É impraticável ter uma tabela global de pesquisa de endereços MAC em cada um de nossos computadores.

Os endereços IP, por outro lado, são organizados hierarquicamente. Nossos computadores podem determinar quais endereços IP estão na LAN e o restante é enviado ao gateway da LAN (por exemplo, um roteador doméstico). Depois de sair da LAN, roteadores sucessivos examinam o endereço IP e encaminham os pacotes para outro roteador. Eventualmente, um roteador com o endereço IP de destino na LAN pode identificar o endereço MAC e enviar o pacote ao computador de destino.

Doug Harris
fonte
Por que os endereços MAC não poderiam ser inteligentes como o IP e foram implementados de forma a serem organizados hierarquicamente? Eles eram simplesmente descuidados ou há uma restrição que a torna impossível?
Pacerier
2
Os endereços MAC são atribuídos pelos fabricantes de hardware e eles não têm idéia de onde os dispositivos de rede serão implantados nem em qual configuração. Existem muitos sites (como este ) que permitem identificar o fabricante das placas de rede por endereço MAC.
Doug Harris
Bom argumento (e thx explicação!)
Pacerier
3

Eles são para diferentes camadas na pilha de rede. O endereço MAC é sobre a camada de rede Ethernet e o endereço IP, bem, sobre a camada IP. Você pode usar o IP em diferentes transportes, como o SLIP, onde não há MAC, porque não há Ethernet. Você também pode usar um protocolo diferente do IP sobre Ethernet, se desejar.

Se você pensar bem, se eu discar através de uma conexão SLIP, um pacote IP poderá começar com o MAC não associado e, em seguida, ter um MAC diferente à medida que passa de um roteador para outro, à medida que é encaminhado pela Internet para o destino IP final.

Ukko
fonte
3

É garantido que os endereços MAC sejam exclusivos da máquina (a placa de rede normalmente contém o endereço MAC) e imutáveis, enquanto você pode redefinir o endereço IP em qualquer máquina.

Além disso, os endereços IP públicos podem ser compartilhados por uma empresa inteira usando a Conversão de endereços de rede; portanto, não é garantido que os endereços IP públicos tenham uma correspondência individual com uma máquina ou pessoa.

Robert Harvey
fonte
3

Eu poderia responder sua pergunta com outra pergunta: você tem um número de telefone; então, por que precisa de um número de previdência social / número de identificação nacional?

Em outras palavras, eles servem a propósitos diferentes. Um é para identificar quem você é (SSN, MAC), enquanto o outro é para definir como entrar em contato com você (número de telefone, endereço IP).

Além disso, é possível entrar em contato com alguém no telefone se ele não tiver um SSN (país diferente, por exemplo), assim como é possível entrar em contato com alguém na Internet se não tiver um MAC (tipo diferente de camada de link) . Diferentes camadas de link têm métodos diferentes para identificar os destinos e as fontes de pacotes de dados.

Christopher Parker
fonte
1

O IP é definido no SO ou no software do driver da sua placa de rede ou fornecido pela sua rede e pode ser alterado dinamicamente. O MAC é um identificador para sua placa de rede, ou seja, o hardware. Não há um relacionamento 1 para 1 entre eles.

Tomas Aschan
fonte
0

Você não sabe o endereço MAC do stackoverflow.com porque não está na sua rede local. Os endereços MAC são usados ​​como um identificador para o próximo salto na cadeia. O "IP" é usado apenas em um protocolo que tem uma dica de em que direção deve enviar seu pacote (qual gateway usar em seguida).

baloo
fonte
0

Como os endereços MAC são necessários para a comunicação na camada de link (os endereços IP são usados ​​uma camada acima na camada IP).

riwalk
fonte
0

Vamos dar um exemplo

Se você se candidatar a um emprego na empresa, eles lhe darão isso sem conhecer sua identidade? certamente não .... então sua prova de identidade real é o endereço Mac

e quando você ingressar na empresa, eles fornecerão outro ID de funcionário para se comunicar entre os funcionários da empresa. esse é o endereço IP.

seu ID de funcionário pode ser modificado se você mudar de empresa, mas suas informações reais sobre você nunca poderão ser alteradas (idade, nome etc.) ....

user294441
fonte
Então, eu posso mudar minha identidade real? : P Mas isso não é realmente uma resposta, apenas uma metáfora meio esquisita e errada #
PsychoData
0

Sua pergunta é muito legítima! A verdade é que, teoricamente, um sistema somente IP pode ser criado e funcionar bem sem a necessidade de um sistema de endereçamento MAC. A camada Data Link pode ser feita para ignorar qualquer filtragem MAC, deixando essa funcionalidade para a camada Rede, para filtrar de acordo com seu próprio endereço IP. Esses sistemas existiam no passado, como redes baseadas em dispositivos de conexão através de suas portas UART (por exemplo, RS232). Obviamente, essas interfaces de rede não carregavam endereços MAC ou qualquer outra forma de uma identidade física exclusiva. No entanto, pode tornar a atribuição central de endereços IP, por exemplo, por um servidor DHCP, um pesadelo, porque não haveria maneira de garantir que um dispositivo não receba mais do que o número predeterminado de endereços IP permitidos para cada dispositivo. Além disso, seria difícil identificar de forma inequívoca e individual cada dispositivo. O endereço MAC sendo único, pelo menos dentro de uma sub-rede, serve como um token de identificação exclusivo. Obviamente, atribuir endereços IP individualmente a dispositivos pode resolver o problema, mas onde um grande número de dispositivos está presente em uma rede, torna-se impraticável estabelecer e manter esse esquema.

user315745
fonte
-3

O endereço IP é como códigos postais ou códigos de países ou códigos ISD, o que simplifica o endereço de localização, caso contrário é muito difícil classificar todo o endereço MAC ou identificar o local exato, caso contrário o computador levará muito tempo para identificar o endereço ou mantê-lo. enorme banco de dados de endereço MAC no computador local.

Shanti Swaroop
fonte