Internet Evolução, protocolos e serviços Liane Tarouco 1 Internet Arquitetura TCP/P = Arquitetura Internet ARPANET iniciou em 1968 ARPA-Advanced Research Projects Agency dos Estados Unidos Incluia no início Estados Unidos e alguns pontos da Inglaterra e na Noruega Funcionava como um laboratório onde conceitos em rede eram testados 1983 --> 82 nodos intermediários e um número desconhecido de computadores 2 Evolução da ARPANET Era uma rede privada governamental Na metade da década de 80, o DoD Estados Unidos, decidiu separar uma rede para seu uso, a MILNET, continuando a ARPANET como a rede experimental que também servia para como backbone para todas as redes acadêmicas das Univer-sidades e outras instituições de pesquisa serem interconectadas. •Na segunda metade da década de 1980, a NSF-National Science Foundation começou a implantar uma rede de supercomputadores denominada NSFNET que tornou-se o backbone para a interconexão das redes. A ARPANET evoluiu e passou a ser mais do que uma rede, resultando no que passou a ser denominada INTERNET, interconexão de redes. 3 A Internet hoje Atualmente, participam da INTERNET entidades de ensino e pesquisa, governamentais e empresas privadas, de todos os países 4 Política de uso aceitável em backbones acadêmicos I.a) Comunicação com pesquisadores e educadores de outros paises, desde que exista reciprocidade para os pesquisadores e educadores dos Estados Unidos no uso das redes estrangeiras por onde acessam a NSFNET I.b) Comunicação e intercâmbio para o desenvolvimento profissional para manter atualização ou para debater assuntos em qualquer área do conhecimento I.c) Uso por associações universitarias, sociedades normativas, conselhos governamentais ou atividades de padronização relativas a pesquisa ou atividades de ensino. 5 Tráfego aceitável I.e) Quaisquer outras comunicações administrativas de suporte ao ensino e a pesquisa. I.f) Anúncios de novos produtos ou serviços para uso em ensino e pesquisa, sem admitir-se publicidade de qualquer tipo I.g) Qualquer tráfego originador de uma rede ou outra agência membro do Conselho de Redes Federal, se o tráfego esta de acordo com o que é aceitavel para aquela agência 6 Nao é aceitável na Internet II.A) Uso para atividades com fins lucrativos ou uso por instituições com fins lucrativos para fins que não os definidos como aceitáveis II.b) Uso extensivo para assuntos privados ou pessoais. 7 A Internet hoje ... Backbones nacionais A maioria das conexões entre países é estabelecida via Estados Unidos Qualquer velocidade pode ser usada nas conexões pois a arquitetura se adapta a uma gama muito grande de infraestruturas de comunicações. A INTERNET atualmente não mais pertence a qualquer entidade e resulta da cooperação de todos. As organizações integrantes da INTERNET são administrativamente independentes Não existe um ponto central que a controle 8 Administração da Internet Comitê responsável pela definição dos padrões a serem usados. IAB-Internet Architecture Board, com uma composição internacional A documentação dos protocolos definidos para uso na rede : RFC-Request for Comments, depositados SRI-Stanford Research International no NIC- Network Information Center do SRI 9 Integração à Internet Para integrar-se a INTERNET, é preciso: - providenciar numa forma de transmissão até o nó INTERNET mais próximo - contactar quem tem a delegação local para registrar usuários para solicitar um endereço IP e registrar o domínio - implantar na sua máquina o conjunto de protocolos inerentes à arquitetura INTERNET 10 A arquitetura Internet A geração atual de protocolos usados na INTERNET é baseada primariamente em: -Um serviço de transporte orientado à conexão, provido pelo protocolo de controle de transmissão TCP (Transmission Control Program) - Um serviço de rede não-orientado à conexão, provido pelo protocolo Internet IP (Internet Protocol) 11 Protocolos de aplicação Internet Sobre a plataforma TCP/IP existem vários protocolos de aplicação: SMTP (Simple Mail Transfer Protocol) que permite um serviço de recepção-armazenamento e envio de mensagens eletrônicas FTP (File Transfer Protocol) que permite a transferência de arquivos TELNET que viabiliza os serviços de terminal virtual 12 DNS (Domain Name System) que proporciona o mapeamento IP - Internet Protocol Baseado em datagrama Gateways entre sub-redes diferentes Se o destinatário de um pacote está na mesma sub-rede do originador, os dados vão diretamente para aquele equipamento. Se o destinatário está numa sub-rede 13 Encapsulamento do datagrama IP O datagrama IP é encapsulado num quadro para ser enviado pelo meio de transmissão até a máquina destinatária O remetente precisa saber qual endereço (nível 2) colocar no cabeçalho do quadro O remetente precisa, portanto ter uma tabela que indique qual endereço de nível de enlace corresponde a um dado endereço IP. Esta informação é aprendida dinamicamente 14 Endereçamento Endereço composto por 32 bits Obedecem a uma subdivisão que indica a rede e o computador Tipos de endereços: Classe de endereço Bits para rede Bits para Computador A 7 24 B 14 16 C 21 8 15 Visualização dos endereços IP Para fins de impressão e visualização, os endereços costumam ser representados, como uma quadra de números que representam cada um dos octetos integrantes do endereço IP, separados por um ponto. Notação decimal pontuada Ex.: 143.54.1.7 16 Endereços e máscaras Um endereço IP é composto por 32 bits dos quais os primeiros 8, 16 ou 24 (dependendo da classe de endereço) indicam a rede. Os bits restantes podem ser subdivididos Endereço classe C 110 endereço de rede netid subrede hostid •O número de bits usados para representar a sub-rede pode ser escolhido •Não devem ser usados para endereço de host os valores 000... ou 111... pois são usados para broadcast (difusão) 17 Máscara para indicar o comprimento do campo hostid A máscara é um conjunto de 32 bits em que as posições correspondentes aos endereços de rede e de sub-rede são 1111111111111111 e os demais bits (correspondentes ao hostid) são 0000000 Exemplo: Endereços na UFRGS usam somente o último octeto para representar o hostid portanto, a máscara é: 255.255.255.0 Na Rede TCHE, onde se usa em certos casos 5 bits para indicar a sub-rede, a máscara fica: 255.255.255.248 11111111.111111111.111111111.11111000 18 Tabelas de roteamento Os endereços de rede e sub-rede são usados nas tabelas de roteamento cada rede (e sub-rede) conhecida haverá pelo menos uma rota (passando por um gateway (como era antigamente denominado) Para Roteadores trocam informações de roteamento entre si Máscaras também são informadas 19 Roteador sub-rede 200.17.63.224 sub-rede 200.9.0.252 11100000 11111100 Rede TCHÊ 20 Como reconhecer a classe de um endereço O primeiro algarismo (Y.X.X.X) indica a classe: Classe A Y< = 127 25.12.34.120 Classe B 128 <= Y < = 191 143.54.1.20 Classe C 192 < =Y < = 207 200.17.63.228 21 Quantos endereços IP pode ter um host? Tantos quantas foram suas interfaces de comunicação LAN ou WAN Cada interface pode ter um endereço IP diferente Os diferentes endereços IP pertencerão a sub-redes diferentes Este host poderá funcionar como um roteador IP Mais de um endereço IP pode ser atribuído a um mesmo interface 22 Endereços especiais 127.hostid Este endereço é conhecido como localhost ou loopback address. Os dados enviados para este endereço não são remetidos para a rede mas passam pela pilha de protocolo e retornam. Toda a rede 127 é reservada para este fim netid.255 Todos os hosts daquela rede Exemplo: 143.54.255.255 netid.0 --> Este host 0.hostid --> Aquele host nesta rede 23 Formato do datagrama IP Version HLen Type of Service Identification Time to Live Protocol Total Length Flags Fragment Offset Header Checksum Source Address 24 Campos datagrama IP Version indica qual versão do IP esta sendo usada no datagrama. HLen: Comprimento do cabeçalho expressa o comprimento em palavras de 32 bits. Tipo de serviço contem um parâmetro descrevendo a qualidade do serviço para este datagrama. Na versão 4 do protocolo este parâmetro tem a seguinte estrutura: Precedência (3 bits) - a prioridade deste datagrama Retardo (1 bit) - normal ou baixa Throughput (1 bit) - normal ou alto 25 Campos datagrama IP (cont) Comprimento total é o comprimento do segmento, medido em octetos, incluindo cabeçalho e dados. Identificação é um campo usado para correlacionar os segmentos de um datagrama. Flag é um campo de 3 bits que contem uma indicação de nãosegmentação ou um de que há mais segmentos subsequentes. Posição indica a posição do segmento em relação ao inicio dos dados existentes no datagrama original. Tempo de existência (Time to Live) varia de 0 a 255 seg e indica o tempo máximo de trânsito de um datagrama. Cada gateway na Internet reduz este tempo de 1 seg ou do tempo decorrido 26 Campos datagrama IP (cont) Checksum do cabeçalho e o complemento para 1 da soma de todas as palavras de 16 bits no cabecalho, não incluindo o proprio checksum. Originador e Destinatario sao enderecos de 32 bits. Cada endereco Internet começa com um endereço de subrede (8 bits) e um endereço local (24 bits). Opções é um campo de comprimento variável para uso entre as sub-redes participantes. Neste campo podem ser incluidas informações tais como: classificação em termos de segurança ou horário (time stamp). Enchimento (Padding) é usado para completar o campo Opções para formar 32 bits. 27 Mapeamento de endereços Nome: penta Número IP: 143.54.1.20 Endereço Ethernet: 09:00:2B:........ Para que uma máquina possa se comunicar com outra, precisa ser capaz de mapear nomes em endereços 28 Mapeamento de endereços físicos em endereços Internet Tabela estática preenchimento manual Resolução de endereço descoberta protocolo ARP-Adress Resolution Protocol pedido enviado por broadcast (fornece IP e quer Ethernet, por exemplo) resposta armazenada numa cache 29 Protocolos ARP e RARP Mensagens encapsuladas num datagrama IP ARP: dado um endereço IP obter o correspondente endereço Ethernet para poder enviar um datagrama RARP: Uma estação diskless tem apenas seu endereço Ethernet quando da boot e precisa ser informada sobre o endereço IP que ela deve usar 30 Exemplo penta% arp -a vortex (143.54.1.7) at aa:0:4:0:c3:b9 tchepoa (143.54.1.9) at 0:0:c:3:26:3 penta% ping asterix asterix.ufrgs.br is alive penta% arp -a darwin (143.54.1.176) at 8:0:20:10:ad:72 vortex (143.54.1.7) at aa:0:4:0:c3:b9 asterix.ufrgs.br (143.54.1.8) at 0:0:92:80:2f:be tchepoa (143.54.1.9) at 0:0:c:3:26:3 31 Reverse ARP Quando é necessário descobrir o endereço IP para uma máquina diskless pode ser usado o protocolo RARP (Reverse Address Resolution Protocol) Analogia: É como quando algúem viaja com seu celular e ao chegar em outra cidade o aparelho pergunta para a central local -“Qual o número que eu devo usar por aqui?” Alguma central responde: “É 99991111” RARP é enviado em broadcast 32 Mensagens de controle O protocolo ICMP também é encapsulado nos datagramas IP e é usado quando ocorrem alguns problemas ou para teste. Alguns comandos podem ser estimulados por programas utilitários, como o ping penta% ping asterix asterix.ufrgs.br is alive 33 ICMP-Internet Control Message Protocol O campo protocolo de um datagrama IP contem o valor 1 Diversos tipos de mensagens de controle Destinatario não pode ser alcançado Tempo excedido Parâmetro com problema Dispositivo refreando (Source quench) Redirecionamento Eco/resposta do eco Hora/resposta com hora Pedido/resposta de informação Pedido/resposta máscara de endereço 34 Mapeamento de nomes em endereços Internet Os computadores conectados à rede recebem nomes penta.ufrgs.br tchepoa nic.ddn.mil O mapeamento dos nomes para os endereços Internet pode ser feitos de várias maneiras: - manualmente preenchendo uma tabela /etc/hosts 35 Mapeamento de nomes em IP DNS Domain Name System Máquinas são organizadas em grupos lógicos denominados domínios Cada domínio tem um servidor mestre que armazena todos os dados Servidores escravos podem opcionalmente conter cópias dos dados Clientes consultam os servidores para obter o mapeamento Cada novo host adicionado na rede é registrado no servidor requer arquivos de configuração e deamons especiais 36 Mapeamento de nomes em IP DNS-Domain Name System prove um sistema hierárquico global de nomeação sistema totalmente distribuído cada servidor mestre contem toda a informação concernente a seu domínio Pode-se consultar o DNS usando o utilitário nslookup em ambiente UNIX 37 Exemplos penta% nslookup Default Server: vortex.ufrgs.br Address: 143.54.1.7 > penta Server: vortex.ufrgs.br Address: 143.54.1.7 Name: penta.ufrgs.br Address: 143.54.1.20 > bugiu Server: vortex.ufrgs.br Address: 143.54.1.7 *** vortex.ufrgs.br can't find bugiu: Non-existent domain Address: 143.54.2.20 38 > bugiu.inf.ufrgs.br Server: vortex.ufrgs.br Address: 143.54.1.7 *** No address information is available for bugiu.inf.ufrgs.br > bugio.inf.ufrgs.br Server: vortex.ufrgs.br Address: 143.54.1.7 Name: bugio.inf.ufrgs.br Address: 143.54.10.3 39 > 143.54.2.6 Name: tripoli.if.ufrgs.br Address: 143.54.2.6 > fapq.fapesp.br Server: vortex.ufrgs.br Address: 143.54.1.7 Non-authoritative answer: Name: fapq.fapesp.br Address: 143.108.10.2 40 Mapeamento de nomes em IP A tradução de nomes em números IP pode ser invocada automaticamente quando um programa faz referência a um nome. Isto é função do name resolver Se um sistema não tiver um name resolver, precisa ter uma tabela de hosts (host table) para consultar Pode existir um sistema que tenha host table (para os nomes locais mais usados) e name resolver (para os demais) 41 Domain Name Service (DNS) (1) Name Query “Sun_Server” TELNET Sun_server (2) Query Response “198.1.1.1” (3) Connection Servidor de nomes 11000 1 198.1.1.2 Resolvedor de DNS 198.1.1.1 101010 Banco de dados contendo o mapeamento para Sun_Server 198.1.1.1 Prove um serviço de conversão de nomes em endereços Ip para TCP/IP. Três componentes Um servidor de nomes um resolvedor de nomes banco de dados 42 Estrutura do DNS Estrutura hiarárquica Cada nível prove definições adicionais Cada ramo é denominado um nível (63 caracteres de comprimento) O registro Internet provê unicidade nos nomes Um domínio é atribuído e pode ser posteriormente definido no43 local onde é usado Componentes do DNS Domain Name Space e registros de recursos Servidores de nome Resolvedores 44 Estrutura dos Domínios Root Server com .firm edu .arts com .nom gov .rec mil .info net .web .store Outros top-level domains (TLDs) tem sido propostos e adotados pelos ccTLD (Country code Top Level Domain) No Brasil o registro no domínio .br é feito pela FAPESP por delegação do Conitê Gestor Internet/BR http://www.cg.org.br 45 Servidores de nome graydon.com Upstream name server for other domains vax. mail. host. Database file marketing zone vax 192.32.1.15 mail MX vax host 192.32.1.17 .marketing.graydon.com .engineering.graydon.com engineering zone hr zone .hr.graydon.com manufacturing zone .manufacturing.graydon.com 46 Name Servers (continued) Query “labhost.bnr.ca.us” Root server Referral to us server Consulta “labhost.bnr.ca.us” Query “labhost.bnr.ca.us” .us server Referral to ca.us server Name Server Endereço IP de “labhost.bnr.ca.us” Query “labhost.bnr.ca.us” .ca.us server Referral to bnr.ca.us server Query “labhost.bnr.ca.us” bnr.ca.us server IP address of “labhost.bnr.ca.us” 47 Tipo de funções de consulta Query “Host” Response “Can’t find it” Query “Host.jj.com” Root server Name Server Response “IP Address” jj.com Dois tipos de consultas: recursiva e iterativa. Recursão significa que o servidor deve encontrar a resposta ou retornar um código de erro O resolvedor é um exemplo de consulta recursiva Iteração permite ao servidor retornar a melhor informação conhecida Servidores são exemplos tanto de recursão quanto de iteração48 Examplo de banco de dados DNS Registros no bando de dados incluem: A–endereço IP de hosts PTR–nome do domínio do host CNAME–nome canônico do host, host identificado por um outro nome de domínio MX–intercambiador de correio eletrònico NS–servidores de nome SOA–Indica autoridade para o domínio TXT–registro com texto genérico SRV–registro de localização de serviço RP–nome textual da pessoa responsável pelo DNS do domínio 49 SOA Record Authoritative for domain Naugle.com 1567 18000 3600 604800 86400) IN Name server for domain SOA ns1.Naugle.com. ;Serial ;Refresh after five hours ;Retry after 1 hour ;Expire after one week ;Minimum TTL of 1 day Information for the secondary server Matt.NT1Server.Naugle.com Person responsible 50 Name Server Records Naugle.com. IN NS ns0.Naugle.com. Naugle.com. IN NS ns1.Naugle.com. Naugle.com. IN NS ns2.Naugle.com. Naugle.com. IN NS ns3.Naugle.com. Naugle.com. IN NS ns4.Naugle.com. 51 Address Records LocalHost.Naugle.com. IN A 127.0.0.1 DatabaseServer.Naugle.com. IN A 128.1.1.1 HRServer.Naugle.com. IN A 128.1.15.1 EngServer.Naugle.com. IN A 128.1.59.150 NS0.Naugle.com. IN A 128.1.1.2 NS1.Naugle.com. IN A 128.1.15.2 NS2.Naugle.com. IN A 128.1.16.190 NS3.Naugle.com. IN A 128.1.59.100 NS4.Naugle.com. IN A 128.1.59.101 ;Aliases NT1.Naugle.com. IN CNAME DBServer.Naugle.com NT2.Naugle.com. IN CNAME HRServer.Naugle.com. 52 Mail Exchange Records (MX) engineering.naugle.com. IN MX 5 mail.naugle.com. engineering.naugle.com. IN MX 5 mail1.naugle.com. engineering.naugle.com. IN MX 10 mail2.naugle.com. 53 Usando o banco de dados nslookup <domain name> <IP Address> www.registro.br Pode ser usado para ver se um nome de domínio já está atribuído 54 Comando WHOIS Possibilita obter mais informação sobre nomes de domínios, redes etc “whois ascend.com” (without the quotes). Details Ascend.com domain such as: Administrative contact (who to call) Domain servers Can determine IP address blocks. WHOIS net 192.1 BBN Corporation NETBLK-BBN-CNETBLK BBN-NCETBLK 192.1.0.0-192.1.255.255 55 Tutoriais on-line e livros http://penta.ufrgs.br/hometcp.htm http://penta.ufrgs.br/rc952/trab1/dns.html Tittel, Ed. Hudson, Kurt. Stewart, James. MCSE Networking Essentials. Guia de certificação. Editora Berkeley, Sâo Paulo, 1999 56