Aula de Laboratório 1 1.Comando Ipconfig 1.1 Uso: ipconfig [/? /all /renew [adapter] /release [adapter] /flushdns /displaydns /registerdns /showclassid adapter /setclassid adapter [classid] ] em que adapter é Nome da conexão, (caracteres curinga * e? permitidos) Opções: /? Exibir esta mensagem de ajuda /all Exibir informações completas de configuração. /release Liberar o endereço IP para o adaptador especificado. /renew Renovar o endereço IP para o adaptador especificado. /flushdns Depura a cache DNS Resolver. /registerdns Atualiza todas as concessões DHCP e registra novamente nomes DNS /displaydns Exibe o conteúdo da cache DNS Resolver. /showclassid Exibe todas as identificações de classe dhcp permitidas para o adaptador. /setclassid Modifica a identificação de classe dhcp. O padrão é exibir apenas o endereço IP, máscara de sub-rede e gateway padrão para cada adaptador vinculado ao TCP/IP. Para Release e Renew, se não for especificado um nome de adaptador, as concessões de endereço IP para todos os adaptadores vinculados ao TCP/IP são liberadas ou renovadas. Para Setclassid, se não for especificada uma ClassId, a ClassId é removida. 1.2 Exemplos: > ipconfig Mostrar informações. > ipconfig /all... Mostrar informações detalhadas > ipconfig /renew... renovar todos os adaptadores > ipconfig /renew EL* renovar qualquer conexão cujo nome se inicie por EL > ipconfig /release *Con* liberar todas as conexões correspondentes, como, por exemplo, "Conexão de rede local 1" ou " Conexão de rede local 2" 1.3 Exemplo de execução C:\Documents and Settings\FRAIDE> Configuração de IP do Windows Nome do host........... : fraide Sufixo DNS primário........ : Tipo de nó............ : desconhecido Roteamento de IP ativado..... : não Proxy WINS ativado........ : não
Adaptador Ethernet Conexão local: Sufixo DNS específico de conexão. : Descrição............. : SiS 900-Based PCI Fast Ethernet Adapter Endereço físico.......... : 00-E0-18-D1-56-9F DHCP ativado............ : Sim Configuração automática ativada.. : Sim Endereço IP............ : 10.1.0.203 Máscara de sub-rede..... : 255.255.255.0 Gateway padrão.......... : 10.1.0.1 Servidor DHCP.......... : 10.1.0.1 Servidores DNS......... : 200.199.212.35 200.196.99.2 65.98.60.252 65.98.60.253 Concessão obtida.......... : quinta-feira, 8 de junho de 2006 16:03:12 Concessão expira.......... : domingo, 18 de junho de 2006 16:03:12 2.Comando ROUTE 2.1 Uso Manipula as tabelas de roteamento de rede. ROUTE [-f] [-p] [comando [destino] [máscara de rede MASK] [gateway] [métrica METRIC] [interface IF] -f Limpa as tabelas de roteamento de todas as entradas de gateway. Se for usado junto com um dos comandos, as tabelas serão limpas antes da execução do comando. -p Quando usado com o comando ADD, torna a rota persistente nas inicializações do sistema. Por padrão, as rotas não são preservadas quando o sistema é reinicializado. Ignorado por todos os outros comandos, que sempre afetam as rotas persistentes apropriadas. Não há suporte para essa opção no Windows 95. comando pode ser: PRINT Imprime uma rota ADD Adiciona uma rota DELETE Exclui uma rota CHANGE Modifica uma rota existente destino Especifica o host. MASK Especifica que o próximo parâmetro é o valor 'máscara de rede'. máscara de rede Especifica um valor de máscara de sub-rede para essa entrada de rota. Se não estiver especificado, será padronizado como 255.255.255.255. gateway interface METRIC Especifica o gateway. o número da interface da rota especificada. especifica a métrica, isto é, o custo para o destino.
Todos os nomes simbólicos usados para o destino são procurados no arquivo NETWORKS do banco de dados da rede. Os nomes simbólicos para o gateway são procurados no arquivo HOSTS do banco de dadosde nomes de host. Se o comando for PRINT ou DELETE. O destino ou o gateway podem ser caracteres curinga, (o caractere curinga é especificado como um asterisco '*'), ou o argumento do gateway pode ser omitido. Se Dest contiver um caractere * ou?, será tratado como o padrão do shell e somente as rotas de destino correspondentes serão impressas. O caractere '*' corresponde a qualquer seqüência de caracteres, enquanto o caractere '?' corresponde a qualquer outro caractere. Exemplos: 157.*.1, 157.*, 127.*, *224*. Observações de diagnóstico: MASK inválido gera um erro quando (DEST & MASK)!= DEST. Exemplo: > route ADD 157.0.0.0 MASK 155.0.0.0 157.55.80.1 IF 1 Falha na adição da rota: o parâmetro MASK especificado é inválido. (Destination && Mask)!= Destination. 2.2 Exemplos: Exemplo 1 > route PRINT > route ADD 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3 IF 2 destination^ ^mask ^gateway metric^ ^ Interface^ Se IF não for fornecido, ocorre a tentativa de localizar a melhor interface para um gateway fornecido. Exemplo 2 > route PRINT > route PRINT 157*... Exibe apenas 157* correspondentes > route CHANGE 157.0.0.0 MASK 255.0.0.0 157.55.80.5 METRIC 2 IF 2 CHANGE é usado para modificar somente gateway e/ou métrica. Exemplo 3 > route PRINT > route DELETE 157.0.0.0 > route PRINT O comando route print é equivalente ao netstat r 2.3 Exemplo de execução C:\Documents and Settings\FRAIDE>route print ========================================================================= Lista de interfaces 0x1... MS TCP Loopback interface 0x10003...00 e0 18 d1 56 9f... SiS 900-Based PCI Fast Ethernet Adapter =========================================================================
========================================================================= Rotas ativas: Endereço de rede Máscara Ender. Gateway Interface Custo 0.0.0.0 0.0.0.0 200.172.13.1 200.172.13.34 20 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 200.172.13.0 255.255.255.0 200.172.13.34 200.172.13.34 20 200.172.13.34 255.255.255.255 127.0.0.1 127.0.0.1 20 200.172.13.255 255.255.255.255 200.172.13.34 200.172.13.34 20 224.0.0.0 240.0.0.0 200.172.13.34 200.172.13.34 20 255.255.255.255 255.255.255.255 200.172.13.34 200.172.13.34 1 Gateway padrão: 200.172.13.1 ========================================================================= Rotas persistentes: Nenhuma 3.Comando PING 3.1 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. 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 a aguardar para cada resposta. 3.2 Exemplos C:\Documents and Settings\FRAIDE>ping google.com.br -n 6 -w 200 -f Disparando contra google.com.br [66.102.7.104] com 32 bytes de dados: Resposta de 66.102.7.104: bytes=32 tempo=232ms TTL=237 Resposta de 66.102.7.104: bytes=32 tempo=234ms TTL=237 Resposta de 66.102.7.104: bytes=32 tempo=232ms TTL=237 Resposta de 66.102.7.104: bytes=32 tempo=232ms TTL=237 Resposta de 66.102.7.104: bytes=32 tempo=229ms TTL=237 Resposta de 66.102.7.104: bytes=32 tempo=228ms TTL=237
Estatísticas do Ping para 66.102.7.104: Pacotes: Enviados = 6, Recebidos = 6, Perdidos = 0 (0% de perda), Aproximar um número redondo de vezes em milissegundos: Mínimo = 228ms, Máximo = 234ms, Média = 231ms 4.Comando TRACERT (Ou, no linux, TRACEROUTE) 4.1 Uso 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. 4.2 Exemplo C:\Documents and Settings\FRAIDE>tracert 66.102.7.104 Rastreando a rota para mc-in-f104.google.com [66.102.7.104] com no máximo 30 saltos: 1 8 ms 10 ms 7 ms 10.11.0.1 2 10 ms 6 ms 7 ms BSBATN1.bsb.virtua.com.br [200.167.216.3] 3 11 ms 13 ms 10 ms embratel-f6-5-gacc01.bsa.embratel.net.br [200.241.76.17] 4 23 ms 28 ms 30 ms ebt-g6-0-dist04.bsa.embratel.net.br [200.244.165.136] 5 26 ms 22 ms 24 ms ebt-p13-0-core01.rjo.embratel.net.br [200.244.40.50] 6 26 ms 26 ms 25 ms ebt-g5-1-intl03.rjo.embratel.net.br [200.244.140.229] 7 145 ms 143 ms 142 ms ebt-so-2-2-3-intl02.mianap.embratel.net.br [200.244.111.186] 8 140 ms 142 ms 149 ms if-4-2.core1.mln-miami.teleglobe.net [66.110.68.21] 9 139 ms 137 ms 140 ms 216.6.48.9 10 151 ms 151 ms 149 ms 216.6.48.26 11 171 ms 176 ms 171 ms if-0-1.core1.dtx-dallas.teleglobe.net [216.6.53.29] 12 173 ms 183 ms 177 ms if-1-0.core2.dtx-dallas.teleglobe.net [66.198.2.1] 13 212 ms 204 ms 202 ms if-0-0.mcore4.laa-losangeles.teleglobe.net [216.6.85.29] 14 231 ms 227 ms 227 ms if-5-0.mcore4.pdi-paloalto.teleglobe.net [216.6.86.9] 15 228 ms 241 ms 229 ms if-5-0.core2.pdi-paloalto.teleglobe.net [216.6.86.6] 16 241 ms 229 ms 232 ms Vlan2.msfc2.PDI-PaloAlto.Teleglobe.net [207.45.202.38] 17 226 ms 228 ms 229 ms Vlan252.msfc2.PDI-PaloAlto.teleglobe.net [216.6.50.6] 18 232 ms 230 ms 238 ms 209.85.130.6 19 229 ms 233 ms 229 ms 72.14.233.131 20 238 ms 234 ms 233 ms 72.14.233.129 21 240 ms 231 ms 234 ms 216.239.49.54 22 231 ms 237 ms 227 ms mc-in-f104.google.com [66.102.7.104] Rastreamento concluído. C:\Documents and Settings\FRAIDE>
5.Comando NETSTAT 5.1 Uso Exibe estatísticas de protocolo e conexões de rede TCP/IP atuais. NETSTAT [-a] [-b] [-e] [-n] [-o] [-p proto] [-r] [-s] [-v] [interval] -a Exibe todas as conexões e portas de escuta. -b Exibe o executável envolvido na criação de cada conexão ou porta de escuta. Em alguns casos, executáveis conhecidos hospedam múltiplos componentes independentes, e nesses casos a seqüência de componentes envolvidos na criação da conexão ou porta de escuta é listada. Neste caso, o nome do executável está em [] na parte inferior, na parte superior está o componente por ele chamado, e assim por diante, até chegar ao TCP/IP. Observe que esta opção pode ser vagarosa e falhará a menos que você possua permissões suficientes. -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. -o Exibe a ID do processo proprietário associado a cada conexão. -p proto Exibe conexões para o protocolo especificado por proto; proto pode ser TCP, UDP, TCPv6 ou UDPv6 Se usado com a opção s para exibir estatísticas por protocolo, proto pode ser: IP, IPv6, ICMP, ICMPv6, TCP, TCPv6, UDP ou UDPv6. -r Exibe a tabela de roteamento. -s Exibe as estatísticas por protocolo. Por padrão, as estatísticas são exibidas para IP, IPv6, ICMP, ICMPv6, TCP, TCPv6, UDP e UDPv6; a opção -p pode ser usada para especificar um subconjunto do padrão. -v Quando usado junto com -b, irá exibir a seqüência de componentes envolvidos na criação da conexão ou porta de escuta para todos os executáveis. interval Exibe novamente as estatísticas selecionadas, fazendo uma pausa de segundos entre cada exibição. Pressione CTRL+C para interromper a reexibição de estatísticas. Caso omitido, netstat irá imprimir as informações de configuração uma vez. 5.2 Exemplos de execução C:\Documents and Settings\FRAIDE>netstat -a Conexões ativas Proto Endereço local Endereço externo Estado TCP cap-fraide:epmap cap-fraide:0 LISTENING TCP cap-fraide:microsoft-ds cap-fraide:0 LISTENING TCP cap-fraide:1032 cap-fraide:0 LISTENING TCP cap-fraide:1061 localhost:1062 ESTABLISHED TCP cap-fraide:1062 localhost:1061 ESTABLISHED TCP cap-fraide:netbios-ssn cap-fraide:0 LISTENING TCP cap-fraide:1432 207.40.194.17:https ESTABLISHED
TCP cap-fraide:ms-sql-s 207.40.194.17:https ESTABLISHED TCP cap-fraide:1438 207.40.194.17:http ESTABLISHED TCP cap-fraide:1441 207.40.194.16:http ESTABLISHED TCP cap-fraide:1442 207.40.194.16:http ESTABLISHED TCP cap-fraide:1444 207.40.194.6:http ESTABLISHED TCP cap-fraide:1447 207.40.194.7:http ESTABLISHED TCP cap-fraide:1448 207.40.194.7:http ESTABLISHED TCP cap-fraide:1453 207.40.194.6:http ESTABLISHED UDP cap-fraide:microsoft-ds *:* UDP cap-fraide:isakmp *:* UDP cap-fraide:1030 *:* UDP cap-fraide:1072 *:* UDP cap-fraide:4500 *:* UDP cap-fraide:ntp *:* UDP cap-fraide:1026 *:* UDP cap-fraide:1039 *:* UDP cap-fraide:1900 *:* UDP cap-fraide:ntp *:* UDP cap-fraide:netbios-ns *:* UDP cap-fraide:netbios-dgm *:* UDP cap-fraide:1900 *:* C:\Documents and Settings\FRAIDE>netstat -b Conexões ativas Proto Endereço local Endereço externo Estado TCP cap-fraide:1061 localhost:1062 ESTABLISHED 3316 [firefox.exe] TCP cap-fraide:1062 localhost:1061 ESTABLISHED 3316 [firefox.exe] TCP cap-fraide:1432 207.40.194.17:https ESTABLISHED 3316 [firefox.exe] TCP cap-fraide:ms-sql-s 207.40.194.17:https ESTABLISHED 3316 [firefox.exe] TCP cap-fraide:1438 207.40.194.17:http ESTABLISHED 3316 [firefox.exe] TCP cap-fraide:1441 207.40.194.16:http ESTABLISHED 3316 [firefox.exe] TCP cap-fraide:1442 207.40.194.16:http ESTABLISHED 3316 [firefox.exe] TCP cap-fraide:1444 207.40.194.6:http ESTABLISHED 3316 [firefox.exe] TCP cap-fraide:1447 207.40.194.7:http ESTABLISHED 3316 [firefox.exe] TCP cap-fraide:1448 207.40.194.7:http ESTABLISHED 3316 [firefox.exe] TCP cap-fraide:1453 207.40.194.6:http ESTABLISHED 3316 [firefox.exe] C:\Documents and Settings\FRAIDE>
6.O comando nslookup As aplicações TCP/IP como o ping ou o ftp costumam fazem queries DNS através de serviços de API disponibilizados pelo sistema operacional ou por bibliotecas do sistema. Assim, um comando como ping altavista.digital.com envolve uma etapa prévia, e que corresponde ao query do endereço IP associado ao nome altavista.digital.com. O comando nslookup por sua vez é um cliente standalone do DNS, que pode ser utilizado para realizar queries manualmente. A familiaridade com o nslookup é importante para as pessoas que necessitam diagnosticar problemas de rede ou fazer registro e manutenção de domínios. Seguem vários exemplos de uso no modo "não-interativo" (o nslookup possui também um modo de operação "interativo" que oferece maiores recursos). No primeiro exemplo incluímos a resposta completa do nslookup, que inicia-se com a identificação do nameserver consultado. Nas demais, omitimos essa identificação para despoluir o texto. Qual é o endereço associado ao nome www.ibm.com? $ nslookup www.ibm.com Server: hal.home.unet Address: 192.168.0.1 Name: www.ibm.com Addresses: 204.146.81.99, 198.133.16.99, 198.133.17.99, 204.146.80.99 Qual é o nome associado ao endereço 204.146.81.99? $ nslookup 204.146.81.99 Name: www.ibm.com Address: 204.146.81.99 Qual é o nameserver do domínio 146.204.in-addr.arpa? (esse é um domínio artificial utilizado para cadastrar no DNS os reversos dos IPs iniciados com 204.146). $ nslookup -query=ns 146.204.in-addr.arpa Non-authoritative answer: 146.204.in-addr.arpa nameserver = NS1.US.PRSERV.NET 146.204.in-addr.arpa nameserver = NS01.CA.US.IBM.NET Authoritative answers can be found from: NS1.US.PRSERV.NET internet address = 165.87.194.244 NS01.CA.US.IBM.NET internet address = 165.87.201.244 Qual é o servidor MX (responsável pelo recebimento de email) do domínio ibm.com? $ nslookup -query=mx ibm.com ibm.com preference = 0, mail exchanger = ns.watson.ibm.com ibm.com nameserver = ns.watson.ibm.com ibm.com nameserver = ns.almaden.ibm.com ns.watson.ibm.com internet address = 198.81.209.2 ns.almaden.ibm.com internet address = 198.4.83.35
Quais são os servidores de nome do domínio.br? $ nslookup -query=ns br Non-authoritative answer: br nameserver = NS.DNS.br br nameserver = NS-EXT.VIX.COM br nameserver = NS3.NIC.FR br nameserver = NS2.DNS.br br nameserver = NS1.DNS.br Authoritative answers can be found from: NS.DNS.br internet address = 143.108.23.2 NS-EXT.VIX.COM internet address = 204.152.184.64 NS3.NIC.FR internet address = 192.134.0.49 NS2.DNS.br internet address = 200.19.119.99 NS1.DNS.br internet address = 200.255.253.234 Qual é o conteúdo do registro SOA do domínio internic.net? $ nslookup -query=soa internic.net internic.net origin = ops.internic.net mail addr = markk.internic.net serial = 2000051000 refresh = 3600 (1H) retry = 3600 (1H) expire = 432000 (5D) minimum ttl = 86400 (1D) Qual é o endereço associado ao nome www.internic.net? $ nslookup -query=a www.internic.net Name: rs.internic.net Address: 198.41.0.6 Aliases: www.internic.net Qual é o endereço associado ao nome www.ietf.org? $ nslookup -query=a www.ietf.org Name: www2.ietf.org Address: 4.17.168.6 Aliases: www.ietf.org 7.IFCONFIG ou no Windows (winipcfg) Cada placa de rede ethernet existente no mundo possui um endereço de hardware único de 48 bits. Esse endereço costuma-se escrevê-lo na forma de 6 octetos separados por ":", como por exemplo E9:17:02:07:45:B4. Note que os octetos são representados na base 16, e não na base 10, como no caso do IP. No Linux, pode-se exibir esse endereço através do comando ifconfig (no Windows 9x utilize o winipcfg).
$ ifconfig eth0 eth0 Link encap:ethernet HWaddr 00:80:48:EB:06:CD inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:53 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 Interrupt:11 Base address:0xff80 Os participantes de uma LAN ethernet comunicam-se utilizando esses endereços de hardware. Os pacotes que um PC envia a um outro para por exemplo, realizar uma impressão remota, são encabeçados por um header ethernet onde consta o endereço de hardware do destinatário (neste caso, a máquina onde a impressora está fisicamente conectada). Dessa forma, a própria placa de rede ethernet é capaz de filtrar, dentre todos os pacotes que circulam no meio físico (cabo), aqueles a ela destinados. Estes ela repassa ao sistema operacional para serem processados, os demais são descartados. Isso cria um problema inicial na comunicação interna numa LAN, pois a identificação que temos do computador do qual desejamos utilizar algum serviço (e.g. impressão) será seu nome ou o seu número IP. Dessa maneira, da mesma forma que existe um serviço para resolver nomes para IPs (o DNS), é necessário haver, apenas a nível local, um mecanismo que resolva IPs para endereços de hardware. Esse mecanismo é o ARP (address Resolution Protocol). O tcpdump permite-nos monitorar o ARP em operação: # tcpdump arp tcpdump: listening on eth0 13:12:43.676371 arp who-has 192.168.0.2 tell 192.168.0.1 13:12:43.677065 arp reply 192.168.0.2 is-at 8:0:2b:e2:c4:ed As linhas contendo arp who-has são queries ARP. Por exemplo, a máquina 192.168.0.1 quer saber qual é o endereço de hardware associado ao IP 192.168.0.2. Ela faz, então, um broadcast no ethernet perguntando qual é esse endereço de hardware. Esse broadcast foi capturado e apresentado pelo tcpdump na linha arp who-has. Ele corresponde a um pacote ethernet que no campo de endereço (de hardware) de destino especifica um valor especial que faz com que todas as placas de rede repassem o pacote ao sistema operacional. Bem, aquela única máquina cuja interface possuir o endereço 192.168.0.2 irá, ao processar o query ARP, gerar um pacote de resposta informando o seu endereço de hardware, que no caso é a linha is-at como vemos acima. Obs. (1) A opção -e do tcpdump incluirá em cada descrição de pacote os endereços de hardware envolvidos. Obs. (2) Um computador pode ser programado para responder requests ARP referentes a endereços IP que não estão mapeados nas suas interfaces. Essa técnica chama-se proxy-arp e é utilizada como um artifício simples para criar gateways para máquinas que se conectam numa LAN ethernet (vamos supor: um notebook) através da porta serial de algum dos participantes. Nesse caso, esse notebook receberia um endereço IP com o mesmo network number dos endereços utilizados na LAN. Assim, quando alguém na LAN quiser enviar pacotes para o notebook, fará um broadcast ARP mas o notebook não o poderá responder, visto que o broadcast não o atinge. O gateway no entanto responde o request ARP na qualidade de proxy, recebe o pacote na sua interface ethernet, aplica a tabela de rotas e realiza o forward do pacote para a porta serial, encaminhando-o dessa forma para o notebook.