Vous êtes sur la page 1sur 10

UNIVERSIDADE FEDERAL DE SO JOO DEL-REI

CAMPUS ALTO PARAOPEBA


Prof. Mrio Cupertino
Laboratrio 03 Wireshark (Protocolos da Camada de Rede)

Aluno:

1. Objetivo:

OobjetivodessaaulaapresentarosoftwareWiresharkeexploraralgumasfuncionalidadesbsicas
dessesoftware.

2. RevisotericaIntroduoaoWireshark

Oentendimentodaessnciadeprotocolosdecomunicaopodeseraprofundadocomavisualizao
desses protocolos em ao e tambm pela interao com os mesmos. Para tanto, podese observar a
seqncia de mensagens trocadas entre duas entidades de protocolos, estudar os detalhes de suas
operaes, alm da possibilidade de se enviar ordens para que eles realizem determinadas aes, e, a
partirdisso,analisartaisatosesuasconseqncias.Issopodeserfeitoatravsdecenriossimuladosou
de seu estudo em um ambiente real de rede, como a Internet. Alguns applets Java servem primeira
abordagem.Estaauladelaboratrio,seguirasegundaabordagemusandoosoftwareWireshark.
Seroutilizadasvriasaplicaesemrede,sobdiferentescenrios,atravsdousodecomputadores
conectados Internet. Sero observados como os protocolos de comunicao funcionam na prtica,
interagindoentresietrocandomensagenscomoutrasentidades.
A ferramenta bsica para a observao das mensagens trocadas entre entidades de protocolos em
execuochamadodecapturadordepacotes(emingls,packetsniffer).Comosugeridopeloprprio
nome, esse software captura (sniffs) mensagens sendo enviadas/recebidas de/para um computador;
alm disso, tipicamente, ele armazena e exibe o contedo de vrios campos dos protocolos nessas
mensagenscapturadas.Umcapturadordepacotes,porsis,passivo.Eleobservaasmensagenssendo
enviadas e recebidas pelas aplicaes e protocolos que esto sendo executados no computador.
Similarmente,ospacotesrecebidosnoforamendereadosaosoftwarecapturadordepacotes.Aoinvs
disso, esse aplicativo recebe uma cpia dos pacotes que esto sendo enviados/recebidos de/para uma
aplicaoeprotocolosqueestoexecutandoemsuamquina[1].
A Figura 1 mostra a estrutura de um capturador de pacotes. No lado direito dessa figura, esto os
protocolos (neste caso, protocolos de Internet) e aplicaes (como um navegador de Internet) que
normalmente rodam em seu computador. O capturador de pacotes, mostrado dentro do retngulo
pontilhadonessafigura,umsoftwareadicionalexecutandoemsuamquinae,consiste,basicamente,
deduaspartes.Abibliotecadecapturadepacotes(doingls,packetcapturelibrary)recebeumacpia
de cada quadro de comunicao que enviado ou recebido por seu computador em cada conexo.
Mensagenstrocadasporprotocolosdecamadassuperiores,comoHTTP,FTP,TCP,UDP,DNS,ouIPso
todosencapsuladosemquadrosquesotransmitidossobreummeiofsico,comoumcabodeEthernet.
NaFigura1,omeiofsicodecomunicaoaEthernet,etodososprotocolosdascamadassuperioresso

encapsulados em um quadro Ethernet. A captura dos quadros de todas as conexes fornece todas as
mensagensquesoenviadas/recebidasde/paratodososprotocoloseaplicaessendoexecutadosem
seucomputador.

Figura1:EstruturadeumCapturadordepacotes

Figura2:Hospedeiro,roteadoresecomutadoresdacamadadeenlace,cadaumcontmumconjuntodiferentede
camadas,refletindosuasdiferenasemfuncionalidade.

