Baixe o app para aproveitar ainda mais
Prévia do material em texto
Comunicação de Dados e Redes de Computadores Aula 7: Camada de redes – divisão de sub-redes, ARP e IPv6 Apresentação Na aula anterior, iniciamos o estudo da camada de rede vendo o protocolo IP e o endereçamento IP. Porém, o que acontece quando você tem uma rede classe C e precisa dividi-la para atender às necessidades internas? Nesta aula aprenderemos como fazer essa divisão. Veremos, ainda, como fazer o mapeamento entre os endereços MAC e IP e conheceremos os endereços IPv6. Objetivos Dividir redes IPv4; Descrever o funcionamento do protocolo ARP; Descrever o endereçamento IPv6. Atenção! Aqui existe uma videoaula, acesso pelo conteúdo online Divisão de sub-redes Na aula passada, foi dito que, com o endereçamento classless, podemos adequar o tamanho de uma rede à necessidade real por meio do uso de sub-redes. Vejamos um exemplo passo a passo como podemos fazer isso. Observe a �gura 1, a seguir. Nela podemos ver duas redes distintas: 200.1.1.0, à esquerda. 200.2.2.0, à direta. Essa mesma topologia poderia ser endereçada como uma única rede classe C? Figura 1 - Topologia de Exemplo (Fonte: Prof. Antonio Sergio Alves Cavalcante (Estácio, s/d).) O endereço classe C tem 256 endereços possíveis, ou seja, 2 elevado a 8 (2 ), que é a quantidade de bits disponíveis de endereços, de 0 a 255. Em matemática bem simplista: 8 256 endereços 2 subconjuntos 128 endereços cada Como o subconjunto de uma rede é uma sub-rede, o endereçamento da topologia �caria da seguinte forma (�gura 2): A rede 200.1.1.0 (à esquerda) seria dividida em duas sub-redes. Os endereços de 0 a 127 farão parte da primeira sub-rede (à esquerda). Os endereços de 128 a 255 farão parte da segunda sub-rede (à direita). Figura 2 - Topologia após a divisão das sub-redes (Fonte: Prof. Antonio Sergio Alves Cavalcante (Estácio, s/d).) O problema que se apresenta então é qual máscara de sub-rede devemos utilizar para fazer essa divisão. Observe a �gura 3, que apresenta os dois conjuntos em que foi dividida a rede 200.1.1.0. Conjunto ou sub-rede de 0 a 127 200 11001000 1 00000001 1 00000001 0 00000000 End. da sub-rede 0 11111111 255 11111111 255 11111111 255 10000000 128 Máscara de sub-rede binária Máscara de sub-rede decimal 200 11001000 1 00000001 1 00000001 127 01111111 End. de Broadcast da sub-rede 0 11111111 255 11111111 255 11111111 255 10000000 128 Máscara de sub-rede binária Máscara de sub-rede decimal Conjunto ou sub-rede de 128 a 255 200 11001000 11111111 255 1 00000001 11111111 255 1 00000001 11111111 255 128 10000000 10000000 128 End. da sub-rede 1 Máscara de sub-rede binária Máscara de sub-rede decimal 200 11001000 11111111 255 1 00000001 11111111 255 1 00000001 11111111 255 255 11111111 10000000 128 End. de Broadcast da sub-rede 1 Máscara de sub-rede binária Máscara de sub-rede decimal Figura 3 – Tabela com a divisão das sub-redes. (Fonte: Prof. Antonio Sergio Alves Cavalcante (Estácio, s/d).) Figura 4 – Tabela-verdade do “and”. (Fonte: Prof. Antonio Sergio Alves Cavalcante (Estácio, s/d).) Atenção Sempre que �zermos a divisão da rede em sub-rede, utilizaremos bits de host para representar a sub-rede, nunca bits do ID de rede. Se o ID de rede for alterado, o endereço deixará de pertencer à rede. Para indicar a sub-rede, devemos observar a tabela da �gura 2 e veri�car que o bit de maior ordem de host foi ligado na máscara de sub-rede, originando duas sub-redes: Sub-rede 0: o último octeto varia de 0 a 127 e, para isso, o bit mais signi�cativo do host permaneceu zerado para não ocorrerem valores superiores a 127. Sub-rede 1: o último octeto varia de 128 a 255 e, para isso, o bit mais signi�cativo do host permaneceu ligado para não ocorrerem valores inferiores a 128. Logo, esse bit de maior ordem dos bits de host pode representar uma das sub-redes quando seu valor for 0 e a outra quando seu valor for 1. Pensada a solução, a implementação �cou por conta da máscara de sub-rede, que tem o objetivo de deixar zerados os bits de host para assim extrair o endereço de rede e ou sub-rede. Resumindo, visa mascarar qualquer valor que esteja no host, deixando todos os bits de host zerados, o que equivale ao endereço de rede. Para entender como isso funciona, devemos, primeiro, ver como a operação é realizada em binário. A operação entre o endereço IP e a máscara de sub-rede é realizada bit a bit, utilizando-se a operação lógica “and”, na qual o bit 0 equivale a falso e o bit 1, a verdadeiro (�gura 4). Tabela-verdade para o and binário (uma premissa e outra têm que ser verdadeiras): Tabela-verdade V and V = V V and F = F F and V = F F and F = F Tabela-verdade V=1 e F=0 1 and 1 = 1 1 and 0 = 0 0 and 1 = 0 0 and 0 = 0 Dessa forma, ao fazemos a operação entre o endereço IP da rede 200.1.1.0 e a máscara, obtemos a máscara /25 (�gura 5). Como descobrimos isso? Note que, com o primeiro bit do último octeto setado como 1, todos os valores do último octeto do endereço entre 0 (00000000) e 127 (01111111) resolveram a rede como 0, pois somente quando o primeiro bit do octeto for 1 decimal entre 128 (10000000) e 255(11111111), o endereço de rede mudará e terá como resultado 128. Sub-rede 0 host 1 000000001 = 1 decimal 200 1 1 1 11001000 11111111 00000001 11111111 00000001 11111111 0 1 0000001 0000000 11001000 00000001 00000001 0 0000000 200 1 1 0 Sub-rede 1 host 1 10000001 = 129 decimal 200 1 1 1 11001000 11111111 00000001 11111111 00000001 11111111 1 1 0000001 0000000 11001000 00000001 00000001 1 0000000 200 1 1 128 Figura 5 – Operação do prefixo de rede com a máscara. (Fonte: Prof. Antonio Sergio Alves Cavalcante (Estácio, s/d).) Para transformar a máscara de binária para decimal, basta dividi-la em octetos e calcular seu valor em decimal (�gura 6), resultando em 255.255.255.128 ou /25. Repare que, em binários, são 25 bits um a partir da esquerda. Figura 6 – Máscara em decimal. (Fonte: Prof. Antonio Sergio Alves Cavalcante (Estácio, s/d).) Para consolidar o conhecimento, vamos a mais um exemplo. Considere, novamente, a topologia da �gura 1. Agora, vamos dividir a rede 200.2.2.0 em quatro sub-redes. Quanto ao endereço 200.2.2.0, pode-se a�rmar que: Trata-se de um endereço da classe C. Sua composição normal é de 24 bits de rede e 8 bits de host (o ID de rede não pode ser modi�cado). Essa rede é uma classe C, e os 8 bits �nais são de host; se não for dividida em sub-redes, a máscara-padrão do endereço dessa classe será: 255. 255. 255.0. Vamos a um passo a passo para dividir a rede: 1 Saber quantos bits nos pertencem. Os oito bits de host. 2 Saber de quantos bits precisamos para obtermos quatro variações. 2 = 2, 2 = 4 (o expoente é o número de bits necessário para a quantidade de variações).1 2 Exemplos 2.1. Para dividir em dez sub-redes: 2 =2, 2 = 4, 2 = 8, 2 = 16 (para endereçar dez sub-redes, seriam necessários no mínimo quatro bits). 2.2. Para dividir em 32 sub-redes: 2 = 32. 1 2 3 4 5 3 Qual seria a nova máscara de sub-rede? A �gura 7 mostra o resultado. Figura 7 – Máscara para divisão em quatro sub-redes. (Fonte: Prof. Antonio Sergio Alves Cavalcante (Estácio, s/d).) 4 Quais as sub-redes possíveis (00, 01, 10 e 11)? O raciocínio é realizado considerando os dois bits transformados de host que foram ligados para representar as quatro sub- redes (�gura 8). Figura 8 – Divisão das sub-redes. (Fonte: Prof. Antonio Sergio Alves Cavalcante (Estácio, s/d).) A �gura 9 mostra uma possível topologia obtida com esta divisão. Figura 9 – Topologia com a divisão em quatro sub-redes. (Fonte: Prof. Antonio Sergio Alves Cavalcante (Estácio, s/d).) Em resumo, não importa o valor em decimal do octeto, desde que ele represente o binário que se quer informar ao computador (host), o 4º octeto: 00000000 sub-rede 0 (00), host zero; o 4º octeto em decimal 0. 01000000 sub-rede 1 (01), host zero; o 4º octeto em decimal 64. 10000000sub-rede 2 (10), host zero; o 4º octeto em decimal 128. 11000000 sub-rede 3 (11), host zero; o 4º octeto em decimal 192. Atenção Para ser o endereço da rede, todos os bits de host têm que estar zerados: 000000. Como identi�car o endereço de broadcast da sub-rede? É semelhante ao de rede, quando todos os bits de hosts estiverem ligados “1” (�gura 10). Figura 10 – Definição dos endereços de broadcast. (Fonte: Prof. Antonio Sergio Alves Cavalcante (Estácio, s/d).) Sub-rede 200.2.2.0 00000000 200.2.2.64 01000000 200.2.2.128 10000000 200.2.2.192 11000000 SBroadcast sub-rede 00111111 200.2.2.63 01111111 200.2.2.127 10111111 200.2.2.191 11111111 200.2.2.255 Finalmente, os endereços que podemos utilizar para host vão do primeiro após o endereço de rede até o último antes do broadcast. Por exemplo, no caso da rede 200.2.2.192 da �gura 4.22 com broadcast 200.2.2.255, os IP de hosts vão de 200.2.2.193 até 200.2.2.254 em um total de 62 endereços de host, o que, em outras palavras, signi�ca que a rede poderá ter até 62 máquinas. Endereços MAC e IP Conforme já vimos, há dois endereços principais atribuídos a um dispositivo de host: Endereço físico (o endereço MAC). Endereço lógico (o endereço IP). Tanto o endereço MAC como o IP trabalham juntos para identi�car um dispositivo na rede. O processo de usar os endereços MAC e IP para localizar um computador é semelhante ao processo de usar o nome e o endereço de uma pessoa para enviar uma carta. Exemplo O nome de uma pessoa geralmente não muda. O endereço de uma pessoa, por outro lado, refere-se ao local onde mora e pode ser alterado. Assim como o nome de uma pessoa, o endereço MAC de um host não muda; ele é atribuído �sicamente à placa de rede do host e é conhecido como endereço físico. O endereço físico permanece o mesmo, independentemente de onde o host está colocado. O endereço IP é semelhante ao endereço de uma pessoa. Esse endereço baseia-se no local em que o host realmente se encontra. Por meio desse endereço, é possível que um quadro determine o local a partir do qual outro deve ser enviado. O endereço IP, ou o endereço de rede, é conhecido como um endereço lógico por ser atribuído logicamente. Ele é atribuído a cada host por um administrador de rede com base na rede local a que o host está conectado. Atenção Os endereços MAC físico e IP lógico são necessários para que um computador se comunique em uma rede hierárquica, assim como o nome e o endereço de uma pessoa são necessários para enviar uma carta. Na próxima aula, veremos como o mapeamento entre o endereço IP e o endereço MAC é realizado. Atenção! Aqui existe uma videoaula, acesso pelo conteúdo online Address Resolution Protocol – ARP (Protocolo para Resolução de Endereços) Cada nó em uma rede IP tem um endereço MAC e um endereço IP. Para enviar dados, o nó deve usar seus próprios endereços MAC e IP nos campos de origem e deve fornecer um endereço MAC e um endereço IP para o destino. Enquanto o endereço IP de destino será fornecido por uma camada superior, o nó emissor precisará de uma maneira de localizar o endereço MAC de destino para um determinado link de ethernet. Essa é a �nalidade do ARP. O ARP baseia-se em determinados tipos de mensagens de broadcast ethernet e mensagens unicast ethernet, chamadas solicitações ARP e respostas ARP. Para que um quadro seja colocado no meio físico da LAN, ele deve ter um endereço MAC de destino. Quando um pacote é enviado à camada de enlace para ser encapsulado em um quadro, o nó consulta uma tabela em sua memória para encontrar o endereço da camada de enlace que é mapeado ao endereço IPv4 de destino. Essa tabela é chamada de tabela ARP ou ARP CACHE (�gura 11). A tabela ARP é armazenada na RAM do dispositivo. Figura 11 – ARP cache. (Fonte: Sidney Nicolau Venturi Filho (Estácio, s/d).) Cada entrada, ou linha, da tabela ARP tem um par de valores: um endereço IP e um endereço MAC. Chamamos o relacionamento entre os dois valores de mapa — isso signi�ca simplesmente que você pode localizar um endereço IP na tabela e descobrir o endereço MAC correspondente. A tabela ARP gera a cache de mapeamento para os dispositivos na rede local. Para começar o processo, um nó de transmissão tenta localizar, na tabela ARP, o endereço MAC mapeado a um destino IPv4. Se esse mapa estiver em cache na tabela, o nó usa o endereço MAC como o MAC de destino no quadro que encapsula o pacote IPv4. O quadro é, então, codi�cado no meio físico de rede. Quando o ARP recebe uma solicitação para mapear um endereço IPv4 a um endereço MAC, ele procura um mapa em cache na sua tabela ARP. Se não encontrar uma entrada, o encapsulamento do pacote de IPv4 falhará e os processos de camada 2 noti�carão o ARP de que precisam de um mapa (�gura 12). Figura 12 – Endereço não mapeado no cache. (Fonte: Sidney Nicolau Venturi Filho (Estácio, s/d).) Os processos ARP enviam, então, um pacote de solicitação ARP para descobrir o endereço MAC do dispositivo de destino na rede local. Essa solicitação denomina-se ARP Request (�gura 13). Atenção O ARP Request é enviado tendo como endereço MAC de destino FF:FF:FF:FF:FF:FF, que corresponde ao MAC de broadcast, o que faz com que todos os computadores do segmento de rede aceitem o quadro. Figura 13 – ARP request. (Fonte: Sidney Nicolau Venturi Filho (Estácio, s/d).) Se o dispositivo que está recebendo a solicitação tiver o endereço IP de destino, ele responderá com uma resposta ARP (ARP reply) . Esse dispositivo aproveita para criar uma entrada em seu ARP cache com o MAC do solicitante (�gura 14).1 http://estacio.webaula.com.br/cursos/go0364/aula7.html Figura 14 – ARP reply. (Fonte: Sidney Nicolau Venturi Filho (Estácio, s/d).) Os pacotes para o endereço IPv4 podem, agora, ser encapsulados em quadros. Se nenhum dispositivo responder à solicitação ARP, o pacote será abandonado porque o quadro não pode ser criado. Essa falha de encapsulamento é informada para as camadas superiores do dispositivo. Se o dispositivo for um dispositivo intermediário, como um roteador, as camadas superiores poderão escolher responder ao host de origem com um erro, por meio de um pacote ICMPv4. Figura 15 – Envio do quadro. (Fonte: Sidney Nicolau Venturi Filho (Estácio, s/d).) Atenção! Aqui existe uma videoaula, acesso pelo conteúdo online Endereçamento IPv6 Com a expansão da internet e o desenvolvimento de novas tecnologias, como a internet das coisas, a necessidade de endereços cresceu de forma muito acentuada. Como o IPv4 não conseguiria suprir essa demanda, logo �cou claro que havia a necessidade de um novo endereçamento IP que tivesse mais escalabilidade. Esse foi o principal motivo para o desenvolvimento do IPv6. Para efeito de comparação: o IPv4 tem 32 bits no endereço, permitindo um total de 4.294.967.296 (232) endereços, enquanto o IPv6, com seus 128 bits no endereço, pode gerar até 340.282.366.920.938.463.463.374.607.431.768.211.456 endereços (2128) o que, considerando um população mundial de 6 bilhões de pessoas, dá mais de 56 octilhões de endereços para cada ser humano da Terra. Representação dos endereços IPv4 Representa o seu endereço em 4 representado por números decimais separados por “.” octetos, como 192.168.0.10. IPv6 Organiza sua representação dividindo o endereço em oito grupos de números hexadecimais separados por “:”, cada um representando 16 bits do endereço, como 2001:0DB8:AD1F:25E2:CADE: CAFE:F0CA:84C1, podendo utilizar tanto letras maiúsculas como minúsculas. Abreviação do endereço IPv6 Como a representação do IPv6 é muito grande, foi criado um método para abreviar o endereço com as seguintes regras: Podem ser omitidos os zeros à esquerda em cada bloco. Sequências de blocos somente com zeros podem ser substituídas por “::”. Exemplo O endereço 2001:0DB8:0000:0000:130F:0000:0000:140B pode ser escrito como 2001:DB8:0:0:130F::140B ou 2001:DB8::130F:0:0:140B. Atenção A abreviação do grupo de zeros só pode ser realizada uma única vez, casocontrário poderá haver ambiguidade na representação do endereço. Pre�xos de Rede O IPv6 utiliza a notação CIDR na forma “endereço-IPv6/tamanho do pre�xo”, em que o tamanho do pre�xo é o número decimal que representa a quantidade de bits contíguos à esquerda correspondentes ao identi�cador da rede. Exemplo No endereço 2001:db8:3003:2::/64, a parte de identi�cação da rede tem 64 bits. Tipos de endereços IPV6 Existem, no IPv6, três tipos de endereços de�nidos: Clique nos botões para ver as informações. Esse tipo de endereço identi�ca uma única interface, de modo que um pacote enviado a um endereço unicast é entregue a uma única interface. Unicast Identi�ca um conjunto de interfaces. Um pacote encaminhado a um endereço anycast é entregue à interface pertencente a esse conjunto mais próxima da origem (de acordo com distância medida pelos protocolos de roteamento). Um endereço anycast é utilizado em comunicações de um-para-um-de-muitos. Anycast Também identi�ca um conjunto de interfaces, entretanto, um pacote enviado a um endereço multicast é entregue a todas as interfaces associadas a esse endereço. Um endereço multicast é utilizado em comunicações de um-para-muitos. Multicast Atenção Diferentemente do IPv4, no IPv6 não existe endereço broadcast, responsável por direcionar um pacote para todos os nós de um mesmo domínio. Endereços unicast De forma similar ao IPv4, os endereços unicast permitem identi�car os nós na rede. Tipos de endereço unicast: Global unicast Equivalente aos endereços públicos IPv4. Continue lendo ...2 Link local Podendo ser usado apenas no enlace especí�co, no qual a interface está conectada. Continue lendo ...3 Unique Local Address (ULA) Endereço não roteável na internet global que é criado utilizando-se um ID global e alocado pseudorrandomicamente. Continue lendo ...4 Endereços especiais Existem alguns endereços IPv6 especiais utilizados para �ns especí�cos: Clique nos botões para ver as informações. É representado pelo endereço 0:0:0:0:0:0:0:0 ou ::0 (equivalente ao endereço IPv4 unspeci�ed 0.0.0.0). Endereço não especi�cado (unspeci�ed) Representado pelo endereço unicast 0:0:0:0:0:0:0:1 ou ::1 (equivalente ao endereço IPv4 loopback 127.0.0.1). Esse endereço é utilizado para referenciar a própria máquina, sendo muito utilizado para testes internos. Endereço loopback Representado por 0:0:0:0:0:FFFF:wxyz ou ::FFFF:wxyz. É usado para mapear um endereço IPv4 em um endereço IPv6 de 128-bit, em que wxyz representa os 32 bits do endereço IPv4, utilizando dígitos decimais. É aplicado em técnicas de transição para que os nós IPv6 e IPv4 se comuniquem. Exemplo: ::FFFF:192.168.100.1. Endereços IPv4 mapeado http://estacio.webaula.com.br/cursos/go0364/aula7.html http://estacio.webaula.com.br/cursos/go0364/aula7.html http://estacio.webaula.com.br/cursos/go0364/aula7.html Atividade Leia os capítulos 10 e 11 do livro Comunicação de Dados e Redes de Computadores, de Behrouz A. Forouzan. 1. Considere a topologia abaixo e divida a rede 192.168.1.0/24 de forma que atenda a todas as redes. Lembre que, entre os roteadores, também deve existir uma rede. (Fonte: CISCO CCNA). 2. Analise a �gura abaixo e diga qual seria o MAC e o IP de origem e de destino no ARP request e no ARP reply se o host A desejasse enviar um pacote para o host B e seu ARP cache estivesse vazio. (Fonte: Autor). 3. Considere o endereço IPv6 a seguir: 2001:0C00:0000:0000:5400:0000:0000:0009. Como �caria sua forma abreviada? Notas ARP Reply 1 O ARP reply é enviado tendo como endereço MAC de destino o da máquina solicitante utilizando endereçamento unicast. Global unicast 2 O endereço global unicast é globalmente roteável e acessível na internet IPv6. Link local 3 O endereço link local é atribuído automaticamente por meio do pre�xo FE80::/64. Esse endereço não é roteável na internet. Unique Local Address (ULA) 4 É composto das seguintes partes: Pre�xo: FC00::/7. Flag local (L): se o valor for 1 (FD), o pre�xo é atribuído localmente. Se o valor for 0 (FC), o pre�xo deve ser atribuído por uma organização central (ainda a de�nir). Identi�cador global: identi�cador de 40 bits usado para criar um pre�xo globalmente único. Identi�cador da interface: identi�cador da interface de 64 bits. Referências FOROUZAN, B. A. Comunicação de dados e redes de computadores. 4. ed. São Paulo: McGraw-Hill, 2008. KUROSE, J. F.; ROSS, K. W. Redes de computadores e a internet: uma abordagem top-down. 4. ed. São Paulo: Addison Wesley, 2009. TANENBAUM, A, S. Redes de computadores. 5. ed. Rio de Janeiro: Campus, 2007. Próxima aula Roteamento IP. Explore mais Pesquise na internet, sites, vídeos e artigos relacionados ao conteúdo visto. Em caso de dúvidas, converse com seu professor online por meio dos recursos disponíveis no ambiente de aprendizagem. Assista aos vídeos: Fragmentação de pacotes IPv6 e IPv4, explicada pelo NIC.br <https://www.youtube.com/watch?v=5OtebbSnwoM> Como fazer um bom plano de endereçamento IP - parte 1 <https://www.youtube.com/watch? v=h74MVDgfYV8&t=72s> Como fazer um bom plano de endereçamento IP - parte 2 <https://www.youtube.com/watch? v=8GjMjZFUMSk&feature=youtu.be> IPv4 vs IPv6 de maneira descomplicada <https://www.youtube.com/watch?v=W-_jjmkUH9k> O que é o IPv6, em português claro <https://www.youtube.com/watch?v=_JbLr_C-HLk> https://www.youtube.com/watch?v=5OtebbSnwoM https://www.youtube.com/watch?v=h74MVDgfYV8&t=72s https://www.youtube.com/watch?v=8GjMjZFUMSk&feature=youtu.be https://www.youtube.com/watch?v=W-_jjmkUH9k https://www.youtube.com/watch?v=_JbLr_C-HLk
Compartilhar