Interligação de Redes Nível de Rede DatagramasIP versão 4...

14
Nível de Rede Redes de Computadores I 2007/2008 05-11-2007 Universidade do Minho 1 Sumário Interligação de Redes Encapsulamento na pilha TCP/IP Datagramas IP versão 4 (IPv4) Cabeçalhos IPv4 Fragmentação e reagrupamento Endereçamento (IPv4) Classfull e classless Subnetting e supernetting Atribuição dinâmica de endereços (DHCP) Resolução de endereços nível 2 (ARP) Mensagens de Controlo (ICMP) IP versão 6 (IPv6) 05-11-2007 Universidade do Minho 2 Interligação de Redes Nenhuma das tecnologias existentes de rede local (LAN) é adequada para satisfazer todos os requisitos de comunicações das aplicações. Nenhuma dessas tecnologias é totalmente escalável: Os endereços não têm estrutura, resultando em: dificuldade de distribuição e administração complexidade no encaminhamento dos PDU, mas… Não há mecanismos de encaminhamento nos protocolos Os PDU têm comprimentos limitados; Os métodos de acesso não suportam grandes distâncias 05-11-2007 Universidade do Minho 3 Interligação de Redes Introdução Questão : Será que para existir um serviço de rede único e global (universal) é necessário adoptar a mesma tecnologia de rede em todos os locais? Ou será possível oferecer serviços de conectividade universal mesmo adoptando diferentes tecnologias locais? É possível a conectividade global entre redes com protocolos locais distintos introduzindo uma camada protocolar superior independente daqueles: A camada protocolar de rede , também chamada de interligação de redes ou de internetworking . 05-11-2007 Universidade do Minho 4 Interligação de Redes Introdução A Interligação de Redes baseia-se na utilização de funcionalidades específicas de rede (realizadas tanto em hardware como em software) que proporcionam um serviço global de interligação de redes locais (LAN) heterogéneas: Software: protocolos de rede (internetworking) Hardware: routers (encaminhadores) A maior Rede de Redes que existe: Internet 05-11-2007 Universidade do Minho 5 Interligação de Redes Introdução

Transcript of Interligação de Redes Nível de Rede DatagramasIP versão 4...

Nível de Rede

Redes de Computadores I

2007/2008

05-11-2007 Universidade do Minho 1

Sumário

� Interligação de Redes� Encapsulamento na pilha TCP/IP

� Datagramas IP versão 4 (IPv4)� Cabeçalhos IPv4

� Fragmentação e reagrupamento

� Endereçamento (IPv4)� Classfull e classless

� Subnetting e supernetting

� Atribuição dinâmica de endereços (DHCP)

� Resolução de endereços nível 2 (ARP)

� Mensagens de Controlo (ICMP)

� IP versão 6 (IPv6)

05-11-2007 Universidade do Minho 2

Interligação de Redes

� Nenhuma das tecnologias existentes de rede local (LAN) éadequada para satisfazer todos os requisitos de comunicações das aplicações.

� Nenhuma dessas tecnologias é totalmente escalável:

� Os endereços não têm estrutura, resultando em:

� dificuldade de distribuição e administração

� complexidade no encaminhamento dos PDU, mas…

� Não há mecanismos de encaminhamento nos protocolos

� Os PDU têm comprimentos limitados;

� Os métodos de acesso não suportam grandes distâncias

05-11-2007 Universidade do Minho 3

Interligação de RedesIntrodução

Questão:

Será que para existir um serviço de rede único e global (universal) é necessário adoptar a mesma tecnologia de rede em todos os locais? Ou será possível oferecer serviços de conectividade universal mesmo adoptando diferentes tecnologias locais?

É possível a conectividade global entre redes com protocolos locais distintos introduzindo uma camada protocolar superior independente daqueles:

A camada protocolar de rede, também chamada de interligação de redes ou de internetworking.

05-11-2007 Universidade do Minho 4

Interligação de RedesIntrodução

A Interligação de Redes baseia-se na utilização de funcionalidades específicas de rede (realizadas tanto em hardware como em software) que proporcionam um serviço global de interligação de redes locais (LAN) heterogéneas:

� Software: protocolos de rede (internetworking)

� Hardware: routers (encaminhadores)

A maior Rede de Redes que existe: Internet

05-11-2007 Universidade do Minho 5

Interligação de RedesIntrodução

05-11-2007 Universidade do Minho 6

Interligação de RedesA pilha TCP/IP

� O protocolo do nível de rede mais utilizado é o protocolo de rede usado na Internet: o Internet Protocol (IP), da pilha protocolar TCP/IP

� A pilha TCP/IP apresenta como principais características:� Aberta

� especificações publicadas e bem conhecidas� abertura completa ao desenvolvimento de código

� Portável� independência do sistema operativo e plataforma� quaisquer sistemas podem comunicar

� Estável e Robusta� normas testadas ao longo de três décadas e fixas� mas ainda em desenvolvimento e aperfeiçoamento

� Suporte global� incluída em todos os sistemas de computação

05-11-2007 Universidade do Minho 7

Ethernet Token Bus Token Ring FDDI

Internet Protocol

ARP

TELNET FTP SMTP DNS SNMP DHCP

LigaçãoFísico

Rede

Transporte

AplicaçãoApresentação

Sessão

ICMPIGMP

RTPRTCP

TransmissionControl Protocol

User DatagramProtocol

RIP OSPF BGP

Interligação de RedesA pilha TCP/IP

05-11-2007 Universidade do Minho 8

Estaçãoorigem

Dados

Segmento TCP

Datagrama IP

Pacote LLC

Trama MAC

Estaçãodestino

AplicaçãoTCPIP

LigaçãoFísico

Dados

Segmento TCP

Datagrama IP

Pacote LLC

PDU Aplicação

Meio detransmissão

CT

CI

CL

CM CRC

CM CRC

A hierarquia protocolar por camadas traduz-se no encapsulamento dos PDU:

� Na origem, o PDU da camada N+1 é inserido no campo de dados do PDU da camada N

