Você está na página 1de 28

Redes de Computadores Aula Prtica 2 Nesta aula, voc aprender a utilizar alguns utilitrios de rede que podem ajud-lo

a identificar problemas na rede ou nos programas que estiver desenvolvendo ao longo do curso. Utilitrios de Rede No Windows existem alguns utilitrios de rede disponveis atravs da janela DOS. Os utilitrios que sero vistos nesta aula so programas que usam a linha de comando e so baseados em programas originados do Unix, com a mesma funo. Os utilitrios mostrados so idnticos aos do Unix/Linux com excesso do traceroute que no windows tem o nome de tracert devido a limitao antiga de 8 caracteres para nomes de programas do DOS.

O utilitrio ping O utilitrio ping (analogia com o jogo de ping-pong - na verdade, o nome um acrnimo para Packet Internet Groper, que poderia ser traduzido como "procurador de pacotes da Internet") 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 mquina remota simplesmente devolve os dados que ela recebeu. O objetivo testar se alm da rede estar funcionando corretamente at a camada de rede, a mesma no est fazendo nenhuma traduo nos bytes enviados.

O modo de usar o ping no Windows (gerado pelo prprio ping!):

Uso: ping [-t] [-a] [-n num] [-l tamanho] [-f] [-i TTL] [-v TOS] [-r num] [-s num] [[-j lista_hosts] | [-k lista_hosts]] [-w tempo_limite] lista_destino

Opes: -t Dispara contra o host especificado at ser interrompido. Para ver estatsticas e continuar, pressione CTRL-Break; para terminar, pressione CRTL-C. -a -n num -l tamanho Resolve endereos para nomes de host. Nmero de requisies de eco a enviar. O valor padro 4. Envia o tamanho do buffer.

-f -i TTL -v TOS -r num -s num

Ativa o sinalizador de no-fragmentao no pacote. Define o tempo de vida. Define o tipo de servio. Rota dos pacotes para <num> saltos. Data e hora para <num> saltos.

-j lista_hosts Rota ampliada de origens definida em <lista_hosts>. -k lista_hosts Rota restrita de origens definida em <lista_hosts>. -w tempo_limite Tempo limite em milissegundos a aguardar para cada resposta.

Essa sintaxe varia um pouco no Unix/Linux. O tamanho do pacote, por exemplo, definido com o flag -s, ao invs de -l. O nmero de requisies definido com o flag -c, ao invs de -n. Veja abaixo um exemplo da sada de um ping para o endereo www.fabrai.br:

C:\WINDOWS>ping www.fabrai.br

Disparando contra www.fabrai.br [201.17.147.55] com 32 bytes de dados:

Resposta de 201.17.147.55: bytes=32 tempo=98ms TTL=51 Resposta de 201.17.147.55: bytes=32 tempo=94ms TTL=51 Resposta de 201.17.147.55: bytes=32 tempo=102ms TTL=51 Resposta de 201.17.147.55: bytes=32 tempo=106ms TTL=51

Estatsticas do Ping para 201.17.147.55: Pacotes: Enviados = 4, Recebidos = 4, Perdidos = 0 (0% de perda), Aproximar um nmero redondo de vezes em milissegundos: Mnimo = 94ms, Mximo = 106ms, Mdia = 100ms

O ping mostra uma srie de informaes interessantes, como por exemplo, o endereo 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 contrrio o ping funciona indefinidamente at o usurio cancelar com control-C.

Como voc est numa rede segura, com endereos no vlidos, no ir conseguir utilizar o ping apontando para computadores na Internet. Assim v at o site

http://www.subnetonline.com/pages/network-tools/online-ping-ipv4.php

O ping, nesse caso, partir do servidor www.subnetonline.com

Agora, use o comando ping para pingar os diversos servidores abaixo:

1. Google: www.google.com 2. Universo On Line: www.uol.com.br 3. Subnet Online: www.subnetonline.com

Qual dos sites abaixo apresentou menor tempo de resposta? Por que?

O (TTL) Time To Live um campo do pacote IP e utilizado para limitar o nmero de roteadores por onde um determinado pacote pode passar. Cada roteador por onde um determinado pacote IP trafega decrementa o nmero do campo TTL antes de pass-lo para frente. Se o valor do campo TTL chegar a zero, o roteador no 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 no pde ser mais transmitido.

Esse mecanismo serve para evitar que em uma rede mal configurada e com algum loop de endereamento, a quantidade de pacotes trafegada estoure a capacidade da rede por causa de retransmisses entre os mesmos roteadores. Por exemplo, se do ponto A os pacotes IP so roteados para o ponto B, e do ponto B (por causa de um erro) so roteados de volta para o ponto A, um pacote IP poderia ficar indo e voltando indefinidamente se no possusse o mecanismo do TTL.

O utilitrio traceroute O utilitrio traceroute serve para nos mostrar por onde um pacote IP trafega quando enviado. Esse utilitrio to til quanto o ping e no windows est disponvel com o nome de tracert.

A sintaxe do tracert no windows :

Uso: tracert [-d] [-h nmax_saltos] [-j lst_hosts] [-w tempo_limite] destino

Opes: -d No resolver endereos para nomes de hosts. Nmero mximo de saltos para a procura do destino.

-h nmax_saltos -j lst_hosts

Rota ampliada de origens usada com a lista lst_hosts. Tempo de espera em milissegundos para cada resposta.

-w tempo_limite

No existe nenhum mecanismo disponvel nos roteadores para informar o trajeto de um pacote IP pela Internet. Mas sem usar nenhum artifcio adicional, o autor do traceroute conseguiu fazer este programa de forma muito criativa. Ele aproveitou o campo TTL do pacote IP para transmitir pacotes com TTL a partir de 1 at alcanar o destino. Assim, cada vez que um pacote "morre" no caminho at o destino, o traceroute avisado e assim consegue traar a rota.

