Estou executando um servidor Windows e tentando fazer com que ele use um endereço IPv6 estático para conexões de saída com outros hosts IPv6 (como o Gmail). Preciso disso porque o Gmail exige um registro ptr e não posso definir um para endereços aleatórios.
O endereço estático é configurado no host, mas também tem um endereço de privacidade temporário, assim como um endereço aleatório do roteador. Por padrão, o Windows usa o endereço de privacidade; parece que este é o comportamento esperado (e faz todo o sentido para pessoas / usuários que não definiram um endereço estático, mas eu fiz!).
Eu tentei desativar o endereço de privacidade com:
netsh int ipv6 set privacy disabled
Isso, de fato, elimina o endereço de privacidade, mas ainda tenho o endereço aleatório que o roteador atribuiu. Para desabilitar isso, foi dito que eu precisava desativar a "descoberta do roteador" usando este comando:
net interface ipv6 set interface 14 routerdiscovery=disabled
Ao fazer isso, toda a conectividade IPv6 é perdida. Se eu fizer isso enquanto estiver fazendo ping no Gmail, ele informará "Host de destino inacessível" assim que eu inserir o comando. Na configuração estática do IPv6, configurei o gateway padrão e prefixo o comprimento, por isso não vejo por que não é possível conectar. Provavelmente tem algo a ver com a falta de ARP no IPv6 e de alguma forma sendo incapaz de resolver o MAC do roteador, mas eu não sei como corrigir isso.
Por fim, tentei desativar a concessão do DHCPv6 com estes comandos:
netsh interface ipv6 set interface "IDMZ Team" managedaddress=disabled
netsh interface ipv6 set interface "IDMZ Team" otherstateful=disabled
Que foi em vão; o host continua a obter e usar o endereço IPv6 atribuído pelo roteador.
O roteador é um FritzBox 7340, que mostra todos os endereços IPv4 e IPv6 que o host (identificado pelo MAC) utiliza, mas não consigo alterar o endereço atribuído. Talvez isso possa ser feito através da interface telnet do roteador de alguma forma, mas, novamente, eu não saberia como fazer isso, mesmo que seja o caminho a percorrer.
Em resumo, qualquer um dos itens a seguir provavelmente resolveria o meu problema:
- Alterar o comportamento de seleção de endereço de origem do Windows.
- O Windows não recebe um endereço do roteador e não gera um endereço de privacidade;
- Peça ao roteador para entregar um endereço estático e fazer com que o Windows use isso como endereço de origem.
- Recupere a conectividade após desativar a descoberta do roteador no Windows.
Como alternativa, eu posso usar algum script (batch, perl, ...) para jogar fora todos os endereços IPv6, exceto o desejado, mas isso parece bastante hacky. Se é a única maneira (ou menos hacky que outra solução hacky), pode ser uma opção.
Obrigado!