O que é o protocolo IPv4?
O protocolo IPv4 (Internet Protocol versão 4) atua como o principal protocolo da camada 3 (camada de rede) do modelo OSI. Ele identifica os dispositivos em sua camada, facilitando a comunicação e o roteamento de pacotes entre diferentes redes. Esse protocolo também lida com a fragmentação e reassemblagem de pacotes para garantir que eles obedeçam à unidade de transmissão máxima (MTU) de cada rede pela qual transitam. Diferentemente do IPv6, que utiliza endereçamento de 128 bits, o IPv4 usa 32 bits. O IPv6 será abordado em detalhes em um post futuro.
O esgotamento do IPv4
Desde sua criação, o IPv4 tem sido um dos pilares da internet, graças ao seu endereçamento de 32 bits. No entanto, o grande crescimento da rede e a limitação de aproximadamente 4,3 bilhões de endereços possíveis resultaram no esgotamento do IPv4. Esse esgotamento começou a se tornar realidade nas últimas décadas, impulsionando o desenvolvimento e a adoção do IPv6, que oferece um espaço de endereçamento muito maior. Neste post, vamos nos concentrar nas características e classes do IPv4, entendendo suas limitações e a necessidade de migrar para novas tecnologias.
Endereçamento
O endereço IPv4 é composto por quatro octetos (grupos de 8 bits), que variam de 0 a 255. Esses octetos podem identificar a rede ou os hosts, como computadores, impressoras e dispositivos VoIP, por exemplo. O prefixo (ou máscara de sub-rede) determina quantos bits dos octetos pertencem à rede e quantos pertencem aos hosts, variando de 0 a 32 bits. Vamos entender como isso funciona.
Como mostrado na imagem, os 24 primeiros bits em azul pertencem à rede. Isso significa que, naquela faixa de endereços, esses bits não podem ser atribuídos a um host, pois pertencem à rede. Já os outros 8 bits em vermelho podem ser atribuídos aos hosts.
Para descobrir quantos endereços estão disponíveis para os hosts, usamos a fórmula: 2^n – 2, onde “n” é o número de bits reservados para os hosts. No exemplo acima, teríamos: 2^8 – 2 = 254 endereços disponíveis. Você deve estar se perguntando: “Por que subtraímos 2, se todo o octeto pertence aos hosts?” Vou responder a essa pergunta no próximo tópico.
Endereço da Rede e Broadcast
O endereço de rede identifica a própria rede e não é o primeiro endereço utilizável da rede. Por exemplo, se temos o IP 172.16.0.150/24, o endereço de rede seria 172.16.0.0/24, pois é o primeiro endereço da rede.
O endereço de broadcast, por outro lado, é o último endereço na faixa da rede e é utilizado para enviar mensagens a todos os dispositivos dessa rede. No exemplo anterior, o endereço de broadcast seria 172.16.0.255/24. Para determinar o endereço de rede e o endereço de broadcast, fazemos o seguinte:
- Para o endereço de rede, troque todos os bits do octeto que pertence aos hosts para
0
. - Para o endereço de broadcast, troque todos os bits do octeto que pertence aos hosts para
1.
Veja o exemplo na imagem abaixo:
Agora que entendemos como identificar e calcular os endereços úteis dentro de uma rede, vamos avançar para o estudo das classes de endereços IPv4. Esse conceito, estabelecido no início da internet, ainda influencia muitas práticas de rede atuais e fornece contexto para tecnologias mais modernas, como CIDR e VLSM.
Classes de endereços IPv4
Os endereços na versão 4 são divididos em 5 classes: A, B, C, D e E. Cada uma dessas classes define uma faixa específica de endereços do protocolo IP e serve a propósitos distintos. Abaixo, apresentamos uma tabela com essas classes:
Agora, vamos entender cada uma delas:
Classe A
A Classe A é caracterizada pelas seguintes especificações:
- Faixa de Endereços: Conforme mostrado na imagem, a Classe A cobre uma faixa específica de endereços IP.
- Número de Hosts: Suporta até 16.777.214 hosts por rede, o que significa que há um grande número de endereços disponíveis para dispositivos dentro de cada rede.
- Número de Redes: Existem 126 redes disponíveis (2^7 – 2). A subtração de duas redes ocorre porque:
- Um endereço é reservado para a rota padrão (0.0.0.0).
- Outro endereço é reservado para endereços de loopback (127.0.0.0), usados para testes de loopback interno.
- Máscara de Sub-rede: Utiliza a máscara de sub-rede 255.0.0.0, que indica que o primeiro octeto (8 bits) é utilizado para a identificação da rede, enquanto os 24 bits restantes são utilizados para hosts.
Classe B
A Classe B é caracterizada pelas seguintes especificações:
- Faixa de Endereços: Conforme mostrado na imagem, a Classe B cobre uma faixa de endereços IP que varia de 128.0.0.0 a 191.255.255.255.
- Número de Hosts: Suporta até 65.534 hosts por rede.
- Número de Redes: Existem 16.384 redes disponíveis (2^14). A Classe B usa 14 bits para a identificação da rede, permitindo um número significativo de redes disponíveis.
- Máscara de Sub-rede: Utiliza a máscara de sub-rede 255.255.0.0, onde os primeiros dois octetos (16 bits) são utilizados para a identificação da rede, e os 16 bits restantes são utilizados para hosts.
Classe C
A Classe C é caracterizada pelas seguintes especificações:
- Faixa de Endereços: Conforme mostrado na imagem, a Classe C cobre uma faixa de endereços IP que varia de 192.0.0.0 a 223.255.255.255.
- Número de Hosts: Suporta até 254 hosts por rede.
- Número de Redes: Existem 2.097.152 redes disponíveis (2^21). A Classe C usa 21 bits para a identificação da rede.
- Máscara de Sub-rede: Utiliza a máscara de sub-rede 255.255.255.0, onde os primeiros três octetos (24 bits) são utilizados para a identificação da rede, e os 8 bits restantes são utilizados para hosts.
Classe D
A Classe D é caracterizada pelas seguintes especificações:
- Faixa de Endereços: Conforme mostrado na imagem, a Classe D cobre uma faixa de endereços IP que varia de 224.0.0.0 a 239.255.255.255.
- Propósito: A Classe D é usada para multicast, permitindo a entrega de pacotes a múltiplos destinos simultaneamente. Não é usada para redes comuns de hosts, mas para grupos de multicast específicos.
- Máscara de Sub-rede: A Classe D não utiliza máscaras de sub-rede tradicionais, pois não é destinada ao roteamento de hosts comuns.
Classe E
A Classe E é caracterizada pelas seguintes especificações:
- Faixa de Endereços: Conforme mostrado na imagem, a Classe E cobre uma faixa de endereços IP que varia de 240.0.0.0 a 255.255.255.255.
- Propósito: A Classe E é reservada para pesquisa e desenvolvimento. Esses endereços não são atribuídos a redes públicas e são usados para propósitos experimentais.
- Máscara de Sub-rede: Assim como a Classe D, a Classe E não utiliza máscaras de sub-rede tradicionais, devido ao seu uso específico.
Conclusão
Compreender as classes de endereços na versão 4 do protocolo IP é fundamental para entender sua estrutura. Embora técnicas avançadas como CIDR (Classless Inter-Domain Routing) e VLSM (Variable Length Subnet Masking) tenham sido introduzidas para otimizar o uso do espaço de endereçamento, o crescimento exponencial da internet ultrapassou as capacidades dessa versão. Por isso, a transição para o IPv6, com seu vasto espaço de endereçamento, se tornou essencial. Em posts futuros, exploraremos mais detalhadamente as características e vantagens do IPv6