Veja um exemplo de sada de um traceroute no Unix/Linux, partindo dos site da Rede Rio, para o endereo www.sdsc.edu:

$> traceroute www.google.com

traceroute: Warning: www.google.com has multiple addresses; using 64.233.163.103 traceroute to www.l.google.com (64.233.163.103), 30 hops max, 40 byte packets 1 giga-bgp-cbpf.rederio.br (200.20.94.58) 0.951 ms 0.608 ms 0.557 ms 2 embratel-G4-0-gacc02.rjo.embratel.net.br (200.179.69.29) 0.620 ms 0.635 ms 9.604 ms 3 ebt-T0-5-5-0-21-tacc01.rjoen.embratel.net.br (200.244.163.229) 1.437 ms 1.225 ms 1.250 ms

4 peer-T0-0-4-0-tacc01.rjoen.embratel.net.br (201.73.51.10) 14.523 ms 14.199 ms 8.702 ms 5 209.85.250.242 (209.85.250.242) 6.901 ms 209.85.250.248 (209.85.250.248) 6.692 ms 42.002 ms 6 72.14.233.93 (72.14.233.93) 9.222 ms 7.004 ms 130.829 ms 7 64.233.175.58 (64.233.175.58) 12.911 ms 7.495 ms 117.822 ms 8 bs-in-f103.google.com (64.233.163.103) 7.673 ms 7.754 ms 7.117 ms

Rastreamento completo.

A sada do traceroute indica para cada HOP (ponto de roteamento do pacote IP), o tempo de trs pacotes enviados e o endereo do roteador correspondente. Montando a sequncia 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 endereo do roteador onde o pacote IP morreu e consequentemente a rota dele at o destino!

Utilizando o site http://www.subnetonline.com/pages/network-tools/online-traceroute.php execute traceroute para cada um dos endereos abaixo e veja qual a rota traada.

1. Google: www.google.com 2. Rede Rio Computadores: guanabara.rederio.br 3. New South Wales Regional Network Organisation: www.nswrno.net.au 4. Subnet Online: www.subnetonline.com

Agora faa o mesmo traceroute a partir de http://guanabara.rederio.br/cgi-bin/nph-traceroute

Voc observou diferenas nos resultados? A que se devem as diferenas? Qual o traceroute com menos HOPs e com mais HOPs em cada um dos testes? Voc acha que um TTL mximo de 255 atende necessidade da maioria das redes?

O site www.traceroute.org disponibiliza vrios links para sites espalhados pelo a partir dos quais possvel fazer o traceroute. Tente executar o traceroute a partir de alguns desses sites (alguns podem no estar funcionando!) para a fabrai (www.fabrai.br).

