O que acontece quando o ARP Request vem de uma sub-rede diferente?

3

O que acontecerá quando um pacote de solicitação ARP for enviado do roteador1 para o roteador2 nos dois casos a seguir? Uma resposta ARP será gerada ou o pacote de solicitação ARP será descartado?

  1. [roteador1] Intf1 (20.0.0.1/24) ======== (40.0.0.1/24)Intf2[router2]
  2. [roteador1] Intf1 (20.0.0.1/24) ======== (20.0.0.2/8) Intf2 [roteador2]

A topologia acima tem uma porta "Intf1" no roteador "router1" conectada a uma porta "Intf2" em outro roteador "roteador2" por meio de um link direto (por exemplo, um cabo de 1 Gbps).

    
por gsinha 10.06.2012 / 17:20

4 respostas

18

O ARP funciona apenas entre dispositivos na mesma sub-rede IP.

Quando o dispositivo A com endereço IP A precisa enviar um pacote ao dispositivo B com endereço IP B, a primeira coisa que ele faz é consultar sua tabela de roteamento para determinar se o endereço IP B pertence a uma sub-rede que pode acessar diretamente através de sua rede interface (s); se isso ocorrer, os dispositivos A usarão o ARP para mapear o endereço IP B para um endereço Ethernet físico e, em seguida, enviarão um quadro Ethernet para esse endereço.

Mas se os dois endereços IP estiverem em sub-redes diferentes, o dispositivo seguirá uma lógica completamente diferente: procurará na sua tabela de roteamento por uma rota até a rede de destino e enviará seu pacote ao roteador apropriado ( ou ao seu gateway padrão se não houver mais rota específica presente; Nesse cenário, o ARP será usado para encontrar o endereço de hardware do roteador , porque o endereço IP de destino já foi considerado não acessível diretamente, portanto, o pacote deve ser entregue a um roteador que pode cuide disso.

    
por 10.06.2012 / 18:54
2

Em ALGUNS casos (eu sei que o Linux pode se comportar dessa maneira, não tenho certeza dos outros), mas um host pode responder ao ARP na interface "errada". Pegue esta rede:

10.0.0.0/24  ==== Host A ==== 192.168.0.0/24

O host A tem um endereço nas duas redes; Digamos que 10.0.0.1 e 192.168.0.1

Se o Host A receber um ARP para 192.168.0.1 através da interface 10.0.0.1, ele responderá com o endereço MAC da interface 10.0.0.1.

Esse comportamento é controlado pelo arp_ignore kernel tunable (fonte: link :

arp_ignore - Define different modes for sending replies in response to received ARP requests that resolve local target IP addresses:
0 - (default): reply for any local target IP address, configured on any interface.
1 - reply only if the target IP address is local address configured on the incoming interface.
2 - reply only if the target IP address is local address configured on the incoming interface and both with the sender's IP address are part from same subnet on this interface.
3 - do not reply for local addresses configured with scope host, only resolutions for global and link addresses are replied.
4-7 - reserved
8 - do not reply for all local addresses.

Como acima, o padrão é responder por qualquer endereço local (ou seja, um endereço configurado no Host A), independentemente da interface em que o ARP é recebido.

    
por 03.11.2013 / 23:30
1

sua topologia não está clara para mim. você tem um endereço IP no roteador1 / intf1 e 2 endereços IP no roteador2 / intf2? no entanto, quando router1 / intf1 enviar uma solicitação arp para o roteador2 / intf2, o roteador2 enviará uma resposta arp e o roteador1 armazenará o endereço mac para o endereço IP 20.0.0.2 em sua tabela arp. isso funcionará porque 20.0.0.1/24 está incluído na rede 20.0.0.2/8. por que você configura os endereços IP dessa forma é um pouco estranho

    
por 10.06.2012 / 17:51
1

Existem duas respostas possíveis, nenhuma das quais tem a ver com arp, mas sim a tabela de encaminhamento.

Se houver uma instrução de rota no tráfego de encaminhamento de R1 destinado a todas as redes (rota padrão) fora de Intf1, as respostas de ARP serão geradas por R2 e serão recebidas por R1, em ambos os cenários.

ARP é um protocolo de camada de link que usa o endereço de hardware para se comunicar. Não tem dependências nem é restrito por protocolos de camada superior, como IP.

    
por 03.11.2013 / 18:39