Auteur Sujet: TUTO - Remplacer sa Livebox par routeur Ubiquiti + LIVEBOX (PARTIE 2 IPV6)  (Lu 30453 fois)

0 Membres et 1 Invité sur ce sujet

nanostra

  • Abonné Orange Fibre
  • *
  • Messages: 109
  • Lambersart 59
    • Speedtest
TUTO - Edgerouter ERPro-8 pour Internet + LIVEBOX V4 DHCP pour TV et télephone
ARCHITECTURE ORANGE DHCP - PARTIE 2 IPV6 (IPV4 traité dans partie 1 du TUTO, voir lien plus bas)


IMPLEMENTATION IPV6 - IMPLEMENTATION IPV6 - IMPLEMENTATION IPV6

A JOUR AU 12/08/2018

--> TESTE SUR FIRMWARE 1.10.3 ET ER8PRO
--> TESTE SUR FIRMWARE 1.10.5 ET ER8PRO

22/05/2016 AJOUT STATIC ROUTE IPV6 SUR eth1.832
pour info, commande set si vous ne modifiez pas le fichier de config en exemple :
set protocols static route6 ::/0 next-hop fe80::ba0:bab interface eth1.832
IMPERATIF, AVANT D'ATTAQUER CE TUTO, AVOIR REALISE LA PREMIERE PARTIE IPV4 QUI N'EST PAS REPRISE DANS CE TUTO.
PARTIE 1 IPV4 --> https://lafibre.info/remplacer-livebox/tuto-edgerouter-erpro-8-pour-internet-livebox-dhcp-pour-tv-et-telephone/


Fortement inspiré du post de geoffreyc ici https://lafibre.info/remplacer-livebox/guide-erlite-3-ipv6-sans-livebox-dhcp/
et bien entendu des travaux de Zoc, Kgersen et tous les autres contributeurs. J'ai adapté le tuto de geoffreyc afin qu'il soit dans la continuité du la première partie du TUTO et pour faciliter la vie des plus téméraires. Dans le cas contraire, je me serai contenter de faire un lien... merci beaucoup à geoffreyc pour le travail de synthèse qu'il a effectué.

RAPPEL DE LA CONFIGURATION :

CABLAGE DU ROUTEUR ET ADRESSAGE RESEAU :

   ETH0 --> LIVEBOX --> 192.168.2.1/24 (adresse différente de celle configurée dans la LIVEBOX) + SERVEUR DHCP
                 LIVEBOX cable entre ETH0 du Routeur et port Rouge Internet (fibre) de la LIVEBOX
                 LES BOX TV sont connectées sur la LIVEBOX tout comme le téléphone
   ETH1 --> PRISE RJ45 DE L'ONT (ARRIVEE FIBRE) --> 192.168.10.x/24 + SERVEUR DHCP
   ETH7 --> VERS RESEAU LOCAL (VERS SWITCH) --> 192.168.10.1 + SERVEUR DHCP
   
L'ON UTILISERA TOUJOURS LE USER root pour les transferts, attentions aux droits sous UNIX et aux retours chariots qui doivent être au format UNIX

1/ Installation de dibbler-client compilé par ZOC

      copier le fichier dibbler.deb sous /tmp avec filezilla et user root
      se connecter ensuite avec putty en root au routeur
     
      puis :
     
cd /tmp
dpkg -i dibbler.deb
     
      aux diverses questions répondre oui au lancement lors du démarrage et activer service DNS.. en fait ces choix n'ont pas beaucoup d'importance, l'on écrasera par la suite le fichier de config...
   
2/ Fichier de configuration dibbler

      Aller sous /etc/dibbler et écraser le contenu du fichier client.conf avec le contenu qui suit.
      Remplacer le XX:XX... par la string obtenue lors de la partie 1 du tuto IPV4 chapitre 3.

     Rappel --> avec le calculateur javascript fourni par kgersen (lien içi pour rappel : https://jsfiddle.net/kgersen/45zudr15/embedded/result/)

      --> faire un chmod 755 sur client.conf
     
      Pour rappel, ce fichier de configuration est prévu pour un ONT (WAN) branché sur eth1
     
# 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
}

3/ script radvd.sh de ZOC

      --> à copier dans même répertoire que client.conf radvd.sh sous /etc/dibbler/

      --> faire un chmod 755 sur radvd.sh
     
       Pour rappel, ce fichier de configuration est prévu pour un LAN branché en eth7 (derrière mon eth7 se trouve un switch qui dessert l'ensemble des machines de la maison en dehors de la Livebox qui est en eth0)
   
#!/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"
}

ETH7_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$ETH7_SUFFIX/64" dev eth7
                fi

                echo "CURRENT_PREFIX1=$PREFIX1" > $STATUS_FILE

                ip addr add "$PREFIX1$ETH7_SUFFIX/64" dev eth7
                service radvd restart >/dev/null 2>&1
fi