� No destino, o PDU da camada N é recuperado do campo de dados do PDU da camada N-1

encapsulamento

desencapsulamento

Interligação de RedesEncapsulamento TCP/IP

05-11-2007 Universidade do Minho 9

IP – Internet Protocol

� É um protocolo de interligação de rede, cujo paradigma protocolar

é o melhor esforço (best effort):o protocolo esforça-se por entregar os datagramas ao destino mas não o garante

(datagramas podem perder-se)

� Versões: IPv4 (em uso generalizado), IPv6 (em instalação)

� Principais funções:

� fornece a unidade elementar de transferência de dados:� o PDU do IP é um datagrama IP

� inclui mecanismos para o seu encaminhamento

� fragmentação de datagramas: transita em qualquer LAN

� incorpora um esquema de endereçamento universal

05-11-2007 Universidade do Minho 10

32 bits

Ethernet Data Field

Vers HLEN TOS Total Length

Identification Flags Fragment Offset

Time to Live Protocol Header Checksum

Source IP address

Destination IP address

IP Options (pode ser nulo) Padding

IP Datagram Data (até 65536 bytes)

DA SA Type0800

IP Header and Data CRC

20 bytes

IP – Internet ProtocolFormato dos datagramas

05-11-2007 Universidade do Minho 11

IP – Internet ProtocolFormato dos datagramas

� Vers (4bit): versão do protocolo (valor 4 ou valor 6)

� HLEN (4bit): tamanho do cabeçalho em blocos de 32 bits; valor mínimo é 5;

� TOS (8bit): dá uma indicação em abstracto dos parâmetros de qualidade de serviço pretendidos (atraso baixo, débito elevado, etc)

� Total Length (16bit): tamanho total (cabeçalho+dados) em bytes; (máximo é 65535, mas normalmente não passa dos 1500 bytes)

� Identification (16bit): identificador único por datagrama e por cada conexão que ajuda a identificar todos os fragmentos que devem ser reagrupados

� Flags (3bit): Bit 0 = 0 (reservado); Bit 1 = DF (don’t fragment); Bit 2 = MF (more fragments);

� Fragment Offset (13bit): define a que parte do datagrama pertence este fragmento e mede-se em blocos de 64 bits (8 bytes)

05-11-2007 Universidade do Minho 12

IP – Internet ProtocolFormato dos datagramas

� Time To Live (8bit): máximo tempo de vida do datagrama que édecrementado a cada salto; quando o valor é zero o datagrama é destruído;

� Protocol (8bit): usado para identificar qual o protocolo da camada acima a quem devem ser entregues os dados transportados

� Header Checksum (16bit): soma de verificação em complemento para 1 do cabeçalho (recalculado em cada salto por causa do TTL)

� IP Options (opcional e de tamanho variável):

- Security- Loose Source Rounting

- Strict Source Routing- Record Route

- Stream ID

- Internet Timestamp

05-11-2007 Universidade do Minho 13

� As ligações de rede têm diferentes MTU (max.transfer unit) – tamanho máximo da trama da camada de ligação

� Diferentes tipos de ligação implicam diferentes MTUs

� Um datagrama IP “demasiado grande” é dividido em vários fragmentos dentro da rede

� Um datagrama transforma-se em vários datagramas

� A junção é efectuada apenas no nódestino

� Existem no cabeçalho IP um conjunto de campos para identificar

e ordenar fragmentos.

fragmentafragmentafragmentafragmentaççççãoãoãoão

entrada: um grande datagramasaída: trêspequenosdatagrams

reagrupamento

Fonte: Computer Networking: A Top-Down ApproachFeaturing the Internet, J. Kurose, Addison-Wesley, 2001

IP – Internet ProtocolFragmentação e reagrupamento

05-11-2007 Universidade do Minho 14

ID=x

offset=0

fragflag=0

length=4000

ID=x

offset=0

fragflag=1

length=1500

ID=x

offset=1480

fragflag=1

length=1500

ID=x

offset=2960

fragflag=0

length=1040

Um grande datagrama transforma-seem vários pequenos datagramas

IP – Internet ProtocolFragmentação e reagrupamento

05-11-2007 Universidade do Minho 15

VERS HLEN

Time to Live Protocol Header Checksum

IP Options (may be null) Padding

IP Datagram Data (up to 65,535 bytes)

TOS Total Length

Identification Flags Fragment Offset

Source IP address

Destination IP address

IP – Internet ProtocolEndereçamento

05-11-2007 Universidade do Minho 16

� Endereço IP: identificador de 32-bits por interface do sistema terminal ou encaminhador

� Interface: ligação entre o sistema terminal ou o encaminhador e a ligação física

� Os encaminhadores têm tipicamente múltiplas interfaces

� Os sistemas terminais podem ter múltiplas interfaces

� Os endereços IP associam-se a interfaces (não a sistemas terminais ou encaminhadores)

223.1.1.1

223.1.1.2

223.1.1.3

223.1.1.4 223.1.2.9

223.1.2.2

223.1.2.1

223.1.3.2223.1.3.1

223.1.3.27

Fonte: Computer Networking: A Top-Down Approach Featuringthe Internet, J. Kurose, Addison-Wesley, 2001

Interligações de rede com 3 redes IP

IP – Internet ProtocolEndereçamento

05-11-2007 Universidade do Minho 17

� Endereço IP:

� Parte da Rede (bits mais significativos

� Parte do Sistema Terminal (bits menos significativos)

� O que é uma Rede ? (perspectiva dos endereços IP)

� interfaces de dispositivos com a mesma “Parte de Rede”

� mutuamente e fisicamente atingíveis sem intervenção de um encaminhador

223.1.1.1 = 11011111 00000001 00000001 00000001

223 1 11

IP – Internet ProtocolEndereçamento

05-11-2007 Universidade do Minho 18

Sistema com 6 redes interligadas

223.1.1.1

223.1.1.3

223.1.1.4

223.1.2.2223.1.2.1

223.1.2.6

223.1.3.2223.1.3.1

223.1.3.27

223.1.1.2

223.1.7.0

223.1.7.1223.1.8.0223.1.8.1

223.1.9.1

223.1.9.2

Endereçamento IP

Fonte: Computer Networking: A Top-Down Approach Featuringthe Internet, J. Kurose, Addison-Wesley, 2001

IP – Internet ProtocolEndereçamento

05-11-2007 Universidade do Minho 19

130.1.4.0130.1.4.0

130.1.1.0130.1.1.0

130.1.3.0130.1.3.0

130.1.1.0130.1.1.0

Não sãopermitidassubredesnão-contiguas

130.1.2.0130.1.2.0

Este segmento (subrede)apenas tem duas estações

(os dois routers)130.1.2.50130.1.2.50

130.1.2.82130.1.2.82

130.1.1.254130.1.1.254

130.1.3.49130.1.3.49

130.1.3.200130.1.3.200

IP – Internet ProtocolEndereçamento

05-11-2007 Universidade do Minho 20

Router

Estações

205.1.20.49 205.1.5.1 205.1.10.1 205.1.20.1

205.1.5.0 intf0205.1.10.0 intf0205.1.20.0 intf0

A estação 205.1.20.1remete ao router osdatagramas destinadosà estação 205.1.10.1

Múltiplas subredes no mesmo interface

Tabela de encaminhamentodo router para este interface

intf0

IP – Internet ProtocolEndereçamento

05-11-2007 Universidade do Minho 21

IP – Internet ProtocolEndereçamento

� Endereçamento por classes (ou Classful )� esquema original, baseado na RFC 791

� usa os primeiros bits como identificadores de classe

� Endereçamento sem classes (ou Classless)� não considera os bits de classe utilizando uma máscara de 32 bits para

determinar o endereço de rede

� permite encaminhamento mais eficiente por agregação de rotas, designado por CIDR (Classless Internet Domain Routing)

� tabelas de encaminhamento mais pequenas� as rotas são agregadas por grupos de endereços adjacentes

� usado pelas tabelas de encaminhamento de ISPs

05-11-2007 Universidade do Minho 22

Identificadorda classe

Parte do Endereço de Rede Parte do Endereço de Estação

11110 Classe E – Reservado para utilização futura

0 7 bits de endereço de rede 24 bits de endereço de estação

Classe A

10 14 bits de endereço de rede 16 bits de endereço de estação

110 21 bits de endereço de rede 8 bits endereço de estação

1110 Endereços Multicast no intervalo 224.0.0.0 - 239.255.255.255

Classe B

Classe C

Classe D

Classe E

IP – Internet ProtocolEndereçamento (Classfull)

05-11-2007 Universidade do Minho 23

Classe A B C D

redes (1º byte)

126

(1-126)

16.384

(128-191)

2.097.152

(192-223)

hosts/rede 16.277.214 65.354 254

reservado host a 0s ou 1s host a 0s ou 1s host a 0s ou 1s (224-239)

Endereços IPv4 por classes

IP – Internet ProtocolEndereçamento (Classfull)

05-11-2007 Universidade do Minho 24

IP – Internet ProtocolEndereçamento (Classfull)

Máscara de endereço� Máscara: padrão que conjugado com o endereço IP, devolve a

parte do endereço de rede (ou sub-rede)

� No endereçamento por classes as máscaras são:

� Classe A: 11111111.00000000.00000000.00000000

notação decimal: 255.0.0.0 notação CIDR: /8

� Classe B: 11111111.11111111.00000000.00000000

notação decimal: 255.255.0.0 notação CIDR: /16

� Classe C: 11111111.11111111.11111111.00000000notação decimal: 255.255.255.0 notação CIDR: /24

� No endereçamento sem classes as máscaras têm qualquer outro valor

05-11-2007 Universidade do Minho 25

IP – Internet ProtocolEndereçamento (Classfull)

Restrições a Endereços IP� Endereços reservados:

� os primeiros 4 bits não podem ser 1

� 127.x.x.x é o endereço reservado para loopback

� bits de host a 0s ou 1s são reservados (rede ou broadcast)

� bits de subnet a 0s ou 1s são reservados

� Endereços privados: atribuídos para internets privadas (sem conectividade global, não devem ser visíveis nem são encaminhados na internet exterior), RFC1918:

� bloco 192.168.0.0 - 192.168.255.255 (prefixo 192.168 /16)

� bloco 172.16.0.0 - 172.31.255.255 (prefixo 172.16 /12)

� bloco 10.0.0.0 - 10.255.255.255 (prefixo 10 /8)

05-11-2007 Universidade do Minho 26

� Endereçamento por classes (classfull):

� Uso ineficiente do espaço de endereçamento, exaustão de espaço

� Ex: uma classe B aloca 65K hosts mesmo que existam apenas 2K hosts!

� Enderecamento sem classes (classless):

� Parte de rede (do endereço) com comprimento arbitrário

� Formato: a.b.c.d/x, em que x é o nº de bits correspondente à parte de rede

11001000 00010111 00010000 00000000parte de rede parte de

host

200.23.16.0/23

IP – Internet ProtocolEndereçamento (Classless)

05-11-2007 Universidade do Minho 27

Endereçamento sem classes� Considere-se o endereço IP 130.1.5.1

� é o endereço da estação 5.1 da rede 130.1.0.0 (classe B)

� Considere-se o endereço IP 130.1.5.1/24

� é o endereço da estação 1 da sub-rede 130.1.5.0

Rede Estação Máscara de subrede Rede Subrede Estação130.1 255.255.255.0 130.1 5 15.1

(máscara com multiplo de 8 bits)

interpretaçãooriginal por classe

interpretaçãosem classe (CIDR)

IP – Internet ProtocolEndereçamento (Classless)

05-11-2007 Universidade do Minho 28

130130 11 99 11

10 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 1

Subrede Estação

11111111.11111111.11111000.00000000

Máscara de Subnet 255.255.248.0

(máscara com 21 bits)

� Considere-se o endereço IP 130.1.9.1/21

� é o endereço da estação 257 da sub-rede 130.1.8.0

IP – Internet ProtocolEndereçamento (Classless)

05-11-2007 Universidade do Minho 29

Sub-redes (Subnetting)� permite melhor aproveitamento, organização e gestão do espaço de endereços

� introduz outro nível hierárquico para routing

internet localinternet local130.1.0.0130.1.0.0

internetinternetexteriorexterior

130.1.1.0130.1.1.0

130.1.2.0130.1.2.0 130.1.3.0130.1.3.0

130.1.254.0130.1.254.0

IP – Internet ProtocolEndereçamento (Subnetting)

05-11-2007 Universidade do Minho 30

Exercício Subnetting

No exemplo anterior, em vez do endereço classe B 130.1.0.0, seria possível usaro endereço 192.168.192.0? Justifique convenientemente.

internet localinternet local192.168.192.0192.168.192.0

internetinternetexteriorexterior

AA

BB CC

DD

Exercício

05-11-2007 Universidade do Minho 31

Exercícios

� Considere o endereço IP 196.34.201.137. Se a usarmos a máscara de rede 255.255.255.192, quais são os endereços de rede e de difusão.

� Considere o endereço IP da Classe B 140.140.0.0 e determine a máscara de rede, que com base neste endereço, cria um conjunto de subredes tal que cada uma delas pode ser usada para endereçar 2046 computadores. Quantas subredes pode criar?

� Considere uma empresa à qual foi atribuído o endereço de rede 220.168.49.0. Proponha um esquema de endereçamento que permita definir uma subrede com 50 computadores, três subredes com 20 computadores cada e uma pequena subrede para testes com 10 computadores. Indique as máscaras de rede e a gama de endereços válidos para cada subrede.

05-11-2007 Universidade do Minho 32

10.0.0.1

10.0.0.2

10.0.0.3

10.0.0.4

138.76.29.7

Rede local(ex: rede lá de casa)

10.0.0/24

Internet

Todos os datagramas nesta redecontêm, como habitualmente

endereços de origem e/ou de destinona gama disponível 10.0.0/24

Todos os datagramas que saiempara a Internet são forçados a usar o mesmo endereço de

origem: 138.76.29.7, e númerosde porta origem distintos

IP – Internet ProtocolReescrita de endereços (NAT: Network Address Translation)

05-11-2007 Universidade do Minho 33

IP – Internet ProtocolReescrita de endereços (NAT: Network Address Translation)

� Motivação para a rede local usar apenas um endereço Internet conhecido com acesso global:

� Não é preciso gastar uma gama de endereços ao ISP: basta um!

� Podem-se mudar os endereços da rede a qualquer momento sem ter de avisar o mundo inteiro desse facto

� Pode-se mudar de ISP sem mudar de endereços na rede local

� Os equipamentos da rede local não são directamente endereçáveis do exterior (protecção de segurança acrescida!)

05-11-2007 Universidade do Minho 34

Implementação: router NAT

� Datagramas que saiem: substituir o par (Endereço IP Origem, Nº Porta) de todos os datagramas por (Endereço IP NAT, Novo Nº de Porta)

. . . os sistemas no exterior vão naturalmente endereçar os datagramasde resposta para (Endereço IP NAT, Novo Nº de Porta)

� Guardar numa tabela NAT todas as trocas que foramfeitas de pares (Endereço IP Origem, Nº Porta) para (Endereço IP NAT, Novo Nº de Porta)

� Datagramas que chegam: substituir (Endereço IP, Porta) pelo endereço interno (Endereço IP Origem, Porta Origem) aramazenado na tabela NAT

IP – Internet ProtocolReescrita de endereços (NAT: Network Address Translation)

05-11-2007 Universidade do Minho 35

10.0.0.1

10.0.0.2

10.0.0.3

S: 10.0.0.1, 3345D: 128.119.40.186, 80

1

10.0.0.4

138.76.29.7

1: Sistema 10.0.0.1 envia datagrama para128.119.40, 80

NAT translation tableWAN side addr LAN side addr

138.76.29.7, 5001 10.0.0.1, 3345…… ……

S: 128.119.40.186, 80 D: 10.0.0.1, 3345

4

S: 138.76.29.7, 5001D: 128.119.40.186, 802

2: router NAT mudaendereço origem dodatagrama de10.0.0.1, 3345 para138.76.29.7, 5001,e actualiza tabela

S: 128.119.40.186, 80 D: 138.76.29.7, 5001 3

3: Chega respostaendereçada a:138.76.29.7, 5001

4: router NAT muda endereçode destino de 138.76.29.7, 5001 para10.0.0.1, 3345

IP – Internet ProtocolReescrita de endereços (NAT: Network Address Translation)

05-11-2007 Universidade do Minho 36

� Porta é um campo da camada de transporte com 16-bit

� 60,000 conexões simultâneas com um único endereço!

� NAT é muito controverso:

� Viola independência entre camadas:

� routers só devem poder mexer nos cabeçalhos de nível 3!

� Viola o conceito fim-a-fim

� Estado intermédio por conexão

� As aplicações (P2P e outras) são obrigadas a ter o NAT em consideração…

� Não é a forma certa de resolver a escassez de endereços (IPv6)

� Como endereçar servidores internos? (e-mail, web, etc)

IP – Internet ProtocolReescrita de endereços (NAT: Network Address Translation)

05-11-2007 Universidade do Minho 37

Hosts (parte de host):

� hard-coded em ficheiro de sistema p/ admin

� DHCP: Dynamic Host Configuration Protocol: obter endereço dinamicamente: “plug-and-play”

� host faz broadcast msg “DHCP discover”

� servidor DHCP responde c/ msg “DHCP offer”

� host pede endereço IP: msg “DHCP request”

� servidor DHCP envia endereço: msg “DHCP ack”

IP – Internet ProtocolEndereçamento (Alocação dinâmica)

05-11-2007 Universidade do Minho 38

DHCP request

IP – Internet ProtocolEndereçamento (Alocação dinâmica)

Servidor DHCP: 223.1.2.5 Cliente

time

DHCP discover

src : 0.0.0.0, 68 dest.: 255.255.255.255,67yiaddr: 0.0.0.0transaction ID: 654

DHCP offersrc: 223.1.2.5, 67 dest: 255.255.255.255, 68yiaddr: 223.1.2.4transaction ID: 654Lifetime: 3600 secs

src: 0.0.0.0, 68 dest:: 255.255.255.255, 67yiaddr: 223.1.2.4transaction ID: 655Lifetime: 3600 secs

DHCP ACK

src: 223.1.2.5, 67 dest: 255.255.255.255, 68yiaddrr: 223.1.2.4transaction ID: 655Lifetime: 3600 secs

05-11-2007 Universidade do Minho 39

IP – Internet ProtocolEndereçamento (Alocação dinâmica)

� O servidor DHCP deve estar na mesma rede que o cliente. Se não estiver, é necessário um agente DHCP-Relay (tipicamente um router) que sirva de intermediário…

� Um cliente pode receber ofertas de mais do que um servidor DHCP,mas só pode escolher uma delas; a mensagem DHCP Request éenviada de novo para o endereço de difusão para todos saberem qual foi a oferta escolhida e anularem as reservas que fizeram

� A mensagem de ACK é a única enviada por unicast, pois o mapeamento entre endereço IP e endereço MAC já foi efectivado;

� Uma curiosidade: O DHCP é a terceira geração de protocolos de configuração de sistemas; Pode ser visto como uma extensão ao BOOTP (protocolo de arranque para sistemas sem disco) que por sua vez deriva do protocolo RARP (Reverse Address Resolution Protocol)

05-11-2007 Universidade do Minho 40

Network (parte de rede):

� Alocado via espaço de endereçamento do ISP

Bloco do ISP 11001000 00010111 0001 0000 00000000 200.23.16.0/20

Organização 0 11001000 00010111 0001000 0 00000000 200.23.16.0/23

Organização 1 11001000 00010111 0001001 0 00000000 200.23.18.0/23

Organização 2 11001000 00010111 0001010 0 00000000 200.23.20.0/23 ... ….. …. ….

Organização 7 11001000 00010111 0001111 0 00000000 200.23.30.0/23

IP – Internet ProtocolEndereçamento (supernetting)

05-11-2007 Universidade do Minho 41

“Qualquer endereço começado por

200.23.16.0/20”

200.23.16.0/23

200.23.18.0/23

200.23.30.0/23

ISP X

Organização 0

Organização 7Internet

Organização 1

ISPs-R-UsComeçado por

199.31.0.0/16”

200.23.20.0/23

Organização 2

.

.

.

.

..

Endereçamento Hierárquico permite anúncios eficientes de informação de encaminhamento:

IP – Internet ProtocolEndereçamento hierárquico – agregação de rotas

05-11-2007 Universidade do Minho 42

ISPs-R-Us tem uma rota mais específica para a Organização 1

200.23.16.0/23

200.23.18.0/23

200.23.30.0/23

ISP X

Organização 0

Organização 7Internet

Organização 1

ISPs-R-UsComeçado por

199.31.0.0/16ou

200.23.18.0/23

200.23.20.0/23

Organização 2

.

.

.

.

.

.

“Qualquer endereço começado por

200.23.16.0/20”

IP – Internet ProtocolEndereçamento hierárquico – rotas mais específicas

05-11-2007 Universidade do Minho 43

Datagrama IP:

223.1.1.1

223.1.1.2

223.1.1.3

223.1.1.4 223.1.2.9

223.1.2.2

223.1.2.1

223.1.3.2223.1.3.1

223.1.3.27

A

B

E

miscfields

sourceIP addr

destIP addr data

� O datagrama não é modificado, desde a origem até ao destino

Dest. Net. next router #hops

223.1.1 1223.1.2 223.1.1.4 2223.1.3 223.1.1.4 2

Tabela encaminhamento de A

Fonte: Computer Networking: A Top-Down ApproachFeaturing the Internet, J. Kurose, Addison-Wesley, 2001

IP – Internet ProtocolEncaminhamento – da origem ao destino (I)

05-11-2007 Universidade do Minho 44

223.1.1.1

223.1.1.2

223.1.1.3

223.1.1.4 223.1.2.9

223.1.2.2

223.1.2.1

223.1.3.2223.1.3.1

223.1.3.27

A

B

E

Partindo de A, datagrama IP endereçado a B:

� Buscar endereço de rede de B

� B está na mesma rede de A

� datagrama directamente para B

� B e A estão ligados directamente

Dest. Net. next router #hops

223.1.1 1223.1.2 223.1.1.4 2223.1.3 223.1.1.4 2

miscfields 223.1.1.1 223.1.1.3 data

Fonte: Computer Networking: A Top-Down ApproachFeaturing the Internet, J. Kurose, Addison-Wesley, 2001

IP – Internet ProtocolEncaminhamento – da origem ao destino (II)

05-11-2007 Universidade do Minho 45

223.1.1.1

223.1.1.2

223.1.1.3

223.1.1.4 223.1.2.9

223.1.2.2

223.1.2.1

223.1.3.2223.1.3.1

223.1.3.27

A

B

E

Dest. Net. next router #hops

223.1.1 1223.1.2 223.1.1.4 2223.1.3 223.1.1.4 2

Partindo de A, destino E:

� Busca endereço de rede de E

� E está numa rede diferente

� A, E sem ligação directa

� Tabela encaminhamento: próximo nó é223.1.1.4

� envia datagrama para router 223.1.1.4

� datagrama chega a 223.1.1.4

� ….

miscfields 223.1.1.1 223.1.2.2 data

Fonte: Computer Networking: A Top-Down ApproachFeaturing the Internet, J. Kurose, Addison-Wesley, 2001

IP – Internet ProtocolEncaminhamento – da origem ao destino (III)

05-11-2007 Universidade do Minho 46

223.1.1.1

223.1.1.2

223.1.1.3

223.1.1.4 223.1.2.9

223.1.2.2

223.1.2.1

223.1.3.2223.1.3.1

223.1.3.27

A

B

E

Chega ao nó 223.1.4, com destino 223.1.2.2

� Busca endereço de rede de E

� E está na mesma rede da interface 223.1.2.9

� Encaminhador e nó E ligados directamente

� envia datagrama para 223.1.2.2 ( via interface 223.1.2.9)

miscfields 223.1.1.1 223.1.2.2 data network router #hops interface

223.1.1 - 1 223.1.1.4223.1.2 - 1 223.1.2.9

223.1.3 - 1 223.1.3.27

Dest. next

Fonte: Computer Networking: A Top-Down ApproachFeaturing the Internet, J. Kurose, Addison-Wesley, 2001

IP – Internet ProtocolEncaminhamento – da origem ao destino (IV)

05-11-2007 Universidade do Minho 47

Construa a tabela de encaminhamento de cada um dos encaminhadores (A, B e C) da rede ilustrada.

internet localinternet local130.1.0.0130.1.0.0

internetinternetexteriorexterior

AA

BB CC

Exercício

05-11-2007 Universidade do Minho 48

Observe e interprete a tabela de encaminhamento do seu sistema.

Usar o comando “netstat –n –r “ em qualquer sistema operativo.

Exercício

05-11-2007 Universidade do Minho 49

TCP/IPARP (Protocolo de Resolução de Endereços)

� ARP (Address Resolution Protocol) mapeia um endereço de rede no endereço MAC (48 bytes) que lhe corresponde.

� RFC 826: An Ethernet Address Resolution Protocol

� Operação:

� local à LAN

� não usa encapsulamento IP

� o EtherType ARP é: 0x0806

� ARP-PDUs: ARP Request e ARP Reply

05-11-2007 Universidade do Minho 50

DA SA TF CRCData

Endereço Protocolar da estação de destino (target)

Endereço de Hardware da estação de destino (target)

Endereço Protocolar da estação de origem (sender)

Endereço de Hardware da estação de origem (sender)

Operação

Comp do endereço protocolarComp do endereço hardware

Tipo de protocolo

Tipo de hardware

DA - Destination Address SA - Source Address T F - Type Field

2 bytes

2

1+1

2

6

4

6

4

28 bytes

TCP/IPARP (Protocolo de Resolução de Endereços)

05-11-2007 Universidade do Minho 51

� ARP Request é enviado em broadcast

� ARP Reply é enviado em unicast à estação requerente, que mantém temporariamente a resolução na cache de ARP

1.ARP Request

3.Aqui está o meuEndereço MAC

129.1.1.1 B C 129.1.1.4Eunão

Eunão

2.Sou eu2.ARP RequestIgnorado

2.ARP RequestIgnorado

4.ARP ReplyAceite

1.Quem tem o endereço MACda estação 129.1.1.4?

[Naugle98]

3.ARPReply

TCP/IPARP (Protocolo de Resolução de Endereços)

05-11-2007 Universidade do Minho 52

� Protocolo usado por sistemas terminais e encaminhadores para trocarem informação do nível de rede� reportar erros: nó, rede, porta

ou protocolo inatingíveis,� echo request/reply (utilizado

pelo ping)� TTL expired (usado pelo

traceroute)� Camada de rede “sobre” o IP:

� Mensagens ICMP encapsuladas em datagramas IP

� Mensagem ICMP: tipo, código, os primeiros 8 primeiros bytes do datagrama IP responsável pelo erro

Type Code description0 0 echo reply (ping)3 0 dest. network unreachable3 1 dest host unreachable3 2 dest protocol unreachable3 3 dest port unreachable3 6 dest network unknown3 7 dest host unknown4 0 source quench (congestion

control - not used)8 0 echo request (ping)9 0 route advertisement10 0 router discovery11 0 TTL expired12 0 bad IP header

TCP/IPICMP (Internet Control Message Protocol )

05-11-2007 Universidade do Minho 53

DA SA TF CRCIP Header Mensagem ICMP

Tipo (8) Código (8)

Verificação de paridade (16)

Número de sequência

Enventuais dados ICMP

TCP/IPICMP (Internet Control Message Protocol )

05-11-2007 Universidade do Minho 54

192.1.1.1 192.1.1.2

192.1.2.1192.1.2.2

PING 192.1.1.2

Echo Request

Echo Reply

TCP/IPICMP (Internet Control Message Protocol )

05-11-2007 Universidade do Minho 55

Alguns comandos:

% ifconfig –a

% arp –a

% ping <host>

% netstat –n –r

Exercício exemplo:

Começar por ver a tabela de ARP e a tabela de routing…

Activar o Ethereal e pô-lo a capturar todos os pacotes…

Fazer ping para um sistema da mesma rede ainda não contactado…

Observar a troca de mensagens ARP e o resultado na tabela de ARP

Exercício

05-11-2007 Universidade do Minho 56

Versões IP

� IP v 1-3 Definidas e substituídas

� IP v4 – Versão actual

� IP v5 – streams protocol (não usado, diferentes objectivos)

� IP v6 – Desenhado para substituir o IPv4

� Durante o desenvolvimento designava-se por IPng (Next Generation)

05-11-2007 Universidade do Minho 57

� Motivação inicial: Espaço de endereços de 32 bits completamente alocado em 2008

� Motivação Adicional:

� Formato do cabeçalho contribui para o aumento da velocidade de processamento e re-envio dos pacotes.

� Alterações no formato do cabeçalho para facilitar a implementação de QoS

� Um novo tipo de endereço: endereço “anycast”, que possibilita o envio de informação para um nó dentro de um grupo

� Formato do datagrama

� Cabeçalho com o tamanho fixo (40 bytes)

� Não é permitida a fragmentação de pacotes (excepto na origem)

IPv6

05-11-2007 Universidade do Minho 58

0 bits 31

Ver IHL Total Length

Identifier Flags Fragment Offset

32 bit Source Address

32 bit Destination Address

4 8 2416

Service Type

Options and Padding

Time to Live Header ChecksumProtocol

RemovedChanged

Cabeçalho IPv4 20 bytes + opções : 13 campos, incluindo 3 flag bits

05-11-2007 Universidade do Minho 59

0 31

Version Class Flow Label

Payload Length Next Header Hop Limit

128 bit Source Address

128 bit Destination Address

4 12 2416

Cabeçalho IPv640 bytes, 8 campos

05-11-2007 Universidade do Minho 60

� Version

� 4 bits

� Priority/Class� 8 bits

� Espírito semelhante ao do TOS no IPv4

� Permite atribuir diferentes prioridades a cada datagrama

� Flow Label� 24 bits

� Identifica um fluxo individual de tráfego que requer o mesmo tratamento da rede.

� Pode ser usado com o RSVP (protocolo de reserva de recursos a estudar mais tarde)

Novos Campos do IPv6

05-11-2007 Universidade do Minho 61

Campos que se mantêm

� Payload length

� Substitui o total length; tamanho da “carga” + cabeçalhos opcionais;

� Next Header

� Semelhante ao campo Protocol do IPv4 (usado para identificar o protocolo de Transporte) mas também protocolos de nível 3

� As opções do IPv6 são também tratadas com este campo, identificando cabeçalhos adicionais…

� Hop Limit

� Semelhante ao campo Time-To-Live do IPv4, mas agora definitivamente encarado como um número limite de saltos…

05-11-2007 Universidade do Minho 62

Outras diferenças entre o IPv6 e o IPv4

� Checksum: retirado inteiramente para reduzir o tempo de processamento em cada nó

� Opções: são permitidas mas fora do cabeçalho

� ICMPv6: uma nova versão do protocolo ICMP

� Novos tipos de mensagens, por exemplo. “Packet Too Big”

� multicast group management functions

� Procura agrupar as funções que existiam no ICMPv4 (informação e erro) com as de resolução de endereços (ARP no IPv4) e a gestão de grupos multicast (IGMP no IPv4); é também usado no processo de auto-configuração stateless;

05-11-2007 Universidade do Minho 63

Opções do IPv6

� Extensões ao cabeçalho� 0 - hop-by-hop Option Header

� 43 - Routing Header

� 44 - Fragmentation Header

� 51 - Authentication Header

� 59 - No Next Header

� 60 - Destination Options Header

05-11-2007 Universidade do Minho 64

Opções do IPv6

� Extensões: Hop-by-Hop Option Header� Next header

� Header extension length

� Options

� Jumbo payload

� Pacotes com tamanho superior a 216 = 65,535 bytes (acima de 4 biliões!)

� Router alert

� Avisa o router que os pacotes lhe interessam, chamando a sua atenção para eles; os que não incluem esta opção são simplesmente reenviados;

� Inclui suporte para reserva de recursos (RSVP)

05-11-2007 Universidade do Minho 65

Opções do IPv6

� Extensões: Fragment Header� A fragmentação só é admitida no sistema origem!

� Não ocorre fragmentação nos routers intermédios

� O sistema origem deve de executar procedimentos de descoberta do percurso para encontrar o MTU (Maximum transfer unit) mínimo do percurso e fragmentar os pacotes de acordo com esse MTU

� O MTU mínimo por defeito é 1280 octetos

� Campos:

Next Header(8bits), reserved(8bits), Fragment Offset(13bits), Reserved(2bit), More Flag(1bit), Identification(32bits)

05-11-2007 Universidade do Minho 66

Opções do IPv6

� Extensões: Routing Header� Permite encaminhamento determinado pelo origem, tal como

opção semelhante existente no IPv4;

� Cabeçalho inclui lista de routers intermédios a serem visitados no percurso;

� Campos:

Next Header(8bits), Header Extension Length(8bits), RoutingType(8bits), Segments Left(8bits)

05-11-2007 Universidade do Minho 67

IPv6 HeaderNext = TCP

TCP Header

IPv6 HeaderNext = Routing

TCP HeaderRouting HdrNext = TCP

IPv6 HeaderNext = Security

TCP HeaderSecurity HdrNext = Frag

Application Data

Application Data

Fragment HdrNext = TCP

DataFrag

Extensões ao cabeçalho IPv6

05-11-2007 Universidade do Minho 68

IPv6: melhor desempenho

� Tamanho fixo do cabeçalho

� Cabeçalho com menor número de campos e sem checksum

� Permite um processamento mais rápido dos pacotes

� Controlo de Erros poderá ser efectuado pelas camadas superiores

� Processamento Eficiente das Opções

� Os diferentes campos só são processados se a opção estiver presente

� A maior parte das opções só são processadas no nó destino

� Não há fragmentação no interior da rede

05-11-2007 Universidade do Minho 69

IPv6 – Modelo de Endereçamento

Link-LocalSite-LocalGlobal

� Os endereços são atribuídos às interfaces de rede

� À semelhança do que acontece no IPv4

� Uma interface pode ter múltiplos endereços

� Os endereços têm um âmbito

� Link Local

� Site Local

� Global

� Os endereços têm um tempo de vida

05-11-2007 Universidade do Minho 70

Endereços IPv6

� 128 bits = 6.65 x 1023 endereços de rede para cada m2 da superfície da Terra.

� Formato = 8 partes de 16 bits que pode ser abreviado

1) formato normal

