30 outubro 2008

Utilitários de Redes

No windows existem alguns utilitários de rede disponíveis através da janela DOS. Os utilitários que serão vistos neste post são programas que usam a linha de comando e são baseados em programas originados do unix, com a mesma função. Os utilitários mostrados são idênticos aos do Unix com 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) 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.

A sintaxe básica do ping é (gerada 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 Resolve endereços para nomes de host.
-n num Número de requisições de eco a enviar. O valor padrão é 4.
-l tamanho Envia o tamanho do buffer.
-f Ativa o sinalizador de não-fragmentação no pacote.
-i TTL Define o tempo de vida.
-v TOS Define o tipo de serviço.
-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


Essa sintaxe varia um pouco para o unix. Experimente executar o ping apontando-o para um endereço conhecido. Tente pingar a máquina servidora de WWW da Embratel (www.embratel.net.br). Veja abaixo um exemplo da saída de um ping para este endereço:



C:\WINDOWS>ping www.embratel.net.br

Disparando contra www.embratel.net.br [200.255.125.213] com 32 bytes de dados:

Resposta de 200.255.125.213:bytes=32 tempo=28ms Tempo de vida=245
Resposta de 200.255.125.213:bytes=32 tempo=14ms Tempo de vida=245
Resposta de 200.255.125.213:bytes=32 tempo=27ms Tempo de vida=245
Resposta de 200.255.125.213:bytes=32 tempo=27ms Tempo de vida=245

Estatísticas do Ping para 200.255.125.213:
Pacotes: Enviados = 4, Recebidos = 4, Perdidos = 0 (0% de perda),
Tempos aproximados de ida e volta em milissegundos:
Mínimo = 14ms, Máximo = 28ms, Média = 24ms


O ping mostra uma série de informações interessantes, como por exemplo, o endereço IP de destino, a quantidade de bytes enviados, o tempo de resposta de cada pacote e o TTL (Time To Live ou Tempo de Vida) do pacote. O ping default do windows sempre manda 4 pacotes, no unix, ao contrário o ping funciona indefinidamente até o usuário cancelar com control-C.



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




  1. Yahoo: www.yahoo.com


  2. Moseu do Louvre: www.louvre.fr


  3. Casa Branca: www.whitehouse.gov


O (TTL) Time To Live é um campo do pacote IP e é utilizado para limitar o número de roteadores por onde um determinado pacote pode passar. Cada roteador por onde um determinado pacote IP trafega decrementa o número do campo TTL antes de passá-lo para frente. Se o valor do campo TTL chegar a zero, o roteador não envia mais o pacote IP, e sim um outro pacote ICMP para a origem avisando que o pacote IP original teve o seu TTL=0 e por isso não pôde ser mais transmitido.

Esse mecanismo serve para evitar que em uma rede mal configurada e com algum loop de endereçamento, a quantidade de pacotes trafegada estoure a capacidade da rede por causa de retransmissões entre os mesmos roteadores. Por exemplo, se do ponto A os pacotes IP são roteados para o ponto B, e do ponto B (por causa de um erro) são roteados de volta para o ponto A, um pacote IP poderia ficar indo e voltando indefinidamente se não possuísse o mecanismo do TTL.



 


O utilitário traceroute


O utilitário traceroute serve para nos mostrar por onde um pacote IP trafega quando é enviado. Esse utilitário é tão útil quanto o ping e no windows está disponível com o nome de tracert.



A sintaxe do tracert no windows é:



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

Opções:
-d Não resolver endereços para nomes de hosts.
-h nmax_saltos Número máximo de saltos para a procura do destino.
-j lst_hosts Rota ampliada de origens usada com a lista lst_hosts.
-w tempo_limite Tempo de espera em milissegundos para cada resposta.


Não existe nenhum mecanismo disponível nos roteadores para informar o trajeto de um pacote IP pela Internet. Mas sem usar nenhum artifício adicional, o autor do traceroute conseguiu fazer este programa muito bem bolado. Ele aproveitou o campo TTL do pacote IP para transmitir pacotes com TTL a partir de 1 até alcançar o destino. Assim, cada vez que um pacote "morre" no caminho até o destino, o traceroute é avisado e assim consegue traçar a rota.



Veja um exemplo de saída de um traceroute para o endereço www.sdsc.edu:



C:\WINDOWS>tracert www.sdsc.edu

Rastreando a rota para www.sdsc.edu [198.202.75.101]
com no máximo 30 saltos:

1 <10 ms <10 ms <10 ms tebas.i2.com.br [200.238.196.62]
2 2 ms 2 ms 1 ms hardwick.i2.com.br [200.238.196.97]
3 194 ms 148 ms 210 ms i2-gw.pop-mg.rnp.br [200.17.183.49]
4 473 ms 561 ms 666 ms arrozdoce.pop-mg.com.br [200.236.165.199]
5 416 ms * 156 ms casadinho-a3.pop-mg.rnp.br [200.17.183.209]
6 234 ms 198 ms 362 ms bb2.pop-mg.rnp.br [200.131.1.1]
7 1080 ms 1093 ms 939 ms border1-serial2-2.NewYork.cw.net [204.70.44.101]
8 1032 ms 1167 ms 1161 ms core1-fddi-0.NewYork.cw.net [204.70.2.17]
9 1914 ms 2432 ms 2190 ms core1-hssi-3.WestOrange.cw.net [204.70.10.14]
10 1342 ms 1198 ms 891 ms 204.70.10.145
11 872 ms 857 ms 932 ms atm5-0-1.nyc-bb9.cerf.net [134.24.32.161]
12 700 ms * 985 ms pos3-0-622M.nyc-bb8.cerf.net [134.24.33.158]
13 601 ms 619 ms 850 ms pos5-0-622M.chi-bb4.cerf.net [134.24.32.213]
14 1040 ms 964 ms 912 ms so4-0-0-622M.dfw-bb2.cerf.net [134.24.46.81]
15 1057 ms 1148 ms 1287 ms pos2-0-622M.lax-bb4.cerf.net [134.24.29.77]
16 683 ms 673 ms 687 ms atm1-0-2-622M.san-bb6.cerf.net [134.24.32.61]
17 * 630 ms 656 ms pos10-0-0-155M.san-bb1.cerf.net [134.24.29.129]
18 655 ms 628 ms 633 ms sdsc-gw.san-bb1.cerf.net [134.24.12.26]
19 666 ms 708 ms 643 ms medusa-atm.sdsc.edu [192.12.207.10]
20 770 ms 631 ms 690 ms www.sdsc.edu [198.202.75.101]

Rastreamento completo.


A saída do traceroute indica para cada HOP (ponto de roteamento do pacote IP), o tempo de três pacotes enviados e o endereço do roteador correspondente. Montando a sequência de 1 até o final, podemos ver por onde o pacote IP foi roteado até o destino.



O traceroute funciona enviando sucessivos pacotes IP de ping com o valor do TTL iniciando em 1 e aumentando até o ping ser respondido pelo destino. Isso faz com que o pacote IP "morra" cada vez mais longe da origem. Para cada vez que o TTL chega a zero (o pacote "morre"), o roteador onde isso ocorreu envia um pacote ICMP para a origem. Desta forma a origem tem como saber qual é o endereço do roteador onde o pacote IP morreu e consequentemente a rota dele até o destino!



Execute traceroute para cada um dos endereços abaixo e veja qual é a rota traçada.




  1. Museu do Louvre: www.louvre.fr


  2. Yahoo do Japão: www.yahoo.co.jp


  3. Sis de Taiwan: www.sis.com.tw


  4. IBGE: www.ibge.gov.br



Veja abaixo um exemplo de saída de traceroute em uma rede mal configurada ou com problemas de rota. Os pacotes ficam trafegando entre os IPs 200.192.56.163 e 200.192.56.161. O traceroute tem um limite de 30 rotas por default. Se qualquer rota ultrapassar este limite, o programa termina, mas isso pode ser alterado.



traceroute to 200.190.226.221 (200.190.226.221), 30 hops max, 40 byte packets
1 ithaca.i2.com.br (200.238.196.17) 0.892 ms 0.88 ms 0.836 ms
2 i2-gw.pop-mg.rnp.br (200.17.183.49) 9.694 ms 9.805 ms 72.695 ms
3 arrozdoce.pop-mg.com.br (200.236.165.199) 47.173 ms 57.568 ms 9.666 ms
4 casadinho-a3.pop-mg.rnp.br (200.17.183.209) 35.299 ms 29.25 ms 14.784 ms
5 pop-mg-rnp-br-S3-7-acc01.bhe.embratel.net.br (200.251.254.73) 30.479 ms 47.494 ms 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 utilitário nslookup


O utilitário nslookup serve para traduzir nomes de domínio para os números IP correspondentes. Este utilitário consulta os servidores de DNS (Domain Name Service) espalhados na Internet para resolver uma consulta e descobrir o endereço.



O nslookup ao contrário dos outros utilitários vistos até agora, oferece um prompt para o usuário digitar nomes de domínios para consulta. Veja abaixo um exemplo de execução do nslookup:



atlanta:/home/i2/rora-> nslookup
Default Server: i2.com.br
Address: 200.238.196.1

> www.pucmg.br.
Server: i2.com.br
Address: 200.238.196.1

Non-authoritative answer:
Name: www.pucminas.br
Address: 200.236.177.1
Aliases: www.pucmg.br

> set type=mx
> flag.com.br.
Server: i2.com.br
Address: 200.238.196.1

Non-authoritative answer:
flag.com.br preference = 10, mail exchanger = flagnt03.flag.com.br

Authoritative answers can be found from:
flag.com.br nameserver = flagnt03.flag.com.br
flag.com.br nameserver = flagwall.flag.com.br
flagnt03.flag.com.br internet address = 200.202.246.204
flagwall.flag.com.br internet address = 200.202.246.205
> set type=a
> www.cade.com.br.
Server: i2.com.br
Address: 200.238.196.1

Non-authoritative answer:
Name: www.cade.com.br
Addresses: 200.244.143.187, 200.244.143.143, 200.244.143.149, 200.244.143.145
200.244.143.148, 200.244.143.141, 200.244.143.142, 200.244.143.147, 200.244.143.1
46
200.244.143.140

>


O que foi digitado pelo usuário está em negrito. Note que além dos domínios, existem alguns comandos disponíveis no nslookup (set type=). Quando os domínios são seguidos de um ponto, nslookup interpreta como domínios completos. É possível especificar somente um nome de uma máquina e o programa busca pelo seu endereço IP dentro da própria rede.



Use o comando help para ter acesso aos demais comandos do nslookup. Veja a saída de um help do nslookup no unix:



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

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


Descubra os endereços IP das máquinas que podem receber e-mail das seguintes empresas:




  1. Maxitel (no Brasil)


  2. Transmeta (nos USA)


  3. British Telecom da Espanha (www.bt.es)



O utilitário netstat


O netstat serve para mostrar as conexões ativas atualmente com a máquina em questão. Ele lista na tela todas as conexões TCP/IP em andamento. Além disso existe uma opção para mostrar o conteúdo da tabela de roteamento. Veja abaixo a sintaxe do netstat do windows:



Exibir estatísticas de protocolo e conexões de rede TCP/IP atuais.

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

-a Exibe todas as conexões e portas de escuta.
-e Exibe estatísticas Ethernet. Isso pode ser combinado à
opção -s.
-n Exibe endereços e números de porta em formato numérico.
-p proto Exibe conexões para o protocolo especificado por proto; proto
pode ser tcp ou udp. Se usado com a opção -s para exibir
estatísticas por protocolo, proto pode ser tcp, udp ou ip.
-r Exibe o conteúdo da tabela de roteamento.
-s Exibe estatísticas por protocolo. Por padrão, as estatísticas
são mostradas para TCP, UDP e IP; a opção -p pode ser usada
para especificar um subconjunto do padrão.
intervalo Exibe novamente uma estatística selecionada, fazendo pausas de
intervalos de segundos entre cada tela. Pressione CTRL+C para
interromper a nova exibição das estatísticas. Caso omitido,
netstat imprimirá as informações de configuração uma vez.


Use o netstat para mostrar todas as conexões e portas de escuta da sua máquina (LISTENING). A saída é mostrada em 4 colunas. Na primeira está o protocolo, na segunda o endereço da conexão na porta local. A terceira coluna mostra o endereço na máquina remota (o endereço da máquina e a porta TCP da conexão) e a quarta coluna mostra o estado da conexão (ESTABLISHED, LISTENING, CLOSE_WAIT, etc).



Use a opção -r para mostrar o conteúdo da tabela de roteamento da sua estação. Essa tabela mostra para qual endereço cada pacote deve ser enviado em função do seu endereço IP. Desta forma, a máquina garante que o pacote será entregue para a máquina de destino corretamente.




 


Utilitários WINIPCFG e IPCONFIG


No windows existem dois aplicativos utilizados para informar a configuração atual de rede da máquina. O primeiro é o IPCONFIG disponível na linha de comando do windows NT, 95 e 98. No Windows 95 ou 98, existe também um outro utilitário chamado WINIPCFG que tem uma interface gráfica (este último não está disponível em NT).



Veja abaixo a tela do programa WINIPCFG disponível somente no windows 95 e 98 (Mais existe alguns programas desenvolvido para Windows XP):








winipcfg1



No windows NT, somente o IPCONFIG está disponível. Veja abaixo um exemplo de saída um IPCONFIG:



X:\>ipconfig /all

Configuração de IP do Windows NT

Nome do host . . . . . . . . . . : cairo.i2.com.br
Servidores DNS . . . . . . . . . : 200.238.196.49
200.238.196.1
200.131.1.51
Tipo de nó . . . . . . . . . . . : Híbrida
Identificador de escopo NetBIOS. :
Roteamento de IP ativado . . . . : Não
Proxy WINS ativado . . . . . . . : Não
Resolução NetBIOS usa DNS. . . . : Sim

Ethernet adaptador PGPMacMP5:

Descrição. . . . . . . . . . . . : Novell 2000 Adapter.
Endereço físico. . . . . . . . . : 00-00-B4-9E-45-6C
DHCP ativado . . . . . . . . . . : Não
Endereço IP. . . . . . . . . . . : 200.238.196.50
Máscara de sub-rede. . . . . . . : 255.255.255.224
Gateway padrão . . . . . . . . . : 200.238.196.33
Servidor WINS primário . . . . . : 200.238.196.49

Ethernet adaptador NdisWan4:

Descrição. . . . . . . . . . . . : NdisWan Adapter
Endereço físico. . . . . . . . . : 00-00-00-00-00-00
DHCP ativado . . . . . . . . . . : Não
Endereço IP. . . . . . . . . . . : 0.0.0.0
Máscara de sub-rede. . . . . . . : 0.0.0.0
Gateway padrão . . . . . . . . . :


Siglas:




  1. DHCP: dinamic host configuration protocol - um protocolo de configuração automático para parâmetros de rede (IP, DNS, gateway, etc) cujo objetivo é reduzir o tempo e o trabalho para configurar um grande número de máquinas


  2. DNS: domain name service - serviço de tradução de nomes para IP disponível na Internet


  3. NetBIOS: network basic input output system - uma API para aplicações de usuários enviarem e receberem diretivas de controle de I/O de uma forma geral em uma rede local


  4. WINS: windows internet naming service - é um serviço de tradução de nomes (como o DNS) sobre NetBIOS





Fonte: Anonimo

Postar um comentário