Veja abaixo um exemplo de sada 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 (observao: o problema abaixo .

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 32.554 ms 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 netstream-S3-1-dist01.bhe.embratel.net.br (200.251.12.54) 293.001 ms 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

O utilitrio nslookup O utilitrio nslookup serve para traduzir nomes de domnio para os nmeros IP correspondentes. Este utilitrio consulta os servidores de DNS (Domain Name Service) espalhados na Internet para resolver uma consulta e descobrir o endereo.

O nslookup ao contrrio dos outros utilitrios vistos at agora, oferece um prompt para o usurio digitar nomes de domnios para consulta. Veja abaixo um exemplo de execuo do nslookup:

C:\>nslookup Servidor padrao: teste.com Address: 200.70.201.33

> server 4.2.2.1 Servidor padro: vnsc-pri.sys.gtei.net Address: 4.2.2.1

> www.fabrai.br Servidor: vnsc-pri.sys.gtei.net Address: 4.2.2.1

No resposta de autorizao: Nome = www.fabrai.br Address: 201.17.147.55

> set type=mx > mg.gov.br. Servidor: vnsc-pri.sys.gtei.net Address: 4.2.2.1

No resposta de autorizao: mg.gov.br > MX preference = 1, mail exchanger = asmail.prodemge.gov.br

O que foi digitado pelo usurio est em negrito. Note que alm dos domnios, existem alguns comandos disponveis no nslookup (set type=). Quando os domnios so seguidos de um ponto, nslookup interpreta como domnios completos. possvel especificar somente um nome de uma mquina e o programa busca pelo seu endereo IP dentro da prpria rede.

Pode-se usar o comando help para ter acesso aos demais comandos do nslookup. Veja a sada de um help do nslookup no unix:

> help $Id: nslookup.help,v 8.4 1996/10/25 18:09:41 vixie Exp $

Commands: NAME

(identifiers are shown in uppercase, [] means optional) - print info about the host/domain NAME using default server

NAME1 NAME2 help or ? set OPTION all

- as above, but use NAME2 as server

- print info on common commands; see nslookup(1) for details - set an option

- 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,ANYNAME,HINFO,MX,PX,NS,PTR,SOA,TXT,WKS,SRV,NAPT R port=X type=X class=X server NAME lserver NAME - set port number to send query on - synonym for querytype - set query class to one of IN (Internet), CHAOS, HESIOD or ANY - set default server to NAME, using current default server - 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 -h -s - list canonical names and aliases - list HINFO (CPU type and operating system) - list well-known services

-d -t TYPE view FILE exit >

- list all records - list records of the given type (e.g., ANAME,MX, etc.) - sort an 'ls' output file and view it with more - exit the program, ^D also exits

Descubra os endereos IP das mquinas que podem receber e-mail das seguintes empresas, usando o site http://www.kloth.net/services/nslookup.php:

1. Vivo - vivo.com.br 2. Transmeta (nos USA) - transmeta.com 3. British Telecom da Espanha - bt.es

O utilitrio netstat O netstat serve para mostrar as conexes ativas atualmente com a mquina em questo. Ele lista na tela todas as conexes TCP/IP em andamento. Alm disso existe uma opo para mostrar o contedo da tabela de roteamento. Veja abaixo a sintaxe do netstat do windows:

Exibir estatsticas de protocolo e conexes de rede TCP/IP atuais.

NETSTAT [-a] [-e] [-n] [-s] [-p proto] [-r] [intervalo]

-a -e

Exibe todas as conexes e portas de escuta. Exibe estatsticas Ethernet. Isso pode ser combinado opo -s.

-n -p proto

Exibe endereos e nmeros de porta em formato numrico. Exibe conexes para o protocolo especificado por proto; proto pode ser tcp ou udp. Se usado com a opo -s para exibir estatsticas por protocolo, proto pode ser tcp, udp ou ip.

-r -s

Exibe o contedo da tabela de roteamento. Exibe estatsticas por protocolo. Por padro, as estatsticas so mostradas para TCP, UDP e IP; a opo -p pode ser usada para especificar um subconjunto do padro.

intervalo

Exibe novamente uma estatstica selecionada, fazendo pausas de intervalos de segundos entre cada tela. Pressione CTRL+C para interromper a nova exibio das estatsticas. Caso omitido, netstat imprimir as informaes de configurao uma vez.

----------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------ --------------------------------------------------------

O comando netstat pode ser usado no ambiente Linux (e na maioria dos Unix) da forma descrita abaixo (pagina de manual - man page da distribuio Linux Fedora).

netstat * NOME * SINOPSE * DESCRIO * o (sem opes) o -r, --route o -i, --interface iface o -M, --masquerade o -s, --statistics * OPES * o -v, --verbose

o -n, --numeric o -A, --af famlia o -c, --continuous * SADA * o Conexes Internet Ativas (TCP, UDP, RAW) o Proto o Recv-Q o Send-Q o Endereo Local o Endereo Remoto o Estado o Usurio o Temporizador o UNIX domain sockets Ativos o Proto o CntRef o Flags o Tipos o Estados o Path o Sockets IPX ativos o Sockets NET/ROM ativos o Sockets AX.25 ativos

NOME netstat - Mostra conexes de rede, tabelas de roteamento, estatsticas de interface e conexes mascaradas.

SINOPSE

netstat [-venaoc] [--tcp|-t] [--udp|-u] [--raw|-w] [--unix|-x] [--inet|--ip] [--ax25] [--ipx] [--netrom]

netstat [-veenc] [--inet] [--ipx] [--netrom] [--ddp] [--ax25] {--route|-r}

netstat [-veenac] {--interfaces|-i} [iface]

netstat [-enc] {--masquerade|-M}

netstat {--statistics|-s}

netstat {-V|--version} {-h|--help} DESCRIO netstat mostra informaes do subsistema de rede do Linux. (sem opes) Voc pode ver o estado das conexes de rede atravs da listagem dos sockets abertos. Esta a operao padro: se voc no especificar nenhuma famlia de endereos, os sockets ativos de todas as famlias de endereos configuradas sero mostrados. Com -e voc obter informaes adicionais (userid). Com a chave -v voc poder fazer com que o netstat reclame sobre famlias de endereos conhecidas que no sejam suportadas pelo kernel. A opo -o mostra algumas informaes adicionais sobre temporizadores de rede. -a mostra todos os sockets, incluindo sockets de servidores. A famlia de endereos inet mostrar sockets raw, udp e tcp. -r, --route Com a opo -r, --route voc obter as tabelas de roteamento do kernel no mesmo formato usado por route -e. netstat -er usar o formato de apresentao do comando route. Por favor veja route(8) para maiores detalhes. -i, --interface iface Se voc usar a opo -i, --interfaces , uma tabela de todas (ou da iface especificada) as interfaces de rede ser mostrada. A sada usa o formato ifconfig -e , e descrita em ifconfig(8). netstat -ei mostrar uma tabela ou uma entrada de interface como ifconfig mostra. Com a chave -a , voc pode incluir interfaces que no estejam configuradas (i.e. no tem a flag U=UP configurada). -M, --masquerade

Uma lista de todas as sesses mascaradas tambm pode ser vista. Com a chave -e voc pode incluir mais algumas informaes sobre numerao sequencial e deltas , causados por reescritas de dados em sesses FTP (comando PORT). O suporte a mascaramento usado para esconder mquinas em endereos de rede no oficiais do resto do mundo, como descrito em ipfw(4),ipfwadm(8) e ipfw (8). -s, --statistics

Mostra estatsticas sobre o subsistema de rede do kernel do Linux, que so lidas a partir de /proc/net/snmp. OPES -v, --verbose Informa ao usurio o que est ocorrendo, sendo detalhado. Especialmente mostra algumas informaes teis sobre famlias de endereos no configuradas. -n, --numeric Mostra endereos numricos, sem tentar resolver os nomes da mquina, porta ou usurio. -A, --af famlia Usa um mtodo diferente para configurar as famlias de endereos. famlia uma lista de palavras-chave de famlias de endereos separadas por vrgulas (',') como inet, unix, ipx, ax25, netrom e ddp. Tem o mesmo efeito de usar as opes longas --inet, --unix, --ipx, --ax25, -netrom e --ddp. -c, --continuous Isto far com que netstat mostre a tabela selecionada a cada segundo, continuamente na tela at que voc o interrompa.

----------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------- -----------------------------------------------------------

Use o netstat para mostrar todas as conexes e portas de escuta da sua mquina (LISTENING). A sada mostrada em 4 colunas. Na primeira est o protocolo, na segunda o endereo da conexo na porta local. A terceira coluna mostra o endereo na mquina remota (o endereo da mquina e a porta TCP da conexo) e a quarta coluna mostra o estado da conexo (ESTABLISHED, LISTENING, CLOSE_WAIT, etc).

Use a opo -r para mostrar o contedo da tabela de roteamento da sua estao. Essa tabela mostra para qual endereo cada pacote deve ser enviado em funo do seu endereo IP.

Desta forma, a mquina garante que o pacote ser entregue para a mquina de destino corretamente.

Execute os seguintes comandos, com o utilitrio netstat. Caso no consiga execut-los em sua mquina Windows, baixe o utilitrio Putty.exe a partir do link http://www.lnaffah.com/PUTTY.EX_

Utilitrio Putty baixe aqui Renomeie o arquivo com a extenso EXE aps baix-lo. Execute-o e faa acesso ao servidor 10.39.20.1, com o usurio redes e a senha redes.

a) b) c)

