Parece que quando o dhclient é executado no eth0, recebo um endereço IPv4 do servidor DHCP e um escopo: Endereço IPv6 de link anexado ao eth0:
inet6 addr: fe80::a00:27ff:fed0:4d41/64 Scope:Link
Mas não vejo no dhclient-script como esse endereço está sendo adicionado. Em outra interface com um endereço IP estático, eu gostaria de adicionar um endereço IPv6 local do link e queria saber se havia um comando genérico para fazer isso sem conhecer o mac.
Edit:
Parece que o kernel atribui o endereço local do link quando você faz "ip link set dev ethX up" ou "ifconfig ethX up". No entanto, no meu caso, eu tinha um cabo conectado à interface que estava em DHCP e nenhum cabo conectado à interface que eu estava configurando estaticamente. Não posso verificar até segunda-feira, mas acho que o kernel não atribui endereços locais de link à interface se não houver link.
fonte
Respostas:
Os endereços locais de link são derivados do endereço MAC do dispositivo. Eles são gerados automaticamente como parte da abertura da interface. A configuração automática inclui um processo de descoberta para garantir que o endereço seja exclusivo na rede.
Um processo semelhante é usado para configurar automaticamente endereços roteáveis quando um anúncio do roteador está disponível. Esses endereços podem ser regenerados periodicamente para fornecer privacidade.
O RFC 4862 especifica os processos a serem seguidos.
fonte
Encontrei! Este comando não é suficiente:
Em vez disso, devo fazer:
Somente o último restaura o endereço local do link IPv6 em eth0.
Em outras palavras, minha distribuição parece ter algum código oculto em algum lugar que muda dinamicamente
net.ipv6.conf.eth0.disable_ipv6
toda vez que é solicitado que a rede seja ativada ou desativada. Sua milhagem pode variar.Cheguei ao fundo disso graças a um mero:
fonte