4/ script de démarrage dibbler.sh

      --> script dibbler.sh à copier sous /config/scripts/post-config.d et faire un chmod 775
      --> si le répertoire post-config.d n'existe pas, le créer et faire un chmod 775

#!/bin/bash

service dibbler-client restart

SUITE SUR POST SUIVANT...
« Modifié: 12 août 2018 à 17:17:26 par nanostra »

nanostra

  • Abonné Orange Fibre
  • *
  • Messages: 109
  • Lambersart 59
    • Speedtest
5/ Fichier de config à adpater pour prise en charge IPV4 + IPV6

     --> Faire un DIF avec le fichier de config créé lors du TUTO PARTIE 1 (IPV4)
     --> Tous les blocs ipv6 { sont nouveaux par rapport au config.boot de la partie 1 du TUTO
     --> configip46.boot (bien entendu personnalisé à votre config) à copier sous /config/configip46.boot
     
firewall {
    all-ping enable
    broadcast-ping disable
    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
            }
        }
    }
    ipv6-receive-redirects disable
    ipv6-src-route disable
    ip-src-route disable
    log-martians enable
    name WAN_IN {
        default-action drop
        description "WAN to internal"
        enable-default-log
        rule 10 {
            action accept
            description "Allow established/related"
            log disable
            protocol all
            state {
                established enable
                invalid disable
                new disable
                related enable
            }
        }
        rule 20 {
            action drop
            description "Drop invalid state"
            log disable
            protocol all
            state {
                established disable
                invalid enable
                new disable
                related disable
            }
        }
    }
    name WAN_LOCAL {
        default-action drop
        description "WAN to router"
        rule 1 {
            action accept
            description "Allow established/related"
            state {
                established enable
                related enable
            }
        }
        rule 2 {
            action accept
            description "Allow Ping"
            destination {
                group {
                    address-group ADDRv4_eth7
                }
            }
            log enable
            protocol icmp
        }
        rule 3 {
            action drop
            description "Drop invalid state"
            log disable
            state {
                invalid enable
            }
        }
    }
    options {
    }
    receive-redirects disable
    send-redirects enable
    source-validation disable
    syn-cookies enable
}
interfaces {
    bridge br0 {
        aging 300
        bridged-conntrack disable
        description "bro -> eth0.838 LIVEBOX (VoD)"
        hello-time 2
        max-age 20
        priority 0
        promiscuous disable
        stp false
    }
    bridge br1 {
        aging 300
        bridged-conntrack disable
        description "br1 -> eth0.840 LIVEBOX (ZAPPING + CANAL 1)"
        hello-time 2
        max-age 20
        priority 0
        promiscuous disable
        stp false
    }
    ethernet eth0 {
        description "eth0 VERS LIVEBOX"
        duplex auto
        speed auto
        vif 832 {
            address 192.168.2.1/24
            description "eth0.832 LIVEBOX (INTERNET + VOIP + CANAL 2)"
        }
        vif 838 {
            bridge-group {
                bridge br0
            }
            description "eth0.838 LIVEBOX (VoD)"
            egress-qos "0:4 1:4 2:4 3:4 4:4 5:4 6:4 7:4"
        }
        vif 840 {
            bridge-group {
                bridge br1
            }
            description "eth0.840 LIVEBOX (ZAPPING + CANAL 1)"
            egress-qos "0:5 1:5 2:5 3:5 4:5 5:5 6:5 7:5"
        }
    }
    ethernet eth1 {
        description "eth1 ONT (FIBRE RJ45)"
        duplex auto
        speed auto
        vif 832 {
            address dhcp
            description "eth1.832 (INTERNET + VOIP + CANAL 2)"
            dhcp-options {
                client-option "send vendor-class-identifier &quot;sagem&quot;;"
                client-option "send user-class &quot;\053FSVDSL_livebox.Internet.softathome.Livebox4&quot;;"
                client-option "send rfc3118-auth 00:00:00:00:00:00:00:00:00:00:00:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx;"
                client-option "request dhcp-lease-time, dhcp-renewal-time, dhcp-rebinding-time, domain-search, rfc3118-auth;"
                default-route update
                default-route-distance 210
                global-option "option rfc3118-auth code 90 = string;"
                name-server update
            }
            egress-qos "0:0 1:0 2:0 3:0 4:0 5:0 6:6 7:0"
            firewall {
                in {
                    ipv6-name WANv6_IN
                    name WAN_IN
                }
                local {
                    ipv6-name WANv6_LOCAL
                    name WAN_LOCAL
                }
            }
            ipv6 {
                address {
                    autoconf
                }
                dup-addr-detect-transmits 1
            }
        }
        vif 838 {
            bridge-group {
                bridge br0
            }
            description "eth1.838 (VoD)"
            egress-qos "0:4 1:4 2:4 3:4 4:4 5:4 6:4 7:4"
        }
        vif 840 {
            bridge-group {
                bridge br1
            }
            description "eth1.840 (ZAPPING + CANAL 1)"
            egress-qos "0:5 1:5 2:5 3:5 4:5 5:5 6:5 7:5"
        }
    }
    ethernet eth2 {
        disable
        duplex auto
        ip {
        }
        speed auto
    }
    ethernet eth3 {
        disable
        duplex auto
        speed auto
    }
    ethernet eth4 {
        disable
        duplex auto
        speed auto
    }
    ethernet eth5 {
        disable
        duplex auto
        speed auto
    }
    ethernet eth6 {
        disable
        duplex auto
        speed auto
    }
    ethernet eth7 {
        address 192.168.10.1/24
        description "eth7 LOCAL LAN SWITCH"
        duplex auto
        speed auto
        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
            }
        }
    }
    loopback lo {
    }
}
protocols {
    static {
        route6 ::/0 {
            next-hop fe80::ba0:bab {
                interface eth1.832
            }
        }
    }
}
service {
    dhcp-server {
        disabled false
        global-parameters "option rfc3118-auth code 90 = string;"
        global-parameters "option SIP code 120 = string;"
        global-parameters "option Vendor-specific code 125 = string;"

        hostfile-update disable
        shared-network-name LAN {
            authoritative disable
            subnet 192.168.10.0/24 {
                default-router 192.168.10.1
                dns-server 8.8.8.8
                dns-server 8.8.4.4
                domain-name FD-HOME
                lease 86400
                start 192.168.10.3 {
                    stop 192.168.10.254
                }
            }
        }
        shared-network-name LIVEBOX {
            authoritative enable
            subnet 192.168.2.0/24 {
                default-router 192.168.2.1
                dns-server 81.253.149.9
                dns-server 80.10.246.1
                domain-name orange.fr
                lease 86400
                start 192.168.2.30 {
                    stop 192.168.2.50
                }
                subnet-parameters "option rfc3118-auth 00:00:00:00:00:00:00:00:00:00:00:64:68:63:70:6c:69:76:65:62:6f:78:66:72:32:35:30;"
                subnet-parameters "option SIP 00:06:73:62:63:74:33:67:03:41:55:42:06:61:63:63:65:73:73:11:6f:72:61:6e:67:65:2d:6d:75:6c:74:69:6d:65:64:69:61:03:6e:65:74:00;"
           subnet-parameters "option Vendor-specific 00:00:05:58:0c:01:0a:00:00:00:00:00:ff:ff:ff:ff:ff;"

            }
        }
    }
    dns {
    }
    gui {
        http-port 80
        https-port 443
        older-ciphers enable
    }
    nat {
        rule 5010 {
            log disable
            outbound-interface eth1.832
            protocol all
            type masquerade
        }
    }
    ssh {
        allow-root
        port 22
        protocol-version v2
    }
    upnp2 {
        listen-on eth0.832
        listen-on eth7
        nat-pmp enable
        secure-mode disable
        wan eth1.832
    }
}
system {
    config-management {
        commit-revisions 50
    }
    domain-name FD-HOME
    host-name ubnt
    login {
        user root {
            authentication {
                encrypted-password xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
                plaintext-password ""
            }
            full-name ""
            level admin
        }
        user ubnt {
            authentication {
                encrypted-password xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
                plaintext-password ""
            }
            full-name ""
            level admin
        }
    }
    name-server 8.8.8.8
    name-server 8.8.4.4
    name-server 208.67.222.222
    name-server 208.67.220.220
    ntp {
        server 0.ubnt.pool.ntp.org {
        }
        server 1.ubnt.pool.ntp.org {
        }
        server 2.ubnt.pool.ntp.org {
        }
        server 3.ubnt.pool.ntp.org {
        }
    }
    offload {
        hwnat disable
        ipsec enable
        ipv4 {
            forwarding enable
            vlan enable
        }
        ipv6 {
            forwarding disable
        }
    }
    package {
        repository wheezy {
            components "main contrib non-free"
            distribution wheezy
            password ""
            url http://http.us.debian.org/debian
            username ""
        }
        repository wheezy-security {
            components main
            distribution wheezy/updates
            password ""
            url http://security.debian.org
            username ""
        }
    }
    syslog {
        global {
            facility all {
                level notice
            }
            facility protocols {
                level debug
            }
        }
    }
    time-zone Europe/Paris
}