netstat s netstat nr netstat a

Explique o que voc viu em cada um deles.

Baseado em exerccios elaborados pelo Prof. Lindenberg Naffah Ferreira e em exerccios elaborados pelo Prof. Rodrigo Otvio R. Antunes

Batch Script Ol, irei explicar aqui algumas coisinhas sobre batch script, exemplos, no apenas para Win98, mas tambm para NT/XP pois existem poucos documentos para XP em portugus... O que um BAT? Tipo de arquivo em lote (batch file) do DOS e sistemas Windows. Neste tipo de arquivo pode-se entrar vrios comandos de linha de comando a serem executados, em vez de ter de escrev-los um a um na linha de comando. O arquivo em lote com extenso BAT mais famoso o Autoexec.bat, que executado toda a vez em que o sistema operacional carregado. Bom, vamos conhecer agora alguns comandos que iremos usar frequentemente, se tiver dvida, digite COMANDO /? que ir ser mostrado uma explicao e exemplos do seu uso: ECHO Serve para que seja ativado ou desativado o "eco" do comando ou para que seja mostrado uma mensagem. Usa-se echo. para quebrar uma linha.

Exemplo1: @echo off echo Ol mundo! echo. echo :D O @ antes do echo off serve para que o mesmo no seja mostrado, e assim ele desative o "eco" silenciosamente. Se tiver alguma dvida, crie um exemplo sem usar o @. Exemplo 2: @echo off echo Inicio do arquivo > Teste.txt echo. >> Teste.txt echo Bla bla bla >> Teste.txt Isso far com que seja escrito os dados no arquivo Teste.txt, ficando assim: Inicio do arquivo Bla bla bla CLS Serve para limpar a tela.. como se fosse um /clear para quem usa IRC.. ^^ GOTO Serve para alterar a ordem normal de execuo do batch, fazendo ir para um rtulo especfico, um rtulo identificado com o :. Exemplo: @echo off GOTO UIA echo Deveria aparecer isso se no fosse o rtulo :D :UIA echo Pulamos para c! hehehe Parmetros Isso muito interessante.. para que se possa usar parmetros de execuo em seu batch. Em programas por exemplo que precisa ser digitado: nomedoprograma /i (para instalar) nomedoprograma /d (para desintalar) ou pode ser -i ao invs de /i e -d ao invs de /d. No batch script, pode-se identificar o parmetro, atravs disso: %1 - Primeiro parmetro %2 - Segundo parmetro e assim sucessivamente. Exemplo: @echo off echo %1 - Parametro 1 echo %2 - Parametro 2

Execute-o assim: nomedoarquivo vamos ver Aparecer: vamos - Parametro 1 ver - Parametro 2. Simples n? SET Serve para exibir, definir ou remover variveis. Varivel algo que guarda alguma informao, se chama varivel por que seu valor pode variar. (duh) Para setar uma varivel: SET variavel=seu_valor Para visualizar ou usar o valor da varivel digite: %variavel%. Exemplo: @echo off set nome="" Digite o seu nome: set /p nome= echo. echo Ola %nome% !! IF / ELSE usado em praticamente todas linguagens de programao, serve para impor uma condio. Exemplo: @echo off set opcao="" echo Digite uma opcao (1 ou 2): set /p opcao= IF [%opcao%] EQU [1] (GOTO OPCAO1) ELSE (GOTO OPCAO2) :OPCAO1 echo Opcao 1 bla bla bla goto FIM :OPCAO2 echo Opcao 2 bla bla bla :FIM echo CABOU Se tiver dvidas sobre o IF, digite no prompt IF /? CHOICE (Em Win9x) Possibilita dar opes de escolha para a pessoa. Exemplo: @echo off choice /n/c123 if errorlevel 1 goto A1 if errorlevel 2 goto A2 if errorlevel 3 goto A3

