
Estou tentando configurar o NetworkManager para executar a seguinte ação em uma interface
ip route add ::/0 dev he-ipv6
he-ipv6
é um túnel de modo sit ipv4 ponto a ponto e a execução do comando acima funciona diretamente. Infelizmente, quando o dispositivo é reinicializado, o gateway padrão não é reconfigurado e, portanto, todo o tráfego IPv6 fora da rede é eliminado.
Eu tentei configurar uma rota manual via:
nmcli c modify he-ipv6 ipv6.routes '::/0'
mas é claro que o nmcli não permitirá que você configure rotas estáticas para o gateway padrão.
Error: failed to modify ipv6.routes: invalid prefix '0'; <1-128> allowed.
Responder1
No final achei mais limpo criar uma forma bem simplesgerenciador de rede(8)Script dispatcher.d para adicionar a rota quando a interface ficar online:
/etc/NetworkManager/dispatcher.d/99-he-ipv6-add-default-route
#!/bin/bash
[[ "${1}" -ne "he-ipv6" ]] && exit
if [[ "${2}" -eq "up" ]]; then
ip route add ::/0 dev he-ipv6
fi
Responder2
Na verdade, você pode configurar toda a conexão do túnel usando nmcli, veja Página wiki do Fedorasobre isso.
nmcli connection add type ip-tunnel con-name sit1 ifname sit1 mode sit \
remote SERVER_IPV4_ADDRESS -- ipv4.method disabled ipv6.method manual \
ipv6.address CLIENT_IPV6_ADDRESS ipv6.gateway SERVER_IPV6_ADDRESS \
ip-tunnel.ttl 64
O acima não precisa de um script de despachante e sobrevive a reinicializações.