Endereços IP
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 |
| 2^7 | 2^6 | 2^5 | 2^4 | 2^3 | 2^2 | 2^1 | 2^0 | 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 |
| 2^7 | 2^6 | 2^5 | 2^4 | 2^3 | 2^2 | 2^1 | 2^0 |
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.