/* Warning: Do not remove the following line. */
/* === vyatta-config-version: "config-management@1:conntrack@1:cron@1:dhcp-relay@1:dhcp-server@4:firewall@5:ipsec@5:nat@3:qos@1:quagga@2:system@4:ubnt-pptp@1:ubnt-udapi-server@1:ubnt-unms@1:ubnt-util@1:vrrp@1:webgui@1:webproxy@1:zone-policy@1" === */
/* Release version: v1.10.3.5082543.180426.1717 */

6/ Chargement du nouveau fichier de config configip46.boot

configure
load configip46.boot
commit
save
exit

Lors de l'étape commit... s'il y a des erreurs, ne pas faire le save et annuler les modifications comme suit :

discard
exit

7/ Eteindre l'ONT, LIVEBOX et les box TV + Switchs

--> Redémarrer dans l'ordre :
--> l'ONT, attendre que tout passe au vert et que le routeur ait bien une IP externe sur l' ETH1.832
--> le routeur (bien attendre démarrage complet)
--> le switch (bien attendre démarrage complet)
--> la LIVEBOX (attendre démarrage complet)
--> les BOX TV

Tout fonctionne enfin logiquement... !!!

Si vous rencontrez des problèmes, commencez par faire un diff entre mon config.boot et le votre modifié...

