Pour information pour ceux qui vont utiliser le dibbler-client que j'ai posté:
Parfois dibbler-client ne demarre pas automatiquement. Il faut donc :
Dans ER-v2.X, le service dibbler-client est démarré trop tôt et n'arrive pas à obtenir une prefix IPv6. Il suffit de redemarrer dibbler-client.
Pour le redemarrer automatiquement, j'ai mis en place le suivant:
Dans /config/config.boot :
set system task-scheduler task CheckInternetConnection executable path /config/scripts/test-connectivity.sh
set system task-scheduler task CheckInternetConnection interval 10m
Et le fichier /config/scripts/test-connectivity.sh (fichier fourni par @zoc et lègerement modifié pour mon cas d'usage) :
#!/bin/bash
function OK_ipv6 {
true
#logger "ConnectivityTest: IPv6 OK"
}
function NOK_ipv6 {
logger "ConnectivityTest: IPv6 NOK - restarting dibbler-client"
/bin/systemctl stop dibbler-client
sleep 60
/bin/systemctl start dibbler-client
sleep 90
/config/scripts/notification_net_restart.sh IPv6
}
/bin/ping6 -q -w 1 -c 1 $(ip -f inet6 r | grep default | cut -d ' ' -f 3,5 | sed 's/\ /%/' ) > /dev/null && OK_ipv6 || NOK_ipv6
Ensuite, une autre source de problèmes est le manque de la route par défaut (configuré via un paquet Router Advertisement). Ça m'arrive de devoir tout éteindre (SFP + router) pendant 10 seconds puis rebrancher pour que tout fonctionne. Sinon, tu peux mettre en dur la route par défaut et le sujet est réglé.
Pour configurer la route par défaut Orange à la main :
set protocols static route6 ::/0 next-hop fe80::ba0:bab interface eth1.832
Voici le fichier de configuration systemd pour dibbler-client (/lib/systemd/system/dibbler-client.service) :
[Unit]
Description=Dibbler
After=network.target
[Service]
Type=simple
ExecStart=/usr/sbin/dibbler-client start
ExecStop=/usr/sbin/dibbler-client stop
PrivateTmp=true
NonBlocking=yes
Restart=always
RestartSec=60
[Install]
WantedBy=multi-user.target