Se você é da área de Infraestrutura de TI com certeza está aprendendo IPv6 ou sabe da necessidade de aprender como funciona um endereço IPv6, concorda?
Então nesse artigo vou te ensinar a calcular o endereço IPv6 de link local sem que você precise de calculador, o que é fundamental para provas de certificação como o CCNA da Cisco ou concursos públicos!
Ah, deixa eu avisar já… No final tem uma calculadora de endereço IPv6 que você pode utilizar quando quiser para verificar se seus cálculos estão corretos, por isso leia o artigo todo e faça exercícios para praticar!
O endereço IPv6 de Link-local pode ser utilizado como parte do processo de auto configuração e muitos outros processos vitais de redes IPv6.
Um host com endereço IPv6 pode sim fazer sua auto configuração sem necessitar de um servidor DHCP, sendo que nesse processo a placa de rede utiliza seu endereço de link local IPv6 para fazer essa autoconfiguração e na sequência solicitar os demais dados.
Calculando o Endereço IPv6 com EUI-64
Vamos a seguir mostrar as matemática por trás da criação do endereço IPv6 de link local através do EUI-64, padrão que estabelece como um endereço IPv6 de 128 bits pode ser formado com a utilização do MAC do computador.
Mas antes lembre-se que esse método garante que o endereço IPv6 de link local IPv6 EUI-64 será único na rede, pois assim como no IPv4 precisamos evitar conflitos de endereços IPv6! Mas como isso é garantido?
Simples! O endereço MAC por definição deve ser único, ou seja, não pode haver placa de rede com MAC duplicado no mundo, por isso utilizar o MAC torna o processo de autoconfiguração tão seguro com relação a unicidade dos endereços IPv6 locais e gerados automaticamente pelos hosts.
Então a matemática é bem simples… Como temos 48 bits no endereço MAC e para formar o endereçõ IPv6 precisamos de 128 bits o padrão EUI-64 desenvolve uma regra para “completar” os bits faltantes.
Basicamente o EUI-64 consiste em inserir FE80, que é o prefixo dos links locais, mais uma sequência de zeros para completar 64 bits como prefixo de rede, sendo que o MAC mais FE:FF formarão o ID de interface único de 64 bits para completar os 128 bits do endereço IPv6.
Além disso, tem uma inversão de bit no primeiro octeto do endereço MAC, mais especificamente o sétimo bit deve ser invertido, veja a sequência abaixo:
- Pegue o endereço MAC desejado, por exemplo, 52:74:f2:b1:a8:7f
- Coloque FF:FE no meio dele: 52:74:f2:FF:FE:b1:a8:7f
- Reformate para o padrão do IPv6 com 4 algarismos em Hexa por campo do endereço: 5274:f2ff:feb1:a87f
- Converta o primeiro octeto para binário (Dica: cada algarismo tem 4 bits, pegue os dois primeiros algarismos do IPv6 incompleto): 52 -> 01010010
- Inverta o sétimo Bit (da esquerda para direita ->): 01010010 -> 01010000
- Converta para Hexadecimal: 01010000 -> 50
- Troque o primeiro octeto recalculado (de 52 para 50): 5074:f2ff:feb1:a87f
- Insira o prefixo do link-local mais dois “dois pontos” (FE80::): FE80::5074:f2ff:feb1:a87f
Resumindo o endereço de Link Local EUI-64 é formado por: FE80 (prefixo) + Sequência de zeros + Seis primeiros algarismos Hexa do MAC com sétimo bit invertido + FF:FE + Seis últimos algarismos Hexa do endereço MAC.
Está feito! Agora você tem o endereço do link local padrão EUI-64 da sua placa de rede.
Veja exemplo gráfico abaixo com o MAC 00:12:7F:EB:6B:40.
Portanto o endereço IPv6 de link local do segundo exemplo será FE80::0212:7fff:feeb:6b40.
Você pode verificar o endereço de link local EUI-64 do seu computador com o comando “ipconfig /all” no prompt do Windows ou “ifconfig” no MAC-OS/Linus/Unix.
Uma boa dica prática é que você veja somente o MAC do seu computador, calcule o EUI-64 e verifique depois se ele está certo com o comando anterior ou na calculadora que está logo a seguir.
Abaixo deixei um conversor de MAC para IPv6 EUI-64 para que vocês possam verificar se suas contas estão corretas, basta usar o padrão de MAC separados de dois em dois algarismos Hexas e 2 pontos, por exemplo, 44:44:44:44:44:44.
Ah, se der algum problema ou a calculadora ficar meio lerda é só dar um F5 (refresh) na página que volta a funcionar! 😉
Conversor de MAC para Padrão IPv6 EUI-64
Se você está estudando IPv6 gostaria de recomendar mais dois artigos que escrevi sobre o assunto que podem com certeza te ajudar, seguem abaixo:
Espero que o artigo tenha sido útil e aguardo os comentários, dúvidas e sugestões no final dessa página na área de comentários!
É só descer um pouco que você encontra a área de comentários está lá embaixo…
Claro que você também pode usar os botões de compartilhamento se achar que o artigo vai ser útil para seus amigos.
Que a força esteja com você e até uma próxima!
9 Responses
Muito didático! Parabéns!!
Valeu Eduardo! 🙂
Boa noite. Excelente artigo e gostei muito!!! Só uma coisa, no item 6 não seria converter o binário pra decimal e sim para hexadecimal. Só pra poder corrigir e ficar 100%. abrs.
Valeu pelo comentário e pela colaboração, feito!
Se não se importar coloquei um trecho do seu artigo com referência completa pro seu, bem aqui: https://wiki.brasilpeeringforum.org/w/Acesso_via_IPv6_Link-Local
A ideia é ajudar a comunidade sempre e mais uma vez parabéns!
Boa Tarde.
Só uma observação, algo que notei na explicação.
Ao converter o 52 em binário, no exemplo, o resultado foi “52 -> 01010010”, porém esse binário em decimal representa 82, o binário em questão deveria ser o “00110100”.
Abraço à todos.
Oi Julio, não é 52 em decimal e sim e Hexa, a conversão do artigo está correta.
Parabéns ,o artigo foi muito bem explicativo . Estava até agora s entender direito essa questão de link local EUI-64 e ,depois de ler seu artigo consegui entender perfeitamente e nem preciso mais da calculadora.
EXCELENTE…tá mais bem explicado que a apostila do NIC.bR. Eu uso a apostila como texto e ela tem o curso completo de IPv6. Pago a disciplina “redes Avançadas” que é em cima do contexto do novo end, de ip, da minha graduação.
Abcs Mário e obrigado