Redes IP

MM
@wwwacedo

Para compreender TI, é essencial ter um bom entendimento dos conceitos de redes de computadores. Neste momento, preciso revisitar conceitos básicos e aproveitarei para organizá-los na minha mente com este artigo.

Endereço IP

Para que a comunicação entre dispositivos em uma rede seja possível, é necessário que cada um deles possua identificadores únicos que permitam sua localização e diferenciação.

O endereço IP (Internet Protocol) é um número atribuído a cada dispositivo conectado a uma rede que utiliza o protocolo IP, como é o caso da internet. Ele permite a identificação lógica do equipamento na rede e a entrega correta de pacotes de dados entre origem e destino.

IPv4 (Internet Protocol version 4): é o padrão mais utilizado para endereçamento de dispositivos em redes de computadores. Ele utiliza 32 bits para representar um endereço, divididos em quatro grupos de 8 bits, chamados de octetos. Cada octeto é geralmente exibido em formato decimal, separado por pontos.

Exemplo de endereço IPv4: 192.168.0.1

Importante saber que:

  • Quando falamos em bits, estamos falando de sistema binário. Ao contrário do sistema decimal em que há 10 números (0, 1, 2, 3, 4, 5, 6, 7, 8, 9), o sistema binário possui somente 2 números (0 e 1). Qualquer número decimal pode ser representado como um número binário e vice versa;

  • 1 bit é um número zero (0) ou um (1).

  • 1 byte são 8 bits. Ou seja: 1 byte é qualquer combinação com oito zeros ou uns.

    Exemplo de 32 bits dividido em 4 grupos de 8 bits: 10101010.11111111.00000000.00001111

  • 00000000 é o menor número binário com 8 bits (igual a 0 em decimal);

  • 11111111 é o maior número binário com 8 bits (igual a 255 em decimal);

  • se o mínimo com 8 bits é 0 e o máximo é 255, temos 256 possibilidades.

28 (bits) = 256 possibilidades

IPv6: utiliza 128 bits para representar um endereço, divididos em 8 grupos de 16 bits, oferecendo aproximadamente 340 undecilhões de endereços (ou seja, 2128 possibilidades). O IPv6 utiliza o sistema hexadecimal (base 16, ou seja, 0-9 + A-F), separados por dois pontos (:).

Exemplo de IPv6: 2001:0db8:85a3:0000:0000:8a2e:0370:7334.

Observe que, no sistema hexadecimal, cada posição dentro de um grupo de 4 pode assumir 16 possibilidades, de forma que o grupo possui 65.536 possibilidades, indo de 0000 até FFFF.

164 = 65.536 possibilidades

IP, Máscara de Sub-rede, Host e Rede

Ao configurar uma rede, é necessário definir como os endereços IP estão organizados. Isso é feito por meio da máscara de sub-rede, que determina qual parte do IP representa a rede e qual parte representa o host.

Por exemplo, no IP 192.168.1.10 com máscara 255.255.255.0:

  • A parte 192.168.1 representa a rede.
  • A parte final .10 representa o host dentro dessa rede.

A máscara de sub-rede também define:

  • O endereço da rede: 192.168.1.0
  • O endereço de broadcast: 192.168.1.255
  • O intervalo de hosts válidos: de 192.168.1.1 até 192.168.1.254

256 endereços = 254 hosts + 1 rede + 1 broadcast

Interface de Loopback

A interface de loopback é uma interface lógica que representa a própria máquina. É utilizada para testes internos, onde o dispositivo se comunica consigo mesmo. O endereço mais comum dessa interface é o 127.0.0.1, também conhecido como localhost. Essa interface é essencial para permitir simulações e isolar testes sem tráfego externo.

Todo sistema operacional possui um arquivo de hosts. No Linux, por padrão, fica em /etc/hosts. Esse arquivo informa ao sistema operacional que quando uma conexão for estabelecida usando algum nome, o IP correspondente deve ser utilizado. Para o nome localhost, temos o IP da nossa própria máquina (127.0.0.1).

A antiga organização de IPs em classes (Classful Addressing)

Antes da criação do modelo CIDR (Classless Inter-Domain Routing), a Internet usava um sistema rígido de endereçamento chamado classful addressing, ou seja, os endereços IPs eram divididos em faixas pré-definidas chamadas de classes (A-E). As principais classes eram: A, B e C.

ClasseFaixa do 1º octetoMáscara padrãoPrefixo CIDRHosts possíveisExemplo
A1 a 126255.0.0.0/816.777.21410.0.0.1
B128 a 191255.255.0.0/1665.534172.16.0.1
C192 a 223255.255.255.0/24254192.168.1.1

Como o sistema funcionava

A classe era determinada automaticamente com base no primeiro octeto do IP. Por exemplo:

  • 10.5.3.1 → começa com 10 → pertence à classe A
  • 172.16.4.22 → começa com 172 → pertence à classe B
  • 192.168.1.100 → começa com 192 → pertence à classe C

Assim, cada classe determinava:

  1. Quantos bits eram usados para identificar a rede.
  • A: 8 bits iniciais identificavam a rede (CIDR /8).
  • B: 16 bits iniciais identificavam a rede (CIDR /16).
  • C: 24 bits iniciais identificavam a rede (CIDR /24).
  1. Quantos bits eram usados para identificar os hosts dentro dessa rede.
  • A: 24 bits finais identificavam os hosts.
  • B: 16 bits finais identificavam os hosts.
  • C: 8 bits finais identificavam os hosts.
  1. A quantidade de hosts possíveis.
  • A: 224 - 2 = 16.777.214 hosts
  • B: 216 - 2 = 65.534 hosts
  • C: 28 - 2 = 254 hosts

Reservas especiais:

  • A: 127.0.0.0 é reservado para loopback (127.0.0.1)
  • D: 224.0.0.0 – 239.255.255.255 → usada para multicast
  • E: 240.0.0.0 – 255.255.255.255 → reservada para uso experimental

Limitações do modelo classful

Apesar de simples, esse sistema era pouco flexível, tornando impossível o ajuste do tamanho da rede às necessidades reais. Uma empresa que precisasse de mil IPs tinha que usar uma rede classe B (com 65.534 possíveis hosts).

CIDR – Classless Inter-Domain Routing

O CIDR (Classless Inter-Domain Routing) é um método moderno de organização de endereços IP que substituiu o antigo sistema baseado em classes (Classe A, B, C). Ele foi introduzido em 1993 com o objetivo de usar os endereços IP de forma mais eficiente e reduzir o tamanho das tabelas de roteamento na internet.

Como o CIDR funciona?

Em vez de utilizar classes fixas como /8, /16 ou /24, o CIDR permite definir quantos bits do endereço IP são usados para representar a rede, por meio da notação /n, onde n representa a quantidade de bits reservados para a parte da rede.

Exemplos:

  • 192.168.1.0/24 → 24 bits para rede, 8 bits para hosts.
  • 10.0.0.0/12 → 12 bits para rede, 20 bits para hosts.
  • 172.16.0.0/16 → 16 bits para rede, 16 bits para hosts.

O que significa o sufixo /n?

A notação /n indica a máscara de sub-rede, ou seja, quantos bits estão fixos para identificar a rede. O restante dos bits será utilizado para identificar os dispositivos (hosts) dentro daquela rede.

Exemplo:

  • 192.168.1.0/2525 bits para rede, 7 bits para host → 128 endereços totais, 126 utilizáveis.

Exemplo de quantidade de endereços por prefixo:

Prefixo CIDREndereços totaisHosts utilizáveis
/24256 = 28254
/25128 = 27126
/2664 = 2662
/2732 = 2530
/2816 = 2414
/298 = 236
/304 = 222

IP Calculator