:A1 echo Acao 1 goto FIM :A2 echo Acao 2 goto FIM :A3 echo Acao 3 goto FIM :FIM echo Kabou.. Bom, visto algumas funes, d uma re-lida, use o parmetro /? para conhecer mais sobre cada comando, crie coisinhas bobas para ver se j entendeu.. Bom, iremos criar duas tools(ferramentas), a primeira para o comando PING e outra ser para quem usa rede, pra facilitar o uso do NET SEND. Talvez possa ter incompatibilidade com Win9x j que irei fazer no XP.. Muitos acham que o PING apenas ping IP/HOST, mas desconhecem suas outras opes, ento vamos l, d um PING /?: Uso: ping [-t] [-a] [-n num] [-l tamanho] [-f] [-i TTL] [-v TOS] [-r num] [-s num] [[-j lista_hosts] | [-k lista_hosts]] [-w tempo_limite] nome_destino Opes: -t Dispara contra o host especificado at ser interrompido. Para ver estatsticas e continuar, pressione CTRL-Break; para terminar, pressione CRTL-C. -a Resolve endereos para nomes de host. -n num Nmero de requisies de eco a enviar. O valor padro 4. -l tamanho Envia o tamanho do buffer. -f Ativa o sinalizador de no-fragmentao no pacote. -i TTL Define o tempo de vida. -v TOS Define o tipo de servio. -r num Rota dos pacotes para <num> saltos. -s num Data e hora para <num> saltos. -j lista_hosts Rota ampliada de origens definida em <lista_hosts>. -k lista_hosts Rota restrita de origens definida em <lista_hosts>. -w tempo_limite Tempo limite em milissegundos a aguardar para cada resposta. timo, vamos criar uma ferramenta para que ao usurio digitar o nome do batch file, ele pergunte o IP, nmero de requisies. tamanho do pacote e tempo limite. Mos a obra: D um: edit xping.bat Abrirar o editor.. se no gostar, faa no bloco de notas mesmo :P Obs: REM usado para comentar uma linha... @echo off REM Limpa as variaveis... set ip=""

set num="" set pack="" set timeout="" echo. echo Qual o IP desejado? REM Ira pegar o valor que for digitado e atribuir a variavel ip set /p ip= echo. echo Qual o tamanho do pacote a ser enviado? (max: 65500) REM Ira pegar o valor que for digitado e atribuir a variavel pack set /p pack= echo. echo Qual sera o nmero de requisicoes? Coloque 0 para ser infinito. REM Ira pegar o valor que for digitado e atribuir a variavel num set /p num= echo. echo Qual sera o tempo limite de espera? Em milisegundos. REM Ira pegar o valor que for digitado e atribuir a variavel timeout set /p timeout= echo. cls echo ********************************************** echo * * echo * XPing por whit3_sh4rk * echo * * echo ********************************************** echo. REM Mostra qual foi o alvo definido anteriormente, usando a variavel ip echo Iniciando o ping ao alvo: %ip% echo. REM Lembra do numero de requisicoes? (Coloque 0 para ser infinito.) REM Iremos pegar o valor atribuido ao numero de requisicoes REM se for igual a 0 ele fara o ping infinito, usando o parametro -t REM se no for igual a 0 ele pega o numero de requisicoes atribuido REM a variavel %num% e usa-o... IF [%num%] EQU [0] ( ping -t %ip% -l %pack% -w %timeout% ) ELSE ( ping %ip% -n %num% -l %pack% -w %timeout% echo. echo Fim do ping! ) timo, terminanos! Salve isso claro! Agora teste o programa, e tente entender cada linha(nossaaa q difcil!!) kkkk depois disso vamos agora para a prxima tool, nela usaremos parmetros.. Obs: S uma dica, se quiserem usarem parmetros tambm nesse "xping" s definir corretamente o parametro 1=ip, parametro 2=pack, parametro 3=num, parametro 4=timeout, ae s a pessoa usar:

xping 127.0.0.1 65500 5 1000 Ou seja, ir pingar no 127.0.0.1, com um buffer de 65500 bytes, fazer isso 5 vezes, e esperar 1seg pelo resposta... :D Mos a obra 2 a revolta(lol): Bom, imaginemos que aqui na rede tem 3 mquinas, seus nomes: LOCKE SAWYER HURLEY (qualquer semelhana com o seriado LOST mera coincidncia :) D um: edit msg.bat Vamos l: @echo off set msg="" IF [%1] EQU [] GOTO AFF IF [%1] EQU [LOCKE] (GOTO LOCKE) ELSE IF [%1] EQU [SAWYER] (GOTO SAWYER) ELSE IF [%1] EQU [HURLEY] (GOTO HURLEY) ELSE (GOTO AFF) :LOCKE echo Digite a mensagem que deseja enviar para LOCKE: set /p msg= echo. net send LOCKE %msg% GOTO :EOF :SAWYER echo Digite a mensagem que deseja enviar para SAWYER: set /p msg= echo. net send SAWYER %msg% GOTO :EOF :HURLEY echo Digite a mensagem que deseja enviar para HURLEY: set /p msg= echo. net send HURLEY %msg% :AFF echo. echo Nenhum parametro valido foi especificado!

Salve.. Como ser usado? Abra o prompt e digite: msg LOCKE ou msg SAWYER ou msg HURLEY

Lembre-se de que CaSe SeNsItiVe :D Aula Prtica 1 - Utilitrios de Rede


No Windows existem alguns comandos que permitem o diagnstico de problemas de configurao de rede. Nesta aula estudaremos os comandos ping, tracert, route, netstat, ipconfig e telnet.

Ping A funo do comando ping verificar a conectividade IP entre dois hosts. Quando o comando ping executado em um host, este gera uma mensagem ICMP Echo Request que inserida em um datagrama IP endereado ao host destino. O host destino por sua vez, quando recebe uma mensagem ICMP Echo Request, responde com uma mensagem ICMP Echo Reply, inserida em um datagrama IP endereada ao host solicitante. O nome do comando ping uma analogia ao jogo de ping-pong, onde a bolinha "vai e volta". O comando ping tambm auxilia na verificao da integridade da pilha TCP/IP do prprio host. Para isso, executado o comando ping para o endereo 127.0.0.1, que a interface de loopback. A sintaxe do comando ping : C:\>ping /? Uso: ping [-t] [-a] [-n num] [-l tamanho] [-f] [-i TTL] [-v TOS] [-r num] [-s num] [[-j lista_hosts] | [-k lista_hosts]] [-w tempo_limite] lista_destino Opes: t . Break; para terminar, pressione CRTL-C. -a Resolve endereos para nomes de host. n num Nmero de requisies de eco a enviar. O valor padro 4. -l tamanho Envia o tamanho do buffer. -f Ativa o sinalizador de no-fragmentao no pacote. -i TTL Define o tempo de vida. -v TOS Define o tipo de servio. -r num Rota dos pacotes para saltos. -s num Data e hora para saltos. -j lista_hosts Rota ampliada de origens definida em . -k lista_hosts Rota restrita de origens definida em . w tempo_limite Tempo limite em milissegundos a aguardar para cada resp osta.

