Trabalho de laboratório sobre ARP Redes de Computadores I - 2005/2006 LEIC - Tagus Park Semana de 5 a 9 de Dezembro 1 Introdução O objectivo desta aula é a familiarização com conceitos básicos do protocolo Ethernet e a sua ligação ao protocolo IP. Deverão seguir as instruções contidas neste guia e responder às questões colocadas. No final da aula cada elemento do grupo deverá responder às questões recorrendo à sua área privada do Fenix. Após terminar a introdução da ficha, deve chamar o docente, para que este possa verificar a entrega. As questões devem ser respondidas tendo em conta as informações apresentadas pela ferramenta ethereal ou pelas aplicações utilizadas. Nas questões de escolha múltipla deve assinalar todas as respostas válidas. Nesta aula irá necessitar de manipular a tabela de ARP do seu PC. Para a apagar deve emitir o seguinte comando como root: ip neigh flush dev eth0 Para a consultar: ip neigh show dev eth0 Para consultar o seu endereço MAC pode emitir o comando: ip link show dev eth0 2 Carregamento de uma página 2.1 Procedimento Inicie a captura de tráfego utilizando o Ethereal em modo não promiscuo. Lance o browser firefox, limpe a sua cache e aceda ao endereço http://inesc- 0.tagus.ist.utl.pt/ ricardo/rci/ Termine a captura de pacotes. Seleccione e marque o pacote onde é enviado o pedido HTTP. Desligue a análise do protocolo IP, escolhendo o menu Analize, Enable Protocols, desmarcar o protocolo IP, escolher OK e NÃO Save. Analise o pacote anteriormente seleccionado. 1
2.2 Questões 1. Qual o endereço MAC para o qual o pacote é enviado (formato 00:00:00:00:00:00)? 2. A quem pertence esse endereço MAC? ( ) Ao servidor inesc-0.tagus.ist.utl.pt. ( ) Ao default gateway configurado no PC. ( ) Ao PC que está a utilizar. ( ) Ao proxy do tagus. 3. Qual o tamanho do cabeçalho Ethernet (em byte)? 4. Qual o posição, dentro da trama capturada, do primeiro byte da mensagem HTTP (o primeiro byte da trama é o 0)? 5. Quais os cabeçalhos contidos entre o cabeçalho Ethernet e o inicio da mensagem HTTP? ( ) MAC ( ) TCP ( ) DNS ( ) UDP ( ) IP ( ) HTTP ( ) ICMP 6. Procure o pacote onde começa a resposta HTTP. A quem pertence o endereço MAC de destino? ( ) Ao servidor inesc-0.tagus.ist.utl.pt. ( ) Ao default gateway configurado no PC. ( ) Ao PC que está a utilizar. ( ) Ao proxy do tagus. 3 ARP 1 3.1 Procedimento Volte a ligar a análise do protocolo IP no Ethereal. Determine o endereço MAC do seu PC. Efectue um ping ao servidor 1 (endereço IP a comunicar pelo docente). 2
3.2 Questões 1. Qual o endereço MAC do servidor 1? 2. Porque consegue o seu PC conhecer o endereço MAC do servidor 1? ( ) Emitiu um pedido ARP. ( ) Já o conhecia. ( ) O servidor 1 está no mesmo domínio de colisão ethernet. ( ) Não necessita de o saber. 3. Para que endereço MAC são enviados os pedidos ARP? 4. De que endereço MAC vêm as respostas ARP? ( ) 00:00:00:00:00:00 ( ) ff:ff:ff:ff:ff:ff ( ) Do endereço MAC da máquina que tem o IP. ( ) Do endereço MAC da máquina que conhece o endereço MAC pedido e responde. 5. Para que endereço MAC vão as respostas ARP? ( ) 00:00:00:00:00:00 ( ) ff:ff:ff:ff:ff:ff ( ) Para o endereço MAC de quem fez o pedido. ( ) Para o endereço MAC da default gateway. 6. Os mensagens ARP são transportadas sobre: ( ) IP ( ) UDP ( ) Ethernet ( ) TCP 4 ARP 2 4.1 Procedimento Determine qual o seu default gateway usando o comando ip route. Apague a tabela de ARP e efectue um ping ao default gateway encandeando os dois comandos numa só linha separados por um ;. Efectue um ping a www.ist.utl.pt. 4.2 Questões 1. Quantos pedidos ARP foi necessário efectuar? 3
2. Não foram efectuados mais pedidos ARP porque? ( ) O destino do segundo ping não se encontra no mesmo domínio ethernet. ( ) O destino do segundo ping não se encontra na mesma subrede IP que o cliente. ( ) Foi usado o endereço MAC de broadcast. ( ) Devido à cache ARP no destino. ( ) Devido à cache ARP no seu PC. 5 ARP 3 5.1 Procedimento Efectue um ping ao servidor 1. Efectue um ping ao servidor 1. 5.2 Questões 1. Quantos pedidos ARP foi necessário efectuar? 2. Não foram efectuados mais pedidos ARP porque? ( ) O destino do segundo ping não se encontra no mesmo domínio ethernet. ( ) O destino do segundo ping não se encontra na mesma subrede IP que o cliente. ( ) Foi usado o endereço MAC de broadcast. ( ) Devido à cache ARP no destino. ( ) Devido à cache ARP no seu PC. 6 ARP 4 6.1 Procedimento Efectue um ping em broadcast para a subrede onde o seu PC se insere. 6.2 Questões 1. Quantos pedidos ARP foi necessário o seu PC efectuar? 4
2. Não foram efectuados mais pedidos ARP porque? ( ) O destino do ping não se encontra no mesmo domínio ethernet. ( ) O destino do ping não se encontra na mesma subrede IP que o cliente. ( ) Foi usado o endereço MAC de broadcast. ( ) Devido à cache ARP no destino. ( ) Devido à cache ARP no seu PC. 7 Tabela de ARP 7.1 Procedimento Desligue o envio de respostas ARP no seu PC emitindo o comando: ip link set dev eth0 arp off Comunique o seu endereço IP e MAC para que o docente o escreva no quadro. Espere que todos os seus colegas terminem a execução do comando anterior. Efectue um ping em broadcast para a subrede onde o seu PC se insere. Efectue um ping ao PC de um colega. Manipule a tabela de ARP de forma a conseguir fazer o ping ao PC de um colega. É necessário coordenar esforços com o outro grupo? Chame o docente para ver o comando que emitiu. 7.2 Questões 1. Obteve respostas ao ping em broadcast (para além do seu PC)? ( ) Sim ( ) Não 2. Conseguiu realizar o primeiro ping ao PC de outro colega? ( ) Sim ( ) Não, porque este não enviou resposta. ( ) Não, o meu PC não conseguiu enviar o pedido ICMP. 8 ARP gratuito 8.1 Procedimento Abra no Ethereal a captura disponibilizada para a aula sobre DHCP. Observe as mensagens ARP enviadas pelo cliente DHCP após receber o endereço IP. 5
8.2 Questões 1. Quantas são as mensagens ARP enviadas pelo cliente nesta ocasião? 2. Há diferenças entre as mensagens? ( ) Sim ( ) Não 3. São enviadas várias mensagens pois... ( ) A ethernet não garante a fiabilidade. ( ) O IP não garante a fiabilidade. ( ) O UDP não garante a fiabilidade. ( ) Para aumentar a probabilidade da mensagem ser recebida pelas máquinas na mesma subrede. 4. Porque é enviada a mensagem? ( ) Para dar a conhecer o endereço MAC a algumas das máquinas na mesma subrede, por forma a tornar a futura comunicação mais expedita. ( ) Para dar a conhecer o endereço MAC a todas as máquinas na mesma subrede, por forma a tornar a futura comunicação mais expedita. ( ) Para garantir que todo o futuro tráfego destinada ao IP recebido vai para esta máquina. ( ) Para tentar evitar que o futuro tráfego destinada ao IP recebido vá para outra máquina. Referências [1] Ethereal User s Guide, http://www.ethereal.com/docs/user-guide/ [2] Address Resolution Protocol (arp), http://www.erg.abdn.ac.uk/users/gorry/course/inetpages/arp.html Grupo N o :... Aluno N o... Nome... Turno:... PC:... Aluno N o... Nome... Aluno N o... Nome... Avaliado por :... em:... Classificação :... 6