Como calcular máscaras de sub-rede no Linux com ipcalc

Laptop em um fundo azul mostrando um prompt de comando do Linux.
fatmawati achmad zaenuri/Shutterstock.com

A sub-rede de uma rede grande melhora a segurança, aumenta o desempenho e organiza sua rede de maneira lógica. Mas alguns dos cálculos são difíceis. O comando Linux ipcalcfacilita o estágio de planejamento.

O que é sub-rede?

A sub -rede é uma maneira de dividir uma grande rede em partes menores e conectadas. Cada parte é chamada de sub-rede. Você pode optar por organizar sua rede para que sua equipe de vendas use uma sub-rede, o RH use outra sub-rede, o suporte ao cliente use outra sub-rede e assim por diante.

Há benefícios significativos para isso. A primeira tem a ver com segurança e controle. Sem sub-redes, tudo é uma grande rede “plana”. Com a sub-rede, você pode decidir quais sub-redes podem se comunicar com outras sub-redes. Diferentes sub-redes têm diferentes intervalos de endereços IP e usam diferentes máscaras de sub-rede, sobre as quais falaremos em breve.

Seu roteador deve ser configurado para permitir que o tráfego de uma sub-rede alcance outra sub-rede. E, como o roteador é um dispositivo gerenciado, você tem controle sobre o tipo de tráfego e a interação permitida entre diferentes sub-redes.

A sub-rede também pode impedir que usuários não autorizados e malwares percorram sua rede sem verificação. Ou pelo menos, vai atrasá-los. Pense nisso como um submarino. Se houver uma brecha no casco em uma seção, você pode fechar as portas das anteparas para que o resto da embarcação não seja inundado. As sub-redes são como aquelas portas de anteparo.

Muitas vezes, há benefícios de desempenho puramente do ato de dividir uma grande rede em sub-redes. Se sua rede for grande e ocupada o suficiente, esse aumento de desempenho virá da redução do tráfego de rede dentro de cada sub-rede. A queda no tráfego ARP por si só pode fazer as coisas parecerem mais responsivas.

E, claro, uma vez que sua rede é compartimentada, é mais fácil para sua equipe de TI entender, manter e dar suporte à sua infraestrutura.

Endereços IP e máscaras de sub-rede

Isso tudo parece ótimo, e é. Mas isso significa que precisamos ser muito específicos em nosso endereçamento IP. Precisamos usar parte do endereço IP para o ID da rede e parte do endereço IP para o endereçamento do dispositivo. Com sub-redes, também precisamos usar parte do endereço IP para a sub-rede.

Os endereços IP IPv4 usam quatro números de três dígitos separados por pontos. É chamado de notação ponto-decimal. O intervalo desses números é de 0 a 255. Os dois primeiros números são o ID da rede. O terceiro é usado para armazenar o ID da sub-rede e o quarto número é usado para armazenar o endereço do dispositivo. Isso em casos simples.

Recomendado:  Como ouvir mensagens recebidas por meio de AirPods no iPhone ou iPad

Os números são representados dentro dos computadores como sequências de valores binários. Se houver tão poucos dispositivos na sub-rede que haja bits altos não utilizados no intervalo de números de endereço do dispositivo, esses bits binários “sobressalentes” poderão ser usados ​​pelo ID da sub-rede.

Como o roteador ou qualquer outro dispositivo de rede sabe qual é a composição do endereço IP? O que indica se o ID da sub-rede está totalmente contido no terceiro número ou se ele captura alguns dos bits mais altos do quarto número? A resposta para isso é a máscara de sub-rede.

A máscara de sub-rede se parece com um endereço IP. São quatro números de três dígitos, e o intervalo dos números é de 0 a 255. Mas eles realmente precisam ser pensados ​​em sua forma binária.

Cada bit binário que é 1 na máscara de sub-rede significa que o bit correspondente no endereço IP se refere ao ID de rede ou ID de sub-rede. Tudo o que é zero na máscara de sub-rede significa que o bit correspondente no endereço IP se refere a um endereço de dispositivo.

Vamos pegar um endereço IP típico e aplicar uma máscara de sub-rede a ele. A máscara de sub-rede tem 255 para cada um dos três primeiros números e 0 para o quarto.

  • Endereço IP : 192.168.1.0
  • Máscara de sub-rede : 255.255.255.0 = 11111111.11111111.11111111.00000000

