Endereçamento IP
Autor: Jonantan Sampaio | Publicado: 2017-05-17T22:58:00-03:00














Introdução



Na aula anterior estudamos as principais funções da camada de rede e o protocolo IP. Nesta aula, analisaremos o endereçamento IP.

Além disso, examinaremos como usar o roteamento para encontrar o site procurado na internet.

Bons estudos!










Objetivos



Identificar os tipos de endereço IP;

Conhecer o roteamento.










Créditos





Mônica Veiga

Redator





Laís Silva

Designer Instrucional





Vívian Nunes

Web Designer





Rostan Luiz

Desenvolvedor


















Endereço IP

Um endereço IP é formado por 32 bits (4 bytes), em que cada byte é chamado de&nbsp;octeto, ou seja o endereço IP é formado por 4 octetos, conforme ilustram os campos W, X, Y, Z na Figura 1, a seguir.



Figura 1 - Endereço IPFonte Autor




O endereço IP funciona como o identificador lógico para uma interface de rede, caracterizando-se como um endereço hierárquico, pois tem a informação de qual é a rede em que a máquina está (id de rede ou network id) e qual é o identificador da máquina naquela rede (id host ou host id). Para isso, parte dos octetos irá definir o id da rede e parte o id do host (Figura 1).











Dessa maneira, ao contrário do&nbsp;endereço físico&nbsp;da interface o&nbsp;endereço ip&nbsp;muda à medida que deslocamos o host de uma rede para outra.












O endereço IP utiliza uma Notação Decimal Pontuada em que cada octeto é representado por um número decimal (de 0 a 255) separados por um ponto (".").

O endereço IP: 11010000 11110101 00011100 10000011, por exemplo é representado por 208.245.28.131.







Vejamos como isso é feito:




Anna Frajtova / Shutterstock






Dessa forma, temos:














A Fig. 2 mostra como é realizada a conversão de binário para decimal. Observe:







Fig. 2 Método de conversão de binário para decimal.Fonte: Prof. Antonio Sergio Alves Cavalcante - Cedido ao autor.







Um octeto pode possuir valores de 0 a 255 em decimal, já que em binário pode ir de 00000000 (8 zeros) a 11111111 (8 uns).







Assista ao vídeo&nbsp;“Macete - Conversão Binária para Decimal”&nbsp;para entender melhor a conversão de binários para decimal.






Fonte: Wanderlei Silva do Carmo










Como vimos, o endereço IP possui informações de qual é a rede da estação e qual o id do host naquela rede. Como o endereço IP tem tamanho fixo, uma das opções seria dividir o endereço IP em duas metades, dois octetos para identificar a rede e dois octetos para o host (Figura 2). Entretanto, isto engessaria o endereçamento pois só poderíamos ter 65.536 (216) redes, cada uma com 65.536 (216) hosts. Uma rede que possuísse apenas 100 hosts estaria utilizando um endereçamento de rede com capacidade de 65.536 estações, o que também seria um desperdício.













Endereçamento Por Classes (Class Full)

A forma original encontrada para determinar a porção rede e porção host do endereço foi adotar&nbsp;classes de endereço.



As classes originalmente utilizadas na internet são A, B, C, D e E, conforme mostrado na Figura 3 a seguir.




Fig. 3 Classes de Endereço IP.Fonte: Prof Antonio Sergio Alves Cavalcante – Cedido ao autor.






Veja, a seguir, algumas especificações dessas classes:







A classe A utiliza 1 octeto para network id e 3 octetos para host id.







A classe B utiliza 2 octetos para network id e 2 octetos para host id, enquanto um endereço de classe C utiliza 3 octetos para rede e 1 octeto para host id.







Devemos observar que os octetos para network id são sempre os primeiros a partir a esquerda. Por exemplo, no IP classe A 10.15.30.50 o network id 10 e o host id 15.30.50.







A distinção entre as classes de endereço é realizada pelo valor do primeiro octeto (o mais a esquerda) do endereço, veja na Figura 4, abaixo, o range de endereços de cada classe.







Figura 4 - Classes de Endereço para hostsFonte: Autor




Com essa divisão, é possível acomodar um pequeno número de redes muito grandes (classe A) e um grande número de redes pequenas (classe C). Clique nos botões “check” abaixo e observe:











Classe A












Classe B












Classe C

















Os hosts com mais de uma interface de rede (caso dos roteadores ou máquinas interligadas à mais de uma rede, mas que não efetuam a função de roteamento) possuem um endereço IP para cada uma. Um endereço IP identifica não uma máquina, mas uma conexão à rede.

















