Atividade Prática camada rede

Propaganda
Disciplina: Redes de Computadores
Professor Jéfer Benedett Dörr
[email protected]
Prática: Utilitários de Rede
Introdução
Este trabalho tem como objectivo familiarizar os alunos com protocolos e equipamentos
utilizados em redes locais e respectivas funcionalidades. Para isso é sugerido um
conjunto de experiências, as quais devem ser complementadas por outras de iniciativa
dos alunos. Este trabalho implica também estudo antecipado por parte dos alunos relativo
aos protocolos envolvidos.
Cada experiência sugerida pretende dar a conhecer uma funcionalidade dos protocolos
envolvidos. Depois de compreendido uma determinada funcionalidade, os alunos devem,
sempre que necessário, fazer uso da mesma para a realização das experiências
seguintes. Em qualquer das experiências seja crítico consigo próprio e não desista
enquanto não conseguir obter uma resposta satisfatória para as questões que se lhe
colocam, não estamos a fazer uma corrida contra-relógio. Em caso de necessidade
poderá sempre repetir as experiências extra aula para melhor entender o que realmente
se passa em cada uma. Recorra ao seu docente sempre que, depois de estudar e
experimentar por si, não conseguir obter uma resposta que considere correcta. Em caso
de dúvida sobre os protocolos envolvidos o melhor é consultar os respectivos RFCs
(http://www.ietf.org).
Na análise dos dados capturados pelo analisador de protocolos (wireshark) tenha a
sensatez de desprezar todo o tráfego que passa na rede e que não tem nada a ver com o
seu trabalho, nomeadamente o relacionado com broadcasts de outras máquinas e o
tráfego gerado na sua máquina pelo Windows mas que nada tenha a ver com o seu
trabalho. Faça as capturas caso a caso e as mais pequenas possíveis para facilitar a
respectiva análise. Pode guardar as capturas em ficheiros e utilizá-los mais tarde para
recapitular o que se passou na aula.
No windows existem alguns utilitários de rede disponíveis através da janela DOS. Os
utilitários que serão vistos nesta aula são programas que usam a linha de comando e são
baseados em programas originados do UNIX, com a mesma função. Os utilitários
mostrados são idênticos aos do Unix com as excessões do traceroute (que no windows
tem o nome de tracert devido a limitação antiga de 8 caracteres para nomes de
programas do DOS) e o comando ipconfig (que no Unix/Linux é ifconfig).
Lembre-se que nos testes teóricos podem sair perguntas sobre as aulas práticas, as suas
notas pessoais sobre as mesmas irão ser importantes aí e na discussão final.
Material necessário:
Hardware
• Máquinas (PC) com interface Ethernet UTP
Software
• Utilitários de diagnóstico da rede fornecidos com o sistema operativo
(Ex.: arp, ping, ipconfig, tracert, netstat, etc.)
• Programa de análise de tráfego na rede (Ex.: wireshark (www.wireshark.org/ ), tcpdump)
Humanos: Grupos de 2 a 3 pessoas, devem produzir umrelatório com os resultados
encontrados e o que conclui da prática.
Para a realização do trabalho é necessário que os alunos conheçam os protocolos, os
equipamentos e suas potencialidades bem como os componentes de software do ponto
de vista das suas interfaces e do seu funcionamento.
Experiência 1 – Protocolo ICMP e comando ping
O utilitário ping
O utilitário ping (analogia com o jogo de ping-pong) serve para verificar a resposta de um outro
servidor na rede até a camada de rede. O ping envia pacotes ICMP (Internet Control Message
Protocol) requisitando uma resposta do servidor remoto. A resposta do servidor normalmente é o
mesmo pacote enviado. Ou seja, a máquina remota simplesmente devolve os dados que ela recebeu.
O objetivo é testar se além da rede estar funcionando corretamente até a camada de rede, a mesma
não está fazendo nenhuma tradução nos bytes enviados.
Este utilitário também auxilia verificar se a pilha de protocolos de seu computador está funcionando
corretamente para tanto ping o endereço 127.0.0.1 que é reservado para endereçar sua própria
máquina, ou seja, um loop local (interface de loopback)
O ping mostra uma série de informações interessantes, como por exemplo, o endereço IP de destino,
a quantidade de bytes enviados, o tempo de resposta de cada pacote e o TTL (Time To Live ou
Tempo de Vida) do pacote. O ping default do Windows sempre manda 4 pacotes, no Unix, ao
contrário o ping funciona indefinidamente até o usuário cancelar com control-C, esta função é feita
pela opção -t no Windows.
O (TTL) Time To Live é um campo do pacote IP e é utilizado para limitar o número de roteadores
por onde um determinado pacote pode passar. Cada roteador por onde um determinado pacote IP
trafega decrementa o número do campo TTL antes de passá-lo para frente. Se o valor do campo
TTL chegar a zero, o roteador não envia mais o pacote IP, e sim um outro pacote ICMP para a
origem avisando que o pacote IP original teve o seu TTL=0 e por isso não pôde ser mais
transmitido.
Esse mecanismo serve para evitar que em uma rede mal configurada e com algum loop de
endereçamento, a quantidade de pacotes trafegada estoure a capacidade da rede por causa de
retransmissões entre os mesmos roteadores. Por exemplo, se do ponto A os pacotes IP são roteados
para o ponto B, e do ponto B (por causa de um erro) são roteados de volta para o ponto A, um
pacote IP poderia ficar indo e voltando indefinidamente se não possuísse o mecanismo do TTL.
No caso de um endereço não responder aos pacotes enviados, isto não indica necessariamente que o
computador consultado está fora do ar. Pode ter sido configurado um filtro que impeça que a
máquina responda, por exemplo, o endereço www.pucminas.br
Parâmetros
-t
Especifica que o <b>ping</b> continue enviando mensagens de solicitação de eco ao destino até
que seja interrompido. Para interromper e exibir estatísticas, pressione CTRL+BREAK. Para
interromper e sair do ping, pressione CTRL+C.
-a
Especifica que a resolução inversa de nome seja realizada no endereço IP de destino. Se for bemsucedida, o <b>ping</b> exibirá o nome do host correspondente.
-n quantidade
Determina o número de solicitações de eco enviadas. O padrão é 4.
-l Tamanho
Especifica o comprimento, em bytes, do campo de dados nas solicitações de eco enviadas. O padrão
é 32. O Tamanho máximo é 65.527.
-f
Especifica que as mensagens de solicitação de eco são enviadas com o sinalizador Não fragmentar
no cabeçalho IP definido como 1 (disponível somente no IPv4). A mensagem de solicitação de eco
não pode ser fragmentada por roteadores no caminho para o destino. Este parâmetro é útil para
resolver problemas relacionados à unidade máxima de transmissão do caminho (PMTU).
-i TTL
Especifica o valor do campo TTL no cabeçalho IP das solicitações de eco enviadas. O padrão é o
valor padrão do TTL do host. O TTL máximo é 255.
-v TOS
Especifica o valor do campo Tipo de serviço (TOS) no cabeçalho IP das mensagens de solicitações
de eco enviadas (disponíveis somente no IPv4). O padrão é 0. TOS é especificado como um valor
decimal de 0 a 255.
-r contagem
Especifica que a opção Rota de registro no cabeçalho IP seja usada para gravar o caminho usado
pela solicitação de eco e pela resposta de eco correspondente (disponível somente em IPv4). Cada
salto no caminho utiliza uma entrada na opção Rota de registro. Se possível, especifique uma
contagem que seja igual ou superior ao número de saltos entre a origem e o destino. A contagem
deve ser no mínimo 1 e no máximo 9.
-s contagem
Especifica que a opção <b>Carimbo de data/hora</b> da Internet no cabeçalho IP seja utilizada
para gravar a hora de chegada da solicitação de eco e da resposta de eco correspondente para cada
salto. A Contagem deve ser de no mínimo 1 e no máximo 4. Isso é necessário para endereços de
destino de links locais.
-j lista_de_hosts
Especifica que as solicitações de eco utilizem a opção Rota ampliada de origens no cabeçalho IP
com o conjunto de destinos intermediários especificado em lista_de_hosts (disponível em IPv4
somente). Como o roteamento ampliado de origens, os destinos intermediários sucessivos podem
ser separados por um ou vários roteadores. O número máximo de endereços ou nomes na lista de
hosts é 9. A lista de hosts é uma seqüência de endereços IP (em notação decimal com ponto)
separados por espaços.
-k lista_de_hosts
Especifica que as solicitações de eco utilizem a opção Rota restrita de origens no cabeçalho IP com
o conjunto de destinos intermediários especificado em lista_de_hosts (disponível em IPv4
somente). Com o roteamento restrito de origens, o destino intermediário seguinte deve ser
diretamente acessível (é preciso ser um vizinho em uma interface do roteador). O número máximo
de endereços ou nomes na lista de hosts é 9. A lista de hosts é uma seqüência de endereços IP (em
notação decimal com ponto) separados por espaços.
-w TempoLimite
Especifica o intervalo de tempo, em milissegundos, para aguardar a resposta de eco correspondente
a determinada solicitação de eco a ser recebida. Se a resposta de eco não for recebida dentro do
tempo limite, será exibida a mensagem de erro "Esgotado o tempo limite da solicitação". O tempo
limite padrão é 4000 (4 segundos).
-R
Especifica que o caminho completo é rastreado (disponível somente em IPv6).
-S EndOrig
Especifica o endereço de origem a ser usado (disponível somente em IPv6).
-4
Especifica que IPv4 é usado para efetuar ping. Este parâmetro não é necessário para identificar o
host de destino com um endereço IPv4. Ele só é necessário para identificar o host de destino pelo
nome.
-6
Especifica que IPv6 é usado para efetuar ping. Este parâmetro não é necessário para identificar o
host de destino com um endereço IPv6. Ele só é necessário para identificar o host de destino pelo
nome.
nome_do_destino
Especifica o nome ou o endereço IP do host de destino.
/?
Exibe ajuda no prompt de comando.
Exemplos
O exemplo a seguir mostra os dados de saída do comando ping:
C:\>ping example.microsoft.com
Pinging example.microsoft.com [192.168.239.132] with 32 bytes of
data:
Reply from 192.168.239.132: bytes=32 time=101ms TTL=124
Reply from 192.168.239.132: bytes=32 time=100ms TTL=124
Reply from 192.168.239.132: bytes=32 time=120ms TTL=124
Reply from 192.168.239.132: bytes=32 time=120ms TTL=124
Para executar o <b>ping</b> no destino 10.0.99.221 e resolver 10.0.99.221 para seu nome de host,
digite:
ping -a 10.0.99.221
Para executar o <b>ping</b> no destino 10.0.99.221 com 10 solicitações de eco, cada uma com um
campo de dados de 1000 bytes, digite:
ping -n 10 -l 1000 10.0.99.221
Para executar o <b>ping</b> no destino 10.0.99.221 e gravar a rota com 4 saltos, digite:
ping -r 4 10.0.99.221
Ping é muito útil para testar a comunicação entre maquinas, nasinstalações normais já
vem funcionando.
Quando digitamos na linha de comando ping IP da outra maquina ou ping
nome_da_outra_maquina ex.
$ ping 192.168.1.1
$ ping www.conectiva.com.br
$ ping maq1
teremos um resumo de pacotes enviados, recebidos e perdidos, quando
o resultado em perdidos for igual a zero, significa que todos os pacotes percorreram
todo o percurso de ida e volta entre as duas maquinas, assim podemos afirmar
que uma maquina alcança a outra ou seja tem comunicação e portanto
que a placa de rede está instalada, os cabos estão OK, os HUBS e outros
equipamentos usandos no trajeto estão ligados e funcionando.
Quando o resultado em perdidos for maior que zero podemos afirmar que tem
algum erro na instalação e ou configuração da rede, que pode estar na placa de
rede, cabos, HUB, regras do firewall, roteadores, ICMP desabilitado e outras
possibilidades,
portanto deve ser revisado, analizado e testado todos os componentes desta
ligação, lembrando que se o ping não alcança a outra maquina o mesmo acontecerá
com os outros pacotes de outros programas, antes de configurar outros pacotes que
usa a rede, teste a conexão da rede com o comando ping.
veja mais detalhes em:
$ man ping
$ info ping
$ ping --help
quando executamos
$ping 192.168.1.1
fica disparando infinitamente, CTRL+C interrompe o processo.
-c determina quantos pacotes serão enviados
neste exemplo dispara o ping somente 4 vezes.
$ ping -c 4 192.168.1.1
ou
$ ping -c4 192.168.1.1
-f inundação de envio de ping, provoca um flood, somente o root
pode executar com ete parametro.
#ping -f 192.168.1.1
-R exibe a rota percorrida pelo ping, ex.:
ping -R www.uol.com.br
ping -R 192.168.1.1
verificar se o localhost está configurado.
$ ping localhost
descobrir o IP (ou DNS) de um dominio
$ ping www.conectiva.com.br
ou
$ nslookup www.conectiva.com.br
O ping entre as maquinas só sera possivel se elas tiverem configuradas com IP
para facilitar defina um IP para cada maquina, vamos usar um exemplo de duas maquinas
com suas respectivas placas de rede instaladas uma usando Windows vai usar o IP
192.168.1.3 e a outra usando Linux vai receber o IP 192.168.1.2
No Windows clique com botão direito do mouse sobre ambiente de rede, depois em
propriedades, depois dê dois cliques no TCP/IP da sua placa de rede, na nova janela
habilite IP manual e preencha o campo ref. ao IP com 192.168.1.3 e na mascara de rede
preencha com 255.255.255.0 feito isto é só dar aplicar e OK até fechar as janelas e pedir
para reiniciar
No Linux use netconf ou linuxconf e configura um IP nas opções de rede, em IP coloque
192.168.1.2
teste o ping com IP da propria maquina e IP da outra maquina, em ambos o ping deve
responder.
1. Utilizando o wireshark , observe o formato e o conteúdo dos datagramas IP originados
ou destinados à sua máquina que são trocados na rede durante as experiências que se
seguem.
2. Faça ping a endereços IP de máquinas dentro e fora da rede local
(Ex.:maquina do seu vizinho, www.terra.com.br ).
3. Teste a opção record route do datagrama IP (ping –r). Tambem ping -t.
4. Teste o funcionamento do campo TTL do datagrama IP com valores que façam
sentido.
5. Faça ping ao endereço de rede, de subrede. Observe os pacotes IP que passam na
rede em cada caso (se é que passam). Observe o resultado do ping e os pacotes IP que
passam na rede.
Experiência 2 – nslookup
O utilitário nslookup
O utilitário nslookup serve para traduzir nomes de domínio para os números IP
correspondentes. Este utilitário consulta os servidores de DNS (Domain Name Service)
espalhados na Internet para resolver uma consulta e descobrir o endereço.
O nslookup ao contrário dos outros utilitários vistos até agora, oferece um prompt para o
usuário digitar nomes de domínios para consulta. Veja abaixo um exemplo de execução
do nslookup:
atlanta:/home/i2/rora-> nslookup
Default Server: i2.com.br
Address: 200.238.196.1
> www.pucmg.br.
Server: i2.com.br
Address: 200.238.196.1
Non-authoritative answer:
Name:
www.pucminas.br
Address: 200.236.177.1
Aliases: www.pucmg.br
> set type=mx
> flag.com.br.
Server: i2.com.br
Address: 200.238.196.1
Non-authoritative answer:
flag.com.br
preference = 10, mail exchanger = flagnt03.flag.com.br
Authoritative answers can be found from:
flag.com.br
nameserver = flagnt03.flag.com.br
flag.com.br
nameserver = flagwall.flag.com.br
flagnt03.flag.com.br
internet address = 200.202.246.204
flagwall.flag.com.br
internet address = 200.202.246.205
> set type=a
> www.cade.com.br.
Server: i2.com.br
Address: 200.238.196.1
Non-authoritative answer:
Name:
www.cade.com.br
Addresses: 200.244.143.187, 200.244.143.143, 200.244.143.149, 200.244.143.145
200.244.143.148, 200.244.143.141, 200.244.143.142, 200.244.143.147, 200.244.143.
46
200.244.143.140
>
O que foi digitado pelo usuário está em negrito. Note que além dos domínios, existem
alguns comandos disponíveis no nslookup (set type=). Quando os domínios são seguidos
de um ponto, nslookup interpreta como domínios completos. É possível especificar
somente um nome de uma máquina e o programa busca pelo seu endereço IP dentro da
própria rede.
Use o comando help para ter acesso aos demais comandos do nslookup. Veja a saída de
um help do nslookup no unix:
> help
$Id: nslookup.help,v 8.4 1996/10/25 18:09:41 vixie Exp $
Commands:
NAME
NAME1 NAME2
help or ?
(identifiers are shown in uppercase, [] means optional)
- print info about the host/domain NAME using default server
- as above, but use NAME2 as server
- print info on common commands; see nslookup(1) for details
set OPTION
- set an option
all
- print options, current server and host
[no]debug
- print debugging information
[no]d2
- print exhaustive debugging information
[no]defname - append domain name to each query
[no]recurse - ask for recursive answer to query
[no]vc
- always use a virtual circuit
domain=NAME - set default domain name to NAME
srchlist=N1[/N2/.../N6] - set domain to N1 and search list to N1,N2, etc.
root=NAME
- set root server to NAME
retry=X
- set number of retries to X
timeout=X
- set initial time-out interval to X seconds
querytype=X - set query type, e.g., A,ANYÇNAME,HINFO,MX,PX,NS,PTR,SOA,TXT,WKS,SRV,NAPT
R
port=X
- set port number to send query on
type=X
- synonym for querytype
class=X
- set query class to one of IN (Internet), CHAOS, HESIOD or ANY
server NAME
- set default server to NAME, using current default server
lserver NAME
- set default server to NAME, using initial server
finger [USER]
- finger the optional USER at the current default host
root
- set current default server to the root
ls [opt] DOMAIN [> FILE] - list addresses in DOMAIN (optional: output to FILE)
-a
- list canonical names and aliases
-h
- list HINFO (CPU type and operating system)
-s
- list well-known services
-d
- list all records
-t TYPE
- list records of the given type (e.g., AÇNAME,MX, etc.)
view FILE
- sort an 'ls' output file and view it with more
exit
- exit the program, ^D also exits
>
Descubra os endereços IP das máquinas que podem receber e-mail das seguintes
empresas:
1. Maxitel (no Brasil)
2. Transmeta (nos USA)
3. British Telecom da Espanha (www.bt.es)
Experiência 3 – Protocolo ARP e comando arp
O protocolo de resolução de endereços (ARP)
O ARP (address resolution protocol), presente em todos os computadores e equipamentos de
rede, faz a tradução dos endereços de camada 3 para endereços de camada 2. Quando é
originada uma comunicação no enlace, é repassado para o ARP o endereço de camada de
rede, normalmente o número IP. A protocolo ARP monta um quadro, enviado por broadcast a
todos os adaptadores da rede. A estação de destino, ao identificar que o quadro é endereçado
a ela, pela coincidência do endereço IP, monta um quadro padrão de resposta, através do ARP,
contendo seu MAC Address. O ARP somente converte números de IP para MAC Address em
nós componentes do mesmo enlace.
O ARP mantém em memória, em cada host, uma tabela, chamada de ARP table, que mantém,
durante um período de tempo, a correspondência de IP e MAC para endereços já consultados,
de forma a agilizar novas consultas, trocando o procedimento de descoberta por broadcast por
uma simples consulta na tabela. Cada registro nesta tabela contém o tempo de vida do
registro, ao final do qual o mesmo é apagado. Uma nova requisição após isto, demanda nova
descoberta por broadcast.
Exemplos de utilização do ARP no Windows:
arp –a : exibe a ARP Table
arp –s 10.2.3.4 00:00:00:11:22:33 : adiciona um entrada estática na tabela arp –d 10.2.3.4 : remove
a entrada da tabela (muitas vezes é necessário, quando mudamos
várias vezes o IP de uma interface, ou trocamos a interface e mantemos o mesmo
IP)
1. Observe a tabela de ARP (estude o comando arp).
2. Envie um pacote IP para uma máquina da mesma rede (ping para IP broadcast de
subrede para descobrir os IP ativos).
3. Observe o conteúdo dos pacotes IP e do ARP trocadas na rede.
4. Observe a tabela de ARP (Seja rápido! Porquê?).
5. Envie um segundo pacote IP para a mesma máquina.
6. Observe os ARP e pacotes IP que passam na rede.
7. Verifique que as entradas na tabela de ARP são removidas ao fim de algum tempo.
ARP
- Mostrar que as informações da tabela de ARP tem um tempo de vida.
- Verificar a tabela ARP (via comando " arp -a ")
- Enviar um pacote ICMP para um host pertencente à mesma rede lógica que não
seja o roteador.
- Verificar a tabela ARP. Aguardar alguns minutos e verificar a tabela.
- Mostrar os tipos de pacotes ARP (solicitação e resposta)
- Verificar como o TCP/IP usa o ARP. Com um monitor de rede ativo (tcpdump,
snoop ou iptraf em alguma máquina da mesma rede lógica) comandar um ping
de uma máquina para outra cujo IP não consta na tabela de ARP. Deve ser
visualizado um pacote de solicitação de ARP "Who has ARP xxx.xxx.xxx.xxx tell
yyy.yyy.yyy.yyy) (xxx= Endereço IP da máquina de destino, yyy= endereço IP da
máquina de origem).
Experiência 4 – Protocolo ICMP e comando traceroute
Traceroute é uma ferramenta que permite descobrir o caminho feito pelos pacotes desde
a sua origem até o seu destino. Ele é usado para testes, medidas e gerenciamento da
rede. O traceroute pode ser utilizado para detectar falhas como, por exemplo, gateways
intermediários que descartam pacotes ou rotas que excedem a capacidade de um
datagrama IP. Com esta ferramenta, o atraso da "viagem" do pacote entre a origem e
gateways intermediários são reportados, permitindo determinar a contribuição de cada
gateway para o atraso total da "viagem" do pacote desde a origem até o seu destino.
Versões melhoradas do traceroute permitem a especificação de "rotas livres da origem"
para os datagramas. Isto permite investigar qual o caminho de retorno que as máquinas
remotas fazem até o host local.
O utilitário traceroute
O utilitário traceroute serve para nos mostrar por onde um pacote IP trafega quando é
enviado. Esse utilitário é tão útil quanto o ping e no windows está disponível com o nome
de tracert.
A sintaxe do tracert no windows é:
Uso: tracert [-d] [-h nmax_saltos] [-j lst_hosts] [-w tempo_limite] destino
Opções:
-d
-h nmax_saltos
-j lst_hosts
-w tempo_limite
Não resolver endereços para nomes de hosts.
Número máximo de saltos para a procura do destino.
Rota ampliada de origens usada com a lista lst_hosts.
Tempo de espera em milissegundos para cada resposta.
Não existe nenhum mecanismo disponível nos roteadores para informar o trajeto de um
pacote IP pela Internet. Mas sem usar nenhum artifício adicional, o autor do traceroute
conseguiu fazer este programa muito bem bolado. Ele aproveitou o campo TTL do pacote
IP para transmitir pacotes com TTL a partir de 1 até alcançar o destino. Assim, cada vez
que um pacote "morre" no caminho até o destino, o traceroute é avisado e assim
consegue traçar a rota.
Veja um exemplo de saída de um traceroute para o endereço www.sdsc.edu:
C:\WINDOWS>tracert www.sdsc.edu
Rastreando a rota para www.sdsc.edu [198.202.75.101]
com no máximo 30 saltos:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<10
2
194
473
416
234
1080
1032
1914
1342
872
700
601
1040
1057
683
*
655
666
770
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
<10
2
148
561
*
198
1093
1167
2432
1198
857
*
619
964
1148
673
630
628
708
631
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
<10
1
210
666
156
362
939
1161
2190
891
932
985
850
912
1287
687
656
633
643
690
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
tebas.i2.com.br [200.238.196.62]
hardwick.i2.com.br [200.238.196.97]
i2-gw.pop-mg.rnp.br [200.17.183.49]
arrozdoce.pop-mg.com.br [200.236.165.199]
casadinho-a3.pop-mg.rnp.br [200.17.183.209]
bb2.pop-mg.rnp.br [200.131.1.1]
border1-serial2-2.NewYork.cw.net [204.70.44.101]
core1-fddi-0.NewYork.cw.net [204.70.2.17]
core1-hssi-3.WestOrange.cw.net [204.70.10.14]
204.70.10.145
atm5-0-1.nyc-bb9.cerf.net [134.24.32.161]
pos3-0-622M.nyc-bb8.cerf.net [134.24.33.158]
pos5-0-622M.chi-bb4.cerf.net [134.24.32.213]
so4-0-0-622M.dfw-bb2.cerf.net [134.24.46.81]
pos2-0-622M.lax-bb4.cerf.net [134.24.29.77]
atm1-0-2-622M.san-bb6.cerf.net [134.24.32.61]
pos10-0-0-155M.san-bb1.cerf.net [134.24.29.129]
sdsc-gw.san-bb1.cerf.net [134.24.12.26]
medusa-atm.sdsc.edu [192.12.207.10]
www.sdsc.edu [198.202.75.101]
Rastreamento completo.
A saída do traceroute indica para cada HOP (ponto de roteamento do pacote IP), o tempo
de três pacotes enviados e o endereço do roteador correspondente. Montando a
sequência de 1 até o final, podemos ver por onde o pacote IP foi roteado até o destino.
O traceroute funciona enviando sucessivos pacotes IP de ping com o valor do TTL
iniciando em 1 e aumentando até o ping ser respondido pelo destino. Isso faz com que o
pacote IP "morra" cada vez mais longe da origem. Para cada vez que o TTL chega a zero
(o pacote "morre"), o roteador onde isso ocorreu envia um pacote ICMP para a origem.
Desta forma a origem tem como saber qual é o endereço do roteador onde o pacote IP
morreu e consequentemente a rota dele até o destino!
Veja abaixo um exemplo de saída de traceroute em uma rede mal configurada ou com
problemas de rota. Os pacotes ficam trafegando entre os IPs 200.192.56.163 e
200.192.56.161. O traceroute tem um limite de 30 rotas por default. Se qualquer rota
ultrapassar este limite, o programa termina, mas isso pode ser alterado.
traceroute to 200.190.226.221 (200.190.226.221), 30 hops max, 40 byte packets
1 ithaca.i2.com.br (200.238.196.17) 0.892 ms 0.88 ms 0.836 ms
2 i2-gw.pop-mg.rnp.br (200.17.183.49) 9.694 ms 9.805 ms 72.695 ms
3 arrozdoce.pop-mg.com.br (200.236.165.199) 47.173 ms 57.568 ms 9.666 ms
4 casadinho-a3.pop-mg.rnp.br (200.17.183.209) 35.299 ms 29.25 ms 14.784 ms
5 pop-mg-rnp-br-S3-7-acc01.bhe.embratel.net.br (200.251.254.73) 30.479 ms 47.494 ms 3
6 ebt-F5-0-dist01.bhe.embratel.net.br (200.255.153.66) 46.537 ms 47.471 ms 48.432 ms
7 netstream-S3-0-dist01.bhe.embratel.net.br (200.251.12.50) 1201.36 ms 226.436 ms nets
8 200.192.56.163 (200.192.56.163) 294.807 ms 1316.43 ms 171.37 ms
9 200.192.56.161 (200.192.56.161) 157.437 ms 66.189 ms 82.82 ms
10 200.192.56.163 (200.192.56.163) 1263.75 ms 879.158 ms 180.572 ms
11 200.192.56.161 (200.192.56.161) 147.899 ms 80.226 ms 148.109 ms
12 200.192.56.163 (200.192.56.163) 190.791 ms 1760.4 ms 152.392 ms
13 200.192.56.161 (200.192.56.161) 97.871 ms 130.071 ms 216.73 ms
14 200.192.56.163 (200.192.56.163) 193.109 ms 109.728 ms 132.562 ms
15 200.192.56.161 (200.192.56.161) 119.146 ms 132.605 ms 104.369 ms
16 200.192.56.163 (200.192.56.163) 239.958 ms 139.003 ms 125.818 ms
17 200.192.56.161 (200.192.56.161) 77.857 ms 107.275 ms 163.703 ms
18 200.192.56.163 (200.192.56.163) 170.308 ms 96.406 ms 90.269 ms
19 200.192.56.161 (200.192.56.161) 154.676 ms 61.096 ms 179.464 ms
20 200.192.56.163 (200.192.56.163) 196.048 ms 150.234 ms 144.485 ms
21 200.192.56.161 (200.192.56.161) 111.255 ms 75.791 ms 108.033 ms
22 200.192.56.163 (200.192.56.163) 98.99 ms 294.196 ms 298.766 ms
23 200.192.56.161 (200.192.56.161) 148.568 ms 147.442 ms 119.248 ms
24 200.192.56.163 (200.192.56.163) 233.132 ms 232.526 ms 213.243 ms
25 200.192.56.161 (200.192.56.161) 101.576 ms 101.769 ms 147.615 ms
26 200.192.56.163 (200.192.56.163) 148.876 ms 189.746 ms 259.251 ms
27 200.192.56.161 (200.192.56.161) 74.61 ms 130.222 ms 1652.72 ms
28 200.192.56.163 (200.192.56.163) 233.248 ms 161.242 ms 146.573 ms
29 200.192.56.161 (200.192.56.161) 143.745 ms 131.513 ms 122.557 ms
30 200.192.56.163 (200.192.56.163) 144.07 ms 165.208 ms 182.307 ms
1. Estude o comando traceroute (tracert).
2. Verifique o encaminhamento de pacotes e o número de hops para diversos destinos
(Ex.: www.yahoo.com, www.cisco.com, www.microsoft.com,www.fasul.edu.br). Interprete
os resultados obtidos comparando-os com o resultado do ping –r para o mesmo destino.
3. Observe as mensagens relacionadas com a execução do tracert no wireshark.
4. No Linux pode ser usado traceroute ou xtraceroute.
Experiência 5 – Protocolo DNS
1. Faça ping a máquinas usando o respectivo nome. Experimente nomes de máquinas de
diferentes domínios (Ex.: www.yahoo.com, www.cisco.com, www.microsoft.com,
www.fasul.edu.br).
2. Observe (wireshark) as mensagens DNS enviadas e recebidas pelo servidor de DNS
para fazer as resoluções de nomes e endereços na situação do ponto 1.
3. Utilize o comando nslookup para verificar a informação na sua máquina.
Experiência 6– Netstat
O utilitário netstat
O netstat serve para mostrar as conexões ativas atualmente com a máquina em questão.
Ele lista na tela todas as conexões TCP/IP em andamento. Além disso existe uma opção
para mostrar o conteúdo da tabela de roteamento. Veja abaixo a sintaxe do netstat do
windows:
Exibir estatísticas de protocolo e conexões de rede TCP/IP atuais.
NETSTAT [-a] [-e] [-n] [-s] [-p proto] [-r] [intervalo]
-a
-e
-n
-p proto
-r
-s
intervalo
Exibe todas as conexões e portas de escuta.
Exibe estatísticas Ethernet. Isso pode ser combinado à
opção -s.
Exibe endereços e números de porta em formato numérico.
Exibe conexões para o protocolo especificado por proto; proto
pode ser tcp ou udp. Se usado com a opção -s para exibir
estatísticas por protocolo, proto pode ser tcp, udp ou ip.
Exibe o conteúdo da tabela de roteamento.
Exibe estatísticas por protocolo. Por padrão, as estatísticas
são mostradas para TCP, UDP e IP; a opção -p pode ser usada
para especificar um subconjunto do padrão.
Exibe novamente uma estatística selecionada, fazendo pausas de
intervalos de segundos entre cada tela. Pressione CTRL+C para
interromper a nova exibição das estatísticas. Caso omitido,
netstat imprimirá as informações de configuração uma vez.
Use o netstat para mostrar todas as conexões e portas de escuta da sua máquina
(LISTENING). A saída é mostrada em 4 colunas. Na primeira está o protocolo, na
segunda o endereço da conexão na porta local. A terceira coluna mostra o endereço na
máquina remota (o endereço da máquina e a porta TCP da conexão) e a quarta coluna
mostra o estado da conexão (ESTABLISHED, LISTENING, CLOSE_WAIT, etc).
Use a opção -r para mostrar o conteúdo da tabela de roteamento da sua estação. Essa
tabela mostra para qual endereço cada pacote deve ser enviado em função do seu
endereço IP. Desta forma, a máquina garante que o pacote será entregue para a máquina
de destino corretamente.
Link:http://geotool.servehttp.com/
http://registro.br/cgi-bin/nicbr/trt
Download