O segundo componente de um capturador de pacotes o analisador de pacotes (do ingls, packet


analyzer), o qual mostra o contedo de todos os campos dentro de uma mensagem de determinado
protocolo.Parafazerisso,oanalisadordepacotesprecisaentenderaestruturadetodasasmensagens
trocadaspelosprotocolos.Porexemplo,suponhaquesedesejamostrarosvrioscamposdasmensagens
trocadas pelo protocolo HTTP da Figura 1. O analisador de pacotes entende o formato de quadros de
Ethernet,eentopodeidentificarodatagramaIPdentrodessequadro.Eletambmentendeoformato
do datagrama IP, ento ele pode extrair o segmento TCP dentro do datagrama IP. Na seqncia,

compreende a estrutura do segmento TCP, ento pode extrair a mensagem HTTP contida nesse
segmento.Finalmente,eleentendeoprotocoloHTTPeento,porexemplo,sabequeosprimeirosbytes
deumamensagemHTTPiroconteraspalavrasGET,POST,ouHEAD,comomostradonaFigura3.

Figura3:Formatogeraldeumamensagemderequisio.

Nesta aula ser utilizado o software capturador de pacotes Wireshark1 (http://www.wireshark.org/),


quepermiteaapresentaodoscontedosdemensagenssendoenviado/recebidosde/paraprotocolos
em diferentes nveis da pilha de protocolos (tecnicamente, Wireshark um analisador de pacotes que
utiliza uma biblioteca para a captura de pacotes). O Wireshark um software gratuito que roda em
diversos sistemas operacionais (Windows, Linux/Unix, e Mac). Ele ideal para ser utilizado em nossas
prticas,umavezqueestvel,possuivastadocumentao,diversasfuncionalidadescomoacapacidade
de anlise de centenas de protocolos, alm de uma interface bem projetada. Opera em computadores
usando Ethernet, TokenRing, LANs semfio padro 802.11, e conexes ATM (se o sistema operacional
permitir,aoWireshark,acesso).

3. InstalandooWireshark

Para se executar Wireshark necessrio o acesso a um computador que tenha instalado tanto esse
software(queumanalisadordepacotes)quantoumabibliotecadecapturadepacotescomoalibpcap
ouWinPCap.JuntoinstalaodoWiresharkfeitaainstalaoautomticadosoftwarelibpcap,casoa
mesmajnotenhasidoinstaladapreviamente.

4. ExecutandooWireshark

QuandoseexecutaoWireshark,asuainterfacegrfica,semelhantedaFigura4.

DisponveltambmnoPortalDidtico(versoparaWindows32bits).


Figura4:InterfaceGrficadeinicializaodoWireshark

AinterfacegrficadoWiresharkpossuicincocomponentesprincipais,conformeFigura5:

Figura5:InterfaceGrficadoWiresharkapsoinciodecapturadepacotes

Osmenusdecomando(commandmenus)estolocalizadosnotopodajanela.deinteressenesse
momentosoosmenusdeArquivo(File)eCaptura(Capture).OmenudeArquivopermitesalvar
dados de pacotes capturados ou abrir um arquivo contendo dados de pacotes previamente
capturados,almdapossibilidade defecharoWireshark. OmenuCaptura, comosugeridopelo
nome, permite comear a captura de pacotes, alm de algumas opes de configurao para
essacaptura.

Ajaneladelistagemdepacotes(packetlistingwindow)mostraumresumoemtemporealpara
cadapacotecapturado,incluindoumnmerodepacote(atribudopeloWireshark;estenoum
nmerodepacotecontidoemqualquercabealhodeprotocolo),otemponoqualopacotefoi
capturado, a fonte do pacote e seu endereo de destino, o tipo de protocolo, e a informao
especficadecadaprotocolocontidanopacote.Essalistagempodeserorganizadadeacordocom
qualquer uma dessas categorias, atravs do click no nome da coluna de interesse. O campo de
tipodeprotocololistaoprotocolodemaiornvelhierrquicoqueenviaourecebeessepacote,
isto,oprotocoloqueafonteouodestinofinaldessepacote.

A janela de detalhamento dos cabealhos dos pacotes (packetheader details window) fornece
detalhessobreopacoteselecionado(emdestaqueouemfoco).Paraselecionarumpacotenessa
janela,coloqueocursorsobrealinhaderesumodopacoteepressioneomouse.Estesdetalhes
incluem informao sobre o quadro Ethernet (assumindo que o pacote foi enviado/recebido
sobre uma interface Ethernet) e o datagrama IP que contm esse pacote. Se o pacote foi
transportado sobre um protocolo TCP ou UDP, detalhes sobre esses protocolos tambm sero
apresentados.Finalmente,informaessobreoprotocolodemaiornvelqueenviouourecebeu
essepacotetambmfornecida.

A janela de contedo dos pacotes (packetcontents window) apresenta o contedo total do


quadrocapturado,tantoemformatoASCIIquantoemformatohexadecimal.

Na direo do topo da janela de interface grfica est o campo de filtro de display de pacotes
(packet display filter field), no qual um nome de protocolo ou outra informao podem ser
digitadoscomoobjetivodefiltrarasinformaesapresentadasnajaneladelistagemdepacotes
(e tambm nas janelas de cabealhos e de contedos de pacotes). Em um exemplo da seo a
seguir,serutilizadoumfiltroparamostrarinformaessomentedepacotescorrespondentes
mensagensHTTP.

5. ExemplodesimulaousandooWireshark

A melhor maneira de aprender a trabalhar com um novo software utilizando o mesmo. Assumindo
queseucomputadorestconectadoInternetviaumainterfacecabeadaEthernet,faaoseguinte:

1. Inicializeseunavegadorpreferido.

2. inicializeoWireshark.AparecerumatelacomoaFigura4,umavezqueaindanoseiniciouacaptura
depacotes.

3. Parainiciaracapturadepacotes,selecioneomenuCaptureeescolhaaabaOptions.Issoirmostrara
janelaWireshark:CaptureOptions,Figura6.

Figura6:JaneladeopesdecapturadoWireshark

4. Podeseusaramaioriadosvalorespadro(default)destajanela,masretireaseleodaopoHide
captureinfodialog,naabaDisplayOptions.Asinterfacesderede(isto,asconexesfsicas)que
seu computador tem com a rede sero mostradas menu Interface no topo da janela de Capture
Options. No caso de seu computador possuir mais de uma conexo ativa de rede (ou seja, se seu
computador possui uma conexo Ethernet tanto sem fio quanto cabeada), voc dever selecionar a
interface que ser utilizada para enviar e receber pacotes. Aps a escolha da interface de rede (ou
utilizandoainterfacedefaultescolhidapeloWireshark),cliqueemStart.Acapturadepacotesdeveter
comeado, ou seja, todos os pacotes enviados/recebidos de/para seu computador esto sendo
capturadospeloWireshark.

5. Umavezcomeadaacapturadepacotes,umajanelacomoresumodessacapturairaparecer,como
mostra a Figura 7. Essa figura sumariza a quantidade de pacotes de diversos tipos que esto sendo
capturados,e(importante!)contmumbotodeStopquepermiteavocparaessacaptura.Mas,no
faaissoainda!

6. Enquanto o Wireshark est executando, digite o endereo: http://gaia.cs.umass.edu/wireshark


labs/INTROwiresharkfile1.html no seu navegador, e espere a pgina mostrada. Para mostrar essa
pgina, seu navegador ir contatar o servidor HTTP em gaia.cs.umass.edu e trocar mensagens com o
mesmocomopropsitodebaixaressa(fazerodownloaddessa)pgina.OsquadrosdeEthernetque
contmessasmensagensHTTPserocapturadospeloWireshark.

Figura7:JaneladecapturadepacotesdoWireshark

7. Aps seu navegador mostrar a pgina INTROwiresharkfile1.html, pare a captura de pacotes,


pressionandoobotoSTOPjjaneladecapturadepacotesdoWireshark.Issofarcomqueessajanela
desaparea e a janela de interface principal do Wireshark ir mostrar todos os pacotes capturados
desdeoinciodesseprocesso.Essajaneladevepossuirumaaparnciasemelhanteda Figura5.Agora,
voc possui pacotes de dados reais que contem todas as mensagens trocadas pelos protocolos entre
seu computador e uma entidade na Internet. As mensagens trocadas com o servidor web
gaia.cs.umass.edudevemapareceremalgumlugardajaneladelistagemdepacotescapturados.Mas,
devem existir diversos outros tipos de pacotes mostrados (veja, por exemplo, os diversos tipos de
protocolosmostradosnacolunaProtocolnaFigura5).

8. Digitehttpsemasaspas,eemletrasminsculas(todososnomesdeprotocolosnoWiresharkesto
emletrasminsculas)nocampodeespecificaodefiltros.EntoselecioneApply(adireitadeonde
sedigitouhttp).IstoirfazercomquesomentemensagensHTTPsejammostrasnajaneladelistagem
depacotes.

9. Selecioneaprimeiramensagemmostradanajaneladelistagemdepacotes.Essadeveseramensgem
deGETdoprotocoloHTTPquefoienviadadoseucomputadorparaoservidorHTTPgaia.cs.umass.edu.
QuandoseselecionouamensagemdeGETdoHTTP,oquadroEthernet,odatagaramaIP,osegmento
TCPeainformaodocabealhodamensagemHTTPforammostradosnajaneladedetalhamentodos
cabealhosdospacotes.

10. AFigura8mostra,emdetalhe,asinformaesdamensagemHTTP,enquantoasinformaesdoquadro
Ethernet,dodatagramaIP,dosegmentoTCPforamminimizadas.

11. FecheesaiadoWireshark.

Figura8:JaneladeinterfacedoWiresharkapsopasso9.

6. PartePrticaemaulaexperinciaproposta

1. ListeosdiferentesprotocolosqueaparecemnacolunaProtocolnajaneladelistagemdepacotes
nopasso7.(testeosendereos:www.google.com.brewww.ufsj.edu.br).
2. QuantotempolevouapartirdomomentoemqueamensagemGETdoHTTPfoienviadaatser
recebidooOK?Pordefault,ovalordacolunaTimenajaneladelistagemdepacotesserefere
quantidadedetempo,emsegundo,desdeomomentoqueorastreamentodepacotescomea.
Para mostrar o campo de tempo no formato de horaminutosegundo em que ocorreram essas
trocasdemensagem,selecioneaabaViewnomenudecomandos,depoisescolhaTimeDisplay
Format,eentoTimeofday.
3. Qual o endereo de Internet de gaia.cs.umass.edu? Qual o endereo de Internet do seu
computador?Respondaomesmoparaosoutrosendereostestados.
4. ImprimaasduasmensagensHTTPmostradasnopasso9.Paratanto,selecionePrintnomenude
comandoFile,escolhaSelectedPacketOnly,emseguida,Printasdisplayedeento,cliqueOK
(escolhaumaimpressoradotipoPDF).

7. Bibliografia

[1]KUROSE,J.F.;ROSS,K.W.RedesdeComputadoreseaInternet,1.ed.,Ed.AddisonWesley,
2003.

TrabalhoPrtico:
Ethernet:
SelecioneopacoteEthernetquecontmamensagemHTTPGET.LembrequeamensagemHTTP
estdentrodeumsegmentoTCP,queporsuavezestdentrodeumdatagramaIP,queestdentrode
umpacoteEthernet.
Responda s questes seguintes baseado no contedo desse pacote Ethernet (que contm a
mensagemHTTPGET).
1. Qualoendereo(MAC)dedestinodessepacote?QualoendereoEthernettestado?Ento
qualdispositivotemesseendereo?
2. QualovalordoendereoEthernetdefonte?Esteendereodoseucomputadoroudeum
endereodaweb?Entoqualdispositivotemesseendereo?
3. QualoendereoEthernetdedestino?Esteendereodoseucomputador?

ARP:
LembresequeoprotocoloARPmantmumatabeladecorrelaoentreendereosIPeEthernet
(MAC) no seu computador. Para manipular e visualizar o contedo dessa tabela (memria) usado o
comandoarpdiretamentenoDOS.Responda:
1. EscrevaocontedodamemriaARPdoseucomputador.Qualosignificadodecadacoluna?
ParaobservaroseucomputadormandandoerecebendomensagensARP,necessriolimpara
memriaARP.DigitenoDOSarpd*,odindicaaoperaodedeletareo*indicaaescolhadetodasas
entradas.

LimpeamemriaARPcomodescritoacima.
Certifiquese que o cache do seu navegador est vazio. Para o Internet Explorer selecione
Ferramentas> Opes da Internet>Excluir histrico de navegao ao sair>excluir limpando
assimamemria(histrico).
ComeceacapturaatravsdoWireshark.
EntrecomaURL:http://gaia.cs.umass.edu/wiresharklabs/INTROwiresharkfile1.html
Pare a captura. O foco o protocolo ARP, logo no estamos interessados em protocolos
superioresaoIP.EntonocampofilterdigitearpeserolistadosapenaspacotesARP.

2. QuaissoosvaloreshexadecimaisdosendereosdefonteedestinodopacoteEthernetque
contmamensagemARPdepergunta?
3. QualovalorhexadecimaldocampoType?Oquesignifica?
4. AmensagemARPcontmoendereoIPdoremetente?
5. AgoraencontreamensagemARPderesposta.OndenopacoteARPestaresposta?
6. QualovalorhexadecimaldosendereosdefonteedestinonopacoteEthernetquecontma
respostaARP?

ICMP

Vamos examinar as mensagens ICMP geradas pelo Ping e Traceroute. Atravs da captura dos
pacotesexaminaremosocontedoeformatodasmensagensICMP.
O ping mostra se um host remoto est ativo ou no, dizendo se a comunicao entre o seu
comutadoreoremotoestOK(atonvelderede).
AbraoPromptdoWindows(DOS).
Comeceacaptura.
Digitenoprompt:pingn10hostname.
Quandoopingterminar,interrompaacaptura.
UsandooWireshark,nocampofilter,digiteicmp.Notequesolistadospacotescomperguntas
pingerespostasping.
Aseguirrespondasquestes:
7. QualoendereoIPdoseucomputador?QualoendereoIPdedestino?
8. PorqueopacoteICMPnotemnmerosdeportadedestinoefonte?
9. Examineumadasperguntaspingenviadasdoseucomputador.Qualonmerodecdigodo
protocolo ICMP? Quais os outros campos que o pacote ICMP tem? Quantos bytes tem os
campos:checksum,sequencenumbereidentifier?
10.Examinearespostadaperguntapinganterior.QualonmerodecdigodoprotocoloICMP?
Quais os outros campos que o pacote ICMP tem? Quantos bytes tem os campos: checksum,
sequencenumbereidentifier?

Otraceroute,noWindows,mandaumasriedepacotesICMPdeumafonteatumdestino.O
programamandaoprimeiropacotecomTTL=1,osegundocomTTL=2,eassimpordiante.Essespacotes
podero ser descartados no primeiro, segundo, ..., roteadores respectivamente, e ser mandado uma
mensagem ICMP de erro ao emissor, ou seja: seu computador, permitindo que ele consiga recompor a
rota.Logosigaospassosaseguir:

AbraoPromptdoWindows(DOS).
Comeceacaptura.
Digitenoprompt:tracerthostname.
Quandootracertterminar,interrompaacaptura.

11.QualoendereoIPdoseucomputador?QualoendereoIPdohostdedestino?
12.Examineumpacote.Ele(ICMPerrorpacket)diferentedopacoteobtidonacapturadoping
(echopacket)?Emqueaspectos?Quaisosnovoscampospresentes?
13.Seoseuhostdedestinoestemoutrocontinente,existeumpacotequetemumdelaymuito
maissignificativoqueoanterior.Qualseriaumapossvellocalizaodoroteadorqueretornou
essepacoteequalseriaumapossvellocalizaodoroteadorqueretornouopacoteanterior?

10