Sub-rede IP e VLSM / CIDR

Fonte: Wikiversidade

Sub-rede IP[editar | editar código-fonte]

A sub-rede IP é uma técnica de dividir uma rede em sub-redes menores. Isso é feito para melhorar o desempenho da rede e reduzir o tráfego de rede. A sub-rede é identificada por um endereço IP de sub-rede que é diferente do endereço IP da rede original. O endereço IP da sub-rede é usado para identificar os dispositivos em uma sub-rede específica.

Calculando as máscaras de sub-rede[editar | editar código-fonte]

Cada três dígitos na máscara, correspondem a uma parte do endereço IP do host. Essas partes são formadas por oito bits, por isso recebem o nome de octetos.

Cada bit no octeto, possui um valor em decimal correspondente a sua posição.

Por serem bits, só possuem dois estados, ou 0, representando o host, ou 1, representando a rede.

Mascara de Rede

No caso, essa máscara (255.255.255.0), pode ser representada em binário como: 11111111.11111111.11111111.0000000.

Máscara: 255,255,255,0 
Binário: 11111111,11111111,11111111,00000000 

Caso todos os oito bits da máscara de sub-rede possuir valor 1, o valor em decimal 255, caso todos os bits forem 0, possui o valor 0 em decimal.

Mas por que quando todos os bits são 1, o valor em decimal fica é 255?

Isso é por causa da conversão de binário para decimall.

Criando sub-redes[editar | editar código-fonte]

Vimos que os bits 1 na máscara específica a porção da rede e que os bits 0 especificam o host no endereço IP. Para criar nossas redes, podemos pegar alguns bits 0 e transformá-los em 1.

Por exemplo, se pegarmos o primeiro bit 0 na máscara e transformá-lo em bit 1, teríamos a seguinte máscara em binário: 11111111.11111111.11111111.1000000

Mas como fica o valor dela em decimal?

Sabemos que os três primeiros octetos têm o valor em decimal de 255. Já para saber o valor do último, basta realizar a conversão:


2^7,2^6,2^5,2^4,2^3,2^2,2^1,2^0 

1,0,0,0,0,0,0,0 

Ou seja, temos: 1 x 2^7 + 0 x 2^6 + 0 x 2^5 + 0 x 2^4 + 0 x 2^3 + 0 x 2^2 + 0 x 2^1 + 0 x 2^0. Que nos deixa com 128.

Logo, a máscara dessa rede é: 255.255.255.128.

Mas quantas redes temos com essa máscara?

Para saber quantas redes temos com essa nova máscara basta elevar o número 2, que são o número de bits possíveis,** **ao número de bits emprestados da porção do host.

Neste caso pegamos um bit da porção do host, portanto temos **2^1 **redes. Ou seja, temos duas redes.

Mas quantos hosts cada rede comporta?

Os hosts são definidos como bits 0 na máscara de sub-rede, certo? Então para saber quantos hosts nossa rede comporta basta elevar 2 ao número de bits 0 na máscara.

Neste caso temos sete bits 0 (10000000), logo, 2^7, que nos dá 128.

Então cada uma de nossas redes comportam 128 hosts?

Dentre os endereços IPs, dois precisam ser reservados. Um para especificar a rede e outro para especificar o domínio de broadcast. Então, na verdade temos 128 - 2 hosts, logo temos 126 hosts em cada sub-rede.

Mas quais são esses endereços reservados?

O endereço que especifica a rede é sempre o primeiro endereço IP, já o de broadcast é o último endereço IP da rede.

Em uma rede classe C com máscara padrão, o endereço da rede é 192.168.0.0 e o de broadcast é 192.168.0.255. Só que no nosso caso são duas sub-redes, cada uma com um endereço de rede e de broadcast.

A primeira rede possui o endereço de rede 192.168.0.0, já o endereço de broadcast nós descobrimos somando 1 ao número de hosts, que neste caso são 126, mais o endereço de rede. Ou seja, temos **1 + 126 + 0. **Dessa forma temos que o endereço de broadcast da primeira sub-rede é 192.168.0.127.

Já o endereço de rede da segunda sub-rede é o endereço de broadcast da primeira sub-rede mais 1. Ou seja, temos como endereço de rede da segunda sub-rede 192.168.0.128. O endereço de broadcast conseguimos obter da mesma forma.

Somamos 1 ao número de hosts, mais o endereço de rede. Portanto, 1 + 126 + 128, isso nos dá o endereço de broadcast 192.168.0.255.

Bom, calculamos as sub-redes, mas com essa máscara temos apenas duas sub-redes. Porém, temos quatro departamentos e queremos colocar cada um em uma sub-rede. Como podemos fazer isso?

Se nós pegamos um bit a mais na máscara de sub-rede como no exemplo, nós temos duas sub-redes. Então, se nós pegarmos dois bits, teremos dois elevado a dois, que é número de bits que pegamos na porção do host, isso nos deixa com quatro que é o número de sub-redes que queremos.

