Ver Feed RSS

Redes de Computadores

Binário Parte 3 - Identificando ID e Broadcast da Rede IP

Avaliação: 2 votos, 5,00 média.

Introdução:


As redes de computadores com uso de IPv4 até pouco tempo era dividida em classes de IPs, sendo classe A, B, C e D, com a escassez de IPs essas classes passaram a não ser mais referenciado pois essa divisão provocava um desperdício de IPs, portanto era comum termos um IP conhecido e já era o suficiente para se colocar a máscara padrão do IP dependendo da classe, hoje isso pode causar alguns conflitos já que principalmente em redes corporativas fazer uso de sub redes com diversas máscaras e portanto para cada sub rede dessas existe pelo menos dois IPs reservados que não podem ser usados para endereços de hosts, o primeiro IP é o endereço de identificação da rede ou sub rede ou ID da Rede e o outro endereço reservado é o último endereço da Rede que é reservado para Broadcast, daí se escuta muito se falar que a capacidade de endereçamento de uma rede é 2^Nbits -2, exemplo em uma rede de máscara padrão /24 (255.255.255.0) temos os três primeiros octetos ou bytes reservado para a rede e sobra um octeto ou um byte para endereçamento de hosts, ou seja 8 bits, 2^8=256, temos então 256 IPs mais devemos subtrair 2 desse número pois o primeiro é o ID da rede e o último reservado para broadcast, portanto sobra 254, costuma se dizer que esses são IPs válidos já que apenas esses podem ser usados nos equipamentos de hosts (Desktops, Notebooks, Câmera IPs, servidores e todos os outros equipamento que se conecte a rede) e para saber quais são esses IPs na rede? Esse é o propósito desse tutorial, com base no endereço IP e da máscara descobrir o ID da rede e o broadcast.
Para que descobrimos esses dois IPs reservado precisamos primeiramente transformar de base decimal para base binário o endereço IP e a máscara, como o endereçamento IPv4 são divididos em 4 octetos separado por um ponto decimal, podemos montar uma pequena tabela com os valores das potências de 2^0 até 2^7 conforme a ilustração abaixo.
Clique na imagem para uma versão maior

Nome:	         rede-1.jpg
Visualizações:	2999
Tamanho: 	46,4 KB
ID:      	43309

A ideia é bem simples, feito a tabela com as potências, precisamos pegar uma sequência de potências que somadas deve da exatamente o valor que desejamos encontrar, sempre pegando do menor para o maior e somando, essa soma nunca deve ser superior ao que desejamos encontrar, para cada potência que pegamos para somar, colocamos um 1 abaixo e a potência que não queremos pegar colocamos 0 (zero) e assim montamos a sequencia de 1’s e 0’s correspondente.

ID da rede
Após o domínio de conversão de bases (decimal para binário) estamos pronto para começar descobrindo o ID da rede, vamos pegar como primeiro exemplo uma rede bem popular que tem em um dos host o IP 192.168.1.5 e máscara 255.255.255.0, o primeiro passo é transformar o IP e a máscara que estão em decimal para binário, acompanhe a ilustração abaixo que pode ajudar
Clique na imagem para uma versão maior

Nome:	         rede-2.jpg
Visualizações:	4664
Tamanho: 	115,9 KB
ID:      	43310
[Click para ampliar]

Só simplificando o resultado é o mostrado abaixo
Clique na imagem para uma versão maior

Nome:	         rede-3.jpg
Visualizações:	2793
Tamanho: 	64,3 KB
ID:      	43311
[Click para ampliar]

Agora fazemos a mesma coisa com a máscara 255.255.255.0, transforma de base decimal para binário, perceba que é bem mais simples que o IP já que aqui uma vez descobrindo o correspondente em binário do 255 é só repetir três vezes e depois vem o 0 (zero) que é uma sequência de oitos zero em binário.
Clique na imagem para uma versão maior

Nome:	         rede-4.jpg
Visualizações:	3648
Tamanho: 	77,4 KB
ID:      	43312

Já com todas as conversões prontas de IP e máscara agora é a parte que realmente interessa, é de descobrir qual o ID dessa rede, para realizar essa operação devemos fazer uma operação lógica chamado de AND (E), essa operação é feita bit a bit, ou seja cada bit do IP com o correspondente bit da máscara, abaixo temos uma tabela também conhecido por tabela da verdade onde temos o resultado da saída para cada bit de entrada, essa tabela é muito fácil de decorar, é só lembrar que a saída só é 1 quando todas as entradas forem 1, se alguma entrada tiver pelo menos um 0 (zero) a saída é 0 (zero) nem precisa olhar a outra entrada.
Clique na imagem para uma versão maior

Nome:	         Tabela-AND.jpg
Visualizações:	3127
Tamanho: 	38,9 KB
ID:      	43320

Para fazer essa operação obrigatoriamente os bits devem está alinhado, um abaixo do outro na sequência, pois a operação é feito bit a bit
Clique na imagem para uma versão maior

