Camada 3 - Máscaras de Subrede
Agora que conhecemos a anatomia básica de um endereço IP e como converter entre os formatos mais comuns, vamos aprender como descobrir o endereço da rede na qual um computador está conectado ao longo da Internet. Essa técnica nos permite, por exemplo, descobrir a origem de pacotes de dados maliciosos ou ações ilegais na Internet. Nesse tópico vamos ver o seguinte:
-
O que são máscaras de subrede;
-
Como utilizar as máscaras para obter o endereço da rede a partir de um endereço IP;
-
Como descobrir as informações de IP e Máscara nos dispositivos.
IP: Endereços de Rede e de Host (Máquina)
A principal diferença entre o endereço IP e o endereço Mac é que o endereço IP possui duas partes. A primeira parte é destinada ao endereçamento da rede e a segunda parte é destinada ao endereçamento de uma máquina na rede.
Por exemplo, você pode imaginar uma rede como um bairro e uma máquina como uma casa em um bairro. O CEP do endereço equivale ao endereço do bairro e o número da casa equivale ao identificador da casa dentro do CEP. Imagine o CEP do bairro Jockey Clube em Campos dos Goytacazes 28020010 e o número da casa 52. Podemos formar o identificador da casa 52 no Jockey apenas unindo os dois números: 2802001052. Desse modo temos:
Agora vamos analisar um endereço IP dessa mesma ótica, tendo o endereço da rede como o CEP de um bairro e o endereço da máquina como o número de uma casa no bairro. Veja a imagem abaixo:
Repare na rede que possui o “CEP” 129.102.0.0. Essa rede possui dois computadores de endereços 129.102.16.2 e 129.102.12.7. Esses dois computadores possuem o mesmo prefixo 129.102 e apenas variam os dois últimos octetos. Desse modo, podemos dizer que temos as máquinas 16.2 e 12.7 na rede 129.102.0.0.
O endereço da rede é sempre o primeiro da faixa, com os octetos destinados ao endereçamento dos hosts com valor (zero).
Máscaras de Subrede
Nesse ponto, já compreendemos que um endereço IP é um identificador que contém tanto o endereço da rede como o endereço do host contido na rede. Isso acontece porque o IP é dividido em duas partes, onde, a primeira parte é destinada ao prefixo da rede e a segunda parte é destinada ao prefixo do host na rede. Ao zerarmos a parte destinada ao host, conseguimos obter o endereço da rede do computador. Porém, ainda há uma peça faltando no quebra-cabeças.
Como identificar os dígitos de rede e os dígitos do host em um endereço IP?
Para responder a questão acima, utilizamos a máscara de subrede, que é configurada junto com o endereço IP.
A máscara de subrede indica a quantidade de bits de um endereço IP de 32 bits que é destinada ao endereçamento da rede. Desse modo, o restante dos bits fica destinado ao endereçamento do host na rede.
Veja os exemplos abaixo:
Exemplo 1: Máscara de 16 bits
imagine uma máscara de 16 bits, representada como 255.255.0.0. Essa máscara define que os primeiros 16 bits são destinados ao prefixo da rede. Desse modo o restante dos 32 bits ficam destinados ao prefixo de host, ou seja, são 16 bits para host, pois 32 - 16 bits de rede = 16 bits de host. Considerando que cada octeto possui 8 bits, temos os dois primeiros octetos destinados à identificação da rede.
Veja abaixo como podemos descobrir o endereço da rede de um dispositivo a partir da máscara de subrede:
Exemplo 2: Máscara de 24 bits
Do mesmo modo que no exemplo 1, vamos imaginar agora que a rede utiliza uma máscara de 24 bits. Desse modo, sobrarão apenas 8 bits para identificação de hosts. Veja a resolução abaixo.
Anatomia da Máscara de Subrede e Formatos
Como já vimos, as máscaras de sub rede são configuradas juntamente com os endereços IPs e fornecem a informação da quantidade de bits destinada ao prefixo de rede. A partir dela, conseguimos descobrir o endereço de rede de um host. Entretanto, porque uma máscara de 16 bits equivale ao IP 255.255.0.0 e uma máscara de 24 bits equivale ao IP 255.255.255.0? Vamos analisar esses casos e você verá que é bem simples.
Se convertemos a máscara 255.255.0.0 para binário, temos o seguinte:
Desse modo, uma máscara \16 (16 bits) possui os dois primeiros octetos com os bits todos ligados, o que resulta em 255 em decimal. Veja o exemplo com a máscara \24 (24 bits).
Com isso, podemos perceber que a operação que os roteadores utilizam para obter os endereços das redes dos destinatários e encaminhar corretamente entre os enlaces é um AND lógico da máscara com o IP.
Exemplo: Qual a rede do IP 129.210.131.3 com máscara \18?
Como a máscara \18 foge das máscaras padrão de 8, 16 e 24 bits, é um pouco mais difícil de fazermos em decimal. Por isso, devemos inicialmente fazer a conversão do IP e da máscara para binário
-
Passo 1: converta o IP para binário:
-
Passo 2: converta a máscara também para binário:
-
Passo 3: realize um AND bit-a-bit do IP com a Máscara:
-
Passo 4: Converta o endereço resultante em decimal novamente:
Resposta: o endereço da rede do host que possui IP 129.210.131.3 com máscara \18 é: 129.210.128.0