melhor compreensão do protocolo arp

1

Não tenho certeza sobre o protocolo ARP.

Um exemplo de rede é mostrado abaixo:

rede de exemplo

Quero enviar uma mensagem de A para B, o protocolo ARP funcionará:

  • Primeiro Aenviará o endereço MAC R1e o BIP
  • Em seguida, R1ele se comunicará R3e R1envia o R3endereço MAC, mas também envia Bo IP.
  • Depois que isso se R3comunica R4, R3envia o R4endereço MAC, mas Bo IP
  • No final, o pacote chega B.

  • Minha lógica está correta?
  • É assim que funciona quando preciso alterar mais de 2 nós?
  • Além disso, se isso funcionar assim, como o nó anterior sabe o endereço MAC do próximo nó?
burrito
fonte

Respostas:

0

Você está confundindo duas coisas - ARP e Roteamento .

ARP

O ARP (Protocolo de resolução de endereço) é usado para identificar o endereço de hardware de um host na rede local (ou seja: a mesma sub-rede).

Se A(IP 10.0.1.2/24) quiser se comunicar com outro host ( C) com endereço IP 10.0.1.5, o seguinte acontecerá se esse host não estiver no cache:

  1. Atransmite uma " solicitação ARP "
    • Usando o endereço MAC de transmissão ( ff:ff:ff:ff:ff:ff)
    • Solicitando que qualquer host com o Endereço IP 10.0.1.5responda
  2. Se o host remoto ( C) receber esse pacote, ele responderá com o endereço MAC correto.

O ARP também pode ocorrer de forma pró-ativa, com os hosts se " anunciando ", na tentativa de reduzir a latência incorrida pela pesquisa, embora isso possa facilmente levar a falsificação e envenenamento.

Encaminhamento

O roteamento permite que um host acesse outros hosts que estão fora da rede " local ". Por exemplo, host Bpossui um endereço IP de 10.0.5.2, que está fora Ada 10.0.1.0/24sub-rede do host .

Para obter pacotes para o host B, o host Adeve enviá-los através de um roteador (também conhecido como " gateway "). Se nenhuma rota padrão for fornecida (ou nenhuma rota específica correspondente estiver configurada), o host estará inacessível.

Se uma rota não existe, então Aserá:

  1. Use o ARP para localizar o R1endereço MAC do roteador ( )
  2. Envie um pacote endereçado ao BIP ( 10.0.5.2), mas usando R1o endereço MAC do roteador
  3. O roteador R1executará a mesma pesquisa, enviando um pacote para o endereço MAC de R3(ou R2), mas com o endereço IP de B.
  4. Isso continua até que o pacote chegue Bou até que um roteador declare que não pode rotear para o host especificado.

Se isso funcionar assim, como o nó anterior sabe o endereço MAC do próximo nó?

O ARP é usado em cada etapa para obter o endereço MAC do próximo host. R1deseja encaminhar um pacote via R3, para que ele use o ARP para obter R3o endereço MAC.

Attie
fonte
3

O protocolo ARP é usado apenas para descobrir o endereço MAC associado ao endereço IPv4 de um host no link local.

No seu exemplo, quando o host A deseja enviar uma mensagem ao host B, ele a envia ao roteador apropriado para entrega. O roteador escolhido depende da tabela de roteamento no host A. O roteador está no mesmo link que o host A e para enviar a mensagem ao host do roteador A precisa do endereço MAC do roteador R1. Se o host A não puder encontrar o endereço MAC do roteador R1 em seu cache ARP, ele utilizará o protocolo ARP para descobrir o endereço MAC do roteador R1. Uma vez que o endereço MAC é conhecido, o pacote pode ser enviado.

Depois que o roteador R1 recebe a mensagem, ele repete o que o host A fez: consulta sua tabela de roteamento, seleciona o roteador do próximo salto (por exemplo, R3). Se R1 não souber o endereço MAC R3, ele usará o protocolo ARP para descobrir. Depois de ter o endereço MAC de R3, ele é usado para enviar a mensagem para R3.

Isso se repete até que a mensagem chegue ao host de destino B (ou ocorre algum erro).

Johan Myréen
fonte
0

Basicamente, algum nó X enviará uma solicitação ARP sempre que tiver um endereço IP para algum nó Y, mas não souber o endereço MAC de Y. Nesse caso, o nó Y com esse endereço IP responderá com seu próprio endereço MAC .

Essas atribuições são armazenadas em cache em cada host e as novas mensagens são enviadas apenas se as informações não puderem ser encontradas no cache.

Portanto, não há uma ordem fixa de mensagens quando A deseja se comunicar com B; vai depender do que a comunicação já aconteceu antes.

Observe também que, como você tem segmentos de LAN diferentes entre os nós, cada nó solicitará o endereço IP do próximo nó ("próximo salto") e não o endereço IP de B. Portanto, você precisa de tabelas de roteamento adequadas para que tudo isso trabalhos.

dirkt
fonte