No binário 255 é 11111111. Se os bits da máscara de sub-rede forem definidos como um, os bits correspondentes no endereço IP referem-se ao ID da rede e ao ID da sub-rede. 255 na máscara de sub-rede significa que todos os bits no número correspondente no endereço IP se referem ao ID de rede ou ID de sub-rede.

O quarto número é zero, o que significa que nenhum bit é definido como um. Portanto, esse número se refere aos endereços do dispositivo de rede. Portanto, nossa máscara de sub-rede de 255.255.255.0 significa que os três primeiros números do endereço IP contêm o ID de rede e o ID de sub-rede, e o último número é reservado para endereços de dispositivos de rede.

Isso significa que um efeito colateral de tudo isso é que a máscara de sub-rede também determina quantos bits no endereço IP podem ser usados ​​para identificar dispositivos individuais. Em outras palavras, a máscara de sub-rede determina quais bits no endereço IP identificam a sub-rede  e  quantos dispositivos essa sub-rede pode conter.

Alterar a máscara de sub-rede tem um efeito dramático na rede. É por isso que precisamos acertar.

O comando ipcalc

O ipcalc torna mais fácil descobrir quais máscaras de sub-rede e endereços IP precisam ser para sub-rede corretamente em sua rede. ipcalcjá estava instalado no Fedora 36 . Tivemos que instalá-lo no Ubuntu 22.04 e no Manjaro 21.

Recomendado:  Como fazer login no seu PC com sua impressão digital ou outro dispositivo usando o Windows Hello

O comando para o Ubuntu é:

sudo apt instalar ipcalc

Instalando o ipcalc no Ubuntu

Para instalar ipcalcno Manjaro, use:

sudo pacman -Sy ipcalc

instalando o ipcalc no Manjaro

No mínimo, precisamos passar um endereço IP para ipcalc. Se isso é tudo que passamos, ipcalcassume uma máscara de sub-rede de 255.255.255.0. Ele fornece uma leitura de informações sobre a rede e o endereço IP.

ipcalc 192.168.1.0

A saída do ipcalc examinando um endereço IP

A saída contém valores de ponto decimal e seus valores binários equivalentes. Isto é o que cada bit de informação significa.

  • Endereço : 192.168.1.0. O endereço IP que fornecemos.
  • Máscara de rede : 255.255.255.0 = 24. A máscara de sub-rede. 255.255.255.0 é usado se nenhuma máscara de sub-rede foi fornecida na linha de comando. O 24 significa que havia 24 bits definidos como 1 na máscara de sub-rede. Eles são usados ​​para o ID de rede e o ID de sub-rede. Estes são contados a partir da esquerda. Os bits definidos como 1 serão uma sequência ininterrupta de 1’s. Não pode haver 0 bits entre eles. Sabemos que 8 bits definidos como 1 em binário nos dão 255 em decimal. Portanto, 24 significa três conjuntos de 8 bits, todos definidos como 1. Em ponto-decimal, isso nos dá 255.255.255. O resto dos bits será 0, dando-nos 255.255.255.0. Então, contando os bits definidos como 1 e apresentando isso como um número decimal como 24, podemos transmitir uma máscara de sub-rede inteira. Isso é chamado  de  notação de roteamento entre domínios sem classes.
  • Curinga : 0.0.0.255. Isso é usado em dispositivos de rede Cisco como parte das configurações da lista de permissões/lista de bloqueios.
  • Rede : 192.168.1.0/24. Este é o endereço IP da rede e a sub-rede descritos na notação CIDR. Se houver um roteador conectado a essa sub-rede, ele geralmente recebe o endereço IP mais baixo no intervalo permitido.
  • HostMin : 192.168.1.1. O endereço IP mais baixo que um dispositivo conectado a esta sub-rede pode ter.
  • HostMax : 192.168.1.254. O endereço IP mais alto que um dispositivo conectado a esta sub-rede pode ter.
  • Transmissão : 192.168.1.255. Este é o endereço de transmissão. Os pacotes de rede enviados para este endereço IP são ecoados para todos os dispositivos na sub-rede.
  • Hosts/Net : 254. O número máximo de dispositivos que você pode conectar a esta sub-rede. Neste exemplo, nosso intervalo de endereços IP do dispositivo é de 0 a 255, o que significa que podemos identificar 256 endereços IP diferentes (0 a 255). Mas perdemos um endereço IP para o endereço IP da rede (o endereço “.0”) e perdemos um para o endereço IP de transmissão (o endereço “.255”).
  • Classe C, Internet Privada : A  classe  da rede .

