Este tutorial é simples: trataremos apenas do procedimento necessário para realizar os cálculos de sub-rede. Mas porque criar um tutorial só pra isso? Seguinte, várias vezes me encontrei em situações que exigiam cálculos de sub-rede, porém, não me recordava o procedimento. Criei esse material com o intuito de relembrar o conceito e também recorrer caso a memória falhe (opsss!).
Well, let's go rock!
Primeiramente, devemos recordar que o endereço de rede é composto por 32 bits. Esses bits são usados para definir ao mesmo tempo a "rede" e o "computador" (um termo mais apropriado seria HOST), ou seja, parte do endereço é para NetID e a outra parte para HostID.
Quantos bits são destinados à Rede e quantos são associados ao Host?
Depende! Quem define como o Host e a Net são definidos dentro do endereço IP é a "Máscara". Ou seja, que determina a divisão do conteúdo do endereço IP é a máscara.
Como ela faz isso (máscara determina o Host/Net)?
O endereço é dividido em 4 octetos de 8 bits cada (cada elemento só pode assumir os valores 0 ou 1). A máscara trata dos octetos completamente definidos como 0 ou 1. Ou seja, temos os 8 bits do primeiro octeto como 1, e todos os bits do segundo, terceiro e quarto octetos como 0:
11111111.00000000.00000000.00000000
Lembrando que um Byte é equivalente a 8 bits, poderíamos considerar essa máscara como:
255.0.0.0
Essa máscara indica que, os primeiros 8 bits do endereço (primeiro octeto) são utilizados para a definição da rede. Os bits restantes servem para identificar o Host. Ou seja, o valor
10.1.0.0
indicaria o Host "1.0.0" na rede "10", e
10.0.1.0
indicaria outro micro da rede "10", neste caso, o "0.1.0". Outro exemplo de máscara seria
255.255.255.0
que permitiria identificar os micros com o último octeto e a rede com os três primeiros octetos. Lembre-se que para utilizar as possibilidades existentes nos octetos para a identificação do Host, devemos ignorar o primeiro elemento (no caso, 0), pois este servirá para identificar a rede:
192.168.1.0
Ou seja, como o último elemento é 0 (zero), esse endereço identifica a rede, que é "192.168.1.0". O último valor deste elemento também deverá ser desconsiderado (255). Ele serve para identificar o endereço "broadcast" que indica o destinatário como todos os micros da rede. Ou seja, o endereço de "broadcast" abaixo
192.168.1.255
serve para determinar como destinatário do pacote todos os endereços da rede
192.168.1.0
Isso significa que todos os micros dessa rede receberão esse pacote.
Então, o que é exatamente uma sub-rede?
Uma sub-rede permite quebrar esses 254 endereços (no caso do exemplo da rede anterior, 256 elementos menos o elemento da rede 0 e o elemento do broadcast 255) em segmentos menores, para a criação de outras redes independentes. Como? Bom, é o seguinte, ao invés de utilizarmos o elemento 0 no último octeto (255.255.255.0), que permitira a utilização deste campo de forma exclusiva para a identificação dos Hosts, colocaremos outro valor na máscara. Para facilitar, entende que o endereço de máscara abaixo (associado ao 255.255.255.0, porém, em bits)
11111111.11111111.11111111.00000000
Permitiria todos os elementos finais para HostId. Entretanto, agora observe abaixo:
11111111.11111111.11111111.11110000
Isso representa
255.255.255.240
Ou seja, os quatro primeiros bits do último octeto servem para identificar a rede, e os quatro últimos números para identificar o Host. O endereço "255.255.255.240" representa o último endereço de rede das sub-redes. Para compreender quais sub-redes podem ser criadas, vamos obter o tamanho da faixa com
256 - 240 = 16
Que, respectivamente, representam o "Total de possibilidades no octeto" menos "valor do último octeto da máscara" é igual a 16, que é faixa de elementos para cada sub-rede existente. Lembre-se que as regras do endereço de rede (primeiro elemento) e do broadcast (último elemento) também devem ser respeitadas dentro de cada uma das faixas. Isso significa que na prática teremos sub-redes com 14 Hosts cada.
Como identificamos as sub-redes?
Seguindo a idéia apresentada, vamos montar as sub-redes para a máscara "255.255.255.192", onde o último octeto seria "11000000". Neste caso, teríamos 64 endereços em cada sub-rede. Veja as sub-redes possíveis (para esse caso) abaixo:
Primeira sub-rede:
192.168.1.0 - Endereço de rede
192.168.1.1 - Endereço do primeiro Host
192.168.1.62 - Endereço do último Host
192.168.1.63 - Endereço de Broadcast
Segunda sub-rede:
192.168.1.64 - Endereço de rede
192.168.1.65 - Endereço do primeiro Host
192.168.1.126 - Endereço do último Host
192.168.1.127 - Endereço de Broadcast
Terceira sub-rede:
192.168.1.128 - Endereço de rede
192.168.1.129 - Endereço do primeiro Host
192.168.1.254 - Endereço do último Host
192.168.1.255 - Endereço de Broadcast
Como identificar os Hosts?
Basta compará-lo com a máscara! Ou seja, qual é a rede do host "192.168.1.100"? Ao compararmos esse endereço com a máscara "255.255.255.192", teríamos:
Identif. Endereço IP em Bits (4 octais) Endereço IP
Host 11000000.10101000.00000001.00110111 192.168.1.100
Mask 11111111.11111111.11111111.11000000 255.255.255.192
AND 11000000.10101000.00000001.01000000 192.168.1.64
Isso indica que esse micro estaria na "Segunda sub-rede". Esse procedimento tornou-se comum na Internet para que os provedores pudessem obter um maior número de redes (no caso, sub-redes) com poucos endereços IPs disponíveis.
"As pessoas não sabem o que querem até você mostrar a elas." Steve Jobs
Espero ter ajudado!
Guilherme Pontes
Nenhum comentário:
Postar um comentário