FEDC:BA98:7654:3210:FEDC:BA98:7654:3210

2) Os zeros à esquerda não são necessários

1080:0:0:0:8:800:200C:417A

3) 16 bits consecutivos em zero são abreviados com ::

Seguindo esta regra, uma única sequência de vários blocos de 16 a zero pode ser abreviada:

1080::8:800:200C:417A

05-11-2007 Universidade do Minho 71

Endereços

� Endereços Flexíveis

� Constituídos por duas partes de tamanho variável: o prefixo e a identificação da interface

� Exemplos de representação de prefixos:

� 4000::/3 provider-based unicast address

� 5A00::/8 atribuído pela InterNIC

� 5A01:0200::/24 fornecedor de serviço 0x0102

� 5A01:0203:0400::/40 tipo de assinante 0x0340

� 5A01:0203:0405::/48 assinante 0x05

� 5A01:0203:0405:0607:0809::/80 sub-rede 0x06070809

05-11-2007 Universidade do Minho 72

Endereços IPv6

� Para evitar uma explosão nas tabelas de encaminhamento éusado endereçamento hierárquico

� Os bits mais significativos representam o nível mais alto da hierarquia.

� Exemplo: � 3 bits = formato do prefixo

� 5 bits = identificação da autoridade de registo

� 16 bits = identificador do fornecedor de serviço

� 16 bits = tipo de assinante

� 8 bits = identificador do assinante

� 32 bits = identificador da subrede

� bits restantes definem um sistema particular na subrede

05-11-2007 Universidade do Minho 73

Endereços Especiais

0::/8 0000 0000 reserved

100::/8 0000 0001 unassigned

200::/7 0000 001 ISO network address

400::/7 0000 010 NOVEL

4000::/3 010 provider based unicast

8000::/3 100 geografic based unicast

FE80::/10 1111 1110 10 Local link address

FEC0::/10 1111 1110 11 Site local address

FF00::/8 1111 1111 Multicast address

Loopback 0::1

05-11-2007 Universidade do Minho 74

Endereços Especiais

� Previstos dois tipos especiais de endereços IPv6 para suportar a transição de IPv4 para IPv6

� IPv4 - compatível� pode ser convertido de e para o formato IPv4

� formados adicionando-se 96 bits em zero ao endereço de 32 bits

� Exemplo: IPv4 = 1.2.3.4 IPv6= ::0102:0304 (ou ::1.2.3.4)

� IPv4 - mapeado� indicam sistemas que não suportam IPv6

� usado para que sistemas IPv6 comuniquem com sistemas que só usam IPv4.

� Adiciona-se 80 bits em zero, 16 bits em um aos 32 originais

