quarta-feira, 6 de maio de 2015

Endereçamento IPv4

Esse artigo aborda preliminarmente o conceito de protocolo ARP e mais extensamente como a máscara de sub-rede atua.

Foi visto no artigo sobre protocolo IPv4 que os computadores utilizam endereço IP como credencial para poder se identificar e se comunicar, foi visto no artigo sobre switches e sobre o que é a Internet, que os computadores utilizam a rede interna para se comunicar entre si e até para acessar a Internet.
Mas como um computador saber que determinado IP destinatário ou remetente pertence ou não à rede interna (seu escritório ou casa) ou externa (possivelmente a Internet)?
O que o computador faz quando ele sabe que determinado IP destino faz parte de uma rede externa e ele quer enviar dados para o computador com esse IP externo?
A resposta está na máscara de sub-rede, um registro que o computador tem do quanto o endereço do IP destino ou remetente deve ser parecido com o dele para ser considerado o IP de uma máquina da mesma rede.

A máscara permite um computador saber que o IP do site do google.com por exemplo é diferente do dele, fazendo com que ele envie o pacote para a porta Ethernet interna do roteador para o roteador enviar o pacote para a porta externa (Internet).
O computador sabe o endereço MAC (descrito no artigo sobre Switch) da porta Ethernet interna do roteador para poder enviar um pacote IP para ele, mas como? É nessa hora que o protocolo ARP atua, o computador que não conhece o endereço MAC (é bom relembrar que o MAC é uma credencial utilizada para se comunicar na rede interna) envia pacotes ARP para toda a rede interna perguntando o endereço MAC de quem possui o IP de porta interna de roteador (essa porta interna é também chamada de Gateway, que significa portão, no caso um portão para o mundo externo, o mundo da Internet), quem possuir esse IP, retorna um pacote ARP com destino à máquina que fez o questionamento, como o ARP estará encapsulado em um quadro Ethernet contendo endereço MAC como remetente, a questão estará respondida.
E como a máscara de sub-rede funciona exatamente?

A máscara de sub-rede possui o mesmo tamanho de um endereço IP, são 4 octetos, ou seja, 4 campos com 8 bits (logo, 2 elevado a 8 ou 256 possibilidades em cada octeto), se um bit de uma determinada posição for 1 (valor binário um), nesta mesma posição o bit do IP de outro computador deve ser igual da máquina com esta máscara de sub-rede, é recomendável uso de calculadora para converter decimal em Binário (o Windows possuiu uma, é só abrir a calculadora e ativar o modo programador), nos exemplos abaixo os bits 1 da máscara e os bits iguais dos IPs diferentes de cada comparação entre dois computadores diferentes está marcada em vermelho e os que devem ser iguais estão em verde,  para facilitar o entendimento:


decimal
binário
Máscara de sub-rede computador do Renato
255.255.254.0
11111111.11111111.11111110.00000000
IP do computador do Renato
192.168.0.3
10100010.10101000.00000000.00000011
IP do computador do Márcio
192.168.3.7
10100010.10101000.00000011.00000111
Computador do Renato considera o do Márcio como sendo da mesma rede?
Não, veja que o sétimo bit do terceiro octeto não é igual para os dois IPs, como manda a mascara de subrede.



decimal
binário
Máscara de sub-rede computador do Jorge
255.255.255.0
11111111.11111111.11111111.00000000
IP do computador do Jorge
192.168.0.3
10100010.10101000.00000000.00000011
IP do computador do Lucas
192.168.0.7
10100010.10101000.00000000.00000111
Computador do Jorge considera o do Márcio como sendo da mesma rede?
Sim, para todas as posições marcadas pelos bits 1 da máscara os dois IPs são iguais

O caso mais comum em que um computador percebe que outro faz parte de outra rede é quando há diferença entre localidade das redes, e o caso mais comum pra isso acontecer, é uma rede ser interna e a outra ser externa voltada para o provedor (que conecta à internet), como por exemplo:


decimal
binário
Máscara de sub-rede computador do Renato
255.255.255.0
11111111.11111111.11111111.00000000
IP do computador do Renato (Rede Interna)
192.168.0.3
10100010.10101000.00000000.00000011
IP do Google.com
216.58.219.100
11011000.00111010.11011011.01100100
Computador do Renato considera o do Márcio como sendo da mesma rede?
Não, novamente há vários bits diferentes nas posições marcadas pela máscara, agora perceba também todos os 3 primeiros octetos pertencem a redes diferentes.


Um comentário:

  1. Como sempre tudo muito bem explicado, o blog é muito bom, dá pra ver que tem muita dedicação e cuidado nesse trabalho. Nos ajuda muito!
    Muito obrigada! =D

    ResponderExcluir