Le sujet épinglé manquant de structure et cohésion, je vous propose ce guide simple et rapide pour activer l'IPv6 sur votre ERLite-3 (ou autre routeur edgeMax). Ce guide part du principe que vous avez déjà un routeur ubiquiti en état de fonctionnement et correctement paramétré pour se connecter au DHCP Orange.
Ce guide part aussi du principe que vos interfaces sont paramétrées de la sorte:
eth0 -> LAN
eth1 -> WAN
Il vous tiendra de changer ces références dans les configurations qui vont suivre.
1) Mis en place du dibbler-clientConnectez vous a votre routeur, puis passez en mode root:
sudo -i
Puis telecharger dibbler-client (Merci zoc)
curl -L -k "https://lafibre.info/remplacer-livebox/en-cours-remplacer-sa-livebox-par-un-routeur-ubiquiti-edgemax/?action=dlattach;attach=24461" > dibbler.deb
dpkg -i dibbler.deb
Completer l'installation de dibbler (vos reponses pendant l'installation n'ont que tres peux d'importance, nous allons manuellement changer la config).
2)Paramétrer dibblerouvrez /etc/dibbler/client.conf et remplacez la configuration par celle-ci:
(N'oubliez pas de remplacer les "XX" par la valeur retourné par se script:
https://jsfiddle.net/kgersen/45zudr15/embedded/result/ )
# Defaults for dibbler-client.
# installed at /etc/dibbler/client.conf by the maintainer scripts
# 8 (Debug) is most verbose. 7 (Info) is usually the best option
log-level 7
duid-type duid-ll
# To perform stateless (i.e. options only) configuration, uncomment
# this line below and remove any "ia" keywords from interface definitions
# stateless
downlink-prefix-ifaces "none"
script "/etc/dibbler/radvd.sh"
iface eth1.832 {
pd
option 16 hex 00:00:04:0e:00:05:73:61:67:65:6d
option 15 hex 00:2b:46:53:56:44:53:4c:5f:6c:69:76:65:62:6f:78:2e:49:6e:74:65:72:6e:65:74:2e:73:6f:66:74:61:74:68:6f:6d:65:2e:6c:69:76:65:62:6f:78:34
option 11 hex 00:00:00:00:00:00:00:00:00:00:00:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX
option 11 hex 00:00:00:00:00:00:00:00:00:00:00:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX
option dns-server
}
Une fois sauvegardé, créez puis ouvrez le fichier /etc/dibbler/radvd.sh en y ajoutant la configuration suivante:
#!/bin/bash
if [ "$SRV_MESSAGE" != "REPLY" ]
then
exit 1
fi
function fullPrefix () {
local input=$1
local o=""
local z=""
input=$(tr 'A-F' 'a-f' <<< $input )
while [ "$o" != "$input" ]; do
o="$input"
input="$( sed 's|:\([0-9a-f]\{3\}\):|:0\1:|g' <<< "$input" )"
input="$( sed 's|:\([0-9a-f]\{3\}\)$|:0\1|g' <<< "$input" )"
input="$( sed 's|^\([0-9a-f]\{3\}\):|0\1:|g' <<< "$input" )"
input="$( sed 's|:\([0-9a-f]\{2\}\):|:00\1:|g' <<< "$input" )"
input="$( sed 's|:\([0-9a-f]\{2\}\)$|:00\1|g' <<< "$input" )"
input="$( sed 's|^\([0-9a-f]\{2\}\):|00\1:|g' <<< "$input" )"
input="$( sed 's|:\([0-9a-f]\):|:000\1:|g' <<< "$input" )"
input="$( sed 's|:\([0-9a-f]\)$|:000\1|g' <<< "$input" )"
input="$( sed 's|^\([0-9a-f]\):|000\1:|g' <<< "$input" )"
done
grep -qs "::" <<< "$input"
if [ "$?" -eq 0 ]; then
GRPS="$( sed 's|[0-9a-f]||g' <<< "$input" | wc -m )"
((GRPS--)) # carriage return
((MISSING=8-GRPS))
for ((i=0;i<$MISSING;i++)); do
z="$z:0000"
done
input="$( sed 's|\(.\)::\(.\)|\1'$z':\2|g' <<< "$input" )"
input="$( sed 's|\(.\)::$|\1'$z':0000|g' <<< "$input" )"
input="$( sed 's|^::\(.\)|'$z':0000:\1|g;s|^:||g' <<< "$input" )"
fi
echo "$input"
}
ETH0_SUFFIX="01::1"
STATUS_FILE=/run/dibbler.lease
if [ -f "$STATUS_FILE" ];
then
source $STATUS_FILE
fi
TRIM_SIZE=17
FULLPREFIX=$( fullPrefix $PREFIX1 )
PREFIX1=${FULLPREFIX:0:TRIM_SIZE}
if [ "$PREFIX1" != "$CURRENT_PREFIX1" ]
then
if [ "$CURRENT_PREFIX1" != "" ]
then
ip addr delete "$CURRENT_PREFIX1$ETH0_SUFFIX/64" dev eth0
fi
echo "CURRENT_PREFIX1=$PREFIX1" > $STATUS_FILE
ip addr add "$PREFIX1$ETH0_SUFFIX/64" dev eth0
service radvd restart >/dev/null 2>&1
fi
Changez les permissions du fichier pour le rendre exécutable: chmod 755 /etc/dibbler/radvd.sh
Enfin, créez puis ouvrez le fichier /config/scripts/post-config.d/dibbler-client.sh puis y ajouter:
#!/bin/bash
service dibbler-client restart
Changez les permissions du fichier pour le rendre exécutable: chmod 755 /config/scripts/post-config.d/dibbler-client.sh
Vous voila fini avec la partie dibbler.
3) Paramétrer le routeurC'est la partie la plus délicate, car chacun ici aura un fichier de configuration unique a lui même, il m'est donc impossible de vous donnez un fichier config.boot déjà tout prêt. Je vais en revanche vous indiquer les parties de configurations a rajouter, en essayant d’être le plus clair possible.
Je vous conseille je faire une copie de votre configuration existante (cp /config/config.boot /config/configipv6.boot) et de faire vos modifications sur ce fichier la.
3 - 1) Les regles firewall
Ces lignes sont a rajouter a la section "firewall" de votre configuration:
ipv6-name WANv6_IN {
default-action drop
description "WANv6 inbound traffic forwarded to LAN"
rule 10 {
action accept
description "Allow established/related"
state {
established enable
related enable
}
}
rule 20 {
action drop
description "Drop invalid state"
state {
invalid enable
}
}
rule 30 {
action accept
description "Allow ICMPv6"
log disable
protocol icmpv6
}
}
ipv6-name WANv6_LOCAL {
default-action drop
description "WANv6 inbound traffic to the router"
rule 10 {
action accept
description "Allow established/related"
state {
established enable
related enable
}
}
rule 20 {
action drop
description "Drop invalid state"
state {
invalid enable
}
}
rule 30 {
action accept
description "Allow ICMPv6"
log disable
protocol icmpv6
}
rule 40 {
action accept
description "Allow DHCPv6"
destination {
port 546
}
protocol udp
source {
port 547
}
}
}
ipv6-name WANv6_OUT {
default-action accept
description "WANv6 outbound traffic"
rule 10 {
action accept
description "Allow established/related"
state {
established enable
related enable
}
}
rule 20 {
action reject
description "Reject invalid state"
state {
invalid enable
}
}
}
3 - 2) Configution de l'interface LAN eth0
Ces lignes sont a rajouter a la section "interfaces > ethernet eth0" de votre configuration:
ipv6 {
dup-addr-detect-transmits 1
router-advert {
cur-hop-limit 64
link-mtu 0
managed-flag false
max-interval 600
other-config-flag false
prefix ::/64 {
autonomous-flag true
on-link-flag true
preferred-lifetime 14400
valid-lifetime 18000
}
reachable-time 0
retrans-timer 0
send-advert true
}
}
3 - 3) Configution de l'interface WAN eth1.832
Ces lignes sont a rajouter a la section "interfaces > ethernet eth1 > vif 832" de votre configuration:
ipv6 {
address {
autoconf
}
dup-addr-detect-transmits 1
}
Ces lignes sont a rajouter a la section "interfaces > ethernet eth1 > vif 832 > firewall > in" de votre configuration:
ipv6-name WANv6_IN
Ces lignes sont a rajouter a la section "interfaces > ethernet eth1 > vif 832 > firewall > local" de votre configuration:
ipv6-name WANv6_LOCAL
Il ne vous reste maintenant plus qu'a appliquer votre configuration et a rebooter votre routeur. Vous devriez a present avoir de l'IPv6!
configure
load configipv6.boot
commit
save
exit
reboot