N'en faites pas trop à la fois... partez de cette base, vous verrez les améliorations ensuite...

Penser également à vérifier les droits attribués aux fichiers modifiés au minimum 755

Et le classique... format de fichier Dos Vs Unix


8/ Commandes utiles en cas de problème

Voir si dibbler est démarré :

dibbler-client status
Redémarrer dibbler...

service dibbler-client restart
Voir quels sont les services démarrés :

service --status-all

Route IPV6 :


show ipv6 route

Test ping iPV6 :

ping6 www.google.com

Etat de la connectivité IPV6 :

http://ipv6-test.com/
« Modifié: 22 mai 2018 à 22:44:34 par nanostra »

nanostra

  • Abonné Orange Fibre
  • *
  • Messages: 109
  • Lambersart 59
    • Speedtest
NON RESOLU OU SOLUTIONNE :

1/ ICMP V6 passe pas entièrement au vert lors d'un test sur http://ipv6-test.com/ --> Filtered
   
    Solution : Windows filtre ICMP V6, il faut ajouter une règle dans le Firewal... solution ci-dessous :
                   https://docs.microsoft.com/en-us/windows/security/identity-protection/windows-firewall/create-an-inbound-icmp-rule
« Modifié: 22 mai 2018 à 12:57:51 par nanostra »

nanostra

  • Abonné Orange Fibre
  • *
  • Messages: 109
  • Lambersart 59
    • Speedtest
réservé message 4 - En cas de besoin

barichon

  • Abonné Free fibre
  • *
  • Messages: 65
  • Levallois-Perret 92300
All good par contre je n'obtiens pas d'ip V6 sur mon WAN eth1 (ONT). Est-ce normal ?

En effet l'interface Ubiquiti je garde mon IP WAN IPV4, pas d'IPV6. J'ai seulement une IPv6 sur mon LAN ETH0 (qui est ton ETH7).

Voici ma conf:

firewall {
    all-ping enable
    broadcast-ping disable
    group {
        network-group BLACKLIST_DROP {
            description ""
        }
        network-group BLACKLIST_DROPv6 {
            description ""
        }
    }
    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
            }
        }
    }
    ipv6-receive-redirects disable
    ipv6-src-route disable
    ip-src-route disable
    log-martians enable
    name WAN_IN {
        default-action drop
        description "packets from Internet to LAN"
        enable-default-log
        rule 10 {
            action accept
            description "allow established sessions"
            log disable
            protocol all
            state {
                established enable
                invalid disable
                new disable
                related enable
            }
        }
        rule 100 {
            action drop
            description WANv6_IN
            log enable
            protocol all
            source {
                group {
                    network-group BLACKLIST_DROPv6
                }
            }
        }
        rule 110 {
            action drop
            description "drop invalid state"
            log disable
            protocol all
            state {
                established disable
                invalid enable
                new disable
                related disable
            }
        }
        rule 111 {
            action drop
            description WAN_IN
            log enable
            protocol all
            source {
                group {
                    network-group BLACKLIST_DROP
                }
            }
        }
    }
    name WAN_LOCAL {
        default-action drop
        description "packets from Internet to the router"
        rule 1 {
            action accept
            description "allow established session to the router"
            log disable
            protocol all
            state {
                established enable
                invalid disable
                new disable
                related enable
            }
        }
        rule 2 {
            action drop
            description "drop invalid state"
            log disable
            protocol all
            state {
                established disable
                invalid enable
                new disable
                related disable
            }
        }
    }
    name WAN_OUT {
        default-action accept
        description ""
    }
    receive-redirects disable
    send-redirects enable
    source-validation disable
    syn-cookies enable
}
interfaces {
    ethernet eth0 {
        address 192.168.0.1/24
        description LAN-ET-TV
        duplex auto
        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
            }
        }
        speed auto
    }
    ethernet eth1 {
        description Internet_ONT
        duplex auto
        speed auto
        vif 832 {
            address dhcp
            description "Internet Orange DHCP"
            dhcp-options {
                client-option "send vendor-class-identifier &quot;sagem&quot;;"
                client-option "send user-class &quot;+FSVDSL_livebox.Internet.softathome.Livebox3&quot;;"
                client-option "send rfc3118-auth 00:00:00:00:00:00:00:00:00:00:00:XX:XX:xX:XX:XX:XX:XX:XX:xX:XX:XX;"
                client-option "request dhcp-lease-time, dhcp-renewal-time, dhcp-rebinding-time, domain-search, rfc3118-auth, SIP;"
                default-route update
                default-route-distance 210
                global-option "option rfc3118-auth code 90 = string ;"
                name-server update
            }
            egress-qos "0:0 1:1 2:2 3:3 4:4 5:5 6:6 7:7"
            firewall {
                in {
                    ipv6-name WANv6_IN
                    name WAN_IN
                }
                local {
                    ipv6-name WANv6_LOCAL
                    name WAN_LOCAL
                }
                out {
                    ipv6-name WANv6_OUT
                    name WAN_OUT
                }
            }
            ipv6 {
                address {
                    autoconf
                }
                dup-addr-detect-transmits 1
            }
        }
        vif 838 {
            address dhcp
            description "VLAN TV VOD"
            dhcp-options {
                client-option "send vendor-class-identifier &quot;sagem&quot;;"
                client-option "send dhcp-client-identifier 1:78:94:B4:E0:1E:D8;"
                client-option "send user-class &quot;\047FSVDSL_livebox.MLTV.softathome.Livebox3&quot;;"
                client-option "request subnet-mask, rfc3442-classless-static-routes;"
                default-route update
                default-route-distance 210
                name-server update
            }
            egress-qos "0:4 1:4 2:4 3:4 4:4 5:4 6:4 7:4"
        }
        vif 840 {
            address 192.168.255.254/24
            description "VLAN TV Canal 1 - Zap"
            egress-qos "0:5 1:5 2:5 3:5 4:5 5:5 6:5 7:5"
        }
    }
    ethernet eth2 {
        description LAN2-LiveBox
        duplex auto
        speed auto
        vif 832 {
            address 192.168.2.254/24
            description VoIp
        }
    }
    loopback lo {
        address 1.1.1.1/32
    }
}
port-forward {
    auto-firewall enable
    hairpin-nat enable
    lan-interface eth0
    wan-interface eth1.832
}
protocols {
    igmp-proxy {
        disable-quickleave
        interface eth0 {
            alt-subnet 0.0.0.0/0
            role downstream
            threshold 1
        }
        interface eth1.840 {
            alt-subnet 0.0.0.0/0
            role upstream
            threshold 1
        }
        interface eth2 {
            role disabled
            threshold 1
        }
    }
}
service {
    dhcp-server {
        disabled false
        global-parameters "option rfc3118-auth code 90 = string;"
        global-parameters "option SIP code 120 = string;"
        hostfile-update enable
        shared-network-name LOCAL_NETWORK {
            authoritative enable
            subnet 192.168.0.0/24 {
                default-router 192.168.0.1
                dns-server 192.168.0.1
                domain-name home.local
                lease 86400
                start 192.168.0.10 {
                    stop 192.168.0.99
                }
                static-mapping Mac-Akamai {
                    ip-address 192.168.0.19
                    mac-address a4:08:f5:29:9d:d1
                }
                static-mapping Mac-Maison {
                    ip-address 192.168.0.98
                    mac-address 6c:40:08:a2:1f:c4
                }
                static-mapping Rear-Left {
                    ip-address 192.168.0.34
                    mac-address b8:e9:37:ed:e1:e4
                }
                static-mapping Rear-Right {
                    ip-address 192.168.0.35
                    mac-address b8:e9:37:ed:e1:ca
                }
                static-mapping cisco {
                    ip-address 192.168.0.29
                    mac-address 50:87:89:a9:42:34
                }
                static-mapping galaxys7 {
                    ip-address 192.168.0.99
                    mac-address 8c:f5:a3:05:a3:e3
                }
                static-mapping gtx {
                    ip-address 192.168.0.97
                    mac-address 2c:56:dc:97:fd:7f
                }
                static-mapping gtx-wifi {
                    ip-address 192.168.0.31
                    mac-address 30:52:cb:53:61:61
                }
                static-mapping iPhone-boubou {
                    ip-address 192.168.0.20
                    mac-address c0:d9:62:46:cb:da
                }
                static-mapping linux {
                    ip-address 192.168.0.50
                    mac-address 02:00:00:8d:2e:c7
                }
                static-mapping playbar {
                    ip-address 192.168.0.21
                    mac-address 00:0e:58:b5:fd:9a
                }
                static-mapping qnap {
                    ip-address 192.168.0.92
                    mac-address 00:08:9b:f6:bd:e2
                }
                static-mapping ubnt {
                    ip-address 192.168.0.1
                    mac-address 80:2a:a8:f1:e4:69
                }
            }
        }
        shared-network-name Livebox {
            authoritative enable
            subnet 192.168.2.0/24 {
                default-router 192.168.2.254
                dns-server 80.10.246.136
                dns-server 81.253.149.6
                lease 86400
                start 192.168.2.21 {
                    stop 192.168.2.200
                }
                static-mapping Livebox {
                    ip-address 192.168.2.1
                    mac-address 78:94:B4:E0:1E:D8
                }
                subnet-parameters "option rfc3118-auth 00:00:00:00:00:00:00:00:00:00:00:66:74:69:2f:66:64:64:33:33:70:78;"
                subnet-parameters "option SIP 0:6:73:62:63:74:33:67:3:50:55:54:6:61:63:63:65:73:73:11:6f:72:61:6e:67:65:2d:6d:75:6c:74:69:6d:65:64:69:61:3:6e:65:74:0;"
            }
        }
        static-arp disable
        use-dnsmasq enable
    }
    dns {
        forwarding {
            cache-size 400
            listen-on eth0
            name-server 8.8.8.8
            name-server 8.8.4.4
        }
    }
    gui {
        http-port 80
        https-port 443
        listen-address 192.168.0.1
        listen-address 192.168.2.254
        older-ciphers disable
    }
    mdns {
        reflector
    }
    nat {
        rule 1 {
            description "FTP Control (QNAP)"
            destination {
                port 21021
            }
            inbound-interface eth+
            inside-address {
                address 192.168.0.92
                port 21
            }
            log disable
            protocol tcp
            type destination
        }
        rule 2 {
            description "FTP Data (QNAP)"
            destination {
                port 21004-21023
            }
            inbound-interface eth1.832
            inside-address {
                address 192.168.0.92
                port 21004-21023
            }
            log disable
            protocol tcp
            type destination
        }
        rule 3 {
            description "Peering Transmission"
            destination {
                port 51413
            }
            inbound-interface eth1.832
            inside-address {
                address 192.168.0.92
                port 51413
            }
            log disable
            protocol tcp_udp
            type destination
        }
        rule 4 {
            description "SSH Admin (QNAP)"
            destination {
                port 21001
            }
            inbound-interface eth+
            inside-address {
                address 192.168.0.92
                port 22
            }
            log disable
            protocol tcp
            type destination
        }
        rule 5 {
            description "SSL Admin (QNAP)"
            destination {
                port 21000
            }
            inbound-interface eth+
            inside-address {
                address 192.168.0.92
                port 443
            }
            log disable
            protocol tcp
            type destination
        }
        rule 6 {
            description "Transmission Admin (QNAP)"
            destination {
                port 49091
            }
            inbound-interface eth+
            inside-address {
                address 192.168.0.92
                port 49091
            }
            log disable
            protocol tcp_udp
            type destination
        }
        rule 7 {
            description "Plex Server"
            destination {
                port 32400
            }
            inbound-interface eth+
            inside-address {
                address 192.168.0.92
                port 32400
            }
            log disable
            protocol tcp_udp
            type destination
        }
        rule 5010 {
            description "Masquerading outgoing connections"
            log disable
            outbound-interface eth1.832
            protocol all
            type masquerade
        }
        rule 5011 {
            description "Masquerading TV"
            log disable
            outbound-interface eth1.838
            protocol all
            type masquerade
        }
        rule 5012 {
            description "Masquerading Local"
            log disable
            outbound-interface eth0
            protocol all
            type masquerade
        }
    }
    ssh {
        allow-root
        port 22
        protocol-version v2
    }
    ubnt-discover {
        disable
    }
    upnp2 {
        listen-on eth0
        nat-pmp enable
        secure-mode enable
        wan eth1.832
    }
}
system {
    config-management {
        commit-revisions 5
    }
    conntrack {
        expect-table-size 4096
        hash-size 4096
        table-size 32768
        tcp {
            half-open-connections 512
            loose disable
            max-retrans 3
        }
    }
    domain-name home.local
    host-name ubnt
    login {
        radius-server 192.168.0.92 {
            port 1812
            secret ********
            timeout 5
        }
        user root {
            authentication {
                encrypted-password $6$OslOaT3q$EZPDMi7a9IvC6Fm6M/RptEGvhs7tf1K.V27EFbDhuDhVtIOWahBzI3efeXGlk7rBFA.9hQjn2JVhi3VJRcqXi0
                plaintext-password ""
            }
            level admin
        }
        user ubnt {
            authentication {
                encrypted-password $6$LIbuW37uo2Xz3TWS$rcsvO44XlmRig.QiYdMpHbDuBqivcbFBYXuWVrFBuH//VP7lW8ZZEQpVjg7M//gC3GVV1pTGuYjbsNqn2QfdA.
                plaintext-password ""
            }
            full-name ""
            level admin
        }
    }
    name-server 127.0.0.1
    ntp {
        server 0.ubnt.pool.ntp.org {
        }
        server 1.ubnt.pool.ntp.org {
        }
        server 2.ubnt.pool.ntp.org {
        }
        server 3.ubnt.pool.ntp.org {
        }
    }
    offload {
        hwnat disable
        ipsec enable
        ipv4 {
            forwarding enable
            vlan enable
        }
        ipv6 {
            forwarding disable
        }
    }
    package {
        repository wheezy {
            components "main contrib non-free"
            distribution wheezy
            password ""
            url http://http.us.debian.org/debian
            username ""
        }
        repository wheezy-security {
            components main
            distribution "distribution wheezy/updates"
            password ""
            url http://security.debian.org
            username ""
        }
    }
    syslog {
        host 192.168.0.92 {
            facility all {
                level err
            }
        }
    }
    task-scheduler {
        task BLACKLIST {
            crontab-spec "0 1 * * *"
            executable {
                path /config/scripts/post-config.d/update-blacklist.sh
            }
        }
    }
    time-zone Europe/Paris
    traffic-analysis {
        dpi disable
        export disable
    }
}


