Linux slogan
Visite também: BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
Linux: KDE Slackware ( Windows Vista Style )
Por jpfaria
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha



Artigo

255.255.255.0: A matemática das máscaras de rede
Linux user
elgio
28/11/2007
Você sabe o que significam matematicamente as máscaras de rede? Um /24, /25? Um 255.255.128.0 define o quê? No iptables um 10.1.0.0/28 tem qual finalidade? E o que isto tem a ver com as classes de IPs? Para quem não for alérgico à escovação de bits...
Por: Elgio Schlemer | Blog: http://gravatai.ulbra.tche.br/~elgio
[ Hits: 458573 ]
Conceito: 9.8   42 voto(s)42 voto(s)42 voto(s)42 voto(s)42 voto(s) + quero dar nota ao artigo

Introdução

Mesmo aqueles que não são familiarizados com redes, número IP, já se depararam com este item de configuração: máscara de rede.

Sem dúvida que a mais usada, mais conhecida, é a máscara 255.255.255.0, tanto que muitos nem se quer sabem que ela pode ser outro valor e não apenas este. Poucos também sabem o que este número "mágico" significa, o que ele representa e quão importante ele é para uma rede. E mais, o quão desastroso pode ser se ele estiver errado, não em conformidade com a real configuração de uma rede local.

Neste artigo procuro descrever tecnicamente o princípio existente na composição da máscara de rede, o que ele representa e para que serve. Faço um comparativo com o antigo roteamento baseado em Classes de IP e porque isto ele abandonado.

Se você é do tipo que sente arrepios quando ouve falar de operações bit a bit, como AND, OR ou XOR, prepare-se: as máscaras de rede tem tudo a ver com escovação de bits. Leitura não recomendada para alérgicos binários.

    Próxima página >>




Páginas do artigo

Outros artigos deste autor

Leitura recomendada

Comentários
[1] Comentário enviado por elgio em 28/11/2007 - 10:33h:

O endereço CORRETO da página que calcula a máscara é:
http://gravatai.ulbra.tche.br/~elgio/calcmasc.php

Mas coloquei um redir no endereço publicado para não haver problemas.


[2] Comentário enviado por m4tri_x em 28/11/2007 - 10:37h:

Olá, agradeço antes mesmo de ler completamente o artigo, tive uma prova sobre isso na faculdade ontem, eu não tinha encontrado nenhum artigo interessante como esse, vlw kra, continua assim...
[]´s


[3] Comentário enviado por julianopiedade em 28/11/2007 - 12:31h:

Muito bom o artigo.
É bom quando encontramos um artigo que vale à pena investir um tempo pra ler.

Parabéns, e se possível, continue a série, com outros elementos de rede. Terei prazer em ler.

Att.
Juliano Soares


[4] Comentário enviado por scoob em 28/11/2007 - 12:43h:

Mais um excelente artigo!! Parabéns, Elgio


[5] Comentário enviado por TSM em 28/11/2007 - 14:13h:

Muito bom cara, execelente artigo, valeu a pena ter lido seu artigo.


[6] Comentário enviado por capitainkurn em 28/11/2007 - 14:41h:

Ótimo artigo!


[7] Comentário enviado por Iron Fist em 28/11/2007 - 15:26h:

Elgio, você já ouviu falar em ips não roteaveis?

Eu acredito que os ips não roteaveis sejam os da família de redes 10.0.0.0, 127.0.0.1 e 192.168.0.0.
sabe onde eu posso achar alguma informação "segura" (isto é, consistente) sobre elas?

Ah, e uma pergunta. Eu tive algumas aulas de redes, mas depois de ler seu artigo, fiquei com uma dúvida.
Por acaso estes ips pertencem à classe A B ou C?
10.0.0.0 = Classe A
127.0.0.0 = Classe B
192.168.0.0 = Classe C?

É possível também a mascara permitir que um ip seja transformado em uma família de IP de Classe A? Por exemplo:
192.0.0.0/8 é possível?

Desde já, agradeço pela atenção.

PS: Artigo muito bom!
Parabéns!


[8] Comentário enviado por elgio em 28/11/2007 - 15:47h:

"Não roteáveis" é um termo muito ruim, não deve ser usado. Quem diz "não roteáveis" quer dizer "não válidos na Internet", ou seja, roteadores bem configurados da Internet NÃO IRÃO ROTEÁ-LOS, mas não que o Ip tem um "problema no seu DNA" que não permite serem roteados... :-D

O termo correto é Ips PRIVADOS, para uso somente interno, INTRANET.
Os ips "válidos" na Internet são chamados ips Públicos.

Os Privados são:

10.0.0.0/8: isto abrange desde 10.0.0.0 até 10.255.255.255. O 9.X.X.X e o 11.X.X.X são PÚBLICOS, ou seja, possuem DONO.

172.16.0.0/12: isto vai de 172.16.0.0 até 172.31.255.255. Erro COMUM: o 172.15. e o 172.32. SÃO PÚBLICOS!!

192.168.0.0/16: isto vai de 192.0.0.0 até 192.168.255.255

Além destes ips PRIVADOS tem os reservados e que não podem ser usados. O 0.0.0.0 por exemplo está reservado (usado como origem em requizições DHCP por exemplo). O 127.X.X.X é para localhost e assim vai com outros.

Quanto a 192.0.0.0/8, CASUALMENTE este exemplo invade a área de ips PÜBLICOS e deve ser evitado. NÃO que não funcione, veja bem... mas com esta máscara (/8) estarias definindo uma rede que começa em 192.0.0.0 (que não é PRIVADA) e termina em 192.255.255.255 (que também não é PRIVADA).

No mais, liberte-se das classes. Só porque um IP é classe A não quer dizer que tu não possa usar um /24 nele!


[9] Comentário enviado por elgio em 28/11/2007 - 16:04h:

Em tempo: quem define estas faixas é o IANA:

http://www.iana.org/

Lá é o lugar "quente" para ver atribuições de ips e portas.
Sobre os ips, mais especificamente:
http://www.iana.org/assignments/ipv4-address-space

Veja que o Iana diz as GRANDES alocações.
para ver como cada país redistribuiu, ai tem que se ir no gestor de ips de cada um dos países. (eles só dizem de quem é o /8)

Veja o exemplo:
010/8 Jun 95 IANA - Private Use See [RFC1918]

Tem uma RFC que define o seu uso!

Veja que tem muito "Varius Registers" inclusive para alguns privados.


[10] Comentário enviado por kalib em 28/11/2007 - 16:30h:

Parabéns Elgio...excelente artigo...além de ser um conteúdo de grande importância para qualquer profissional da área de redes, foi abordado com qualidade.
Parabéns. ;]


[11] Comentário enviado por isaque_alves em 28/11/2007 - 16:54h:

Excelente. Um dos melhores artigos que já li aqui no vo. vai pra lista de favoritos...


[12] Comentário enviado por cassimirinho em 28/11/2007 - 17:20h:

Parabéns, me fez relembrar os dias de aula de redes I e II.


[13] Comentário enviado por FelipeAbella em 29/11/2007 - 11:33h:

Ótimo artigo.


[14] Comentário enviado por ChilesIT em 29/11/2007 - 13:39h:

Isso sim é um artigo pra se guardar nos favoritos !!!


[15] Comentário enviado por pink em 29/11/2007 - 14:53h:

10! Excelente artigo, meus parabéns.... já foi para os favoritos... rsrs
Um grande abraço, Michele


[16] Comentário enviado por jlojunior em 29/11/2007 - 19:21h:

Bom artigo!
Em 2005 eu fiz um programa pra exibir os dados de um endereço IP e sua máscara (este último é opcional). A primeira versão foi feita em C, mas depois eu refiz o código em Java, como um applet. Os códigos-fonte estão na minha página de scripts do VOL e a versão em Java pode ser acessada a partir de www.freewebs.com/jlojunior (necessário JRE para executar).
Infelizmente eu não usei métodos muito eficientes para trabalhar com os dados passados (manipulação direta de bits), mas o funcionamento é perfeito.
Abraço!


[17] Comentário enviado por rodrigom em 30/11/2007 - 00:48h:

Gostaria de entender assim de mascara, parabens...


[18] Comentário enviado por Gerson Raymond em 30/11/2007 - 08:10h:

Maravilha de artigo !!! como é bom refrescar a memória com algo de tamanha importância, um grande abraço.


[19] Comentário enviado por royrocha em 30/11/2007 - 17:53h:

Excelente artigo, aprendi muito!


[20] Comentário enviado por cytron em 14/02/2008 - 02:06h:

Legal heim! Eis um artigo q pode ter 50 páginas que ainda não cansa de ler. Ficou muito bem escrito. Reaprendi bastante sobre máscaras. Estava tudo enferrujado kkkkk!!!

elgio... vou dar uma sugestão e aposto que a comunidade em peso vai apoiar, ou pelo menos quem passar por aqui:

Faça um novo artigo sobre máscaras, mas dessa vez um modo avançado, aprofundando mais nas entranhas do IP e seu roteamento. Não é todo mundo que domina com tanta naturalidade o assunto e escreve tão bem.

Vamos lá galera! Quem sabe ele se comove eheheheh!!!

Valeu elgio.


[21] Comentário enviado por elgio em 21/02/2008 - 09:56h:

Me comover?

hehehehehe.

Idéia anotada.
Irei escrever assim que tiver um tempo extra.

Obrigado pelas sugestões.


[22] Comentário enviado por marciadepaula em 27/02/2008 - 19:57h:

apoio a idéia do rapaz acima: artigo sobre máscaras - modo avançado. Já!

=)

M.


[23] Comentário enviado por agl77 em 26/03/2008 - 18:24h:

eh eu precisava mesmo do cauculo das mascaras, muito bom artigo, parabéns!


[24] Comentário enviado por cogumas em 24/04/2008 - 12:02h:

Parabenss !!!
Exelente Artigo!!
Muita gente precisa saber disso, eu tambem !!! kkkkkk !!!
abraçoss !!


[25] Comentário enviado por kassilenevrb em 27/04/2008 - 14:50h:

Adorei os artigos, mas tire-me uma duvida???

Qual o proposito do NAT E do PAT???

..b.jussss...desde ja agradeço


[26] Comentário enviado por carlosdias98 em 29/10/2008 - 00:12h:

Cara que aula, parabéns !!!


[27] Comentário enviado por edipo.magrelo em 12/11/2008 - 14:54h:

Ótimo Artigo...estou quebrando a cabeça com isso..por isso vamos logo rumo ao IPv6!!!


[28] Comentário enviado por Osirix em 28/11/2008 - 23:37h:

Otimo artigoo !!!!!!!!!!!!!

ja quebrei muita cabeça com isso ...

mais esse artigo tirou todas as minhas duvidas !!!!


[29] Comentário enviado por anarco2002 em 07/12/2008 - 10:50h:

Ótimo artigo, parabéns!
Gostaria de saber o porquê de se usar uma máscara /16 numa rede com ip classe A... Exemplo: 10.45.0.0/16..
Grato,
Antonio A. Correia


[30] Comentário enviado por agl77 em 12/12/2008 - 10:10h:

Meus parabéns, ja tive aulas e aulas sobre isso, mas teu artigo matou todas elas

vlw
Andre George Lauer


[31] Comentário enviado por maran em 02/03/2009 - 14:25h:

Muito bom Elgio, hoje consigo interpretar perfeitamente este seu artigo,
pois estou realizando um curso voltado a estes aspectos.
Este mundo de bits é muito louco, VLSM, subnetar as redes, dividir o que já esta dividido.
Muito facinante, e o melhor é você depois de conhecer um pouco deste mundo, é ir em uma empresa e perguntar para alguem, porque você usa 255.255.255.0
Ai a pessoa responde :

É o padrão!!

Além de que é por ai que começa a segurança de uma rede, alem de sua performance, uma rede bem subnetada, pode evitar inasões, alem de que ganha em potencial, pois o broadcast é menor, assim consiguimos um menor delay!

Você poderia mostrar alguns outros exemplos um pouco diferentes na parte onde , explicou esta parte de /24 /28 /30, enfim!
Alguns exemplos de como é possivel descobrir qual é o host 900 da tal rede e em qual subrede o mesmo se encontra, enfim, para mostrar pra galera o quão longe podemos ir neste mundo.

Show de Bola, abraços


[32] Comentário enviado por jrassuncao em 23/03/2009 - 18:22h:

Gostei muito do seu artigo, 100%
Parabens
Sergio Junior


[33] Comentário enviado por xerxeslins em 24/03/2009 - 21:40h:

Gostei muito do artigo. Ajudou-me a entender um pouco mais sobre máscaras de rede.

Porém, fiquei com uma dúvida. Quebrei a cabeça tentando resolver, mas não consegui.

minha rede local possui um roteador com o seguinte IP:

192.168.2.1.

e tem 4 máquinas que recebem os seguintes IPs:

192.168.2.2
192.168.2.3
192.168.2.4
192.168.2.5

Como seria a notação da máscara da minha rede, supondo que eu não poderia acrescentar outras máquinas? (ou seja, não poderia existir o 192.168.2.6).

Se eu disser que é 192.168.2.0/24

eu estarei dizendo que o último octeto está livre para determinar vários hosts (mais de 5 inclusive), mas o que eu deveria colocar depois da barra ao invés de 24, se o intervalo máximo de hosts fosse de 192.168.2.1 até 192.168.2.5 apenas?

Obrigado



[34] Comentário enviado por elgio em 24/03/2009 - 22:11h:

Olá.

Bem, as máscaras de rede permitem dividir uma rede apenas em potência de 2. Não tem como definires uma máscara que lhe dê 3 máquinas, ou 5.

No seu caso específico, se usares um /29:

192.168.2.0/29
Rede: 192.168.2.0
Broadcast: 192.168.2.7