Ou seja, nossa máscara ficará em binário: 11111111.11111111.11111111.1100000. Realizando a conversão:


2^7,2^6,2^5,2^4,2^3,2^2,2^1,2^0 1,1,0,0,0,0,0,0 

Logo: 1 x 2^7 + 1 x 2^6 + 0 x 2^5 + 0 x 2^4 + 0 x 2^3 + 0 x 2^2 + 0 x 2^1 + 0 x 2^0. Que nos deixa com 192.

Ou seja nossa máscara de sub-rede será 255.255.255.192. Mas quantos hosts cada sub-rede comportará?

Para saber isso, basta elevar 2 ao número de bits 0 na máscara, menos os dois bits reservados de cada rede, ou seja, como temos seis bits zero nossa conta fica 2^6 - 2, isso nos deixa com 62 hosts para cada rede.

Se quisermos saber qual é o endereço de cada sub rede, basta realizar os mesmos passos de antes.

O endereço de rede primeira sub-rede será 192.168.0.0, já o seu endereço de broadcast será um mais o número de hosts mais o endereço de rede. Isso nos deixa com ** 1 + 62 + 0**. Logo, o endereço de broadcast da nossa primeira sub rede será 192.168.0.63.

Dessa forma, após calcular cada sub-rede teremos o seguinte resultado:


Rede: 192.168.0.0,
Broadcast: 192.168.0.63 

Rede: 192.168.0.64,
Broadcast: 192.168.0.127 

Rede: 192.168.0.128,
Broadcast: 192.168.0.191

Rede: 192.168.0.192,
Broadcast: 192.168.0.255

Todos esses endereços utilizando a máscara 255.255.255.192.

Dessa forma conseguimos alocar cada departamento em uma sub-rede, o que otimiza a rede e isola os problemas.

Tabela sub-rede IPv4[editar | editar código-fonte]

Notação CIDR   Máscara           Nº IPs
/0             0.0.0.0           4.294.967.296

Endereço de classe A[editar | editar código-fonte]

Notação CIDR   Máscara           Nº IPs
/8             255.0.0.0         16.777.216    (começa com 8 bits "1")

Endereços de classe B[editar | editar código-fonte]

Notação CIDR   Máscara           Nº IPs
/16            255.255.0.0       65.536        (começa com 16 bits "1")
/17            255.255.128.0     32.768        (começa com 17 bits "1")
/18            255.255.192.0     16.384        (começa com 18 bits "1")
/19            255.255.224.0     8.192         (começa com 19 bits "1")
/20            255.255.240.0     4096          (começa com 20 bits "1")
/21            255.255.248.0     2048          (começa com 21 bits "1")
/22            255.255.252.0     1024          (começa com 22 bits "1")
/23            255.255.254.0     512           (começa com 23 bits "1")

Endereços de classe C[editar | editar código-fonte]

Notação CIDR   Máscara           Nº IPs
/24            255.255.255.0     256           (e assim por diante...)
/25            255.255.255.128   128
/26            255.255.255.192   64
/27            255.255.255.224   32
/28            255.255.255.240   16
/29            255.255.255.248   8
/30            255.255.255.252   4
/31            255.255.255.254   2
/32            255.255.255.255   1

VLSM – Conceitos básicos[editar | editar código-fonte]

O VLSM pode parecer complicado a primeira vista, mas é fácil de entender se você tiver um bom entendimento do conceito de sub-redes. Com a utilização de sub-redes nós dividimos uma rede (classe A, B ou C) em várias sub-redes, cada uma delas com um tamanho fixo. Por exemplo, podemos dividir uma rede classe C em 08 sub-redes com a máscara /27.

Agora com o conceito de VLSM basicamente o que fazemos é dividir as sub-redes em outras sub-redes, cada uma com o tamanho necessário para satisfazer os requisitos de projeto. Simplificadamente podemos dizer que fazemos sub-redes das sub-redes. Acompanhe na figura abaixo, onde podemos pegar a mesma rede classe C da figura anterior e agora dividir as sub-redes em outras sub-redes, cada uma delas com um tamanho específico. Por isso o termo VLSM (Variable Length Subnet Masking), ou seja, Sub-Redes de Tamanhos Variáveis.


A lógica de uma  VLSM[editar | editar código-fonte]

Esta é uma forma lógica de dividirmos as sub-redes, pois formas físicas, utilizam outros conceitos, além de criar estas subdivisões.

Esta prática é muito comum em redes roteadas, onde temos roteadores que podem se comunicar apenas, um com o outro, sendo, dois equipamentos em cada enlace. Neste caso, a sub-rede será 192.168.0.0/30, com faixa de IPs de 192.168.0.0 até 192.168.0.3. O objetivo desta separação lógica, é fazer com que, os endereços IPs se comuniquem de forma objetiva, tendo parâmetros baseados em tabelas, sejam pela ARP ou pela tabela MAC. Mas, sem complicar mais este exemplo, como no último caso, teremos 4 endereços IPs, porém, nos equipamentos, eu poderia utilizar apenas o endereço IP 192.168.0.1 e o IP 192.168.0.2. O IP address, 192.168.0.0, representa o endereço desta sub-rede, sendo representado por número de bits como /30, ou seja, 30 bits desta rede, estão definindo esta faixa de endereços, conhecida como range. Neste momento, teremos como utilizar 2 endereços, dos 4 disponíveis a este sub-rede.