/* Warning: Do not remove the following line. */
/* === vyatta-config-version: "config-management@1:conntrack@1:cron@1:dhcp-relay@1:dhcp-server@4:firewall@5:ipsec@5:nat@3:qos@1:quagga@2:system@4:ubnt-pptp@1:ubnt-udapi-server@1:ubnt-unms@1:ubnt-util@1:vrrp@1:webgui@1:webproxy@1:zone-policy@1" === */
/* Release version: v1.10.3.5082526.180426.1554 */


Par avance merci pour votre aide.

Super tuto !
« Modifié: 05 juin 2019 à 21:42:13 par barichon »

nanostra

  • Abonné Orange Fibre
  • *
  • Messages: 109
  • Lambersart 59
    • Speedtest
client dibbler s'arrête...
« Réponse #5 le: 21 mai 2018 à 23:21:40 »
Hello,

J'ai ajouté un chapitre 8 avec quelques commandes utiles pour essayer de diagnostiquer... mais suis pas un pro, je compile juste les infos :-)

Je viens de constater que dibbler n'est pas démarré au boot par le script diblber-client.sh

Je relance à la main par :

service dibbler-client restart et tout est ok au niveau IPV6

J'ai modifié le script dibbler-client.sh comme suit :

#!/bin/bash

service dibbler-client restart > /tmp/dibbler_restartlog.log 2>&1