� Exemplo: IPv4 = 4.3.2.1 IPv6 = ::FFFF:0403:0201 (ou ::FFFF:4.3.2.1)

05-11-2007 Universidade do Minho 75

� Auto-configuração (plug-and-play).

� O primeiro endereço a ser obtido é o endereço de local link.

� Tem um formato genérico do tipo FE80:0:0:0:0:xxxx:xxxx:xxxx;

� A parte da identificação da interface é obtida com base no seu endereço de nível 2

� Este endereço permite uma comunicação imediata com todos os sistemas existentes na rede local

� A partir daí e através de mensagens ICMPv6 trocadas entre o sistema terminal e o encaminhador da rede local são obtidos os outros endereços.

� O encaminhador anuncia o prefixo que é concatenado com o endereço de nível 2 de forma a obter-se um endereço global único.

� Outra alternativa passa pela utilização do DHCP (autoconfiguração statefull)

Atribuição dos Endereços em IPv6

05-11-2007 Universidade do Minho 76

� Passos da auto-configuração stateless:1. Construir um endereço único de âmbito Link-Local para o interface:

� Os primeiros 10 bits são “1111 1110 10”; seguem-se 54 zeros;

� Os últimos 64 bits são inventados ou deduzidos do MAC Address, inserindo FF-FE no meio do endereço MAC;

Mac: 39-A7-94-07-CB-D0 Parte local: 3BA7:94FF:FE07:CBD0

O 7º bit do 1º byte é também mudado para 1 (bit universal/local)

2. Testar se o endereço é único:

� Enviar uma mensagem ICMPv6 Neighbor-Discovery com endereço origem :: e destino o endereço criado, para verificar se obtém resposta; Se o endereço estiver atribuído recebe Neighbor-Advertisement;

3. Assumir o endereço Link-Local, caso o teste passe;

Atribuição dos Endereços em IPv6

05-11-2007 Universidade do Minho 77

� Passos da auto-configuração stateless:

4. Contactar o router local com mensagem ICMPv6 Router-Discovery:

� Os router anunciam-se periodicamente com Router-Advertisement, mas essas mensagens podem ser solicitadas com pedido explícito Router-Discovery

5. Seguir as recomendações do router local:

� Endereço do servidor DHCPv6 a contactar para prosseguir configuração statefull

� Envio de um conjunto de prefixos a juntar à parte local do endereço formando novos endereços IPv6

6. Configuração de endereços de âmbito Site-Local e Global com base nos endereços fornecidos

Atribuição dos Endereços em IPv6

05-11-2007 Universidade do Minho 78

� Maior Espaço de Endereçamento

