Redes de Computadores Aula Prática 2 Nesta aula, você aprenderá a utilizar alguns utilitários de rede que podem ajudá

-lo a identificar problemas na rede ou nos programas que estiver desenvolvendo ao longo do curso. Utilitários de Rede 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/Linux com excessão do traceroute que no windows tem o nome de tracert devido a limitaçào antiga de 8 caracteres para nomes de programas do DOS.

O utilitário ping O utilitário ping (analogia com o jogo de ping-pong - na verdade, o nome é um acrônimo 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 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.

O modo de usar o ping no Windows é (gerado pelo próprio 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

Opções: -t Dispara contra o host especificado até ser interrompido. Para ver estatísticas e continuar, pressione CTRL-Break; para terminar, pressione CRTL-C. -a -n num -l tamanho Resolve endereços para nomes de host. Número de requisições de eco a enviar. O valor padrão é 4. Envia o tamanho do buffer.

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

Ativa o sinalizador de não-fragmentação no pacote. Define o tempo de vida. Define o tipo de serviço. 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 invés de -l. O número de requisições é definido com o flag -c, ao invés de -n. Veja abaixo um exemplo da saída de um ping para o endereço 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

Estatísticas do Ping para 201.17.147.55: Pacotes: Enviados = 4, Recebidos = 4, Perdidos = 0 (0% de perda), Aproximar um número redondo de vezes em milissegundos: Mínimo = 94ms, Máximo = 106ms, Média = 100ms

o tempo de resposta de cada pacote e o TTL (Time To Live ou Tempo de Vida) do pacote.com 2. Subnet Online: www.O ping mostra uma série de informações interessantes. Se o valor do campo TTL chegar a zero. como por exemplo.br 3. Por exemplo. um pacote IP poderia ficar indo e voltando indefinidamente se não possuísse o mecanismo do TTL.com/pages/network-tools/online-ping-ipv4.subnetonline. o endereço IP de destino. a quantidade de bytes enviados.subnetonline. Assim vá até o site http://www. e do ponto B (por causa de um erro) são roteados de volta para o ponto A. a quantidade de pacotes trafegada estoure a capacidade da rede por causa de retransmissões entre os mesmos roteadores.com Agora. não irá conseguir utilizar o ping apontando para computadores na Internet. Universo On Line: www. partirá do servidor www. Google: www.uol. ao contrário o ping funciona indefinidamente até o usuário cancelar com control-C. nesse caso. 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.php O ping. o roteador não envia mais o pacote IP. Esse mecanismo serve para evitar que em uma rede mal configurada e com algum loop de endereçamento.google. use o comando ping para pingar os diversos servidores abaixo: 1. . Como você está numa rede segura. com endereços não válidos.com. O ping default do windows sempre manda 4 pacotes. no unix.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 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 do ponto A os pacotes IP são roteados para o ponto B.

o traceroute é avisado e assim consegue traçar a rota. partindo dos site da Rede Rio.embratel.br (200.250 ms .20.94.edu: $> traceroute www.net. cada vez que um pacote "morre" no caminho até o destino. Número máximo de saltos para a procura do destino.69.437 ms 1.br (200.net.635 ms 9. -w tempo_limite Não existe nenhum mecanismo disponível nos roteadores para informar o trajeto de um pacote IP pela Internet.embratel.google. -h nmax_saltos -j lst_hosts Rota ampliada de origens usada com a lista lst_hosts. 40 byte packets 1 giga-bgp-cbpf. Esse utilitário é tão útil quanto o ping e no windows está disponível com o nome de tracert.244.103).233.rjoen.rjo. Veja um exemplo de saída de um traceroute no Unix/Linux.608 ms 0.29) 0.229) 1.l. Tempo de espera em milissegundos para cada resposta.google.604 ms 3 ebt-T0-5-5-0-21-tacc01. 30 hops max.951 ms 0.103 traceroute to www.58) 0.google. Mas sem usar nenhum artifício adicional. A sintaxe do tracert no windows é: Uso: tracert [-d] [-h nmax_saltos] [-j lst_hosts] [-w tempo_limite] destino Opções: -d Não resolver endereços para nomes de hosts.225 ms 1.557 ms 2 embratel-G4-0-gacc02.233. para o endereço www.sdsc.O utilitário traceroute O utilitário traceroute serve para nos mostrar por onde um pacote IP trafega quando é enviado. Ele aproveitou o campo TTL do pacote IP para transmitir pacotes com TTL a partir de 1 até alcançar o destino.163.163. Assim. o autor do traceroute conseguiu fazer este programa de forma muito criativa.179. using 64.rederio.com has multiple addresses.163.com (64.620 ms 0.br (200.com traceroute: Warning: www.

com Agora faça o mesmo traceroute a partir de http://guanabara.51.233.rjoen. 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.175.com/pages/network-tools/online-traceroute.250.702 ms 5 209.250. A saída do traceroute indica para cada HOP (ponto de roteamento do pacote IP).117 ms Rastreamento completo.233. o roteador onde isso ocorreu envia um pacote ICMP para a origem.829 ms 7 64.242) 6. Subnet Online: www.embratel.250.73.br 3.4 peer-T0-0-4-0-tacc01. 1.754 ms 7.248) 6.85.google.85. Para cada vez que o TTL chega a zero (o pacote "morre"). Google: www.692 ms 42. podemos ver por onde o pacote IP foi roteado até o destino.14.822 ms 8 bs-in-f103.163.58 (64.233.au 4.google.93 (72.523 ms 14. Rede Rio Computadores: guanabara.85.248 (209.199 ms 8.subnetonline. Montando a sequência de 1 até o final. New South Wales Regional Network Organisation: www.com (64. Isso faz com que o pacote IP "morra" cada vez mais longe da origem.901 ms 209. o tempo de três pacotes enviados e o endereço do roteador correspondente.br/cgi-bin/nph-traceroute Você observou diferenças nos resultados? A que se devem as diferenças? Qual o traceroute com menos HOPs e com mais HOPs em cada um dos testes? Você acha que um TTL máximo de 255 atende à necessidade da maioria das redes? .85.002 ms 6 72.br (201.250.222 ms 7.14.004 ms 130.242 (209.911 ms 7. 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! Utilizando o site http://www.175.233.rederio.103) 7.com 2.233.net.58) 12.nswrno.subnetonline.93) 9.10) 14.673 ms 7.php execute traceroute para cada um dos endereços abaixo e veja qual é a rota traçada.rederio.495 ms 117.net.

163 (200.75 ms 879.209) 35.56.163) 239.299 ms 29.37 ms 9 200.50) 1201.192.255.109 ms 12 200.embratel.56.192.O site www.56.392 ms 13 200.479 ms 47.17.161 (200.369 ms 16 200.695 ms 3 arrozdoce.192.net.192.892 ms 0.192.br (200.192.56.56.251. 30 hops max.192.br (200.56.56. O traceroute tem um limite de 30 rotas por default.163 e 200.56.org disponibiliza vários links para sites espalhados pelo a partir dos quais é possível fazer o traceroute.192. o programa termina.192.i2.161) 119.192.net.17.437 ms 66.net.bhe.bhe.163) 170.56.br (200.192.158 ms 180.163) 294.192. Se qualquer rota ultrapassar este limite.56.857 ms 107.153. mas isso pode ser alterado (observação: o problema abaixo .146 ms 132.728 ms 132.56.554 ms 6 ebt-F5-0-dist01.568 ms 9.66) 46.192.464 ms .56.226 ms 148.56.56.56.562 ms 15 200.56.161) 154.br).818 ms 17 200.192.56.4 ms 152.899 ms 80.rnp.494 ms 32. 40 byte packets 1 ithaca.275 ms 163.163) 190.161 (200.192.471 ms 48.196.56.88 ms 0.807 ms 1316.791 ms 1760.958 ms 139.161 (200.236.rnp.17) 0.82 ms 10 200.269 ms 19 200.192.163 (200.436 ms netstream-S3-1-dist01.163) 1263.56. Os pacotes ficam trafegando entre os IPs 200.192.161) 97.pop-mg.192.56.071 ms 216.183.pop-mg.56.fabrai.226.190.003 ms 125.238.192.56.308 ms 96.56.605 ms 104.572 ms 11 200.br (200.161) 147.703 ms 18 200.221).254.161 (200.192.805 ms 72.161) 77.251.163 (200.161) 157.190.161 (200.109 ms 109.163) 193.net.73) 30.251.784 ms 5 pop-mg-rnp-br-S3-7-acc01.173 ms 57.embratel.192.54) 293.163 (200.12.bhe.embratel.traceroute.189 ms 82.com.432 ms 7 netstream-S3-0-dist01.694 ms 9.001 ms 8 200.676 ms 61.56.com. Tente executar o traceroute a partir de alguns desses sites (alguns podem não estar funcionando!) para a fabrai (www.192. Veja abaixo um exemplo de saída de traceroute em uma rede mal configurada ou com problemas de rota.192.836 ms 2 i2-gw.56.192.br (200.163 (200.embratel.406 ms 90.36 ms 226.bhe.666 ms 4 casadinho-a3.12.183.br (200.871 ms 130.163 (200.199) 47.161.192.221 (200.25 ms 14.56.br (200.165.73 ms 14 200.49) 9.pop-mg.br (200.096 ms 179.161 (200.43 ms 171.226.192.537 ms 47. traceroute to 200.

161) 111.791 ms 108.163 (200.615 ms 26 200.208 ms 182.161) 148.163 (200.192.192.192.56.192.769 ms 147.132 ms 232.192.163) 233.56.161) 143.56.222 ms 1652.72 ms 28 200.56.192.163 (200.sys.576 ms 101. 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.033 ms 22 200.192.192.192.07 ms 165.192.2.61 ms 130.746 ms 259.1 Servidor padrÒo: vnsc-pri.com Address: 200.56.33 > server 4. Veja abaixo um exemplo de execução do nslookup: C:\>nslookup Servidor padrao: teste.56.56.192.192.161 (200.56.192.163) 233.251 ms 27 200.192.56.442 ms 119.gtei.56.1 .56.70.234 ms 144.248 ms 161.163) 98.745 ms 131.161 (200.192.2.161) 74.56.163 (200.557 ms 30 200.net Address: 4.573 ms 29 200.048 ms 150.163) 148.163) 196.56.161 (200.56.192.192.161) 101.56.56.56.876 ms 189.201.568 ms 147.56.242 ms 146.2.196 ms 298.526 ms 213.2.192.255 ms 75.192.56.56.513 ms 122.163 (200.56.485 ms 21 200.307 ms O utilitário nslookup O utilitário nslookup serve para traduzir nomes de domínio para os números IP correspondentes.20 200.163) 144.163 (200.192.161 (200.192.243 ms 25 200.56. Este utilitário consulta os servidores de DNS (Domain Name Service) espalhados na Internet para resolver uma consulta e descobrir o endereço.161 (200.766 ms 23 200.99 ms 294.192.248 ms 24 200.

2.1 Não é resposta de autorização: Nome = www.br.gov.fabrai.print info about the host/domain NAME using default server .17.help. nslookup interpreta como domínios completos.prodemge.55 > set type=mx > mg.2.2.gov.gov.sys.gtei.net Address: 4.v 8. mail exchanger = asmail. Pode-se usar o comando help para ter acesso aos demais comandos do nslookup.br Servidor: vnsc-pri.2.sys.gtei.net Address: 4. existem alguns comandos disponíveis no nslookup (set type=).147.br > MX preference = 1. Quando os domínios são seguidos de um ponto.br O que foi digitado pelo usuário está em negrito.br Address: 201.1 Não é resposta de autorização: mg.4 1996/10/25 18:09:41 vixie Exp $ Commands: NAME (identifiers are shown in uppercase.> www. Servidor: vnsc-pri. É possível especificar somente um nome de uma máquina e o programa busca pelo seu endereço IP dentro da própria rede. Veja a saída de um help do nslookup no unix: > help $Id: nslookup.fabrai. [] means optional) . Note que além dos domínios.

A. HESIOD or ANY .HINFO.NAPT R port=X type=X class=X server NAME lserver NAME ./N6] .NS.MX. e.append domain name to each query [no]recurse .set domain to N1 and search list to N1.ANYÇNAME.finger the optional USER at the current default host root .set default server to NAME.synonym for querytype .list addresses in DOMAIN (optional: output to FILE) -a -h -s .PX.NAME1 NAME2 help or ? set OPTION all . CHAOS...set current default server to the root ls [opt] DOMAIN [> FILE] . see nslookup(1) for details .list well-known services .set query class to one of IN (Internet). root=NAME .ask for recursive answer to query [no]vc . current server and host [no]debug .PTR. but use NAME2 as server .as above.set number of retries to X timeout=X .print info on common commands.list canonical names and aliases .set port number to send query on .SRV.set default domain name to NAME srchlist=N1[/N2/.print exhaustive debugging information [no]defname . using initial server finger [USER] .set an option ..print options.TXT.g.set initial time-out interval to X seconds querytype=X .set default server to NAME.set query type.print debugging information [no]d2 .set root server to NAME retry=X .N2. etc.list HINFO (CPU type and operating system) .always use a virtual circuit domain=NAME .SOA.WKS. using current default server .

com.list all records .exit the program.MX.g. etc.php: 1. AÇNAME. Transmeta (nos USA) .br 2. Exibe estatísticas Ethernet. NETSTAT [-a] [-e] [-n] [-s] [-p proto] [-r] [intervalo] -a -e Exibe todas as conexões e portas de escuta.bt. -n -p proto Exibe endereços e números de porta em formato numérico. usando o site http://www.net/services/nslookup.) . .transmeta. Se usado com a opção -s para exibir estatísticas por protocolo. proto pode ser tcp ou udp.-d -t TYPE view FILE exit > .kloth. Além disso existe uma opção para mostrar o conteúdo da tabela de roteamento. Vivo .vivo. ^D also exits Descubra os endereços IP das máquinas que podem receber e-mail das seguintes empresas. proto pode ser tcp. Isso pode ser combinado à opção -s. Exibe conexões para o protocolo especificado por proto.. Ele lista na tela todas as conexões TCP/IP em andamento. British Telecom da Espanha .com 3.sort an 'ls' output file and view it with more . udp ou ip. Veja abaixo a sintaxe do netstat do windows: Exibir estatísticas de protocolo e conexões de rede TCP/IP atuais.es O utilitário netstat O netstat serve para mostrar as conexões ativas atualmente com a máquina em questão.list records of the given type (e.

--statistics * OPÇÕES * o -v. ----------------------------------------------------------------------------------------------------------------------------. --route o -i. Pressione CTRL+C para interromper a nova exibição das estatísticas. netstat imprimirá as informações de configuração uma vez. intervalo Exibe novamente uma estatística selecionada.-------------------------------------------------------- O comando netstat pode ser usado no ambiente Linux (e na maioria dos Unix) da forma descrita abaixo (pagina de manual . UDP e IP. Exibe estatísticas por protocolo. Caso omitido.-r -s Exibe o conteúdo da tabela de roteamento. Por padrão. as estatísticas são mostradas para TCP. fazendo pausas de intervalos de segundos entre cada tela. --masquerade o -s. netstat * NOME * SINOPSE * DESCRIÇÃO * o (sem opções) o -r. --interface iface o -M.-----------------------------------------------------------------------------------------------------------------------------. a opção -p pode ser usada para especificar um subconjunto do padrão. --verbose .man page da distribuição Linux Fedora).

. estatísticas de interface e conexões mascaradas. --af família o -c. UDP.Mostra conexões de rede. --continuous * SAÍDA * o Conexões Internet Ativas (TCP. --numeric o -A.o -n. RAW) o Proto o Recv-Q o Send-Q o Endereço Local o Endereço Remoto o Estado o Usuário 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. tabelas de roteamento.25 ativos NOME netstat .

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} DESCRIÇÃO netstat mostra informações do subsistema de rede do Linux. não tem a flag U=UP configurada). netstat -ei mostrará uma tabela ou uma entrada de interface como ifconfig mostra. e é descrita em ifconfig(8). Com a chave -v você poderá fazer com que o netstat reclame sobre famílias de endereços conhecidas que não sejam suportadas pelo kernel. --interfaces . Por favor veja route(8) para maiores detalhes. -a mostra todos os sockets. -i. --interface iface Se você usar a opção -i. --route Com a opção -r. Esta é a operação padrão: se você não especificar nenhuma família de endereços. Com a chave -a . netstat -er usará o formato de apresentação do comando route. incluindo sockets de servidores. (sem opções) Você pode ver o estado das conexões de rede através da listagem dos sockets abertos. os sockets ativos de todas as famílias de endereços configuradas serão mostrados. udp e tcp. Com -e você obterá informações adicionais (userid). A opção -o mostra algumas informações adicionais sobre temporizadores de rede. -M. você pode incluir interfaces que não estejam configuradas (i. A família de endereços inet mostrará sockets raw. -r. --masquerade . A saída usa o formato ifconfig -e . uma tabela de todas (ou da iface especificada) as interfaces de rede será mostrada.e. --route você obterá as tabelas de roteamento do kernel no mesmo formato usado por route -e.

etc). causados por reescritas de dados em sessões FTP (comando PORT). que são lidas a partir de /proc/net/snmp. -c. CLOSE_WAIT. Tem o mesmo efeito de usar as opções longas --inet. como descrito em ipfw(4). A saída é mostrada em 4 colunas.ipfwadm(8) e ipfw (8). -s. ipx. netrom e ddp. --continuous Isto fará com que netstat mostre a tabela selecionada a cada segundo. família é uma lista de palavras-chave de famílias de endereços separadas por vírgulas ('. -n. sendo detalhado. O suporte a mascaramento é usado para esconder máquinas em endereços de rede não oficiais do resto do mundo. LISTENING. --ax25. Essa tabela mostra para qual endereço cada pacote deve ser enviado em função do seu endereço IP. --af família Usa um método diferente para configurar as famílias de endereços.Uma lista de todas as sessões mascaradas também pode ser vista. -A. continuamente na tela até que você o interrompa. Na primeira está o protocolo. --ipx. --statistics Mostra estatísticas sobre o subsistema de rede do kernel do Linux. . Use a opção -r para mostrar o conteúdo da tabela de roteamento da sua estação.') como inet.----------------------------------------------------------- Use o netstat para mostrar todas as conexões e portas de escuta da sua máquina (LISTENING). --numeric Mostra endereços numéricos.--------------------------------------------------------------------------------------------------------------------------. -netrom e --ddp. unix. --verbose Informa ao usuário o que está ocorrendo. OPÇÕES -v. sem tentar resolver os nomes da máquina. na segunda o endereço da conexão na porta local. Especialmente mostra algumas informações úteis sobre famílias de endereços não configuradas. 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. ax25. ----------------------------------------------------------------------------------------------------------------------------. Com a chave -e você pode incluir mais algumas informações sobre numeração sequencial e deltas . porta ou usuário. --unix.

Antunes Batch Script Olá. não apenas para Win98. se tiver dúvida.. mas também para NT/XP pois existem poucos documentos para XP em português.20.EX_ Utilitário Putty – baixe aqui Renomeie o arquivo com a extensão EXE após baixá-lo. .. para quebrar uma linha. Lindenberg Naffah Ferreira e em exercícios elaborados pelo Prof.lnaffah. a máquina garante que o pacote será entregue para a máquina de destino corretamente.1. Usa-se echo. Execute os seguintes comandos.exe a partir do link http://www. O que é um BAT? Tipo de arquivo em lote (batch file) do DOS e sistemas Windows. Execute-o e faça acesso ao servidor 10. digite COMANDO /? que irá ser mostrado uma explicação e exemplos do seu uso: ECHO Serve para que seja ativado ou desativado o "eco" do comando ou para que seja mostrado uma mensagem.Desta forma. irei explicar aqui algumas coisinhas sobre batch script. com o utilitário netstat. Baseado em exercícios elaborados pelo Prof. Caso não consiga executá-los em sua máquina Windows. que é executado toda a vez em que o sistema operacional é carregado. exemplos. Bom.com/PUTTY.bat. O arquivo em lote com extensão BAT mais famoso é o Autoexec. com o usuário redes e a senha redes. baixe o utilitário Putty. Rodrigo Otávio R. em vez de ter de escrevê-los um a um na linha de comando. vamos conhecer agora alguns comandos que iremos usar frequentemente.39. Neste tipo de arquivo pode-se entrar vários comandos de linha de comando a serem executados. a) b) c) netstat –s netstat –nr netstat –a Explique o que você viu em cada um deles.

txt Isso fará com que seja escrito os dados no arquivo Teste. fazendo ir para um rótulo específico.txt. Em programas por exemplo que precisa ser digitado: nomedoprograma /i (para instalar) nomedoprograma /d (para desintalar) ou pode ser -i ao invés de /i e -d ao invés de /d.txt echo Bla bla bla >> Teste. pode-se identificar o parâmetro.Parametro 2 .Segundo parâmetro e assim sucessivamente.. Se tiver alguma dúvida. é para que se possa usar parâmetros de execução em seu batch. No batch script. >> Teste. Exemplo: @echo off GOTO UIA echo Deveria aparecer isso se não fosse o rótulo :D :UIA echo Pulamos para cá! hehehe Parâmetros Isso é muito interessante..Exemplo1: @echo off echo Olá mundo! echo. um rótulo é identificado com o :.Primeiro parâmetro %2 . através disso: %1 .Parametro 1 echo %2 . Exemplo: @echo off echo %1 . ^^ GOTO Serve para alterar a ordem normal de execução do batch. ficando assim: Inicio do arquivo Bla bla bla CLS Serve para limpar a tela. echo :D O @ antes do echo off serve para que o mesmo não seja mostrado. e assim ele desative o "eco" silenciosamente. Exemplo 2: @echo off echo Inicio do arquivo > Teste. crie um exemplo sem usar o @.. é como se fosse um /clear para quem usa IRC.txt echo.

serve para impor uma condição.Execute-o assim: nomedoarquivo vamos ver Aparecerá: vamos . digite no prompt IF /? CHOICE (Em Win9x) Possibilita dar opções de escolha para a pessoa. Variável é algo que guarda alguma informação. echo Ola %nome% !! IF / ELSE É usado em praticamente todas linguagens de programação. Simples né? SET Serve para exibir. se chama variável por que seu valor pode variar. Exemplo: @echo off set nome="" Digite o seu nome: set /p nome= echo. Exemplo: @echo off choice /n/c123 if errorlevel 1 goto A1 if errorlevel 2 goto A2 if errorlevel 3 goto A3 .Parametro 2. 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 dúvidas sobre o IF. (duh) Para setar uma variável: SET variavel=seu_valor Para visualizar ou usar o valor da variável digite: %variavel%. definir ou remover variáveis.Parametro 1 ver .

-f Ativa o sinalizador de não-fragmentação no pacote. -w tempo_limite Tempo limite em milissegundos a aguardar para cada resposta. Talvez possa ter incompatibilidade com Win9x já que irei fazer no XP... tamanho do pacote e tempo limite. se não gostar. pra facilitar o uso do NET SEND. vamos criar uma ferramenta para que ao usuário digitar o nome do batch file. Bom.bat Abrirar o editor. Mãos a obra: Dê um: edit xping. -k lista_hosts Rota restrita de origens definida em <lista_hosts>. iremos criar duas tools(ferramentas).:A1 echo Acao 1 goto FIM :A2 echo Acao 2 goto FIM :A3 echo Acao 3 goto FIM :FIM echo Kabou. Para ver estatísticas e continuar. O valor padrão é 4. -i TTL Define o tempo de vida.. a primeira é para o comando PING e outra será para quem usa rede. -l tamanho Envia o tamanho do buffer. Bom. para terminar. pressione CTRL-Break. visto algumas funções. dê uma re-lida.. então vamos lá. Ótimo.. -a Resolve endereços para nomes de host. 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 Opções: -t Dispara contra o host especificado até ser interrompido. número de requisições.. mas desconhecem suas outras opções.. ele pergunte o IP. -v TOS Define o tipo de serviço. -j lista_hosts Rota ampliada de origens definida em <lista_hosts>. -r num Rota dos pacotes para <num> saltos. -n num Número de requisições de eco a enviar. Muitos acham que o PING é apenas ping IP/HOST. -s num Data e hora para <num> saltos. use o parâmetro /? para conhecer mais sobre cada comando. crie coisinhas bobas para ver se já entendeu. faça no bloco de notas mesmo :P Obs: REM é usado para comentar uma linha. set ip="" . pressione CRTL-C.. @echo off REM Limpa as variaveis.

REM Lembra do numero de requisicoes? (Coloque 0 para ser infinito. echo Qual sera o tempo limite de espera? Em milisegundos. parametro 2=pack. terminanos! Salve isso é claro! Agora teste o programa. se quiserem usarem parâmetros também nesse "xping" é só definir corretamente o parametro 1=ip. usando a variavel ip echo Iniciando o ping ao alvo: %ip% echo. usando o parametro -t REM se não for igual a 0 ele pega o numero de requisicoes atribuido REM a variavel %num% e usa-o.) REM Iremos pegar o valor atribuido ao numero de requisicoes REM se for igual a 0 ele fara o ping infinito. cls echo ********************************************** echo * * echo * XPing por whit3_sh4rk * echo * * echo ********************************************** echo..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. IF [%num%] EQU [0] ( ping -t %ip% -l %pack% -w %timeout% ) ELSE ( ping %ip% -n %num% -l %pack% -w %timeout% echo. echo Qual sera o número de requisicoes? Coloque 0 para ser infinito. Obs: Só uma dica. REM Ira pegar o valor que for digitado e atribuir a variavel timeout set /p timeout= echo. REM Mostra qual foi o alvo definido anteriormente. ae é só a pessoa usar: ... nela usaremos parâmetros. echo Fim do ping! ) Ótimo. REM Ira pegar o valor que for digitado e atribuir a variavel num set /p num= echo. parametro 3=num. e tente entender cada linha(nossaaa q difícil!!) kkkk depois disso vamos agora para a próxima tool. parametro 4=timeout. 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.

xping 127...0.0. echo Nenhum parametro valido foi especificado! Salve. net send LOCKE %msg% GOTO :EOF :SAWYER echo Digite a mensagem que deseja enviar para SAWYER: set /p msg= echo. seus nomes: LOCKE SAWYER HURLEY (qualquer semelhança com o seriado LOST é mera coincidência :) Dê um: edit msg.0. imaginemos que aqui na rede tem 3 máquinas..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 HURLEY %msg% :AFF echo. Como será usado? Abra o prompt e digite: msg LOCKE ou msg SAWYER ou msg HURLEY .0. irá pingar no 127. fazer isso 5 vezes.1 65500 5 1000 Ou seja. net send SAWYER %msg% GOTO :EOF :HURLEY echo Digite a mensagem que deseja enviar para HURLEY: set /p msg= echo. :D Mãos a obra 2 a revolta(lol): Bom. com um buffer de 65500 bytes.1. e esperar 1seg pelo resposta.

é executado o comando ping para o endereço 127. w tempo_limite Tempo limite em milissegundos a aguardar para cada resp osta.0. O nome do comando ping é uma analogia ao jogo de ping-pong. netstat. O comando ping também auxilia na verificação da integridade da pilha TCP/IP do próprio host. Para isso. para terminar. -f Ativa o sinalizador de não-fragmentação no pacote. -v TOS Define o tipo de serviço.Utilitários de Rede No Windows existem alguns comandos que permitem o diagnóstico de problemas de configuração de rede.1. -j lista_hosts Rota ampliada de origens definida em . -l tamanho Envia o tamanho do buffer. pressione CRTL-C. -k lista_hosts Rota restrita de origens definida em . tracert.0. inserida em um datagrama IP endereçada ao host solicitante. Ping A função do comando ping é verificar a conectividade IP entre dois hosts. que é a interface de loopback. responde com uma mensagem ICMP Echo Reply. Dispara contra o host especificado até ser interrompido Para ver estatísticas e continuar. onde a bolinha "vai e volta". route. -a Resolve endereços para nomes de host. Break. quando recebe uma mensagem ICMP Echo Request. -r num Rota dos pacotes para saltos. Quando o comando ping é executado em um host. O host destino por sua vez. -i TTL Define o tempo de vida. n num Número de requisições de eco a enviar. -s num Data e hora para saltos. Nesta aula estudaremos os comandos ping.Lembre-se de que é CaSe SeNsItiVe :D Aula Prática 1 . 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 Opções: t . O valor padrão é 4. ipconfig e telnet. pressione CTRL- . este gera uma mensagem ICMP Echo Request que é inserida em um datagrama IP endereçado ao host destino.

Isso significa que. o TTL é decrementado em uma unidade.com. Porém. o datagrama é descartado e esse nó envia uma mensagem ICMP Time to Live Exceeded para o nó origem. Como já foi visto nas aulas teóricas. 128 ou 64.uol. Caso o valor do TTL chegue a zero em algum nó intermediário.221. Média = 26ms Observe que o endereço www.br foi traduzido para o seu respectivo endereço IP pelo serviço de resolução de nomes DNS. o comando ping envia 4 mensagens ICMP Echo Request para o host destino.com.C:\> Abaixo temos um exemplo da execução do comando ping para o endereço www.br. número redondo de vezes em milissegundos: 24ms.2.2.221. antes da chegada ao host solicitante. podendo ser 255. suportando como valor máximo 255.2.2.uol.45: 200. o valor padrão do TTL utilizado depende do sistema operacional.com. Recebidos = 4.uol. na prática.br -i 9 Disparando contra www.com.2.uol.221.45: 200. No exemplo acima podemos perceber que o datagrama de resposta passou por 128 . e observe a mensagem de resposta: C:\>ping www.2.uol.com.45] com 32 bytes de dados: Resposta Resposta Resposta Resposta de de de de 200. Essa implementação evita que por algum problema de configuração ou roteamento um datagrama fique "eternamente" trafegando entre dois nós. Como padrão.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 Estatísticas Pacotes: Aproximar um Mínimo = C:\> do Ping para 200.221.com. porém com campo TTL configurado com um valor inferior a 10.221.45: 200. 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 contém a mensagem ICMP Echo Reply. C:\>ping www. As respostas do comando ping apresentam o endereço IP do host que está respondendo ao comando ping.br e os resultados obtidos. Perdidos = 0 (0% de perda). Em cada nó intermediário no trajeto entre o host origem e o destino.45] com 32 bytes de dados: .br Disparando contra www.com.uol.br [200.uol. Veja abaixo um exemplo do envio do comando ping ao mesmo endereço. para que a mensagem ICMP Echo Request chegue até o host www.221. Esse endereço IP foi inserido no campo "Endereço Destino" do datagrama no qual foi inserida a mensagem ICMP Echo Request. é necessário que ela seja inserida em um datagrama IP com o TTL configurado no mínimo com o valor 10.br [200.221.2. mas esse número pode ser alterado com a utilização de parâmetros adicionais.119 = 9 nós intermediários. Máximo = 29ms. o campo TTL ou "Time to Live" do cabeçalho do datagrama IP possui oito bits.45: Enviados = 4. vistos na sintaxe do comando.

com .33: 200.fr . trânsito.embratel.louvre.Resposta Resposta Resposta Resposta de de de de 200. Nesse caso.221. os hosts configurados nessas redes não responderão aos comandos ping enviados. w tempo_limite p. Rota ampliada de origens usada com a lista lst _hosts.221.33: 200.221.45: Enviados = 4.Tempo de espera em milissegundos para cada respost a.Casa Branca: www. Recebidos = 4. ao invés de 4. .221.whitehouse.gov Questão 2: Execute comando ping para o endereço www. ao invés de 4. Estatísticas Pacotes: Aproximar um Mínimo = C:\> do Ping para 200. número redondo de vezes em milissegundos: 0ms. Não resolver endereços para nomes de hosts.2. Observe que.30. j lst_hosts &nnbsp.yahoo.33: 200. Ele é muito utilizado para verificar a localização de um eventual ponto de falha em uma rede IP. Máximo = 0ms.com.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 trânsito.Museu do Louvre: www.Utilizar TTL inferior ao mínimo necessário. no percurso até o seu endereço destino. C:\> .br utilizando os parâmetros de forma que seja possível: . por questões de segurança. alguns administradores de rede podem implementar sistemas de segurança que bloqueiem a chegada de mensagens ICMP.Portal Yahoo: www. -h nmax_saltos . trânsito.30.Efetuar infinitos disparos de mensagens ICMP Echo Request. o tempo médio de ida e volta e o número de nós intermediários para os seguintes endereços: . A sintaxe do comando tracert é: C:\>tracert Uso: tracert [-d] [-h nmax_saltos] [-j lst_hosts] [w tempo_limite] destino Opções: -d p.30.Efetuar 10 disparos de mensagens ICMP Echo Request. .221. Perdidos = 0 (0% de perda).30. Média = 0ms Questão 1: Determine com o comando ping o endereço IP. Número máximo de saltos para a procura do destino. Tracert O comando tracert tem por função exibir os nós intermediários pelos quais um datagrama IP trafega. trânsito.

207.20.telesp.br [200. o tempo de ida e volta de três mensagens ICMP em milisegundos e o endereço do roteador correspondente.whitehouse.uol.153.net.gov .net.telesp.198] 8 16 ms 31 ms 31 ms 200-148-160134.33] 10 15 ms 16 ms 31 ms hugo.Uma premissa do protocolo IP é o fato de que a rota completa até o endereço destino não é conhecida pelos nós intermediários ou pelo nó origem.br [200.207.com.160.br: C:\>tracert www.148.br[200.dsl.209] 6 16 ms 31 ms 31 ms 200-148-160177. o comando tracert consegue apresentar a rota completa até um host destino utilizando o campo TTL do datagrama IP.2.57. até alcançar o nó destino.dsl.129] 2 15 ms 16 ms 16 ms 200-207-571.207.com. e este envia uma mensagem ICMP Time to Live Exceeded para o host origem.ix.uol. O processo se repete com TTL igual a 2.4. C:\> A saída do traceroute indica para cada nó intermediário (também conhecido como hop). Cada nó conhece apenas o próximo salto.bbone.com.37.204.2.br [200.br [200.fr .240. 3 e assim por diante.net.bbone. Porém.br [200.com.160. Veja abaixo um exemplo de utilização do comando tracert para traçar a rota até o endereço www.dsl. Ao executar o comando tracert em um host.134] 9 16 ms 31 ms 16 ms fr2border4. A partir dessa mensagem recebida.net. Montando a sequência de 1 até o final. Essa mensagem expira logo no primeiro nó.telesp.br [200. este envia uma mensagem ICMP Echo Request em um datagrama com TTL igual a 1.net.1] 3 16 ms 15 ms 16 ms ATM-1-0-0-1-br-cas-cerc1.45] Rastreamento concluído.br [200.br Rastreando a rota para www.tdatabrasil.net.tdatabrasil.221.yahoo.telesp.148.45] com no máximo 30 saltos: 1 <10 ms <10 ms <10 ms 200-207-39129.uol. o tracert obtém o endereço IP do primeiro nó intermediário.br [200.telesp.Casa Branca: www.129] 4 16 ms 15 ms 16 ms FastEthernet-2-0-0-br-cas-cerc1.221.177] 7 15 ms 32 ms 31 ms P-5-1-te-br-spo-ibrc1. sendo o datagrama dessa forma encaminhado de nó em nó até o endereço destino.bbone.br [200.com.39. Questão 3: Verifique a rota para cada cada um dos endereços abaixo utilizando o comando tracert: .bbone.Museu do Louvre: www.bbone.br [200.207.uol.Portal Yahoo: www.net.1] 5 15 ms 32 ms 31 ms 200-204-20209.30. podemos ver por onde o pacote IP foi roteado até o destino.louvre.net.com .uol.221.tdatabrasil.

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.94 172.16.93 172.0.150.150.201.255.150.0.5 127.150.0.201.10] com no máximo 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.Veja abaixo um exemplo de saída de traceroute em uma rede mal configurada ou com problemas de rota.0 1 Ender.0 255.93 .16.255.94 172.201.160. Na figura a seguir podemos verificar a existência de 5 colunas: "Endereço de rede".1 10.0 0.16.0.1 10.16.201.93 172.94 172.150.0. Gateway 10.0 1 10.0.201.0.255 255.94.255.1 192.0.129.0. Os pacotes ficam trafegando entre os IPs 172.160.16.93 172.93 172. mas esse valor pode ser alterado com a utilização de parâmetros adicionais.160.150.201.0.150.121 172. Esta tabela de roteamento é consultada pelo protocolo IP para determinar para onde deve ser encaminhado cada datagrama IP transmitido.93 172.202. "Interface" e "Custo".150.150.202.0.0 1 10.0.94 172.16.5 127.5 255.93 e 172.150.150.94 172.16.255 1 10.16.201.16.0.10 Rastreando a rota para SERGIO [10.0 255.150.16.160.5 127.0.5 10. O traceroute tem um limite de 30 nós intermediários como padrão.0.2 172. C:\>tracert 10.160.202. C:\>route print Rotas ativas: Endereço de rede Máscara Custo 0.255.150.255 1 127.150.168.16.201.5 127.0.1 10.160.16.255.0.255.255.0.94 172.150. "Máscara".16.94 172.93 172.0.1 Interface 10.0.16.201. "Ender.16.16.150. gateway".16. adicionar ou remover regras da tabela de roteamento de um computador.0.

Esta regra é a que determina para onde um datagrama deve ser enviado quando ele não se enquadra em nenhuma outra regra. Questão 4: Descubra utilizando o comando ROUTE qual é o "Default Gateway" de seu computador. sendo de grande utilidade quando um destino pode ser alcançado por dois caminhos distintos. que é o ip local da placa de rede do computador exemplo.0 1 255. A primeira regra da tabela exemplo apresentada indica a regra do "Default Gateway". Exibe conexões para o protocolo especificado por proto.1).1. opção -s.224. o datagrama é direcionado para o respectivo "Gateway".160.255. Se usado com a opção Exibe todas as conexões e portas de escuta.255. Isso pode ser combinado à .255 1 C:\> 224.160.255 10. Exibe estatísticas Ethernet. Temos ainda uma regra para o endereço de loopback (127. p pode ser tcp ou udp.201.201.201.0.0.255. Veja abaixo a sintaxe do netstat do windows: C:\>netstat /? Exibir estatísticas de protocolo e conexões de rede TCP/IP atuais. Exibe endereços e números de porta em formato numérico.201. No nosso caso. o computador descobre em qual regra o endereço destino do datagrama se enquadra.5.201. o gateway padrão é 10.0.0. -r Exibe o conteúdo da tabela de roteamento.0) e outras regras usadas para broadcast e multicast.0. udp ou ip. através da respectiva "Interface".0. acessível através da interface 10.160. NETSTAT [-a] [-e] [-n] [-s] [-p proto] [-r] [intervalo] -a e n p proto roto s para exibir estatísticas por protocolo.201.0.255. A coluna "Custo" indica qual é o custo para se alcançar o endereço destino. outra para a própria rede que o computador participa (10.0.0 255. Identificada a regra. Além disso existe uma opção para mostrar o conteúdo da tabela de roteamento. NetStat O comando netstat mostra as conexões ativas com a máquina em questão. o primeiro salto é feito exatamente neste gateway.0.5 10.5 10. Observe que em todo tracert que você executa.5 0.0 Usando as informações da coluna " Endereço de rede " e "Máscara".0.160. proto pode ser tcp.

Use a opção -r para mostrar o conteúdo da tabela de roteamento da sua estação. Caso om para especificar um subconjunto do padrão. ? corresponde a um c aractere. C:\> Use o netstat para mostrar todas as conexões e portas de escuta da sua máquina (LISTENING). a máquina garante que o pacote será entregue para a máquina de destino corretamente. 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. CLOSE_WAIT. as estatís são mostradas para TCP. /registerdns Atualiza todas as concessões do DHCP e registra no . itido. /renew Renova o endereço IP para o adaptador especificado . LISTENING. Exibe novamente uma estatística selecionada. /flushdns Limpa o DNS Resolver Cache. a opção p pode ser usada Intervalo ausas de L+C para interromper a nova exibição das estatísticas. A saída é mostrada em 4 colunas. UDP e IP.s ticas Exibe estatísticas por protocolo. Opções /? Exibe esta mensagem de ajuda. /all Exibe as informações completas de configuração. Pressione CTR IPConfig O IPConfig é um comando utilizado para informar ou alterar a configuração atual de rede da máquina. Padrão ou nome completo com '*' e '?' para 'correspond * corresponde a qualquer caractere. /release Libera o endereço IP para o adaptador especificado . Essa tabela mostra para qual endereço cada pacote deve ser enviado em função do seu endereço IP. Desta forma. netstat imprimirá as informações de configuração uma v ez. fazendo p intervalos de segundos entre cada tela. etc). Por padrão. Na primeira está o protocolo. Veja abaixo a sintaxe do comando ipconfig: C:\>ipconfig /? Configuração 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'. na segunda o endereço da conexão na porta local.

Mostra as informações. . Máscara de sub-rede. . . . . .. Para SetClassID.. Renova todos os adaptadores . Libera todos os adaptadores c por exemplo. Renova adaptadores denominado . . O padrão é a exibição apenas dos endereços IP... C:\> Questão 5: Execute o comando IPCONFIG no seu computador de modo a permitir a visualização de configurações adicionais de rede. .201. .. .. . C:\>IPCONFIG Configuração de IP do Windows 2000 Ethernet adaptador Conexão de rede local: Sufixo DNS específico de Endereço IP. /setclassid Modifica a identificação de classe do DHCP. conexão . C:\> Abaixo temos o resultado da execução do comando IPCONFIG sem nenhum parâmetro adicional. . > ipconfig /release *ELINK?21* orrespondentes. . . Exemplos: > ipconfig > ipconfig /all das > ipconfig /renew > ipconfig /renew EL* s como EL.vamente os nomes DNS /displaydns Exibe o conteúdo do DNS Resolver Cache. . meu_adaptadorELELINKi21.. . . . .. se não for especificada uma identificação de classe. ELINK- . . todas as concessões de endereço IP para todos os adaptadores ligados ao TCP/IP serão liber adas ou renovadas.1 : 255. .0. se não for especificado um nome de adaptad or. .0. Gateway padrão . Mostra as informações detalha . a máscara de sub-rede e o gateway padrão configurados no host.0 : 10. . . . : : 10.. 21. .201.. No resultado podem ser visualizados o endereço IP.1 . . /showclassid Exibe todas as identificações de classe do DHCP ac eitas para o adaptador.10. a identifi cação de classe será removida.255. . da máscara de subrede e do padrão para cada adaptador ligado ao TCP/IP.. No caso de Release e Renew..

Sign up to vote on this title
UsefulNot useful