230 likes | 321 Views
Aulas 65 / 66 – TEC 11ºF. Redes de computadores Prof. António dos Anjos. Camada de Aplicação (recordar). Providencia, às aplicações, o interface para utilizar a comunicação em rede: E.g. para clientes de Internet, Email, FTP, Telnet, VNC, DNS, etc;
E N D
Aulas 65 / 66 – TEC 11ºF Redes de computadores Prof. António dos Anjos
Camada de Aplicação (recordar) • Providencia, às aplicações, o interface para utilizar a comunicação em rede: • E.g. para clientes de Internet, Email, FTP, Telnet, VNC, DNS, etc; • Providencia também o acesso a funcionalidades para o incremento de segurança na comunicação e compressão de dados: • E.g. mecanismos de encriptação (camada de apresentação do modelo OSI); • Ao nível da Camada de Aplicação, a unidade de informação é a MENSAGEM.
DNS – Domain Name System (o serviço) • O que é? • “Serviço” que nos permite referir-nos a computadores na Internet através de um nome, em vez de um número de 32 bits (IPV4). • É muito mais fácil memorizar um nome que um número de 32 bits (mesmo dividido em octetos)! • Imagine-se a memorização de um IP de 128 bits (IPv6)!!!
11001001.10010001.01001010.01001010 #ﺵ@ﺠﺱ#$ %#$@%& Decorar números??? • IPv4 – 32 bits; • IPv6 – 128 bits; • www.google.com Vs 11011000 11101111 00110011 01100011
/etc/hosts • Temos um ficheiro no computador chamado hosts: • Faz a correspondência entre os IPs dos computadores na rede local e os respectivos nomes (e.g. 10.0.0.1 picasso); • Porque não colocar no ficheiro todos os IPs existentes na Internet? • Passaríamos uma boa parte da nossa vida a lançar IPs e nunca teríamos a tabela actualizada!
/etc/hosts (2) • E se houvesse uma empresa a fazer só isso e depois nós fizéssemos o download do ficheiro actualizado? • Qualquer alteração num nome ou IP, ou qualquer adição ou remoção da tabela, exigiria que todos os utilizadores fizessem um novo download do ficheiro; • Não podiam existir computadores com o mesmo nome; • E o download do ficheiro hosts por biliões de utilizadores…
NIC – Network Information Center • Nos primórdios da Internet esta organização fazia a manutenção do ficheiro hosts.txt; • Este ficheiro era compilado uma ou duas vezes por semana e depois posto à disposição para download por FTP; • Obviamente só funcionou bem enquanto a Internet estava no início (poucos computadores).
Solução • Pediu-se a Paul Mokapetris para resolver o problema: • 1984 – RFC882 + RFC883 com a descrição do DNS; • 1987: • RFC1034 – Conceitos do DNS; • RFC1035 – Implementação e especificações do DNS; • Daí em diante foram criados cerca de 80 RFCs relacionados com o DNS.
DNS • Assenta numa filosofia de base de dados distribuída: • Nenhum computador tem a totalidade dos nomes na Internet; • Tem mecanismos de cache; • É possível controlar segmentos da bases de dados de forma independente; • Ao mesmo tempo todos os segmentos estão disponíveis a toda a rede; • Utiliza um esquema de Cliente-Servidor.
. etc… com gov pt org edu com esa DNS – Hierarquia • O sistema pode ser visto como uma árvore invertida dividida em domínios. Por exemplo:
DNS – A árvore • A raiz (root) da árvore é representada pela Label ponto ( . ); • Cada nó tem uma Label e representa um domínio (domain); • Para cada domínio existem, pelo menos, dois servidores de nomes (nameservers): • Cada nameserver sabe os IPs dos computadores que se encontram no seu domínio; • Sabe também quais são os IPs dos nameservers que gerem os sub-domínios dos seus sub-domínios; • Além de um nameserver primário, tem de existir um nameserver secundário, de preferência numa rede diferente (por questões de segurança).
DNS – Os dados • Cada nameserver contém ficheiros de texto (ascii) com os dados relativos ao domínio sobre o qual é servidor: • Esses ficheiros chamam-se Master Files e são geridos pelo administrador de rede local; • Cada Master File diz respeito a um domínio e chama-se ficheiro de zona; • Esses dados são chamados Autoritários (Authoritative) sobre esse domínio, logo o nameserver que contém esses dados, é autoridade sobre esse domínio. • Um nameserver pode também ter dados de domínios sobre os quais não é autoridade e esses encontram-se em cache por um período de tempo predefinido;
DNS - root • Todos os sub-domínios do domínio de root ( . ) são chamados de Top-Level Domains: • Exemplos: • com – Organizações comerciais; • edu – Instituições educativas; • gov – Organizações governamentais americanas; • int – Organizações internacionais; • mil – Organizações militares americanas; • org – Organizações não lucrativas (normalmente); • pt – Portugal; • Existem 13 root nameservers: • Conhecem os IPs dos nameservers dos TLDs; • Estão espalhados pelo mundo, mas a maioria está na América do Norte; • Cada nameserver em qualquer domínio tem de saber os IPs destes nameservers (têm um ficheiro estático onde se encontram os IPs e respectivos nomes).
DNS - Queries • Um nameserver pode ser confrontado (na porta 53) por um pedido (query) que não sabe responder; • Soluções: • Queries recursivas; • Queries iterativas.
DNS – Query Recursiva . dnsRoot com net gov pt org dnsPT dnsCom google dnsGoogle edu com dnsEdu esa www dnsEsa picasso Qual o IP? www.google.com. picasso.esa.edu.pt.
Queries Recursivas • O nameserver a quem se faz a query é quem vai dar a resposta; • Poderemos estar a colocar vários servidores ao nosso serviço. Isto sobrecarrega o sistema de DNS; • Os root nameservers não fazem queries recursivas; • NOTA: No diapositivo anterior apresenta-se um root nameserver a responder a uma query recursiva. Apresenta-se assim apenas para a melhor compreensão do conceito; • O nameservers não são obrigados a implementar esta funcionalidade. Têm no entanto de reconhecer o pedido para poder negá-lo.
DNS – Query Iterativa . dnsRoot com net gov pt org dnsPT dnsCom google dnsGoogle edu com dnsEdu esa www dnsEsa picasso Qual o IP? www.google.com. picasso.esa.edu.pt.
DNS – Query Iterativa • O nameserver autoritário sobre o domínio pretendido é que vai responder ao nosso nameserver (caso nenhum nameserver acima tenha a resposta em cache); • Se não for o autoritário, o nameserver questionado, informa o nosso nameserver de quem trata do domínio pretendido; • O nosso nameserver “pergunta” de seguida ao nameserver que foi fornecido; • Os nameservers são obrigados a implementar esta funcionalidade.
Resource Records • É aquilo que está nos Master Files; • São os registos relativos a tudo o que existe no domínio; • Formato de cada linha: • name type class ttl rdata; • Name – Nome do nó ao qual o RR pertence; • Type – Tipo de RR; • Class – Classe do RR (só utilizamos IN); • TTL – Tempo que poderá ficar em cache; • RDATA – Dados relativos ao RR.
TYPE (Tipo de RR) • A - Address (IP) • aanjos A IN 259200 10.10.22.24 • CNAME - Canonical Name • www.esa.edu.pt. CNAME IN 34234 serverweb • MX - Mail Exchange • *.esa.edu.pt. MX IN 21323 20 smtp.esa.edu.pt. • NS - Name Servers autoritários • informatica.esa.edu.pt. NS IN 12323 dnsinfo.informatica.esa.edu.pt. • SOA – Start Of Authority • Muito importante porque define as características gerais da zona! • Ver diapositivo seguinte.
TYPE = SOA • MNAME - domain name do nameserver (ex. esa.edu.pt); • RNAME - endereço de email do administrador da zona (domínio); • SERIAL - versão do ficheiro de zona; • REFRESH - tempo que um servidor secundário deve esperar para ver se Serial foi modificado; • RETRY - tempo que o nameserver secundário deverá esperar caso tenha falhado o contacto para REFRESH; • EXPIRE - tempo de autoridade sem REFRESH; • MINIMUM - TTL mínimo de todos os RR’s.
SOA – esa.edu.pt MNAME = esa.edu.pt. RNAME = aanjos.esa.edu.pt. SERIAL = 20030318 REFRESH = 28800 (8H) RETRY = 7200 (2H) EXPIRE = 604800 (7D) MINIMUM = 86400 (1D)