� Um datagrama mais eficiente e extensível

� Encaminhamento eficiente através da agregação de rotas

� Auto-configuração

� Segurança

Vantagens do IPv6

05-11-2007 Universidade do Minho 79

Transição do IPv4 para o IPv6

� Nem todos os encaminhadores podem ser actualizados simultaneamente

� sem “flag days” (será em 2010?)

� De que forma será possível ter a rede a funcionar simultaneamente com encaminhadores IPv6 e IPv4?

� Duas abordagens possíveis

� Stack Dupla: alguns encaminhadores implementam as duas stackse podem converter o formato IPv4 em IPv6 e vice-versa

� Túneis: Entre encaminhadores IPv4, o datagrama IPv6 étransportado na parte dos dados do datagrama IPv4

05-11-2007 Universidade do Minho 80

Stack Dupla

Fonte: Computer Networking: A Top-DownApproach Featuring the Internet, J. Kurose, Addison-Wesley, 2001

05-11-2007 Universidade do Minho 81

Túneis

IPv6 “encapsulado” no IPv4 sempre que necessário

Fonte: Computer Networking: A Top-DownApproach Featuring the Internet, J. Kurose, Addison-Wesley, 2001

05-11-2007 Universidade do Minho 82

Exercício

� Considere a topologia apresentada na figura abaixo.

� Sem se preocupar com os endereços de interligação, proponha um esquema que lhe permita endereçar os computadores das redes locais associadas aos diferentes encaminhadores a partir da gama 193.145.21.0/25.

� Usando uma gama de endereços privados (por exemplo: a gama

192.168.0.0/16) proponha um esquema para os endereços de interligação.

A B

CD

70

computadores 10

computadores

10

computadores

10

computadores