Dispara contra o host especificado at ser interrompido Para ver estatsticas e continuar, pressione CTRL-

C:\>

Abaixo temos um exemplo da execuo do comando ping para o endereo www.uol.com.br e os resultados obtidos. C:\>ping www.uol.com.br Disparando contra www.uol.com.br [200.221.2.45] com 32 bytes de dados: Resposta Resposta Resposta Resposta de de de de 200.221.2.45: 200.221.2.45: 200.221.2.45: 200.221.2.45: bytes=32 bytes=32 bytes=32 bytes=32 tempo=26ms tempo=24ms tempo=29ms tempo=27ms TTL=119 TTL=119 TTL=119 TTL=119

Estatsticas Pacotes: Aproximar um Mnimo = C:\>

do Ping para 200.221.2.45: Enviados = 4, Recebidos = 4, Perdidos = 0 (0% de perda), nmero redondo de vezes em milissegundos: 24ms, Mximo = 29ms, Mdia = 26ms

Observe que o endereo www.uol.com.br foi traduzido para o seu respectivo endereo IP pelo servio de resoluo de nomes DNS. Esse endereo IP foi inserido no campo "Endereo Destino" do datagrama no qual foi inserida a mensagem ICMP Echo Request. Como padro, o comando ping envia 4 mensagens ICMP Echo Request para o host destino, mas esse nmero pode ser alterado com a utilizao de parmetros adicionais, vistos na sintaxe do comando. As respostas do comando ping apresentam o endereo IP do host que est respondendo ao comando ping, o tempo decorrido entre o envio da mensagem ICMP Echo Request e o recebimento da resposta ICMP Echo Reply em milisegundos e o tempo de vida do datagrama que contm a mensagem ICMP Echo Reply. Como j foi visto nas aulas tericas, o campo TTL ou "Time to Live" do cabealho do datagrama IP possui oito bits, suportando como valor mximo 255. Porm, na prtica, o valor padro do TTL utilizado depende do sistema operacional, podendo ser 255, 128 ou 64. Em cada n intermedirio no trajeto entre o host origem e o destino, o TTL decrementado em uma unidade. Caso o valor do TTL chegue a zero em algum n intermedirio, o datagrama descartado e esse n envia uma mensagem ICMP Time to Live Exceeded para o n origem. Essa implementao evita que por algum problema de configurao ou roteamento um datagrama fique "eternamente" trafegando entre dois ns. No exemplo acima podemos perceber que o datagrama de resposta passou por 128 - 119 = 9 ns intermedirios, antes da chegada ao host solicitante. Isso significa que, para que a mensagem ICMP Echo Request chegue at o host www.uol.com.br, necessrio que ela seja inserida em um datagrama IP com o TTL configurado no mnimo com o valor 10. Veja abaixo um exemplo do envio do comando ping ao mesmo endereo, porm com campo TTL configurado com um valor inferior a 10, e observe a mensagem de resposta: C:\>ping www.uol.com.br -i 9 Disparando contra www.uol.com.br [200.221.2.45] com 32 bytes de dados:

Resposta Resposta Resposta Resposta

de de de de

200.221.30.33: 200.221.30.33: 200.221.30.33: 200.221.30.33:

O O O O

tempo tempo tempo tempo

de de de de

vida vida vida vida

expirou expirou expirou expirou

em em em em

trnsito. trnsito. trnsito. trnsito.

Estatsticas Pacotes: Aproximar um Mnimo = C:\>

do Ping para 200.221.2.45: Enviados = 4, Recebidos = 4, Perdidos = 0 (0% de perda), nmero redondo de vezes em milissegundos: 0ms, Mximo = 0ms, Mdia = 0ms

Questo 1: Determine com o comando ping o endereo IP, o tempo mdio de ida e volta e o nmero de ns intermedirios para os seguintes endereos: - Portal Yahoo: www.yahoo.com - Museu do Louvre: www.louvre.fr - Casa Branca: www.whitehouse.gov Questo 2: Execute comando ping para o endereo www.embratel.com.br utilizando os parmetros de forma que seja possvel: - Efetuar 10 disparos de mensagens ICMP Echo Request, ao invs de 4; - Efetuar infinitos disparos de mensagens ICMP Echo Request, ao invs de 4; - Utilizar TTL inferior ao mnimo necessrio. Observe que, por questes de segurana, alguns administradores de rede podem implementar sistemas de segurana que bloqueiem a chegada de mensagens ICMP. Nesse caso, os hosts configurados nessas redes no respondero aos comandos ping enviados.

Tracert O comando tracert tem por funo exibir os ns intermedirios pelos quais um datagrama IP trafega, no percurso at o seu endereo destino. Ele muito utilizado para verificar a localizao de um eventual ponto de falha em uma rede IP. A sintaxe do comando tracert : C:\>tracert Uso: tracert [-d] [-h nmax_saltos] [-j lst_hosts] [w tempo_limite] destino Opes: -d p; No resolver endereos para nomes de hosts. -h nmax_saltos ; Nmero mximo de saltos para a procura do destino. j lst_hosts &nnbsp; Rota ampliada de origens usada com a lista lst _hosts. w tempo_limite p;Tempo de espera em milissegundos para cada respost a. C:\>