Alguns endereços são reservados para funções especiais:






ENDEREÇO DE REDE


ENDEREÇO DE BROADCAST


ENDEREÇO DE BROADCAST LIMITADO


ENDEREÇO DE LOOPBACK













Endereçamento Sem Classes (Class Less)

O endereçamento por classes (Class Full) estudado anteriormente, não era eficiente na distribuição de endereços. Cada rede na internet, tenha ela 5, 200, 2.000 ou 30 máquinas deveria ser compatível com uma das classes de endereços. Dessa forma, uma rede com 10 estações receberia um endereço do tipo classe C, com capacidade de endereçar 254 hosts, mais dois endereços um para rede e outro de broadcast, totalizando 256 IP possíveis. Isto significa um desperdício de 244 endereços. Da mesma forma, uma rede com 2.000 hosts receberia uma rede do tipo classe B, e dessa forma causaria um desperdício de mais de 63.500 endereços.











Com o crescimento da internet, o número de redes a serem interconectadas aumentou dramaticamente, causando o agravamento do problema de disponibilidade de endereços IP, especialmente o desperdício de endereços em classes C e B. Visando diminuir o desperdício, aumentando a quantidade de endereços disponíveis sem afetar o funcionamento dos sistemas existentes decidiu-se flexibilizar o conceito de classes - onde a divisão entre rede e host ocorre somente a cada 8 bits.

Para conseguir essa flexibilização, foi criada a&nbsp;máscara de subrede&nbsp;que, além de dividir a rede em subredes, permitiu realizar o endereçamento sem classes, já que determina a porção rede (network id) e a porção host (host id) do endereço.















A máscara de subrede, da mesma forma que o endereço IP, é formada por 4 octetos com uma sequência contínua de 1, seguida de uma sequência de 0. A porção de bits em 1 identifica quais bits são utilizados para identificar a rede no endereço e a porção de bits em 0, identifica que bits do endereço identificam a estação.



















Esse mecanismo está representado na Figura 9:



Fig. 9 Máscara de subrede.Fonte: adaptado de Kurose 2009 pelo autor.





No endereço da Figura 9, 200.18.160.X, o network id possui 26 bits e o host id os 6 bits restantes. Dessa maneira, o endereço 200.18.160.0 da antiga classe C, pode ser dividido em quatro redes com as identificações a seguir. Note que os 4 endereços de rede são independentes entre si. Elas podem ser empregadas em redes completamente separadas, e até mesmo serem utilizadas em instituições distintas.

200.18.160.[00XXXXXX]
200.18.160.[01XXXXXX]
200.18.160.[10XXXXXX]
200.18.160.[11XXXXXX]






Em termos de identificação da rede, utiliza-se os mesmos critérios anteriores, ou seja, todos os bits de identificação do host são 0. Quando os bits do host são todos 1, isto identifica um broadcast naquela rede específica. Dessa maneira, temos as seguintes identificações para endereço de rede:

200.18.160.0
200.18.160.64
200.18.160.128
200.18.160.192






Os endereços de broadcast nas redes são:

200.18.160.63
200.18.160.127
200.18.160.191 e
200.18.160.255






Os possíveis endereços de estação em cada rede são:

200.18.160.[1-62]
200.18.160.[65-126]
200.18.160.[129-190]
200.18.160.[193-254]






Uma conclusão que se pode obter da análise da utilização de&nbsp;subredes&nbsp;é que uma identificação de uma rede, composta de um endereço de rede e uma máscara (p. ex. 200.18.171.64 e máscara 255.255.255.192) é, na verdade, um espaço de endereçamento, que pode ser usado da forma mais indicada.







Vejamos um exemplo passo a passo:


Observe a Figura 10. Nela podemos observar duas redes distintas:





Fig. 10 Topologia de Exemplo.Fonte: Prof. Antonio Sergio Alves Cavalcante - cedido ao autor.










Essa mesma topologia poderia ser endereçada como uma única rede Classe C?











O endereço classe C possui 256 endereços possíveis, ou seja, 2 elevado 8 (28), que é a quantidade de bits disponíveis de endereços, de 0 a 255. Matemática bem simplista, 256 endereços divididos em 2 subconjuntos = 128 endereços cada. Como o subconjunto de uma rede é uma subrede, o endereçamento da topologia ficaria da seguinte forma (Figura 11):



Fig. 11 Topologia após a divisão das subredes.Fonte: Prof Antonio Sergio Alves Cavalcante - cedido ao autor.








