Gostaria que os dispositivos na minha rede configurassem automaticamente os endereços ULA em um prefixo gerado por https://www.unique-local-ipv6.com/ na minha rede, que é predominantemente somente IPv6.
Meu roteador principal está rodando OpenBSD 7.4 e estou rodando rad
com a seguinte configuração:
dns {
nameserver {
fdd0:c720:85fa:100::1
}
}
interface igc1 {
prefix fdd0:c720:85fa:100::/64
}
interface igc3 {
prefix fdd0:c720:85fa:100::/64
}
Configurei minha interface principal com um endereço ULA IPv6 adicional da seguinte maneira (/etc/hostname.igc0):
inet autoconf
inet6 autoconf
inet6 alias fdd0:c720:85fa:100::1 64
Minha máquina cliente (também OpenBSD 7.4) também está configurada para configurar sua interface Ethernet usando inet6 autoconf
. Ele obtém um endereço ULA IPv6 em fdd0:c720:85fa:100::/64, mas nunca recebe um anúncio de vizinho ao enviar uma solicitação de vizinho para fdd0:c720:85fa:100::1:
router# tcpdump -i igc3 ip6
10:02:52.296838 fe80::6af7:28ff:fe64:348d > ff02::1:ff00:1: icmp6: neighbor sol: who has fdd0:c720:85fa:100::1
10:02:53.296831 fe80::6af7:28ff:fe64:348d > ff02::1:ff00:1: icmp6: neighbor sol: who has fdd0:c720:85fa:100::1
10:02:54.296897 fe80::6af7:28ff:fe64:348d > ff02::1:ff00:1: icmp6: neighbor sol: who has fdd0:c720:85fa:100::1
10:02:55.306817 fe80::6af7:28ff:fe64:348d > ff02::1:ff00:1: icmp6: neighbor sol: who has fdd0:c720:85fa:100::1
10:02:56.306761 fe80::6af7:28ff:fe64:348d > ff02::1:ff00:1: icmp6: neighbor sol: who has fdd0:c720:85fa:100::1
Endereços em fdd0:c720:85fa:100::/64 atualmente não são roteáveis. Acho que ndp -a
confirma isso (ao executar no roteador):
Neighbor Linklayer Address Netif Expire S Flags
...
fdd0:c720:85fa:100::1 a8:b8:e0:01:d0:51 igc0 permanent R l
fdd0:c720:85fa:100:222b:20ff:fef7:a413 (incomplete) igc0 expired N
fdd0:c720:85fa:100:6094:e251:66e6:7bc9 (incomplete) igc0 expired N
fdd0:c720:85fa:100:6754:e5:a200:1d9c (incomplete) igc0 expired N
fdd0:c720:85fa:100:bfbf:5645:c950:385f (incomplete) igc0 expired N
Estou bastante convencido de que estou perdendo algo simples, mas não entendo o quê. Tentei desabilitar o PF em ambas as máquinas sem efeito. Eu li as páginas de manual de slaacd(8), hostname.if(5), ifconfig(8), rad(8), & rad.conf(5) e não encontrei nada que parecesse (para mim) ser relevante.
Os endereços GUA IPv6 da minha delegação de prefixo retornados pelo meu ISP funcionam bem em todos os meus dispositivos. Quero usar ULAs para endereçamento interno, pois minha delegação de prefixo do meu ISP não é estática e já foi alterada duas vezes.
Mais detalhes (arquivos de configuração adicionais, dmesg, etc.) podem ser encontrados no OpenBSD Misc Mailing List Archive , pois também pedi ajuda lá.
O que estou fazendo de errado aqui?
(Repostado da resposta da minha lista de discussão do OpenBSD)
Ok, acho que descobri.
Meu principal problema era que eu estava atribuindo prefixos manualmente no rad.conf e, em seguida, atribuindo a cada interface um endereço no mesmo prefix . Isto criou algum tipo de conflito – cuja natureza ainda não compreendo completamente.
Esta foi a linha principal que perdi no rad.conf(5):
Portanto, desde que minha interface tenha ambos os endereços atribuídos em seus respectivos prefixos, o rad poderá atendê-los sem qualquer configuração extra.
Aqui está meu /etc/hostname.igc1 final:
E meu /etc/rad.conf final:
Agora, os dispositivos da minha rede estão recebendo endereços GUA e ULA atribuídos automaticamente por meio do SLAAC.