dans le log  /tmp/dibbler_restartlog.log j'ai

Restarting DHCPv6 client: dibbler-client.
donc à priori il se lance bien... et pourtant il n'est pas démarré !!!

Quelqu'un à une idée ?
« Modifié: 22 mai 2018 à 00:19:40 par nanostra »

barichon

  • Abonné Free fibre
  • *
  • Messages: 65
  • Levallois-Perret 92300
client dibbler s'arrête...
« Réponse #6 le: 21 mai 2018 à 23:27:51 »
Hello,

J'ai ajouté un chapitre 8 avec quelques commandes utiles pour essayer de diagnostiquer... mais suis pas un pro, je compile juste les infos :-)

1/ Je viens de constater que dibbler s'arrête... pourtant tout continue de fonctionner en IPV6 d'après http://ipv6-test.com/ ou encore ping6 google.com !!!

2/ Quelqu'un aurait les règles éventuelles à ajouter pour l'ICMP en IPV6 ?

Quelqu'un à une idée ?


Effectivement:

root@ubnt:/home/ubnt# dibbler-client status
| Dibbler - a portable DHCPv6, version 1.0.1 (CLIENT, Linux port)
| Authors : Tomasz Mrugalski<thomson(at)klub.com.pl>,Marek Senderski<msend(at)o2.pl>
| Licence : GNU GPL v2 only. Developed at Gdansk University of Technology.
| Homepage: http://klub.com.pl/dhcpv6/
Dibbler server: NOT RUNNING.
Dibbler client: NOT RUNNING.
Dibbler relay : NOT RUNNING.

barichon

  • Abonné Free fibre
  • *
  • Messages: 65
  • Levallois-Perret 92300
Tout fonctionne a merveille, par contre effectivement le seul truc c'est quand dans l'interface graphique pas d'ipV6 sur le WAN (only sur le LAN).

root@ubnt:/home/ubnt# show interfaces
Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down
Interface    IP Address                        S/L  Description                 
---------    ----------                        ---  -----------                 
eth0         192.168.0.1/24                    u/u  LAN-ET-TV                   
             2a01:cb00:59b:5301::1/64         
eth1         -                                 u/u  Internet_ONT               
eth1.832     90.79.222.190/22                  u/u  Internet Orange DHCP       
eth1.838     10.154.237.78/24                  u/u  VLAN TV VOD                 
eth1.840     192.168.255.254/24                u/u  VLAN TV Canal 1 - Zap       
eth2         -                                 u/D  LAN2-LiveBox               
eth2.832     192.168.2.254/24                  u/D  VoIp                       
lo           127.0.0.1/8                       u/u                             
             1.1.1.1/32                       
             ::1/128   

A suivre...

Merci pour ton taff !
« Modifié: 22 mai 2018 à 00:32:27 par barichon »

zoc

  • Abonné Orange Fibre
  • *
  • Messages: 4 258
  • Antibes (06) / Mercury (73)
