Tarefas de Redes de Computadores II Alessandro Vivas Andrade Curso de Sistemas de Informação Universidade Federal dos Vales do Jequitinhonha e Mucuri (UFVJM) Diamantina – MG – Brasil [email protected] 20 de outubro de 2015 1 Tarefa 1 Crie um programa cliente-servidor utilizando a Linguagem Java que funcionará como uma máquina simples de adição. O cliente irá conectar ao servidor e após a conexão o cliente deverá abrir o prompt e o usuário digitará dois números. Estes dois números serão enviados ao servidor que retornará a resposta da soma dos dois números. 2 Tarefa 2 Resolva o mesmo problema da Tarefa 1, mas agora o servidor deverá ser capaz de atender várias requisições simultâneas. 3 Tarefa 3 Realize as tarefas a seguir utilizando o terminal do Sistema Operacional Linux. 3.1 Comando ping O comando ping envia um pacote ICMP ECHO_REQUEST para um determinado host. Realize as seguintes tarefas: 1. Escolha 5 máquinas (endereços) e envie um comando ping para este determinado host. Anote as estatísticas recebidas através do comando e faça uma tabela com os dados coletados. 2. Descreva a funcionalidade do protocolo ICMP. 3. Descreva a funcionalidade de cada opção do comando ping • ping -c 10 www.slackware.com • ping -i 2 -c 10 www.slackware.com • ping -q -c 5 -i 2 www.slackware.com • ping -R www.slackware.com • ping -v www.slackware.com • ping -s 50 www.slackware.com 3.2 Comando ifconfig O comando ifconfig tem como funcionalidade alterar ou configurar o endereço IP de uma determinada máquina. A sintaxe deste comando é a seguinte ifconfig interface Endereço IP Máscara Broadcast. (a) Mostre como deve ser o comando para configurar em uma máquina o endereço 10.0.0.1 com máscara 255.255.255.0 e endereço de broadcasst 10.0.0.255 (b) O que é endereço de broacast? (c) Dê o comando ifconfig em sua máquina (conectada em alguma rede) e defina os seguintes termos (a) Endereço de HW (b) MTU (c) métrica (d) IRQ (d) O que significa o comando ifconfig eth0 up e ifconfig eth0 down (e) O que é endereço de loopback (interface lo) e para que serve esta interface? (f) Qual o endereço IP de rede do host 156.72.34.125 e máscara de rede 255.255.255.224? Qual é o endereço de broadcast nesta rede? 3.3 Protocolo ARP O protocolo ARP é um protocolo de resolução de endereços. Responda as seguintes perguntas: • Qual a funcionalidade do protocolo ARP? • Escolha um endereço na mesma rede que você está conectado. Verifique quais endereços que você possui em sua tabela ARP (reside no /proc/net/arp ou pelo comando arp). Agora envie um comando ping para esta máquina e após isso verifique o que aconteceu. Explique o ocorrido. • Faça o mesmo da tarefa anterior, mas agora abra o programa wireshark e descreva passo a passo o que está acontecendo. 3.4 Protocolo DHCP O protocolo DHCP serve para obter um endereço IP automaticamente ao entrar na rede. Responda as seguintes questões: 1. Qual o comando utilizado para você forçar a requisitar um novo endereço IP. 2. Abra o programa wireshark e digite o comando para obter um novo endereço IP. Quais são todos os passos que acontecem? Lembre-se do diagrama de estados do DHCP dado em sala de aula. 3.5 Comando tcpdump O comando tcpdump é um analisador de pacotes por linha de comando e é muito útil para descobrir problemas em uma rede. 1. Qual a funcionalidade do comando tcpdump -i eth0 ? 2. Qual a funcionalidade do comando tcpdump -i wlan0 ’proto icmp’ . Dê um exemplo de coleta de dados com este comando 3. Qual a funcionalidade do comando tcpdump -i wlan0 ’host 10.18.12.1’ -v 3.6 DNS O DNS é um protocolo de resolução de nomes que faz a conversão nome para endereço IP. Quando você digita algum nome como http:www.slackware.com tem que ocorrer um processo de tradução de nomes para que você consiga o endereço IP válido. 1. O que fica armazenado no arquivo /etc/resolv.conf? 2. Como este arquivo foi preenchido? Quem enviou estes dados? 3. para que servem os comandos: nsloockup e dig? 4. Para que serve o comando nslookup www.ufvjm.edu.br ? Qual o resultado que ele retornou? 5. Descreva o signficado dos seguintes registros DNS: Tipo A, CNAME, MX, HINFO e PTR. 6. Qual o resultado do comando dig www.ufvjm.edu.br ? 7. Utilizando o comando dig yahoo.com MX descubra quais são os servidores de e-mail do yahoo. Faça o mesmo com a UFVJM. 8. Para que serve o comando dig yahoo.com NS +noall +answer 9. Escolha um endereço e faça um traceroute de DNS com o seguinte comando dig site +trace . Explique o que está acontecendo 10. Para verificar se um DNS está vulnerável utilize o comando dig +short @SeuServidorDNS porttest.dns-oarc.net TXT . Faça um teste em um servidor e comente o resultado. 3.7 Alterando nome de host Para visualizar e alterar o nome de um host deve-se usar o comando hostname. Entretanto esta alteração só é feita enquanto a máquina esta ativa. Para alterar definitivamente você precisa modificar outro arquivo. 1. Qual o resultado do comando: hostname? 2. Qual o resultado do comando: cat /etc/hostname 3.8 Extras Descreva o funcionamento dos seguintes comandos: 1. whois 2. netstat 4 Tarefa 5 Utilizando um sniffer (Wireshark ou tcpdump) realize as seguintes tarefas: • descreva todos os pacotes necessários para completar uma requisição ARP • descreva todos os pacotes necessários para completar uma requisição DHCP • descreva todos os pacotes necessários para completar uma requisição simples para um servidor Web 5 Tarefa 6 Este trabalho tem como objetivo estudar o funcionamento de um servidor telnet. Desenvolva um sistema cliente/servidor que seja possível o cliente mandar requisições (comandos bash: cd, ls, ps, isto é, todos os comandos bash) para o servidor e o cliente receber o resultado dos comandos. Crie um mecanismo de autenticação. 6 Tarefa 7 Crie um software de Chat que permita que N clientes consigam trocar mensagens entre si.