Antes de mais nada, procure memorizar as duas tabelas abaixo:
128 | 10000000 |
192 | 11000000 |
224 | 11100000 |
240 | 11110000 |
248 | 11111000 |
252 | 11111100 |
254 | 11111110 |
255 | 11111111 |
2^10 | 1024 |
2^11 | 2048 |
2^12 | 4096 |
2^13 | 8192 |
2^14 | 16384 |
2^15 | 32768 |
2^16 | 65536 |
2^17 | 131072 |
2^18 | 262144 |
2^19 | 524288 |
2^20 | 1048576 |
2^21 | 2097152 |
2^22 | 4194304 |
2^23 | 8388608 |
Quando você se depara com uma máscara de rede e precisa determinar o número de sub-redes, hosts válidos e endereços de broadcast que a máscara define, tudo o que você tem a fazer é responder a 5 perguntas:
1. Quantas sub-redes tal máscara produz?
2. Quantos endereços de hosts válidos são obtidos por sub-rede?
3. Quais são as sub-redes válidas?
4. Quais os hosts válidos em cada sub-rede?
5. Qual o endereço de broadcast de cada sub-rede?
O método binário é muito útil para aprendizagem, mas fica inviável quando temos 10 ou mesmo 20 bits, para prática utilizaremos outros métodos mais práticos e dinâmicos.
Eis um método prático de determinar a resposta para cada uma das 5 questões:
a) Quantas sub-redes? 2x – 2 = quantidade de sub-redes, onde “x” representa o número de bits “mascarados” ou número de “1s”.
Por exemplo: 11000000 seria 22 -2 = 2. Nesse caso, haveria duas sub-redes possíveis com tal máscara.
b) Quantos hosts válidos por sub-rede? 2y – 2 = quantidade de hosts válidos, onde “y” representa o número de bits disponíveis para manipulação dos endereços de host, ou o número de “0s”.
Por exemplo: 11000000 seria 26 -2 = 62. Neste caso, existem 62 endereços válidos para hosts por sub-rede.
c) Quais são as sub-redes válidas? 256 – máscara de rede = valor da sub-rede base. À esse resultado, soma-se o valor obtido até que se atinja o número da máscara (que seria inválido).
Seguindo nosso exemplo: 256 – 192 = 64 (número base e primeira sub-rede válida). 64 + 64 = 128 (segunda sub-rede válida). 128 + 64 = 192 (valor da máscara = sub-rede inválida). Portanto, as sub-redes válidas seriam 64 e 128.
d) Qual o endereço de broadcast para cada sub-rede? O endereço de broadcast seria o valor imediatamente anterior ao valor da próxima sub-rede (ou da máscara, se estivessemos falando da última sub-rede na sequência).
Em nosso exemplo, temos as sub-redes 64 e 128. O endereço de broadcast da primeira seria 128 – 1 =127. Já o da segunda 192 (valor da máscara) – 1 = 191.
e) Quais os hosts válidos? Os valores válidos seriam os compreeendidos entre as sub-redes, menos todos os bits ligados e desligados. A melhor maneira de se identificar esses valores é se descobrindo as sub-redes válidas e os endereços de broadcast de cada uma. Em nosso exemplo, os hosts válidos estariam compreendidos nos intervalos entre 65-126 para a primeira sub-rede e 129-190 para a segunda (pois 64 e 128 são os valores que definem as respectivas
Emprestando bits
Vamos imaginar que eu precise de uma rede para pelo menos 1000 hosts
Como tem que ser multiplo binario ou seja X^2 o mais proximo que temos a isso é 1024 (2^10)
Logo alem do ultimo octeto (8 bits) precisamos "pegar emprestado" mais 2 bits
mascara classe C padrao 255.255.255.0 ou 11111111.11111111.11111111.00000000;
Pegando 2 emprestados do terceiro octeto ficaria 11111111 11111111 11111100 00000000 ou 255.255.252.0
Sendo os 2 primeiros octetos "fixos" da rede teriamos para sub-rede 64 para rede (2^6) e 1024 para host (2^10)
O que nos daria 1024 enderecos de host disponiveis para cada uma da 64 sub-rede como 1 endereco é de rede e 1 de broadcast teriamos que diminuir 2 que daria 1022 enderecos validos por sub-rede
Tipo de Rede
Antes de fazer um calculo de sub-rede deve saber qual classe aquela rede pertence.
|
|
Nos endereços classe D são usados para multicast, não é necessário alocar octetos ou bits para separar os endereçoes de rede e host
Os endereços reservados mais comun são:
CIDR Bloco de Endereços | Descrição | Referência |
---|---|---|
0.0.0.0/8 | Rede corrente (só funciona como endereço de origem) | RFC 1700 |
10.0.0.0/8 | Rede Privada | RFC 1918 |
14.0.0.0/8 | Rede Pública | RFC 1700 |
39.0.0.0/8 | Reservado | RFC 1797 |
127.0.0.0/8 | Localhost | RFC 3330 |
128.0.0.0/16 | Reservado (IANA) | RFC 3330 |
169.254.0.0/16 | Zeroconf | RFC 3927 |
172.16.0.0/12 | Rede Privada | RFC 1918 |
191.255.0.0/16 | Reservado (IANA) | RFC 3330 |
192.0.0.0/24 | ||
192.0.2.0/24 | Documentação | RFC 3330 |
192.88.99.0/24 | IPv6 para IPv4 | RFC 3068 |
192.168.0.0/16 | Rede Privada | RFC 1918 |
198.18.0.0/15 | Teste de benchmark de redes | RFC 2544 |
223.255.255.0/24 | Reservado | RFC 3330 |
224.0.0.0/4 | Multicasts (antiga rede Classe D) | RFC 3171 |
240.0.0.0/4 | Reservado (antiga rede Classe E) | RFC 1700 |
255.255.255.255 | Broadcast |
Calculando rede e host Exercício 1) 39.20.10.30 é um classe A, de acordo com a tabela, pois esta entre 1.0.0.0 a 127.255.255.255 logo a macara é 255.0.0.0 Este mesmo endereco pode ser uma sub-rede como por exemplo a /26 ou seja 2^18 de rede 11111111 11111111 11111111 11000000 2^18=262.144 de sub-rede (-2) 262.142 validos
Entao:
[...] Ate a subnet 262.144 com 64 endereco cada (62 válidos) Exercicio 2) O IP 130.20.30.40 com máscara 255.255.255.192; O endereço é um classe B (intervalo entre 129.0.0.0 a 191.255.255.255) de uma rede 130.20.0.0/18 A subnet está da seguinte forma: 11111111 11111111 11000000 00000000 Existem dusa formas para saber qual o o intervalo e valores das sub-redes [1] Como são 2 bits de sub-rede (4 sub redes) ele podem ter os seguinte valores
Ou seja 4 sub redes com intervalo de 64 bits no terceiro octeto |
Duas regras importantes sobre sub-redes:
Calculando a rede que determinado IP pertence. Este calculo é feito pelo roteador para determinar a rede ou sub-rede para a qual um pacote deve ser enviado.
exemplo 1 200.110.10.20 com mascara 255.255.255.0 exemplo 2 11001000 00010100 0010100 01101110 <- 200.20.30.110 logo pertence a sub-rede 200.20.30.96 |
Tabela de Cálculos prontos:
Veja tambem: