Cada dispositivo conectado à Internet se comunica, se localiza e interage com outros dispositivos através de um endereço IP. Esse endereço é um conjunto único de números atribuído a cada dispositivo em uma rede, como um endereço residencial que identifica e diferencia a localização de uma casa em relação às outras da rua.
Enquanto uma rede doméstica típica IPv4 não tem muitos endereços IP (por exemplo, 192.168.0.0/24 fornece 256 endereços), em redes IPv6, pode haver até 18 quintilhões de endereços disponíveis.
Dito isto, nem todos são usados pelos dispositivos da sua casa, graças ao subnetting e máscaras de sub-rede. Então as questões que permanecem são: O que é uma sub-rede? O que é uma máscara de sub-rede? Como funcionam o subnetting IPv4 e IPv6? E como usar uma tabela de referência de sub-rede para configurar sua rede? Tudo será respondido neste artigo.
Criei uma tabela de referência que cobre máscaras de sub-rede, comprimento de prefixo IPv6 CIDR, e como configurar suas redes IPv4 ou IPv6. Não deixe de conferi-la no final deste artigo! Ela também contém informações úteis sobre endereços IP e rede.
O que é uma Máscara de Sub-rede?
Um endereço IPv4 é composto por 32 bits, divididos em segmentos de 8 bits, comumente chamados de "octetos". Esses octetos são normalmente atribuídos ao ID de rede ou ID de host. Se precisar de mais informações sobre IPv4 e IPv6, leia nosso artigo intitulado "IPv4 vs. IPv6: Como IPv6 Substituirá IPv4.”
ID de Rede e ID de Host
O ID de rede ou endereço de rede define qual rede um endereço IP pertence. Quando um pacote de dados é enviado pela Internet ou por uma rede local, os roteadores usam o ID de rede para determinar se o destino do pacote está na mesma rede ou se precisa ser encaminhado para uma rede diferente. O ID de rede informa aos roteadores para qual rede o pacote deve ser roteado.
Além disso, o ID de rede também ajuda a diferenciar diferentes sub-redes em uma organização ou ambiente maior. Com um ID de rede distinto para cada sub-rede, os dispositivos podem se comunicar dentro de sua sub-rede local ou alcançar outras sub-redes através de roteadores. Naturalmente, todos os dispositivos na mesma rede compartilham o mesmo ID de rede.
Então temos a porção de ID de host de um endereço IP. Essa porção é essencialmente o que define o dispositivo único (host) dentro daquela rede. O ID de host diferencia os dispositivos em uma rede para que a rede possa rotear o tráfego corretamente para e dos dispositivos corretos.
A Máscara de Sub-rede
Agora podemos finalmente discutir a máscara de sub-rede. A máscara de sub-rede é um número de 32 bits (similar a um endereço IP) que define quais octetos são atribuídos ao ID de rede e quais são atribuídos ao ID de host.
Máscara de Sub-rede IPv4
Digamos que você tenha um endereço IPv4 como 192.168.1.10 e uma máscara de sub-rede como 255.255.255.0. Os números repetidos na máscara de sub-rede mostram que os primeiros três octetos, ou 24 bits, do endereço IP, que é 192.168.1.0, representam a porção de rede (ID de rede).
Isso ocorre porque, como mencionei antes, a porção de rede de todos os dispositivos na mesma rede compartilham o mesmo ID de rede, então esse número é constante entre todos os dispositivos da rede. Quanto à porção de ID de host, o último octeto é o número de endereços IP disponíveis que podem ser atribuídos a um dispositivo.
Então você pode perguntar: como faço para saber quantos endereços IP estão disponíveis para dispositivos? Bem, quando uma máscara de sub-rede mostra que um endereço IP tem oito bits reservados para IDs de host, significa que há oito variáveis onde um 0 ou 1 pode ser colocado.
Isso se traduz em 2^8 ou 256 endereços IP que podem ser atribuídos a um dispositivo neste endereço IPv4. No entanto, observe que dois desses endereços são sempre reservados para o endereço de rede (192.168.1.0) e endereço de broadcast (192.168.1.255).
Máscara de Sub-rede IPv6
Quanto às máscaras de sub-rede em IPv4, vamos falar sobre máscaras de sub-rede em IPv6. Em vez de mostrar qual porção do endereço IPv6 é atribuída ao ID de rede e qual é atribuída ao ID de host através de notação decimal com pontos como em IPv4 (255.255.255.0), IPv6 usa um comprimento de prefixo, que faz parte de um sistema mais novo de alocação e notação de IP.
Este sistema é chamado Roteamento Inter-Domínios sem Classes. Em vez do antigo sistema de alocação de IP baseado em classes, ele usa Máscaras de Sub-rede de Comprimento Variável (VLSM). Você pode aprender mais sobre CIDR, como funciona e como difere dos sistemas anteriores aqui.
Quanto a como a notação CIDR mostra quais porções são para rede e ID de host, normalmente um / é adicionado ao final de um endereço IPv6 seguido por um número, que indica quantos bits são alocados para a porção de rede. Essa notação CIDR é chamada de comprimento de prefixo.
Note que enquanto cada número em um endereço IPv4 representa 8 bits ou um octeto, em IPv6, cada combinação de número e letra entre dois pontos decimais representa 16 bits. Por exemplo:
2001 (hexadecimal) → 0010000000000001 (binário)
A versão binária completa do endereço IPv6 2001:0db8:85a3:0000:0000:8a2e:0370:7334 é:
0010000000000001 0000110110111000 1000010110100011 0000000000000000
0000000000000000 1000101000101110 0000001101110000 0111001100110100
Além disso, para abreviar um endereço IPv6, em vez de incluir todos os blocos de zeros (blocos de 16 bits de zeros em um endereço IPv6), eles são substituídos por dois pontos ("::".). O número de blocos de zeros de 16 bits pode ser calculado subtraindo o número de blocos não-zero que são mostrados na íntegra do número total de blocos em um endereço IPv6, que é oito. Por exemplo:
2001:db8:1234::/64 → 2001:db8:1234 → 8 blocos totais – 3 blocos não-zero = 5 blocos de zeros
Então, o endereço completo é 2001:0db8:1234:0000:0000:0000:0000:0000/64.
Com o básico coberto, vamos ver um exemplo de máscaras de sub-rede IPv6:
Se um endereço IPv6 for o seguinte: 2001:db8:1234::/64
Os primeiros 64 bits são para a porção de rede: 2001:db8:1234
Os 64 bits restantes (128-64=64) são para a porção de host: 0000.0000.0000.0000.
Tabela de Referência de Sub-rede para IPv4 e IPv6
Embora máscaras de sub-rede e subnetting pareçam termos iguais, eles fazem coisas completamente diferentes. Subnetting essencialmente divide grandes quantidades de endereços IPv4 ou IPv6 que vêm com uma rede para gerenciar melhor departamentos ou dispositivos diferentes e melhorar a segurança.
Por exemplo, em um ambiente corporativo, o departamento de finanças pode ter sua própria sub-rede, impedindo acesso não autorizado de outros departamentos. Em um ambiente doméstico, dividir a rede em duas sub-redes, uma para dispositivos pessoais e outra para IoTs (Internet das Coisas) como assistentes de casa inteligente ou robôs aspiradores, pode melhorar a segurança e o tráfego, já que IoTs se comunicam constantemente com serviços em nuvem e são tipicamente mais vulneráveis a violações de segurança.
Antes de 1993, o subnetting era feito através de classes onde uma rede tinha 254, 65.534 ou mais de 16 milhões de IPs para (dispositivos), e você não podia dividi-los em redes menores como pode hoje.
No entanto, graças ao desenvolvimento do CIDR, você pode agora dividir qualquer rede de qualquer tamanho em quantas sub-redes menores quiser. Então, vamos ver como o subnetting em IPv4 e IPv6 é feito e como você pode usar nossa tabela de referência de sub-rede prática para configurar sua rede.
Tabela de Referência de Sub-rede IPv4
Digamos que você tenha uma rede, como 192.168.1.0/24, com 256 endereços IP para a porção de host. Embora você possa descobrir quantos IPs são dedicados à porção de rede e host através da máscara de sub-rede (255.255.255.0), através do /24 ao final do IP, você pode deduzir que, como 24 bits são dedicados à porção de rede, 8 bits ou 256 (2^8=256) endereços são usados para a porção de host.
Se quisermos dividir esta rede e ter duas sub-redes de 128 endereços, pegamos emprestado um bit da porção de rede, o que leva à seguinte configuração e mudanças:
- Nova máscara de sub-rede: /25 ou 255.255.255.128
- Hosts por sub-rede: 128
- Sub-rede 1: 192.168.1.0/25 (126 endereços utilizáveis de 192.168.1.1 a 192.168.1.126)
- Sub-rede 2: 192.168.1.128/25 (126 endereços utilizáveis de 192.168.1.129 a 192.168.1.254)
Através deste processo CIDR, você pode dividir qualquer rede quantas vezes quiser, desde que tenha dois endereços IP utilizáveis (excluindo os dois IPs necessários para broadcast e endereço de rede). Então, para uma rede /24 com 254 IPs utilizáveis, você pode criar 64 sub-redes, cada uma contendo dois endereços IP utilizáveis; porém, tal número baixo de hosts é tipicamente usado para conexões ponto a ponto.
Tabela de Referência de Sub-rede IPv6
O subnetting IPv6 é especialmente importante, pois o espaço de endereços IPv6 oferece 2^128 ou 340 undecilhões (34 com 37 zeros atrás) de endereços IP únicos. Uma rede IPv6 média é tipicamente configurada com um CIDR /64 que aloca 64 bits para a porção de rede e os outros 64 bits para a porção de host, dando a você 2^64 ou 18 quintilhões (18 com 18 zeros atrás) de endereços únicos.
Considerando o grande número de endereços IPv6 disponíveis, mesmo com um CIDR /64 típico, fazer subnetting de uma rede IPv6 é enormemente benéfico, pois administradores de rede podem gerenciar dispositivos agrupando-os por localização, departamento ou função, monitorar seu tráfego, aplicar políticas de segurança e configurar roteadores muito mais facilmente.
Embora sub-redes /64 sejam a forma mais comumente usada de fazer subnetting de IPs IPv6, pois recursos como SLAAC ou Autoconfiguração de Endereço Sem Estado (permite que dispositivos gerem automaticamente seus endereços IP com base na rede à qual se conectam sem precisar de um servidor DHCP), você pode facilmente dividir uma rede IPv6 em quantas sub-redes quiser.
Digamos que você tenha uma rede IPv6 /64 típica, como 2001:db8:abcd:1000::/64; se pegarmos emprestado, por exemplo, 4 bits da porção de rede, podemos dividir nossa rede em 16 sub-redes, o que leva às seguintes mudanças:
- Sub-rede original: 2001:db8:abcd:1000::/64
- Nova sub-rede: /68
- Número de subnets: 2^(bits tomados da rede)= 2^4=16 subnets
- Primeira sub-rede: 2001:db8:abcd:1000:0000::/68
- Segunda sub-rede: 2001:db8:abcd:1000:1000::/68
- Terceira subnet: 2001:db8:abcd:1000:2000::/68
- … até 2001:db8:abcd:1000:f000::/68
- 2001:db8:abcd:1000: Os primeiros 64 bits definem o prefixo de roteamento global.
- 0000 – f000: Os próximos 4 bits são usados para subnetting.
- Porção do Host: Os 60 bits restantes são usados para endereços de host. (O "::" restante que mostra três blocos de 16 bits)
- Cada subnet /68 tem 2^60 = 1,15 quintilhões de endereços de host possíveis.
Pensamentos Finais
A segmentação de rede é fundamental em qualquer rede, seja segmentação IPv4 ou IPv6. Este artigo e a tabela de referência rápida de segmentação que preparei devem ajudar você a configurar e segmentar sua rede com muito mais facilidade.
Perguntas Frequentes
O que é uma máscara de sub-rede?
Em IPv4, a máscara de sub-rede é um número de 32 bits (similar a um endereço IP) que define quais octetos são atribuídos ao ID da rede e ao ID do host. Em IPv6, em vez de usar máscaras de sub-rede como em IPv4 (por exemplo, 255.255.255.0), IPv6 usa notação de comprimento de prefixo para indicar quantos bits do endereço são usados para a porção de rede.
Como funciona o subnetting IPv4 e IPv6?
Com CIDR ou Roteamento entre Domínios Sem Classe, podemos dividir uma rede IPv4 ou IPv6 em quantas sub-redes quisermos, pedindo bits emprestados da porção de rede; porém, para IPv4, você precisa ter pelo menos dois endereços IP utilizáveis (excluindo os dois IPs necessários para broadcast e endereço de rede). Por exemplo, se você tiver uma rede com 256 endereços IP (192.168.1.0/24) e quiser dividi-la em duas sub-redes com 128 IPs, você pega emprestado um bit das porções de rede, criando estas duas sub-redes: 192.168.1.0/25 & 192.168.1.128/25
Existe uma tabela de referência de subnetting para IPv4 e IPv6?
Sim! Calcular quantos endereços IP você obtém ao segmentar sua rede pode ser bem complicado, especialmente com IPv6. Por isso compilei uma tabela de referência completa de segmentação para facilitar seu trabalho. É também uma tabela de referência IPv6 e uma tabela de referência de rede, então é bem abrangente!