Endereços IP

#network

Em redes TCP/IP cada host, ou interface de rede, tem um endereço IP: 4 grupos de 8 bits, no qual podem ter números entre 0 e 255, separados por um ponto; exemplo: 192.80.0.3.

Um conjunto de 1, 2 ou de 3 (sempre um dos primeiros) grupos identificam a rede e os outros identificam os hosts.

Rápida introdução a conversão binária/decimal

1 1 1 1 1 1 1 1 binário
27 26 25 24 23 22 21 20 potência
128 64 32 16 8 4 2 1 decimal

Onde, no octeto, existir o valor 1, procurar a ordem correspondente e soma-se o valor, caso exista o valor 0 o valor simplesmente não entra na soma; exemplo:

1 0 1 0 1 0 0 0
27 26 25 24 23 22 21 20

No caso acima os únicos que estão “ligados” são as posições 7, 5 e 3, portanto a soma fica: 128 + 32 + 8 = 168.

Classes

As classes são grupos que diferem na quantidade dos octetos destinada aos hosts e as quantidade destinada à rede:

  • Classe A: o primeiro octeto informa a rede e os outros os hosts. O endereço da rede vai de 1.x.x.x até 126.x.x.x; desta forma podem existir 126 redes;
  • Classe B: à rede pertencem os dois primeiros octetos. Os endereços vão de 128.0.x.x até 191.255.x.x;
  • Classe C: os três primeiros octetos informam rede e os demais hosts; de 192.x.x.x até 223.x.x.x.

Endereços de Rede e de Broadcast

Há dois valores que não são usados para identificar um host numa rede:

Endereço de Rede

Com o valor 0; exemplo: 129.10.20.0, 192.80.3.0 etc;

Endereço de Broadcast

Este tipo de endereço é usado em especial para indicar todos os computadores da rede; por exemplo para enviar pacotes para todos de determinada rede.

Valor 255, porém pode variar com o uso de máscaras - visto adiante -; exemplo: 192.80.3.255, 120.255.255.255, dentre outros;

Máscaras de Rede

As classes identificam a quantidade de máquinas numa rede: uma rede para 60 hosts deve usar endereço de classe C, exemplo: 172.168.200.x com isso pode-se conseguir 256 hosts, no entanto, para este exemplo, há um desperdício de 196 endereços.

Para resolver o problema acima de desperdício de IPs existem as máscaras de rede.

Para as classes A, B e C as máscaras definidos por padrão são, respectivamente: 255.0.0.0, 255.255.0.0 e 255.255.255.0

Para evitar o desperdício de IPs as máscaras podem ser configuradas para que a rede comporte menos hosts.

O conceito de máscaras de rede, ou de máscaras de sub-rede, fica melhor entendido com exemplo. Segui-se abaixo:

Exemplo

Rede para 25 hosts, no qual o endereço, segundo a classificação por classes, é 172.16.252.0. Porém há desperdício de 254 endereços IPs; a solução é usar a máscara 255.255.255.224.

A máscara faz com que os bits destinados a identificação da rede aumente em 2, e os de hosts diminua para 6 bits, claro que neste exemplo. Como rede fica o endereço 172.16.252.0 e broadcast 172.16.252.0.

Análise:

Rede

172 (10101100) 16 (0001000) 252 (11111199) 0 (00000000) IP
255 (11111111) 255 (11111111) 255 (11111111) 224 (11100000) máscara

Broadcast

172 (10101100) 16 (0001000) 252 (11111199) 31 (00011111) IP
255 (11111111) 255 (11111111) 255 (11111111) 224 (11100000) máscara

Hosts

172 (10101100) 16 (0001000) 252 (11111199) 1 (00011111) IP
255 (11111111) 255 (11111111) 255 (11111111) 224 (11100000) máscara

Desta forma se for criada a rede 172.16.254.0/255.255.255.224 e ela tiver no mesmo meio físico que a rede 172.16.254.0/255.255.255.0: elas não poderão se comunicar, pois são redes distintas.

Endereços Reservados para Redes Privadas

Quando for criada uma rede que nunca usará a internet, portanto será privada, pode-se usar qualquer endereço para a rede. Entretanto, foram reservados endereços para este propósito de acordo com RFC1597:

  • Classe A: 10.0.0.0 até 10.255.255.255;
  • Classe B: 172.16.0.0 até 172.31.255.255;
  • Classe C: 192.168.0.0 até 192.168.255.255.

Todos com as máscaras padrão de cada classe.

Existe ainda o endereço de loopback, usado para indicar a si próprio: 127.0.0.1 indicado muitas vezes por localhost.