Entendendo as máscaras de sub-rede

Além do endereço IP propriamente dito, é necessário fornecer também a máscara de sub-rede, ou “subnet mask” na configuração da rede. Ao contrário do endereço IP, que é formado por valores entre 0 e 255, a máscara de sub-rede é normalmente formada por apenas dois valores: 0 e 255, como em 255.255.0.0 ou 255.0.0.0, onde o valor 255 indica a parte endereço IP referente à rede, e o valor 0 indica a parte endereço IP referente ao host.

A máscara de rede padrão acompanha a classe do endereço IP: em um endereço de classe A, a máscara será 255.0.0.0, indicando que o primeiro octeto se refere à rede e os três últimos ao host. Em um endereço classe B, a máscara padrão será 255.255.0.0, onde os dois primeiros octetos referem-se à rede e os dois últimos ao host e, em um endereço classe C, a máscara padrão será 255.255.255.0, onde apenas o último octeto refere-se ao host.

Ex. de endereço IP

Classe do endereço

Parte referente à rede

Parte referente ao host

Máscara de sub-rede padrão

98.158.201.128

Classe A

98.

158.201.128

255.0.0.0 (rede.host.host.host)

158.208.189.45

Classe B

158.208.

189.45

255.255.0.0 (rede.rede.host.host)

208.183.34.89

Classe C

208.183.34.

89

255.255.255.0
(rede.rede.rede.host)

Mas, é possível usar máscaras diferentes para utilizar os endereços IP disponíveis de formas diferentes das padrão. O importante, neste caso, é que todos os micros da rede sejam configurados com a mesma máscara, caso contrário poderão não conseguir comunicar-se, pois pensarão estar conectados a redes diferentes.

Um exemplo comum é o uso da faixa de endereços 192.168.0.x para redes locais. Originalmente, esta é uma faixa de endereços classe C e por isso a máscara padrão é 255.255.255.0. Mesmo assim, muita gente prefere usar a máscara 255.255.0.0, o que permite mudar os dois últimos octetos (192.168.x.x). Neste caso, você poderia ter dois micros, um com o IP “192.168.2.45” e o outro com o IP “192.168.34.65” e ambos se enxergariam perfeitamente, pois entenderiam que fazem parte da mesma rede. Não existe problema em fazer isso, desde que você use a mesma máscara em todos os micros da rede.

Até agora vimos apenas máscaras de sub-rede simples. Porém, o recurso mais refinado das máscaras de sub-rede é quebrar um octeto do endereço IP em duas partes, fazendo com que tenhamos dentro de um mesmo octeto uma parte que representa a rede e outra que representa o host. Chegamos às máscaras de tamanho variável (VLSM).

Este conceito é um pouco complicado, mas, em compensação, pouca gente sabe usar este recurso, por isso vale à pena fazer um certo esforço para aprender.

Configurando uma máscara complexa, precisaremos configurar o endereço IP usando números binários e não decimais. Para converter um número decimal em um número binário, você pode usar a calculadora do Windows ou o Kcalc no Linux. Configure a calculadora para o modo científico (exibir/científica) e verá que do lado esquerdo aparecerá um menu de seleção permitindo (entre outros) escolher entre decimal (dec) e binário (bin).

Configure a calculadora para binário e digite o número 11111111, mude a opção da calculadora para decimal (dec) e a calculadora mostrará o número 255, que é o seu correspondente em decimal. Tente de novo agora com o binário 00000000 e terá o número decimal 0.

Veja que 0 e 255 são exatamente os números que usamos nas máscaras de sub-rede simples. O número decimal 255 (equivalente a 11111111) indica que todos os 8 números binários do octeto se referem ao host, enquanto o decimal 0 (correspondente a 00000000) indica que todos os 8 binários do octeto se referem ao host. Numa rede com máscara 255.255.255.0 temos:

Decimal:

255

255

255

0

Binário:

11111111

11111111

11111111

00000000

rede

rede

rede

host

As máscaras de tamanho variável permitem dividir uma única faixa de endereços (seja de classe A, B ou C) em duas ou mais redes distintas, cada uma recebendo parte dos endereços disponíveis. Imagine o caso de um pequeno provedor de acesso, que possui um backbone com uma faixa de endereços de classe C e precisa dividi-lo entre dois clientes, onde cada um deles deve ter uma faixa completa de endereços.

O backbone do provedor utiliza a faixa de endereços 203.107.171.x onde o 203.107.171 é o endereço da rede e o “x” é a faixa de endereços de que eles dispõem para endereçar os micros das duas empresas. Como endereçar ambas as redes, se não é possível alterar o “203.107.171” que é a parte do seu endereço que se refere à rede?

Este problema poderia ser resolvido usando uma máscara de sub-rede complexa. Veja que podemos alterar apenas dos últimos 8 bits do endereço IP:

Decimal:

203

107

171

x

Binário:

11001011

11010110

10101011

????????