Uma premissa do protocolo IP o fato de que a rota completa at o endereo destino no conhecida pelos ns intermedirios ou pelo n origem. Cada n conhece apenas o prximo salto, sendo o datagrama dessa forma encaminhado de n em n at o endereo destino. Porm, o comando tracert consegue apresentar a rota completa at um host destino utilizando o campo TTL do datagrama IP. Ao executar o comando tracert em um host, este envia uma mensagem ICMP Echo Request em um datagrama com TTL igual a 1. Essa mensagem expira logo no primeiro n, e este envia uma mensagem ICMP Time to Live Exceeded para o host origem. A partir dessa mensagem recebida, o tracert obtm o endereo IP do primeiro n intermedirio. O processo se repete com TTL igual a 2, 3 e assim por diante, at alcanar o n destino. Veja abaixo um exemplo de utilizao do comando tracert para traar a rota at o endereo www.uol.com.br: C:\>tracert www.uol.com.br Rastreando a rota para www.uol.com.br [200.221.2.45] com no mximo 30 saltos: 1 <10 ms <10 ms <10 ms 200-207-39129.dsl.telesp.net.br [200.207.39.129] 2 15 ms 16 ms 16 ms 200-207-571.dsl.telesp.net.br [200.207.57.1] 3 16 ms 15 ms 16 ms ATM-1-0-0-1-br-cas-cerc1.bbone.telesp.net.br [200.207.37.129] 4 16 ms 15 ms 16 ms FastEthernet-2-0-0-br-cas-cerc1.bbone.telesp.net.br [200.207.240.1] 5 15 ms 32 ms 31 ms 200-204-20209.dsl.telesp.net.br [200.204.20.209] 6 16 ms 31 ms 31 ms 200-148-160177.bbone.tdatabrasil.net.br [200.148.160.177] 7 15 ms 32 ms 31 ms P-5-1-te-br-spo-ibrc1.bbone.tdatabrasil.net.br[200.153.4.198] 8 16 ms 31 ms 31 ms 200-148-160134.bbone.tdatabrasil.net.br [200.148.160.134] 9 16 ms 31 ms 16 ms fr2border4.ix.uol.com.br [200.221.30.33] 10 15 ms 16 ms 31 ms hugo.uol.com.br [200.221.2.45] Rastreamento concludo. C:\> A sada do traceroute indica para cada n intermedirio (tambm conhecido como hop), o tempo de ida e volta de trs mensagens ICMP em milisegundos e o endereo do roteador correspondente. Montando a sequncia de 1 at o final, podemos ver por onde o pacote IP foi roteado at o destino. Questo 3: Verifique a rota para cada cada um dos endereos abaixo utilizando o comando tracert: - Portal Yahoo: www.yahoo.com - Museu do Louvre: www.louvre.fr - Casa Branca: www.whitehouse.gov

Veja abaixo um exemplo de sada de traceroute em uma rede mal configurada ou com problemas de rota. Os pacotes ficam trafegando entre os IPs 172.16.150.93 e 172.16.150.94. O traceroute tem um limite de 30 ns intermedirios como padro, mas esse valor pode ser alterado com a utilizao de parmetros adicionais. C:\>tracert 10.202.0.10 Rastreando a rota para SERGIO [10.202.0.10] com no mximo 30 saltos: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 C:\>^C C:\> Route O comando route utilizado para listar, adicionar ou remover regras da tabela de roteamento de um computador. Esta tabela de roteamento consultada pelo protocolo IP para determinar para onde deve ser encaminhado cada datagrama IP transmitido. Na figura a seguir podemos verificar a existncia de 5 colunas: "Endereo de rede", "Mscara", "Ender. gateway", "Interface" e "Custo". C:\>route print Rotas ativas: Endereo de rede Mscara Custo 0.0.0.0 0.0.0.0 1 10.201.0.0 255.255.0.0 1 10.201.160.5 255.255.255.255 1 10.255.255.255 255.255.255.255 1 127.0.0.0 255.0.0.0 1 Ender. Gateway 10.201.0.1 10.201.160.5 127.0.0.1 10.201.160.5 127.0.0.1 Interface 10.201.160.5 10.201.160.5 127.0.0.1 10.201.160.5 127.0.0.1 <10 2 20 41 20 41 20 41 20 41 20 41 20 41 20 41 20 41 ms ms ms ms ms ms ms ms ms ms ms ms ms ms ms ms ms ms <10 1 20 41 20 41 20 41 20 41 20 41 20 41 20 41 20 41 ms ms ms ms ms ms ms ms ms ms ms ms ms ms ms ms ms ms <10 <10 21 42 21 42 21 42 21 42 21 42 21 42 21 42 21 ms ms ms ms ms ms ms ms ms ms ms ms ms ms ms ms ms 10.201.0.1 192.168.202.2 172.16.129.121 172.16.150.94 172.16.150.93 172.16.150.94 172.16.150.93 172.16.150.94 172.16.150.93 172.16.150.94 172.16.150.93 172.16.150.94 172.16.150.93 172.16.150.94 172.16.150.93 172.16.150.94 172.16.150.93

224.0.0.0 1 255.255.255.255 1 C:\>

224.0.0.0 255.255.255.255

10.201.160.5 10.201.160.5

10.201.160.5 0.0.0.0