classe  de uma rede é indicada pelo número de bits usados ​​para o ID da rede e o ID da sub-rede, mais alguns bits usados ​​para conter a classe da rede, chamados  de bits principais .

  • Classe A : bits iniciais 0. Os endereços IP começam com 0. Sub-rede padrão: 255.0.0.0. A notação CIDR é /8.
  • Classe B : bits iniciais 10. Os endereços IP começam com 128. Sub-rede padrão: 255.255.0.0. A notação CIDR é /16.
  • Classe C : bits iniciais 110. Os endereços IP começam com 192. Sub-rede padrão: 255.255.255.0. A notação CIDR é /24.
  • Classe D : bits iniciais 1110. Os endereços IP começam com 224. Sub-rede padrão: indefinida. A notação CIDR é /4.
Recomendado:  Você deve comprar um drone?

Alterando a máscara de sub-rede

O ipcalccomando não pode alterar nenhuma configuração para que possamos tentar o que quisermos sem medo de afetar nada. Vamos ver que efeito a mudança da máscara de sub-rede tem em nossa rede.

Você pode usar a notação CIDR ou ponto-decimal. Com CIDR, um espaço é opcional. Esses comandos são todos equivalentes.

ipcalc 192.168.1.0/16
ipcalc 192.168.1.0 /16
ipcalc 192.168.1.0 255.255.0.0

A saída de pedir ao ipcalc para aplicar uma nova máscara de sub-rede a um endereço IP

Isso aumenta muito o número de dispositivos que você pode conectar a essa rede. O endereçamento do dispositivo de rede para esta rede começa em 192.168.0.0 e termina em 192.168.255.254.

Perdemos um endereço para o endereço de rede e outro para o endereço de broadcast, como antes. Mas isso ainda nos dá 65.534 dispositivos possíveis.

Mas todos eles ainda estariam em uma sub-rede.

Usando ipcalc com sub-redes

Digamos que queremos adicionar três sub-redes à nossa rede, com capacidade para 20, 15 e 80 hosts, respectivamente. Podemos usar a -sopção (dividir) e segui-la com nossos tamanhos de sub-rede desejados.

ipcalc 192.168.1.0 -s 20 15 80

Comando para fazer o ipcalc dividir uma rede em três sub-redes

A primeira seção é a mesma que vimos anteriormente, onde ipcalcfornece uma análise da rede contendo o endereço IP que fornecemos na linha de comando. Nossas sub-redes são descritas nas três seções a seguir.

recomendações do ipcalc para dividir uma rede em três sub-redes

Em resumo, as informações que recebemos são:

Primeira sub-rede:

  • Máscara de sub-rede: 255.255.255.224
  • Endereço do primeiro dispositivo: 192.168.0.129
  • Último endereço do dispositivo: 192.168.0.158
  • Capacidade de sub-rede: 30 dispositivos

Segunda sub-rede:

  • Máscara de sub-rede: 255.255.255.224
  • Endereço do primeiro dispositivo: 192.168.0.161
  • Último endereço do dispositivo: 192.168.0.190
  • Capacidade de sub-rede: 30 dispositivos

Terceira sub-rede:

  • Máscara de sub-rede: 255.255.255.128
  • Endereço do primeiro dispositivo: 192.168.0.1
  • Último endereço do dispositivo: 192.168.0.126
  • Capacidade de sub-rede: 126 dispositivos

Observe as entradas verdes nos valores binários. Esses são os bits que foram reservados para a sub-rede.

Além disso, observe que, como a primeira e a segunda sub-redes têm a mesma máscara de sub-rede de 27, três bits no campo de hardware foram usados ​​para o indicador de sub-rede. Na primeira sub-rede, os bits são 100 e na segunda são 101. Essa diferença permite que o roteador direcione corretamente o tráfego de rede.

Pode escalar rapidamente

Ficará evidente que em uma rede maior ou mais complicada, é muito fácil um erro se infiltrar. Com  ipcalco , você pode ter certeza de que seus valores estão corretos. Você ainda precisa configurar sua rede, mas pelo menos sabe que os valores que está usando estão corretos.