Usando uma máscara 255.255.255.0, são reservados todos os 8 bits para o endereçamento dos hosts, e não sobra nada para diferenciar as duas redes. Usando uma máscara complexa, é possível “quebrar” os 8 bits do octeto em duas partes, usando a primeira para diferenciar as duas redes e a segunda para endereçar os hosts:

Decimal:

203

107

171

x

Binário:

11001011

11010110

10101011

???? ????

rede

rede

rede

rede host

Para tanto, ao invés de usar a máscara de sub-rede 255.255.255.0 que, como vimos, reservaria todos os 8 bits para o endereçamento do host, usaremos uma máscara 255.255.255.240 (corresponde ao binário 11111111.111111.11111111.11110000). Veja que numa máscara de sub-rede os números binários “1” referem-se à rede e os números “0” referem-se ao host. Na máscara 255.255.255.240 temos exatamente esta divisão: os 4 primeiros binários do último octeto são positivos e os quatro últimos são negativos:

Decimal:

255

255

255

240

Binário:

11111111

11111111

11111111

1111 0000

rede

rede

rede

rede host

Temos agora o último octeto dividido em dois endereços binários de 4 bits cada. Cada um dos dois grupos representa agora um endereço distinto, e deve ser configurado independentemente. Como fazer isso? Veja que 4 bits permitem 16 combinações diferentes. Se você converter o número 15 em binário terá “1111” e, se converter o decimal 0, terá “0000”. Se converter o decimal 11 terá “1011” e assim por diante.

Neste caso, é possível usar endereços de 1 a 14 para identificar os hosts e as redes separadas. Note que os endereços 0 e 15 não podem ser usados, pois assim como os endereços 0 e 255, eles são reservados para pacotes de broadcast:

Decimal:

203

107

171

12 _ 14

Binário:

11111111

11111111

11111111

1100 1110

rede

rede

rede

rede host

Estabeleça um endereço de rede para cada uma das duas sub-redes disponíveis e um endereço diferente para cada micro da rede, mantendo a formatação do exemplo anterior. Por enquanto, apenas anote em um papel os endereços escolhidos, junto como seu correspondente em binários.

Na hora de configurar o endereço IP nas estações, configure primeiro a máscara de sub-rede como 255.255.255.240 e, em seguida, converta os endereços binários em decimais, para ter o endereço IP de cada estação. No exemplo da ilustração anterior, havíamos estabelecido o endereço 12 para a rede e o endereço 14 para a estação; 12 corresponde a “1100” e 14 corresponde a “1110”. Juntando os dois temos “11001110”, que corresponde ao decimal “206”. O endereço IP da estação será então 203.107.171.206, com máscara 255.255.255.240.

Se tivesse escolhido o endereço 10 para a rede e o endereço 8 para a estação, teríamos “10101000” que corresponde ao decimal 168. Neste caso, o endereço IP da estação seria 203.107.171.168.

Neste primeiro exemplo dividimos a faixa de endereços em 14 redes distintas, cada uma com 14 endereços. Isso permitiria que o provedor de acesso do exemplo fornecesse links para até 14 empresas diferentes, desde que cada uma não precisasse de mais de 14 endereços. É possível criar diferentes combinações, reservando números diferentes de bits para a rede e o host:

Máscara

Bits da rede

Bits do host

Número de redes

Número de hosts

255.255.255.240

1111

0000

14 endereços
(de 1 a 14)

14 endereços
(de 1 a 14)

255.255.255.192

11

000000

2 endereços
(2 e 3)

62 endereços
(de 1 a 62)

255.255.255.224

111

00000

6 endereços
(de 1 a 6)

30 endereços
(de 1 a 30)

255.255.255.248

11111

000

30 endereços
(de 1 a 30)

6 endereços
(de 1 a 6)

255.255.255.252

111111

00

62 endereços
(de 1 a 62)

2 endereços
(de 2 e 3)

Em qualquer um dos casos, para obter o endereço IP basta converter os dois endereços (rede e estação) para binário, “juntar” os bits e converter o octeto para decimal.

Usando uma máscara de sub-rede 192, por exemplo, e estabelecendo o endereço 2 (ou “10” em binário) para a rede e 47 (ou “101111” em binário) para o host, juntaríamos ambos os binários obtendo o octeto “10101111” que corresponde ao decimal “175”.

Se usássemos a máscara de sub-rede 248, estabelecendo o endereço 17 (binário “10001”) para a rede e o endereço 5 (binário “101”) para o host, obteríamos o octeto “10001101” que corresponde ao decimal “141”.

Claro que as instruções acima valem apenas para quando você quiser conectar vários micros à web, usando uma faixa de endereços válidos, como no caso de uma empresa que precisa colocar no ar vários servidores, ou de uma empresa de hospedagem que aluga servidores dedicados. Caso você queira apenas compartilhar a conexão entre vários PCs, você precisará de apenas um endereço IP válido.

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X