Pas besoin de gaspiller un /64 pour attribuer une IPv6 au port WAN. Arrêtez de penser IPv4, il n'y a pas besoin d'adresse IPv6 de portée globale sur le WAN: Il a déjà une IPv6 de portée locale et ça suffit à joindre la route par défaut.

zoc

  • Abonné Orange Fibre
  • *
  • Messages: 4 258
  • Antibes (06) / Mercury (73)
7/ Eteindre l'ONT, LIVEBOX et les box TV + Switchs

--> Redémarrer dans l'ordre :
--> le routeur (bien attendre démarrage complet)
--> le switch (bien attendre démarrage complet)
--> l'ONT, attendre que tout passe au vert et que le routeur ait bien une IP externe sur l' ETH1.832
--> la LIVEBOX (attendre démarrage complet)
--> les BOX TV
Perso je commencerais par l'ONT pour éviter tout un tas de problèmes. Je met cette phrase au conditionnel, parce qu'en pratique je ne redémarre jamais l'ONT, même quand je change le routeur (J'ai un ER4 depuis quelques semaines ainsi que 2 ERL, un me servant de backup et le second que je dois réutiliser sur un autre site) ou que je rebranche temporairement la LB sur l'ONT.

En démarrant l'ONT presque à la fin:
  • Quand le routeur boote, son interface vers l'ONT est down (électriquement), donc dibbler-client s'arrête immédiatement (on ne peut pas le configurer pour qu'il se mette en attente que l'interface monte).
  • Quand le routeur active l'interface vers l'ONT, il envoie un paquet "Router Discovery" pour IPv6 afin de trouver la route par défaut. Ensuite, il ne va plus le faire pendant plusieurs minutes. La route par défaut IPv6 ne va donc être découverte que plusieurs minutes après le démarrage de l'ONT (et ça explique pourquoi ce délai avant qu'IPv6 ne fonctionne).


nanostra

  • Abonné Orange Fibre
  • *
  • Messages: 109
  • Lambersart 59
    • Speedtest
Hello Zoc,

Comme d'habitude, merci de ton message et de ton intervention...

En fouilant nos échanges qui datent de plus d'un an et ton message de ce matin... je viens de tilter... en fait tout fonctionne... cette nuit après de nombreux reboot et le fait que je ne comprenais pas que parfois la connectivité IPV6 était OK et parfois KO après reboot routeur ou ONT... et que le client dibbler semblait arrêté, j'ai laissé tombé l'affaire... et ce matin l'IPV6 était OK...

J'ai cru un moment que le fait que le service dibbler-client soit arrêté était le problème et que faire "service dibbler-client restart" puis d'attendre quelques minutes résolvait le problème... mais il s'agissait juste d'une histoire de timing, de hasard... route annoncée par Orange ou pas... il faut attendre c'est tout...

Ce que je ne m'explique tout de même pas c'est que après un reboot, dibbler-client est arrêté, pourtant, si l'on patiente, la connectivité IPV6 finie par être opérationnelle... par exemple, cette nuit quand je me suis couché, pas d'IPV6, client-dibbler arrêté et ce matin, dibbler-client toujours arrêté mais IPV6 OK...


J'ai donc modifié le tuto comme suit :

Citer
--> Redémarrer dans l'ordre :
--> l'ONT, attendre que tout passe au vert et que le routeur ait bien une IP externe sur l' ETH1.832
--> le routeur (bien attendre démarrage complet)
--> le switch (bien attendre démarrage complet)
--> la LIVEBOX (attendre démarrage complet)
--> les BOX TV

ATTENTION IL FAUT PARFOIS ETRE PATIENT SI L'ON A REDEMARRE L'ONT, OU LE ROUTEUR JUSQU'A 20 MIN, ROUTE ANNONCEE TOUTES LES 20 MINUTES PAR ORANGE 'infos retrouvée dans messages de Zoc"

Je te cite, message de mai 2016 :

Citer
A propos de la route par défaut, elle est annoncée toutes les 20 minutes par le routeur d'Orange, donc chez moi quand j'ai mis l'IPv6 en place il a fallu environ 20 minutes après la mise en place de cette config. pour que ça commence à fonctionner. Je ne sais pas si ce délai est aussi nécessaire quand on reboote notre routeur, car je ne l'ai pas rebooté depuis qu'il est configuré  ;). Au pire la route par défaut est connue et fixe (fe80::ba0:bab) donc il est possible de la configurer en statique. Je ne l'ai pas fait pour l'instant chez moi, je verrai au prochain reboot (à priori quand la 1.8.5 du firmware sortira).


ICMP V6...


Il ne reste donc comme problème que l'ICMP V6 qui est en orange (filtered) lorsque l'on fait un test par http://ipv6-test.com/


barichon

  • Abonné Free fibre
  • *
  • Messages: 65
  • Levallois-Perret 92300
Pour info, mon test IPv6 est good de mon coté:

Capture_d_e_cran_2018_05_22_a_10_44_50" border="0