Geralmente, ao ver um número telefônico você sabe se está ligando para um telefone fixo ou celular. Isso ocorre porque o formato do número está organizado agrupando os dígitos de acordo com o tipo de serviços, região geográfica, e identificação dos clientes. Com os endereços IP acontece algo semelhante.
Utilizados para identificar todos os dispositivos conectados a Internet, sua estrutura precisa estar organizada de alguma forma para garantir que essa identificação seja eficiente, permitindo separar esses endereços por funções específicas e apontar em qual localidade determinado endereço está sendo utilizado. Este é a primeira parte do vídeo: "Os endereços IP não são todos iguais", feito pelo NIC. br.
Há duas versões do Protocolo Internet. O IPv4, que é a versão antiga. E o IPv6, a versão mais atual do protocolo.
Estamos em um momento de transição na Internet, em que ambas as versões são usadas. Você deve se lembrar que os computadores trabalham sempre com zeros e uns, com bits. Um endereço IPv4 é composto por 32 bits.
Isso permite gerar 2ˆ32 endereços distintos, aproximadamente 4 bilhões de combinações diferentes. Para representar um IPv4, poderíamos simplesmente escrever os 32 zeros e uns em sequência. Mas você deve estar se perguntando: "Como vou conseguir trabalhar com esse monte de zeros e uns"?
Ok, números binários são bons para computadores, mas não para seres humanos. Por isso, o endereço IPv4 normalmente é representado separando os 32 bits em 4 conjuntos de 8 bits, chamados de octetos, convertendo-os para números decimais e separando cada conjunto por pontos. Mais amigável, não?
! E os endereços IPv6? O IPv6 foi desenvolvido principalmente para suprir a falta de endereços IPv4.
Para isso, o tamanho do endereço aumentou de 32 para 128 bits. Com isso são possíveis 2^128 endereços distintos, ou 340 undecilhões de endereços IP. Isso representa mais de 48 quintilhões de endereços para cada ser humano no planeta Terra.
Mas não fique impressionado com esses números, pois com o IPv6 normalmente distribuímos grandes redes, e não nos preocupamos mais com quantidade de IPs individuais, como fazíamos com o IPv4, mas sim com a quantidade de redes e subredes que conseguimos gerar. O formato também foi modificado, pois para uma quantidade tão grande de bits, o padrão do IPv4 não é eficiente. Optou-se por agrupar os 128 bits em 8 conjuntos de 16 bits, chamados de hexadecatetos, separados por dois pontos.
E em vez de usar números decimais, eles são representados por números hexadecimais, utilizando dígitos de 0 a 9 e letras de A até F. Cada dígito representa 4 bits. As letras podem ser escritas tanto com caracteres maiúsculos quanto minúsculos.
E quando possível, pode-se abreviar o endereço omitindo os zeros a esquerda de cada hexadecateto. Outra possibilidade para a abreviação é substituir um grande grupo contínuo de zeros por "::". Mas tenha cuidado, pois para evitar ambiguidades, essa forma de abreviação só pode aparecer uma única vez em um endereço.
Os bits dos endereços IPv4 e IPv6, além de identificar, também permitem localizar um dispositivo conectado à Internet. Calma, provavelmente ninguém baterá na porta da sua casa apenas sabendo qual é o seu endereço IP. Essa localização se refere a qual rede os pacotes de dados devem ser enviados.
O endereço IP é dividido em duas partes. Os bits iniciais do endereço identificam a rede onde o dispositivo está conectado. É o prefixo de rede, e é com essa informação que os protocolos de roteamento conseguem encaminhar os pacotes de dados à rede correta.
Podemos pensar também no prefixo como uma representação de todos os IPs daquela rede. Os bits finais identificam, de forma única, o dispositivo. É a parte do endereço chamada de identificador de interface, e com essa informação, os protocolos de roteamento conseguem encaminhar os pacotes de dados até os destinos finais.
No IPv6, por padrão, o identificador de interface tem 64 bits, e o prefixo de rede também tem 64 bits. Mas as redes podem ser agrupadas em redes maiores, gerando prefixos com menos bits e, além disso, há algumas exceções, que podem gerar prefixos com mais bits. No IPv4 o formato é mais livre, não há um padrão para quantos bits identificam os dispositivos, e quantos bits identificam a rede.
Para representar o prefixo de uma rede, tomamos o menor IP daquela rede, ou seja, com todos os bits do identificador de interface iguais a zero, seguido de "/" (barra) e do número de bits do prefixo. Essa notação vale tanto para o IPv4, quanto para o IPv6. No IPv4 pode-se usar também uma máscara, com todos os bits que representam a rede setados e todos os bits que identificam o dispositivo iguais a zero, representada na notação de octetos separados por pontos.
Se você fizer um AND lógico bit a bit da máscara com um IP daquela rede, obterá o prefixo da rede. No IPv6 não se usa a representação por máscaras. Note que para uma determinada rede, os bits que representam a mesma não variam, são uma parte fixa, comum a todos os endereços.
Apenas os bits restantes podem ser alterados para identificar cada dispositivo. No IPv6 é esperado que o menor segmento de rede seja sempre /64, ou seja, os primeiros 64 bits do endereço representam a rede e os 64 bits finais identificam a interface do dispositivo. Apenas em alguns casos específicos, como em links ponto a ponto, aceita-se o uso de redes menores, como /127 ou /126.
Nosso estudo não termina aqui. Assista a segunda parte deste vídeo para aprender como os endereços IP se dividem por funcionalidades, e entenda melhor conceitos como unicast, multicast e anycast. Você também pode se aprofundar no assunto buscando na Internet informações sobre o serviço de whois, sobre atribuição de blocos IP pela IANA e sobre geolocalização baseada em IPs.
Assine o canal NICbrVideos no Youtube e fique atento a nossos novos vídeos.