Nome:	         rede-5.jpg
Visualizações:	3118
Tamanho: 	120,6 KB
ID:      	43313
[Click para ampliar]

Perceba que o resultado só alterou o último octeto, que nesse caso ficou 192.168.1.0 que nesse caso é o ID dessa rede, com certeza todo mundo já percebeu que esse IP não pode ser usado nessa rede. Agora vamos fazer o mesmo exemplo usando uma sub rede diferente, o IP 192.168.1.65 e a máscara 255.255.255.192, é uma rede /26 ou seja no endereçamento do IPv4 o total são 32 bits e como essa rede é reservado 26 bits, sobrou 6 bits para hosts, com 6bits podemos endereçar 2^6=64 portanto 64 IPs no total, devemos descontar os 2 IPs que já foi mencionado anteriormente que é o ID da rede e o broadcast, sobra 62 IPs válidos para se ligar hosts, o primeiro passo é transformar as bases de decimal para binário do IP 192.168.1.65
Clique na imagem para uma versão maior

Nome:	         rede-6.jpg
Visualizações:	3118
Tamanho: 	62,2 KB
ID:      	43314


Depois transformar a base decimal para binário da máscara 255.255.255.192
Clique na imagem para uma versão maior

Nome:	         rede-7.jpg
Visualizações:	3221
Tamanho: 	28,6 KB
ID:      	43315


Com os valores do IP e da máscara já em binário e alinhado um abaixo do outro faça a operação AND bit a bit e o resultado que está em binário transforme para decimal e esse é o ID da rede 192.168.1.64
Clique na imagem para uma versão maior

Nome:	         rede-8.jpg
Visualizações:	4340
Tamanho: 	162,4 KB
ID:      	43316

Broadcast
Agora é o procedimento para se descobrir o endereço de broadcast, vamos usar os mesmos IPs anteriormente usados, sendo que um deles é bem popular que todos já conhece mais vamos usar apenas para aplicar a mesma operação para o segundo IP que é de uma sub rede que esse não sabemos, vamos ter que confiar nessa operação para descobrirmos. Vamos começar com o IP 192.168.1.5 e máscara 255.255.255.0, transforme o IP e máscara para binário, para descobrir o broadcast precisamos inverter os bits da máscara ou seja tudo que é 1 vira 0 (zero) e tudo que é 0 (zero) vira 1, isso apenas para os bits da máscara, os bits do IP não altera nada, agora alinhamos os bits do IP com os bits da máscara (invertidos) e fazemos uma operação lógica chamado de OR (OU), essa operação é bem simples, basta lembrar que a saída só vai ser 0 (zero) se todas as entradas forem 0 (zero), se tiver um 1 em uma ou nas duas entradas a saída já é 1, veja a tabela da verdade abaixo.
Clique na imagem para uma versão maior

Nome:	         Tabela-OR.jpg
Visualizações:	3804
Tamanho: 	38,5 KB
ID:      	43317




Com os bits alinhados é só realizar a operação, bit a bit do IP com os bits da máscara mais invertidos e temos o resultado já esperado por todos 192.168.1.255
Clique na imagem para uma versão maior

Nome:	         rede-9.jpg
Visualizações:	3193
Tamanho: 	205,1 KB
ID:      	43318
[Click para ampliar]

Agora o mesmo procedimento para uma rede desconhecida que usa o IP 192.168.1.65 e máscara 255.255.255.192, o procedimento é exatamente para descobrir o endereço de broadcast anterior, transforma o IP e máscara de decimal para binário, com a máscara já em binário invertemos todos os bits, alinhamos um a um os bits correspondente ao IP com os bits correspondente a máscara já invertido os bits e fazemos ama operação OR (OU) e o resultado é o endereço de broadcast dessa rede que nesse caso é 192.168.1.127
Clique na imagem para uma versão maior

Nome:	         rede-10.jpg
Visualizações:	4587
Tamanho: 	263,9 KB
ID:      	43319
[Click para ampliar]

Conclusão: Para trabalhar com redes de computadores esses dois procedimentos é interessante saber, muitas vezes um computador vem de um determinado departamento e ao ser ligado em um ponto de rede diferente e pode não acontecer de não funcionar ou até mesmo provocar um conflito de IPs com outros dispositivos, no Windows se colocar um IP de ID de rede ou de Broadcast é mostrado uma mensagem com o aviso e não é permitido, no Linux acabei de testar aqui com o comando “ifconfig eth0 192.168.1.0 netmask 255.255.255.0” e não deu mensagem ou qualquer aviso o comando foi aceito inclusive verifiquei com o comando “ifconfig” e tava lá o IP só que o computador saiu da rede ou seja não funcionou. Outra dica é praticar fazendo conversões de bases decimal, binário e hexadecimal é fundamental, até porque a notação do IPv6 é apresentado em base hexadecimal já que são 128 bits contra 32 bits do IPv4 o que se tornaria torturante representar um IPv6 em binário.
Categorias
Tutoriais

Comentários


+ Enviar Comentário