Todos os hosts da LAN compartilham a mesma tabela ARP ou os mantêm individualmente?


7

Estou apenas aprendendo sobre ARP. Eu estou um pouco confuso. Minha confusão é melhor explicada em um cenário.

O host A está se comunicando com o host B. O host A sabe o endereço IP do host B, mas não o endereço MAC. Portanto, ele envia uma solicitação de ARP para a LAN e o Host B responde com seu endereço Mac. Portanto, agora o Host A está ciente do endereço Mac do Host B e pode fazer uma entrada com o endereço Mac do Host B em uma tabela ARP.


Minhas perguntas sobre a tabela ARP

  1. O Host A está atualizando sua própria tabela ARP ou uma tabela ARP compartilhada entre toda a LAN?

** A pergunta 2 é aplicável apenas se a resposta à pergunta 1 for "cada host mantém sua própria tabela ARP"

  1. Se o ARP capaz não for compartilhado entre todas as LANs, outros hosts na mesma LAN seriam informados dessas novas informações que o Host A acabou de receber, se esses outros hosts ainda não as tivessem?
    • Deixe-me expandir sobre isso: vamos assumir um host C e um host D. Agora que o host A inseriu o MAC do host B em sua tabela ARP, o host C e o host D seriam informados do endereço MAC do host B em suas respectivas tabelas ARP?

Alguma resposta o ajudou? Nesse caso, aceite-o para que a pergunta não fique sempre aparecendo, procurando uma resposta. Como alternativa, você pode postar e aceitar sua própria resposta.
Ron Maupin

Respostas:


19

Na verdade, toda interface em um dispositivo possui sua própria tabela ARP. Um host pode ter várias tabelas ARP (uma para cada interface que possui). As tabelas ARP não são compartilhadas entre hosts ou mesmo entre interfaces no mesmo host, mas um host pode ouvir o tráfego ARP na rede e atualizar a tabela ARP da interface na qual o tráfego ARP é ouvido.


9

Para responder à pergunta de outra maneira: quais mecanismos podem estar disponíveis para compartilhar uma tabela ARP? Este é um dos fundamentos do IP sobre Ethernet (e qualquer rede semelhante da camada 2). Se um dispositivo estivesse tentando compartilhar informações ARP com outro dispositivo, ele teria que fazer algo como transmitir as entradas da tabela ARP, saber quando obter atualizações quando um dispositivo estiver inicializando, etc: tudo isso é muito mais complexo do que o modo que o ARP funcione, ou seja, que um determinado dispositivo seja responsável por falar aos outros sobre si mesmo e transmita consultas quando um dispositivo quiser saber sobre outro.


4

Vamos analisar cada pergunta especificamente e expandir suas perguntas para ajudá-lo a entender melhor as situações que podem ocorrer.

1. O Host A está atualizando sua própria tabela ARP ou uma tabela ARP compartilhada entre toda a LAN?

Não, uma tabela ARP não é compartilhada por toda a LAN. Cada dispositivo possui sua própria tabela ARP. É responsabilidade do dispositivo gerenciar suas próprias tabelas ARP, incluindo a interface local associada à entrada.

2. Se o ARP capaz não for compartilhado entre toda a LAN, outros hosts na mesma LAN seriam informados dessas novas informações que o Host A acabou de receber, se esses outros hosts ainda não as tivessem?

A resposta curta para um ambiente comutado é não. Se você visualizar o formato de um pacote ARP , verá que o pacote inclui o endereço MAC e o IP do hardware do remetente. Quando um pacote de solicitação ARP é enviado do dispositivo solicitante, o pacote é enviado para o endereço de broadcast e é encaminhado pelo switch para todas as interfaces (dispositivos) na LAN. Isso permite que o dispositivo com o endereço IP solicitado responda e direcione o pacote de resposta ao endereço IP e MAC específico do dispositivo que o solicitou. É responsabilidade dos comutadores de rede manter uma tabela de endereços MAC para encaminhar o pacote apenas para a interface no comutador do dispositivo específico no pacote. Aqui está um exemplo de um pacote ARP de saída de 10.0.0.1 na pesquisa de 10.0.0.2.

15:00:37.395072 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 10.0.0.2 tell 10.0.0.1, length 46

Dito isto, é possível que os dispositivos enviem um pacote de resposta ARP gratuito anunciando que possuem o endereço IP específico. O pacote de resposta ARP gratuito será enviado para o endereço de broadcast, novamente, sendo encaminhado para todos os dispositivos na LAN. Nessa situação, cada dispositivo que recebe esse pacote deve escolher o que fazer com o pacote. Se eles não tiverem o endereço em sua tabela ARP, geralmente o ignoram. No entanto, se eles tiverem esse endereço em sua tabela ARP, deverão atualizar as informações que foram alteradas. Aqui está um pacote de exemplo da 10.0.0.2 anunciando para a LAN:

15:00:38.462135 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 10.0.0.2 (ff:ff:ff:ff:ff:ff) tell 10.0.0.2, length 46

Todo o comportamento detalhado acima evita que os dispositivos desperdiçam ciclos de processamento em pacotes que eles não precisam e memória nas entradas da tabela que eles não precisam.


2

Pense na tabela ARP de endereços MAC, como um livro de números de telefone à moda antiga.

Todos tinham um notebook ao lado do telefone e escreviam no número de telefone (o endereço MAC) das pessoas (dispositivos) com quem conversavam / ouviam falar.

Toda casa é um computador, toda linha telefônica é uma interface e toda interface possui sua própria tabela ARP de endereços MAC.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.