Observe que:

A rede 200.1.1.0 (a esquerda), seria dividida em 2 subredes:

• Os endereços de 0 a 127 farão parte da 1ª subrede (esquerda);
• Os endereços de 128 a 255 farão parte da 2ª subrede (direita).













O problema que se apresenta é saber qual máscara de subrede devemos utilizar para fazer esta divisão. Observe a Figura 12, apresentando os dois conjuntos em que foi dividida a rede 200.1.1.0.



Fig. 12 Tabela com a divisão das subredes.Fonte: Prof. Antonio Sergio Alves Cavalcante - cedido ao autor.










Para indicar a subrede devemos observar a tabela da Figura 12 e verificar que o bit de maior ordem de host foi ligado na máscara de subrede, dividindo em 2 subredes:









Subrede 0


O último octeto varia de 0 a 127 e para isso o bit mais significativo do host permaneceu zerado para não ocorrerem valores superiores a 127.





Subrede 1


O último octeto varia de 128 a 255 e para isso o bit mais significativo 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 subredes quando seu valor for 0 e a outra quando seu valor for 1.











Pensada a solução, a implementação ficou por conta da máscara de subrede, que tem o objetivo de deixar zerado os bits de host para assim extrair o endereço de rede e ou subrede.













Para entender como 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 Subrede é realizada operando bit a bit em utilizando a operação lógica And, onde o bit 0 equivale a falso e o bit 1 a verdadeiro (Figura 13).



Fig. 13 Tabela verdade do&nbsp;and.Fonte: Prof Antonio Sergio Alves Cavalcante - cedido ao autor.




Dessa maneira, ao fazemos a operação entre o endereço IP da rede 200.1.1.0 com a máscara obtemos a máscara /25 (Figura 14).



Fig. 14 Operação do prefixo de rede com a máscara.Fonte: Prof Antonio Sergio Alves Cavalcante - cedido ao autor.










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) a 127 (01111111) resolveram a rede como 0 pois somente quando o primeiro bit do octeto for um decimal entre 128 (10000000) a 255 (11111111) mudará o endereço de rede, e terá como resultado 128.













Para transformar a máscara de binário para decimal basta dividi-la em octetos e calcular seu valor em decimal (Figura 15), dando 255.255.255.128 ou /25, repare que em binários são 25 bits um a partir da esquerda.



Fig. 15 Mascara em decimal.Fonte: Prof Antonio Sergio Alves Cavalcante - cedido ao autor.










Roteamento IP

O destino de um pacote sendo enviado por uma máquina pode ser:













Quando o roteador recebe o quadro com o seu MAC no destino, realiza as seguintes operações:



Sergey85 / Shutterstock










Esse processo se repete em cada roteador ao longo do caminho até que o pacote chegue ao destino final. Este tipo de roteamento é chamado de&nbsp;Next-Hop Routing, já que um pacote é sempre enviado para o próximo roteador no caminho.











Nesse tipo de roteamento, não há necessidade de que um roteador conheça a rota completa até o destino. Cada roteador deve conhecer apenas o próximo roteador para o qual deve enviar a mensagem. Observe a Figura 20.



Fig. 20 Exemplo de Roteamento.Fonte: Autor adaptado de Tannenbaum 2007.











Para esclarecer, a decisão de roteamento realizado por um roteador ocorre quando o datagrama IP entra por uma interface do roteador. Com base no ENDEREÇO IP DE DESTINO, define por qual interface de saída o datagrama IP deverá seguir viagem para alcançar seu destino. Esse ato de entrar por uma interface, tomar a decisão de roteamento e sair por outra interface também pode ser dito repasse entre as interfaces de entrada e saída.













A Figura 22 ilustra uma estrutura de redes e a tabela de rotas dos roteadores. As tabelas de rotas de cada roteador são diferentes umas das outras. Note nessas tabelas a existência de rotas diretas, que são informações redundantes para identificar a capacidade de acessar a própria rede na qual os roteadores estão conectados. Esse tipo de rota apesar de parecer redundante é útil para mostrar de forma semelhante as rotas diretas para as redes conectadas diretamente no roteador.



Fig. 22 Exemplo de Roteamento.Fonte: Autor adaptado de Tannenbaum 2007.










A&nbsp;alimentação das informações&nbsp;na&nbsp;tabela de rotas&nbsp;pode ser de modo&nbsp;estático&nbsp;ou&nbsp;dinâmico&nbsp;ou&nbsp;ambos simultaneamente. Veja, a seguir.