Se calcularmos a próxima sub-rede, então encontraremos:[editar | editar código-fonte]

192.168.0.4/30, sendo a segunda sub-rede, pertencente a rede global 192.168.0.0/24, pois a faixa de IPs será de 192.168.0.4 a 192.168.0.7, onde, os IPs 192.168.5 e 192.168.6, poderão ser utilizados em equipamentos.

Ainda é possível, segmentar estas sub-redes de formas variáveis, tal como, ter redes de tamanhos diferentes dentro da mesma rede global.

VLSM para redes IPv4


Onde Aplicar VLSM?[editar | editar código-fonte]

A partir desta segmentação, podemos ainda fazer diversas aplicações, mas este assunto precisa ser abordado com bastante cuidado para que não seja planejada uma rede de forma errada e confusa.  Uma das formas de se aprender todos estes cálculos de maneira eficaz e bem detalhada, é participar de um dos cursos da linha EdgeMAX.  A Ubiquiti possui uma linha bem interessante de se utilizar Switches gerenciáveis e Roteadores, sendo, os Edge Switchwes e  Edge Routers, através do EdgeOS.

O que é CIDR?[editar | editar código-fonte]

O CIDR é uma sigla para Classes Inter-Domain Routing, e ele é considerado um método para repartir os endereços IP e para rotear.

Foi em 1993 que o CIDR foi introduzido pela Internet Engineering Task Force, e desde então esse método tem sido utilizado para substituir a arquitetura anterior que endereçava as redes.

Sua principal função era de desacelerar o crescimento das tabelas que continham os roteamentos dos roteadores na rede. Desta forma, foi possível auxiliar a desacelerar a rapidez com que os endereços IPv4 estava alcançando.

O que é um endereço IP?[editar | editar código-fonte]

Um endereço IP é formado por dois grupos de bits: o primeiro são os bits considerados mais significativos, ou seja, são os prefixos da rede. Estes identificam uma rede ou uma sub-rede.

O segundo grupo é formado pelos bits menos significativos, e eles identificam os hosts, ou seja, o responsável por especificar uma interface que é totalmente particular na rede.

A partir dessa divisão, é possível começar de uma base e então rotear o tráfego entre as redes IP e criar políticas para alocar os endereços.

Notação do CIDR[editar | editar código-fonte]

O CIDR possui uma notação que é extremamente compacta e que identifica o endereço IP e qual o seu prefixo de roteamento que está associado.

Sua notação é construída através de um endereço IP, uma barra (/) e, por último, um número decimal.

O número final será composto pela contagem dos bits 1 iniciais que está na máscara de roteamento, e esse número normalmente é conhecido como a máscara de rede.

A notação sempre representa o endereço IP de acordo com as normas e com os padrões definidos para o IPv4 e o IPv6.

Basicamente, a ideia por trás deste padrão de endereçamento é o contrário da proposta das sub-redes. Enquanto nessa última movemos os bits de host ("0") para criar um número maior de redes, com CIDR a ideia básica é sumarizar diversas redes em apenas uma, movendo-se porção de rede ("1") da mascara original. Esse processo também é conhecido por Prefix Routing ou Supernetting.[1]

Referencia[editar | editar código-fonte]

Origem: conversa com o Bing, 14/04/2023

(1) Cálculo de sub-redes IPv4 - Todo Espaço Online. https://www.todoespacoonline.com/w/2015/06/calculo-de-sub-redes-ipv4/.

(2) 3 Formas de Calcular Endereços de Rede e de Broadcast. https://pt.wikihow.com/Calcular-Endere%C3%A7os-de-Rede-e-de-Broadcast.

(3) Endereçamento TCP/IP e sub-rede - Windows Client. https://learn.microsoft.com/pt-br/troubleshoot/windows-client/networking/tcpip-addressing-and-subnetting.

(4) Ficha informativa de sub-redes – Máscara de sub-rede 24, 30, 26, 27, 29 .... https://www.freecodecamp.org/portuguese/news/ficha-informativa-de-sub-redes-mascara-de-sub-rede-24-30-26-27-29/.

(5) Redes - Classes de endereços IP, sabe quais são? - Pplware. https://pplware.sapo.pt/tutoriais/networking/classes-de-endereos-ip-sabe-quais-so/.

(6) Endereçamento IP - Ufes. http://www.inf.ufes.br/~zegonc/material/Redes_de_Computadores/O%20Protocolo%20IP%282%29%20-%20Enderecamento.pdf.

  1. CCNA 4.1 - Guia Completo de Estudo. / Marco Aurélio Filippetti.