Arp

6
ARP – Address Resolution Protocol Descobre o MAC remoto dado um endereço IP conhecido. Dentro do cabeçalho de um quadro ethernet de camada 2 temos o endereço MAC de origem e destino. Por sua vez, o pacote IP de camada 3 também está dentro do quadro ethernet, onde aloca o endereço IP de origem e destino. Em uma rede local, temos um host A que faz um ping para um host B e monta esse quadro ethernet com dois PDUs: um ethernet de camada 2 e um IP de camada 3. Para isso, o IP e MAC de origem ele já sabe, porém considerando os destinos, apenas o IP é conhecido. E o endereço MAC? ARP em uma LAN No esquema acima, o host A realiza um ping para 192.168.1.2, mas no quadro ethernet falta o MAC de destino. Por padrão uma máquina não conhece o endereço físico de outras máquinas, pois não tem por que guardar essas informações. Por isso o ARP é utilizado. Então o host A realiza uma consulta por meio de um ARP request em broadcast para o MAC ffff.ffff.ffff com todos os bits em 1. Dessa forma, todos na rede local recebem a requisição que é processada, e percebendo que é um ARP request com o IP de destino 192.168.1.2, apenas quem possui esse IP irá responder.

description

funcionamento do arp em uma rede ip

Transcript of Arp

ARP Address Resolution ProtocolDescobre o MAC remoto dado um endereo IP conhecido.

Dentro do cabealho de um quadro ethernet de camada 2 temos o endereo MAC de origem e destino.Por sua vez, o pacote IP de camada 3 tambm est dentro do quadro ethernet, onde aloca o endereo IP de origem e destino.Em uma rede local, temos um host A que faz um ping para um host B e monta esse quadro ethernet com dois PDUs: um ethernet de camada 2 e um IP de camada 3. Para isso, o IP e MAC de origem ele j sabe, porm considerando os destinos, apenas o IP conhecido. E o endereo MAC?ARP em uma LAN

No esquema acima, o host A realiza um ping para 192.168.1.2, mas no quadro ethernet falta o MAC de destino. Por padro uma mquina no conhece o endereo fsico de outras mquinas, pois no tem por que guardar essas informaes. Por isso o ARP utilizado.Ento o host A realiza uma consulta por meio de um ARP request em broadcast para o MAC ffff.ffff.ffff com todos os bits em 1. Dessa forma, todos na rede local recebem a requisio que processada, e percebendo que um ARP request com o IP de destino 192.168.1.2, apenas quem possui esse IP ir responder.O host responder com um ARP reply, mandado em unicast, pois ele tem o IP de quem fez a requisio, que enviado contendo o seu MAC. Agora sim. O host A de posse de todos os dados monta o quadro ethernet contendo os endereos IPs e MACs (origem e destino) e o envia. Esse quadro ethernet reconhecido pelo switch que o envia direto para o destino. O host de destino, assim que recebe a solicitao responde direto para quem a fez.

A funo do ARP essa: descobrir o endereo MAC quando voc est em uma rede local padro ethernet, o mesmo vale para wireless LAN. Estando em uma rede local os dois hosts comunicam-se diretamente, no necessrio roteador.

ARP em uma WANEm uma rede diferente como na WAN ou em outra subrede o roteador necessrio.

Neste caso, o host A quer falar com o servidor www.exemplo.com.br localizado na internet com o IP de internet: 200.200.200.1 descoberto pelo DNS.O host A analisa o IP e percebe que no est na mesma rede que ele. Ento ele envia um ARP request solicitando o MAC do gateway. Na prtica, isso no pode ser visualizado por meio de um sniffer que captura tudo o que acontece um uma rede, porque quando configuramos um default gateway no computador ele j pede o MAC daquele gateway.O host A quando comea a funcionar na rede, antes mesmo de ele se comunicar com qualquer um ele j pediu o MAC do gateway default.Isso acontece a maioria das vezes porque h vrias coisas funcionando dentro do Windows ou Linux, por exemplo, que obriga ele a pegar o IP do gateway para fazer algumas consultas, ento ele provavelmente j tem isso mapeado.Mas supondo que ele no tenha nada disso configurado (O IP do gateway pode ser configurado na placa de rede manualmente ou via DHCP) e no saiba o endereo do gateway.Nesse caso, ele far um ARP request solicitando o IP do gateway. O host A quando est se comunicando com algum que no est na mesma rede que ele, pega o MAC do gateway porque ele no est na mesma rede e ele tem que mandar para algum que conhea aquela rede remota, normalmente quem conhece a rede remota o gateway.O gateway est configurado na placa de rede justamente por isso, para que voc possa se comunicar com redes diferentes da sua. Para se comunicar com algum da sua prpria rede voc no precisa de gateway.Quando o host A montar o quadro de camada 2 o endereo de origem o seu, agora o MAC de destino no vai ser o do IP 200.200.200.1, e sim o do gateway. Nesse mesmo quadro, o IP de origem seu e o de destino o 200.200.200.1.Por isso o gateway padro necessrio, seno deveramos configurar todos os computadores de uma rede como roteador contendo tudo quanto rota para a internet e isso no faz sentido. Os computadores ficam o mais limpo possvel dessas informaes (conhecer tudo da internet) e o gateway padro faz todo esse servio.Lembrando tambm, que nem todo gateway padro conhece tudo quanto rota para internet. s vezes necessrio ele consultar outros gateways que esto na internet e esses sim conhecem tudo: so os full routers (routing).Existem computadores que necessitam ter um protocolo de roteamento e saber como isso funciona. H servios que exigem isso, e seus servidores (no computadores comuns) podem funcionar com protocolos de roteamento como o RIP e OSPF. Ou seja h servidores que funcionam como gateway.

ARP em redes WAN com mais de um roteador

O host A faz um ping para o host B e analisa: est na mesma rede que eu? No. Est em rede diferente. Em seguida verifica se h um gateway configurado em sua placa de rede e faz um ARP request para o MAC do gateway R1. R1 devolve o quadro contendo seu MAC para o host A que envia a solicitao de ping para R1 novamente. O quadro agora contm o MAC de origem do host A e o de destino o MAC de R1, o IP de origem do host A e o de destino o do host B.R1 consulta sua tabela de roteamento e v que deve sair pela interface de WAN 0, chegando a R2, tambm consulta sua tabela e sai pela interface de WAN 1, j em R3, que olha sua tabela e percebe que deve mandar para a rede local LAN 1 onde o host B est.Note que de R1 para R2, assim como de R2 para R3 no necessrio fazer ARP, pois so interfaces seriais ponto-a-ponto que tem os endereos todos em 1. Ento eles simplesmente mandam pra frente.Quando em R3, como chegou-se em uma LAN o roteador no sabe qual o MAC do host B, ento ele realiza um ARP pedindo o MAC do host B que devolve, agora sim, o roteador envia os pacotes mandados pelo host A para o host B.O encaminhamento em cada meio fsico, por exemplo, nos switches e links seriais tratado localmente, no importando o que est sendo mandado. O quadro de camada 2 em qualquer um dos meios fsicos citados sempre alterado, na LAN o quadro ethernet, na WAN ele pode ser PPP, Frame Relay ou HDLC.O pacote IP contendo em si as mensagens do TCP, que por sua vez contm o contedo que a aplicao mandou nunca alterado.

Enfim, o ARP fundamental em uma rede, seja ela LAN ou WAN, padro ethernet ou wireless para que a comunicao funcione direito.

Tabela ARPA tabela ARP no Windows pode ser visualizada via cmd pelo comando arp a, onde se encontram apenas endereos da prpria rede, um micro nunca coloca um endereo IP ou MAC de uma rede diferente da sua em sua tabela ARP. So endereos de multicast usados pelo Windows para alguns servios padro, endereos do gateway (lgico e fsico) entre outros. Ento a tabela guarda endereos MAC com quem o Windows conversou. Alguns endereos so aprendidos de maneira dinmica, j outros so estticos configurados pelo Windows, como o endereo de broadcast mapeado estaticamente pelo sistema. Tudo que aprendido dinamicamente, aprendido por um tempo e depois apagado.Ataques ARPUm computador de uma rede pode fazer-se passar pelo gateway fazendo com que quem o solicite acabe se conectando com o computador errado, o mesmo redireciona para o gateway que devolve a solicitao e dessa forma, espiona o solicitante. Esse ataque de mentir o endereo ARP chamado de ARP spoofing.

Gratuitous ARP

O computador manda um ARP perguntando o IP dele mesmo, no exemplo acima, o host B de IP 10.0.0.2 manda um ARP request perguntando se algum conhece o IP 10.0.0.2. Isso utilizado para verificar se no h IP duplicado na rede. Ele tambm pode ser utilizado para fazer ataques, por exemplo o ARP spoofing, porque lhe devolvido os endereos MAC dos computadores locais.