Usando as informaes da coluna " Endereo de rede " e "Mscara", o computador descobre em qual regra o endereo destino do datagrama se enquadra. Identificada a regra, o datagrama direcionado para o respectivo "Gateway", atravs da respectiva "Interface". A primeira regra da tabela exemplo apresentada indica a regra do "Default Gateway". Esta regra a que determina para onde um datagrama deve ser enviado quando ele no se enquadra em nenhuma outra regra. No nosso caso, o gateway padro 10.201.0.1, acessvel atravs da interface 10.201.160.5, que o ip local da placa de rede do computador exemplo. Temos ainda uma regra para o endereo de loopback (127.0.0.1), outra para a prpria rede que o computador participa (10.201.0.0) e outras regras usadas para broadcast e multicast. A coluna "Custo" indica qual o custo para se alcanar o endereo destino, sendo de grande utilidade quando um destino pode ser alcanado por dois caminhos distintos. Questo 4: Descubra utilizando o comando ROUTE qual o "Default Gateway" de seu computador. Observe que em todo tracert que voc executa, o primeiro salto feito exatamente neste gateway.

NetStat O comando netstat mostra as conexes ativas com a mquina em questo. Alm disso existe uma opo para mostrar o contedo da tabela de roteamento. Veja abaixo a sintaxe do netstat do windows: C:\>netstat /?

Exibir estatsticas de protocolo e conexes de rede TCP/IP atuais. NETSTAT [-a] [-e] [-n] [-s] [-p proto] [-r] [intervalo] -a e n p proto roto s para exibir estatsticas por protocolo, proto pode ser tcp, udp ou ip. -r Exibe o contedo da tabela de roteamento. Exibe endereos e nmeros de porta em formato numrico. Exibe conexes para o protocolo especificado por proto; p pode ser tcp ou udp. Se usado com a opo Exibe todas as conexes e portas de escuta. Exibe estatsticas Ethernet. opo -s. Isso pode ser combinado

s ticas

Exibe estatsticas por protocolo.

Por padro, as estats

so mostradas para TCP, UDP e IP; a opo p pode ser usada Intervalo ausas de L+C para interromper a nova exibio das estatsticas. itido, netstat imprimir as informaes de configurao uma v ez. C:\> Use o netstat para mostrar todas as conexes e portas de escuta da sua mquina (LISTENING). A sada mostrada em 4 colunas. Na primeira est o protocolo, na segunda o endereo da conexo na porta local. A terceira coluna mostra o endereo na mquina remota (o endereo da mquina e a porta TCP da conexo) e a quarta coluna mostra o estado da conexo (ESTABLISHED, LISTENING, CLOSE_WAIT, etc). Use a opo -r para mostrar o contedo da tabela de roteamento da sua estao. Essa tabela mostra para qual endereo cada pacote deve ser enviado em funo do seu endereo IP. Desta forma, a mquina garante que o pacote ser entregue para a mquina de destino corretamente. Caso om para especificar um subconjunto do padro. Exibe novamente uma estatstica selecionada, fazendo p intervalos de segundos entre cada tela. Pressione CTR

IPConfig O IPConfig um comando utilizado para informar ou alterar a configurao atual de rede da mquina. Veja abaixo a sintaxe do comando ipconfig: C:\>ipconfig /? Configurao de IP do Windows 2000 USO: ipconfig [/? | /all | /release [adaptador] | /renew [adaptador] | /flushdns | /registerdns | /showclassid adaptador | /setclassid adaptador [id_classe_a_ser_definida] ] adaptador ncia', Padro ou nome completo com '*' e '?' para 'correspond

* corresponde a qualquer caractere; ? corresponde a um c aractere. Opes /? Exibe esta mensagem de ajuda. /all Exibe as informaes completas de configurao. /release Libera o endereo IP para o adaptador especificado . /renew Renova o endereo IP para o adaptador especificado . /flushdns Limpa o DNS Resolver Cache. /registerdns Atualiza todas as concesses do DHCP e registra no

vamente os nomes DNS /displaydns Exibe o contedo do DNS Resolver Cache. /showclassid Exibe todas as identificaes de classe do DHCP ac eitas para o adaptador. /setclassid Modifica a identificao de classe do DHCP. O padro a exibio apenas dos endereos IP, da mscara de subrede e do padro para cada adaptador ligado ao TCP/IP. No caso de Release e Renew, se no for especificado um nome de adaptad or, todas as concesses de endereo IP para todos os adaptadores ligados ao TCP/IP sero liber adas ou renovadas. Para SetClassID, se no for especificada uma identificao de classe, a identifi cao de classe ser removida. Exemplos: > ipconfig > ipconfig /all das > ipconfig /renew > ipconfig /renew EL* s como EL... > ipconfig /release *ELINK?21* orrespondentes, 21, meu_adaptadorELELINKi21. C:\> Abaixo temos o resultado da execuo do comando IPCONFIG sem nenhum parmetro adicional. No resultado podem ser visualizados o endereo IP, a mscara de sub-rede e o gateway padro configurados no host. C:\>IPCONFIG Configurao de IP do Windows 2000 Ethernet adaptador Conexo de rede local: Sufixo DNS especfico de Endereo IP. . . . . . . Mscara de sub-rede. . . Gateway padro . . . . . C:\> Questo 5: Execute o comando IPCONFIG no seu computador de modo a permitir a visualizao de configuraes adicionais de rede. conexo . . . . . . . . . . . . . . . . : : 10.201.10.1 : 255.255.0.0 : 10.201.0.1 ... Mostra as informaes. ... Mostra as informaes detalha ... Renova todos os adaptadores ... Renova adaptadores denominado ... Libera todos os adaptadores c por exemplo, ELINK-

Você também pode gostar