Ips válidos: de 192.168.2.1 até 192.168.2.6

192.168.2.8 já seria fora da rede!

De 192.168.2.1 até 192.168.2.5 NÃO TEM COMO.
Assim como se quisesse ter 9 máquinas (de 192.168.2.1 até 192.168.2.9) terias que puxar para um /28 criando uma rede com 16 ips!! 8, 16, 32, 64, 128, 256,... sempre potência de 2.


[35] Comentário enviado por cytron em 24/03/2009 - 22:20h:

Ou seja.... esqueça números ímpares! ;)

Quem quiser é só brincar nesta calculadora IP online:

http://www.subnet-calculator.com/


[36] Comentário enviado por xerxeslins em 24/03/2009 - 22:21h:

muito obrigado pela resposta!


[37] Comentário enviado por unixgeek em 15/04/2009 - 17:32h:

Existe a ferramenta "ipcalc" que provavelmente está nos repositórios de sua distribuição. Caso não esteja, http://jodies.de/ipcalc/

Meus 2 centavos.


[38] Comentário enviado por franciscosouza em 16/04/2009 - 16:11h:

Parabéns pelo artigo, não li inteiro. Li apenas algumas partes.

Parabéns por enfatizar que não é a máscara que define a classe, como as pessoas pensam.


[39] Comentário enviado por hunz em 06/05/2009 - 13:41h:

Achei muito bom o artigo, eu sou um desses que sempre dizia que a máscara de rede era 255.255.255.0 porque era padrão! rs...

Só não entendi em "como" a máscara pode ajudar a otimizar a distribuição de pacotes.

O que ele faz não é um IF/ELSE (mais ou menos)?
Se for da minha rede, envio direto pro endereço MAC, senão, envio pra fora...

Parabéns pelo artigo.

Att,
Thiago.


[40] Comentário enviado por blueshark em 12/05/2009 - 11:03h:

Otimo artigo


[41] Comentário enviado por cl2b2r em 16/03/2010 - 13:54h:

Excelente! Me fez relembrar muitas coisas que não usamos no dia-a-dia. Parabéns pelo artigo!


[42] Comentário enviado por eletrorei em 17/04/2010 - 18:46h:

parabens exelente


[43] Comentário enviado por spyke em 10/01/2012 - 16:42h:

amigo, estudei 1 semestre disso na escola, e demorei muito mais tempo pra aprender o que aprendi aqui, obrigado por essa aula, e continue a fazer artigos desse nível.


[44] Comentário enviado por piratex em 13/02/2012 - 02:22h:

Excelênte !! Estava com umas dúvidas, já faz 3 anos que me formei em Analise de Sistemas, lá paguei Redes básico e avançado, mas já havia esquecido de alguns conceitos e seu artigo me fez relembrar tudo =D Achei melhor inclusive do que abrir o Kurose ou o Tanenbaum !!! Muito obrigado !!


[45] Comentário enviado por z3r0_hide em 01/08/2013 - 09:55h:

Quando se deseja comunicar com uma máquina em outra rede e o gateway destino possui 3 pcs com ip em NAT! como posso enviar algo pro pc destino??


[46] Comentário enviado por cytron em 01/08/2013 - 12:28h:

<div style='background: #fffff4; border: 1px #d4d4c6; border-style: dashed; margin-left: 30px; margin-right: 10px; padding: 10px; '>
[45] Comentário enviado por z3r0_hide em 01/08/2013 - 09:55h:

Quando se deseja comunicar com uma máquina em outra rede e o gateway destino possui 3 pcs com ip em NAT! como posso enviar algo pro pc destino??</div>

Usando roteamento avançado. Existem várias maneiras, pode ser baseado no source ou redirecionamento de portas por exemplo.

Veja aqui no VOL sobre IPTABLES REDIRECT ou dport.


[47] Comentário enviado por guasca em 13/12/2013 - 13:51h:

Baaaah, olhei por cima aqui no trabalho, este artigo será foco dos estudos no final de semana!!!!!


[48] Comentário enviado por TecDogged em 10/02/2014 - 13:52h:

ótimo artigo, tem que term um tempo com muita atenção para ler isto ja que estou no horário de trabalho.
Minha dúvida é os cálculos de maskarades e gateway e Ip com por exemplo 192.168.0.1/24...
Eu esqueci esta aula.
Como posso fazer estes cálculos


[49] Comentário enviado por TecDogged em 04/04/2014 - 23:48h:

legal seu artigo terei de revisar e estudar isso porque estou na duvida ...


[50] Comentário enviado por ricardoifc em 27/06/2014 - 10:42h:

Muito bom......... bem mastigadinho hehehehe, gostaria de deixar como dica para um próximo assunto o IPV6, até mais abraço.



Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.