Auteur Sujet: Tuto - ER4 - v2.0.8 - IPv6 + TV et Tel avec Livebox  (Lu 27672 fois)

0 Membres et 1 Invité sur ce sujet

Lyrca

  • Abonné Free fibre
  • *
  • Messages: 171
  • Grenoble (38)
Tuto - ER4 - v2.0.8 - IPv6 + TV et Tel avec Livebox
« le: 21 juillet 2020 à 21:23:14 »
Bonjour,

Ce qui suit n'est rien de plus qu'une compilation d'infos que j'ai récupéré ici et là sur ce forum. Je n'ai rien inventé et ne prétend certainement pas comprendre tous les détails.

Ce qui suit a été mis en place avec succès sur un ER4 avec un ONT, une Livebox 5 et un décodeur UHD. Le firmware utilisé est le 2.0.8 hotfix 1.

Je ne prétends en aucun cas que c'est la meilleure manière de faire. L'idée étant d'aider des personnes à mettre en place une configuration fonctionnelle tout en améliorant celle-ci.

Ceci devrait vous permettre d'avoir :

- l'IPv4 + l'IPv6
- La téléphonie à partir de la Livebox
- Le décodeur derrière le switch

La connectique se fait de la manière suivante :

- ONT sur eth1
- Livebox port 4 sur eth0
- LAN sur eth2

VLAN 832 pour le net et la VoIP
VLAN 840 pour la TV

EDIT : MAJ 30/07/2020
- Plus de bridge
- Le décodeur se connecte sur le switch et non plus sur la Livebox

La mise en place se fait en 2 étapes :

I / Mise en place des fichiers sur l'ER :

1 / Copier le fichier dhclient3.prio6.edgeos2 ci-joint dans /sbin de l'ER4
 - sudo mv dhclient3 dhclient3.ori ; sudo mv dhclient3.prio6.edgeos2 dhclient3
 - Changer le owner et groupe à root : sudo chown root:root dhclient3
 - Changer les droits : sudo chmod 755 dhclient3


2 /
 - sudo vi /etc/systemd/system/dhclient6.service

#/etc/systemd/system/dhclient6.service
[Unit]
Description=dhclient for sending IPv6 DUID
After=network.target

[Service]
Type=forking
ExecStartPre=/config/scripts/generate_dhcpv6_configfile.sh
ExecStart=/sbin/dhclient -6 -P -nw -cf /etc/dhcp3/dhclient6_eth1_832.conf -pf /var/run/dhclient6_eth1_832.pid -lf /var/run/dhclient6_eth1_832.leases eth1.832
NonBlocking=yes                               
Restart=always
RestartSec=60

[Install]
WantedBy=multi-user.target

 - sudo systemctl  daemon-reload ; sudo systemctl enable dhclient6

 3 /
  - sudo vi /config/scripts/generate_dhcpv6_configfile.sh

#!/bin/bash
# Place in /config/scripts/generate_dhcpv6_configfile.sh
target_file="/etc/dhcp3/dhclient6_eth1_832.conf"

interface="eth1"
vif="832"

auth_string=$(/bin/cli-shell-api showCfg interfaces ethernet $interface vif $vif dhcp-options client-option | grep "send rfc3118-auth" | awk '{ print $4 }' | awk -F ";" '{print $1}')
mac_livebox=$(/bin/cli-shell-api showCfg interfaces ethernet $interface vif $vif dhcp-options client-option | grep "dhcp-client-identifier" | awk '{ print $4 }' | awk -F ";" '{print $1}')


read -r -d '' conffile <<EOF
# $target_file\n
option dhcp6.auth code 11 = string;\n
option dhcp6.vendorclass code 16 = string;\n
option dhcp6.userclass code 15 = string;\n
\n
#External interface (VLAN must be 832 for Orange)\n
interface "eth1.832" {\n
\t#Orange France specific options\n
\tsend dhcp6.vendorclass 00:00:04:0e:00:05:73:61:67:65:6d;\n
\tsend dhcp6.userclass 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;\n
\tsend dhcp6.vendor-opts 00:00:05:58:00:06:00:0e:49:50:56:36:5f:52:45:51:55:45:53:54:45:44;\n
\n
\t#Authentication for Orange France DHCP server (same value as for DHCPv4)\n
\tsend dhcp6.auth $auth_string;\n
\n
\tsend dhcp6.client-id 00:03:00:$mac_livebox;\n
\n
\trequest dhcp6.name-servers, dhcp6.vendorclass, dhcp6.userclass, dhcp6.auth;\n
}\n
EOF

echo -e $conffile > $target_file

 - sudo chmod +x /config/scripts/generate_dhcpv6_configfile.sh

4 /
 - sudo vi /config/scripts/post-config.d/setDHCPv6COSto6.sh

#!/bin/bash

## Place in /config/scripts/post-config.d/setDHCPv6COSto6.sh

/sbin/ip6tables -t mangle -F
/sbin/ip6tables -t mangle -I POSTROUTING -p udp --sport dhcpv6-client --dport dhcpv6-server -j CLASSIFY --set-class 0:6
exit 0

 - sudo chmod +x /config/scripts/post-config.d/setDHCPv6COSto6.sh

 5 /
 - sudo vi /etc/dhcp3/dhclient-exit-hooks.d/dhclient-ipv6

# Interfaces that should obtain a /64 prefix
IPV6_INTERFACES=(eth2)
INT_ADDRESS="::1"

###

ipv6_prefix_setup() {
# $1 is the ethernet interface
# $2 is the suffix to use
ethiface=$1
suffix=$2

current_ip=$(ip -6 addr show dev $ethiface scope global | awk '/inet6/ {print $2}' | grep -v '^fd' )
current_prefix=$(echo $current_ip | sed -e 's@::.*/64@::/64@')
 
# To generate new IP, need to take new prefix, add 8 bits
new_ip=$( echo $new_ip6_prefix | sed -e 's/00::\/.*//g' )
new_ip="$new_ip$suffix"

if [ "$new_ip" != "$current_ip" ]
then
if [ "$current_ip" != "" ]
then
/sbin/ip -6 addr delete "$current_ip" dev $ethiface
fi
/sbin/ip -6 addr add "$new_ip" dev $ethiface
 
fi
}

case "$reason" in
  BOUND6|REBIND6)
    # We will get called twice here - once for the temp address
    # and once for the prefix. We only care about the prefix.
    if [ ! -z "$new_ip6_prefix" ] ; then
for interface in "${IPV6_INTERFACES[@]}"
do
suffix=$( echo ${interface} | /usr/bin/md5sum | awk '{ print substr($1,3,2) }' )
suffix="$suffix$INT_ADDRESS/64"
ipv6_prefix_setup ${interface} $suffix
done
/bin/systemctl restart radvd.service >/dev/null 2>&1
    fi
    ;;
esac

 - sudo chmod +x /etc/dhcp3/dhclient-exit-hooks.d/dhclient-ipv6

II / Configuration de config.boot :

Modifier le fichier suivant :

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_eth2
                }
            }
            log enable
            protocol icmp
        }
        rule 3 {
            action drop
            description "Drop invalid state"
            log disable
            state {
                invalid enable
            }
        }
    }
    name WAN_OUT {
        default-action accept
        description "WAN 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
            }
        }
    }
    options {
    }
    receive-redirects disable
    send-redirects enable
    source-validation disable
    syn-cookies enable
}
interfaces {
    ethernet eth0 {
        description "eth0 - Livebox"
        duplex auto
        speed auto
        vif 832 {
            address 192.168.30.1/24
            description "eth0.832 - Internet + VoIP"
        }
    }
    ethernet eth1 {
        description "eth1 - ONT"
        duplex auto
        speed auto
        vif 832 {
            address dhcp
            description "eth1.832 - Internet + VoIP"
            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 dhcp-client-identifier 01:YY:YY:YY:YY:YY:YY;"
                client-option "request subnet-mask, routers, domain-name-servers, domain-name, broadcast-address, dhcp-lease-time, dhcp-renewal-time, dhcp-rebinding-time, rfc3118-authentication, domain-search, SIP-servers, Vendor-Specific-Information;"
                client-option "send rfc3118-authentication XX:XX:XX:XX...;"
                default-route update
                default-route-distance 210
                global-option "option rfc3118-authentication code 90 = string;"
                global-option "option SIP-servers code 120 = string;"
                global-option "option Vendor-Specific-Information code 125 = string;"
                name-server no-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
                }
                out {
                    ipv6-name WANv6_OUT
                    name WAN_OUT
                }
            }
            ipv6 {
                address {
                    autoconf
                }
                dup-addr-detect-transmits 1
            }
        }
        vif 840 {
            address 192.168.40.1/24
            description "eth1.840 - TV"
            egress-qos "0:5 1:5 2:5 3:5 4:5 5:5 6:5 7:5"
        }
    }
    ethernet eth2 {
        address 192.168.10.1/24
        description "eth2 - LAN"
        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
        vif 840 {
            address 192.168.20.1/24
            description "eth2.840 - TV"
            mtu 1500
        }
    }
    ethernet eth3 {
        disable
        duplex auto
        speed auto
    }
    loopback lo {
    }
}
protocols {
    igmp-proxy {
        interface eth1.840 {
            alt-subnet 0.0.0.0/0
            role upstream
            threshold 1
        }
        interface eth2.840 {
            alt-subnet 0.0.0.0/0
            role downstream
            threshold 1
        }
    }
}
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 192.168.10.1
                domain-name local
                lease 86400
                start 192.168.10.3 {
                    stop 192.168.10.254
                }
            }
        }
        shared-network-name Livebox {
            authoritative enable
            subnet 192.168.30.0/24 {
                default-router 192.168.30.1
                dns-server 80.10.246.134
                dns-server 81.253.149.5
                domain-name orange.fr
                lease 86400
                start 192.168.30.30 {
                    stop 192.168.30.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;"
            }
        }
        shared-network-name TV {
            authoritative disable
            subnet 192.168.20.0/24 {
                default-router 192.168.20.1
                dns-server 80.10.246.134
                dns-server 81.253.149.5
                lease 86400
                start 192.168.20.30 {
                    stop 192.168.20.50
                }
                subnet-parameters "option Vendor-specific 00:00:0d:e9:28:04:06:46:38:30:38:34:46:05:0f:4c:4b:31:39:32:32:36:44:50:39:39:32:37:31:35:06:0d:4c:69:76:65:62:6f:78:20:46:69:62:72:65;"
            }
        }
        static-arp disable
        use-dnsmasq disable
    }
    dns {
        forwarding {
            cache-size 200
            listen-on eth2
            name-server 1.1.1.1
            name-server 1.0.0.1
            name-server 8.8.8.8
            name-server 8.8.4.4
        }
    }
    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
    }
    unms {
        disable
    }
    upnp2 {
        listen-on eth0.832
        listen-on eth2
        nat-pmp enable
        secure-mode enable
        wan eth1.832
    }
}
system {
    config-management {
        commit-revisions 50
    }
    domain-name local
    host-name EdgeRouter
    login {
        user ubnt {
            authentication {
                encrypted-password $1$zKNoUbAo$gomzUbYvgyUMcD436Wo66.
            }
            level admin
        }
    }
    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 enable
            vlan enable
        }
    }
    syslog {
        global {
            facility all {
                level notice
            }
            facility protocols {
                level debug
            }
        }
    }
    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:suspend@1:system@4:ubnt-pptp@1:ubnt-udapi-server@1:ubnt-unms@1:ubnt-util@1:vrrp@1:vyatta-netflow@1:webgui@1:webproxy@1:zone-policy@1" === */
/* Release version: v2.0.8-hotfix.1.5278088.200305.1641 */

En remplaçant :
 - YY:YY:YY:YY:YY:YY : Mac Livebox
 - XX:XX:XX:XX:XX:XX.... : La valeur calculée par https://jsfiddle.net/kgersen/3mnsc6wy/

- Ne pas oublier de marquer le port sur votre switch avec le VLAN 840 pour le décodeur et d'activer l'IGMP snooping

Nommer le fichier new.config.boot et le copier sur l'ER dans /tmp puis ;
configure
load /tmp/new.config.boot
commit
save

Pour vous connecter à l'ER: ubnt/ubnt

Voici ce que cela donne:



Merci à tous les contributeurs qui m'ont permis de mettre en place cette configuration : fttmeh, zoc, kgersen, nanostra et aux autres que j'ai pu oublier.

Merci pour vos retours.
« Modifié: 07 septembre 2020 à 19:02:26 par Lyrca »

jeremyp3

  • Abonné Orange Fibre
  • *
  • Messages: 717
  • Pau (64)
Tuto - ER4 - v2.0.8 - IPv6 + TV et Tel avec Livebox
« Réponse #1 le: 22 juillet 2020 à 09:59:24 »
VLAN 838 et 840 pour la VoIP et TV

bonjour,
le vlan838 n'est plus utilisé en dhcp. juste 832 pour internet et téléphonie, et 840 pour la tv. :)

Jerem

zoc

  • Abonné Orange Fibre
  • *
  • Messages: 4 288
  • Antibes (06) / Mercury (73)
Tuto - ER4 - v2.0.8 - IPv6 + TV et Tel avec Livebox
« Réponse #2 le: 22 juillet 2020 à 13:13:37 »
Le seul truc qui est à jour dans son tuto c’est la partie IPv6 avec dhclient.

Tout le reste (VLAN 838, bridges) est dépassé depuis 2 ans au moins.

Maintenant c’est mieux que rien, je n’ai plus assez de temps pour refaire un tuto en repartant d’une feuille blanche, d’autant plus que je ne peux pas vraiment partir de ma configuration actuelle (zone based firewall, pleins de VLANs, OSPF et RIPng entre autre).

Lyrca

  • Abonné Free fibre
  • *
  • Messages: 171
  • Grenoble (38)
Tuto - ER4 - v2.0.8 - IPv6 + TV et Tel avec Livebox
« Réponse #3 le: 22 juillet 2020 à 23:26:33 »
Merci pour vos retours.

Pour le VLAN 838 je pensais qu'il était toujours utilisé car il remonte toujours dans les infos de l'interface de configuration de la Livebox.

En effet c'est bien le VLAN 832 pour la téléphonie, là encore indiqué dans la config de la Livebox.

Comme dit précédemment je n'ai pas la prétention de proposer une configuration optimale mais plutôt quelque chose pouvant être amené à être améliorée au travers des différentes contributions.
« Modifié: 23 juillet 2020 à 17:28:57 par Lyrca »

Zeda

  • Abonné OVH
  • *
  • Messages: 150
  • Toulouse (31)
Tuto - ER4 - v2.0.8 - IPv6 + TV et Tel avec Livebox
« Réponse #4 le: 24 juillet 2020 à 12:31:12 »
Pour le VLAN 838 je pensais qu'il était toujours utilisé car il remonte toujours dans les infos de l'interface de configuration de la Livebox.

Je t'ai indiqué dans ce message ce qu'il fallait faire pour la TV et la VoD.
Je n'ai pas craché les lignes de configuration car je pense qu'il est important de comprendre ce qui doit être fait plutôt que de suivre un tutoriel tout fait.

je n’ai plus assez de temps pour refaire un tuto en repartant d’une feuille blanche

Un tutoriel en front page avec quelques explications, c'est effectivement ce qui manque. Les informations sont là sur ce forum, mais noyées dans des pages et des pages...  :'(
Je me suis replongé dans les messages pour obtenir une configuration fonctionnelle pour la TV (j'ai finalement pris l'option TV chez Sosh), et cela s'apparente plutôt à de l'archéologie.  ;D
Pour être transparent, je me suis basé sur le tuto Mikrotik pour faire ma configuration car je ne trouvais pas mon bonheur pour la configuration avec Edgerouter (confs avec bridge obsolètes, etc.).

La prochaine étape de mon côté sera d'automatiser la configuration après un upgrade, mais c'est bien difficile de s'y replonger après tout ce temps.


Lyrca

  • Abonné Free fibre
  • *
  • Messages: 171
  • Grenoble (38)
Tuto - ER4 - v2.0.8 - IPv6 + TV et Tel avec Livebox
« Réponse #5 le: 24 juillet 2020 à 13:18:53 »
Je t'ai indiqué dans ce message ce qu'il fallait faire pour la TV et la VoD.
Je n'ai pas craché les lignes de configuration car je pense qu'il est important de comprendre ce qui doit être fait plutôt que de suivre un tutoriel tout fait.

Je le répète je n'ai fait que compiler les informations disponibles sur ce forum en prenant le temps de les comprendre dans un premier temps. Pour ce qui est des améliorations dont je suis conscient qu'elles existent je mettrai ce topic à jour avec le temps. Mon objectif premier était d'avoir quelque chose de fonctionnel.

J'ai publié les informations récoltées ici et là afin que d'autres personnes n'aient pas à effectuer le travail de recherche que j'ai fait, ceci n'est qu'une base imparfaite et est présentée comme telle dès le premier post.

Je viens de jeter un oeil ce midi :

J'ai retiré le bridge correspondant au VLAN 838 ainsi que ce dernier.

Si je garde un bridge br0 pour le VLAN 840, pas de soucis je peux utiliser le décodeur derrière la Livebox.

Par contre sans ce bridge pas d'image, j'imagine alors qu'il faudra configurer l'IGMP proxy.

Je n'utilise actuellement pas le décodeur mais lorsque je mettrai la procédure à jour je ferai l'essai avec l'IGMP proxy.

Vous me confirmez que pour mettre en place l'IGMP proxy il faut que les deux interfaces eth1.840 et eth0.840 aient une IP ?

Merci
« Modifié: 24 juillet 2020 à 17:42:24 par Lyrca »

zoc

  • Abonné Orange Fibre
  • *
  • Messages: 4 288
  • Antibes (06) / Mercury (73)
Tuto - ER4 - v2.0.8 - IPv6 + TV et Tel avec Livebox
« Réponse #6 le: 25 juillet 2020 à 06:46:24 »
Oui, igmpproxy requiert que les interfaces upstream et downstream aient une adresse IP.

Maintenant, personne ne met le décodeur derrière la livebox, puisqu’il fonctionne très bien connecté directement au routeur pour peu que igmpproxy soit activé et que le serveur DHCP du routeur envoie les bonnes options...

cyayon

  • Abonné Orange Fibre
  • *
  • Messages: 648
  • Cordon 74 - Orange Fibre Pro
Tuto - ER4 - v2.0.8 - IPv6 + TV et Tel avec Livebox
« Réponse #7 le: 28 juillet 2020 à 14:43:17 »
bonjour,

serait-il possible d'avoir la config radvd.conf svp ?
au moins le template peut-être ?

merci.

cyayon

  • Abonné Orange Fibre
  • *
  • Messages: 648
  • Cordon 74 - Orange Fibre Pro
Tuto - ER4 - v2.0.8 - IPv6 + TV et Tel avec Livebox
« Réponse #8 le: 28 juillet 2020 à 14:59:07 »
re-bonjour,

sur ce tuto : https://vincent.bernat.ch/fr/blog/2019-orange-livebox-linux

on voit que le vlan 832 est monté en QOS 0:0 6:6 (egress-qos-map 0:0 6:6).
hors ci-dessous, on applique 5:5 6:6 (egress 5:5 6:6).

pourquoi ?
laquelle est la bonne ?

merci.

zoc

  • Abonné Orange Fibre
  • *
  • Messages: 4 288
  • Antibes (06) / Mercury (73)
Tuto - ER4 - v2.0.8 - IPv6 + TV et Tel avec Livebox
« Réponse #9 le: 28 juillet 2020 à 15:51:51 »
La version de Vincent Bernat est la bonne. L'autre a des effets secondaires ennuyeux (indisponibilité de services tiers en VOIP SIP, chez OVH par exemple). 0:0 6:6 est la configuration qui pose le moins de problèmes (même si elle en pose tout de même avec certains clients SFTP et qui se traduit par un débit limité pour ces clients).

Pour raddvd.conf, je ne pense pas que mon template te serve à quelque chose vu qu'il est adapté à mon réseau et au script qui le traite
interface eth3.69 {
    IgnoreIfMissing on;
    AdvSendAdvert on;
    AdvOtherConfigFlag off;
    AdvDefaultLifetime 1800;
    AdvLinkMTU 0;
    AdvCurHopLimit 64;
    AdvReachableTime 0;
    MaxRtrAdvInterval 600;
    MinRtrAdvInterval 198;
    AdvDefaultPreference medium;
    AdvRetransTimer 0;
    AdvManagedFlag off;
    prefix ${PREFIX1}69::/64 {
        AdvPreferredLifetime 14400;
        AdvAutonomous on;
        AdvOnLink on;
        AdvValidLifetime 18000;
    };
    prefix fd00:dead:babe:0069::/64 {
        AdvPreferredLifetime 14400;
        AdvAutonomous on;
        AdvOnLink on;
        AdvValidLifetime 18000;
    };
};

interface eth3.70 {
    IgnoreIfMissing on;
    AdvSendAdvert on;
    AdvOtherConfigFlag off;
    AdvDefaultLifetime 1800;
    AdvLinkMTU 0;
    AdvCurHopLimit 64;
    AdvReachableTime 0;
    MaxRtrAdvInterval 600;
    MinRtrAdvInterval 198;
    AdvDefaultPreference medium;
    AdvRetransTimer 0;
    AdvManagedFlag off;
    prefix ${PREFIX1}70::/64 {
        AdvPreferredLifetime 14400;
        AdvAutonomous on;
        AdvOnLink on;
        AdvValidLifetime 18000;
    };
    prefix fd00:dead:babe:0070::/64 {
        AdvPreferredLifetime 14400;
        AdvAutonomous on;
        AdvOnLink on;
        AdvValidLifetime 18000;
    };
};

interface eth3.68 {
    IgnoreIfMissing on;
    AdvSendAdvert on;
    AdvOtherConfigFlag off;
    AdvDefaultLifetime 1800;
    AdvLinkMTU 0;
    AdvCurHopLimit 64;
    AdvReachableTime 0;
    MaxRtrAdvInterval 600;
    MinRtrAdvInterval 198;
    AdvDefaultPreference medium;
    AdvRetransTimer 0;
    AdvManagedFlag off;
    prefix ${PREFIX1}68::/64 {
        AdvPreferredLifetime 14400;
        AdvAutonomous on;
        AdvOnLink on;
        AdvValidLifetime 18000;
    };
    prefix fd00:dead:babe:0068::/64 {
        AdvPreferredLifetime 14400;
        AdvAutonomous on;
        AdvOnLink on;
        AdvValidLifetime 18000;
    };
};

interface eth3.66 {
    IgnoreIfMissing on;
    AdvSendAdvert on;
    AdvOtherConfigFlag on;
    AdvDefaultLifetime 1800;
    AdvLinkMTU 0;
    AdvCurHopLimit 64;
    AdvReachableTime 0;
    MaxRtrAdvInterval 600;
    MinRtrAdvInterval 198;
    AdvDefaultPreference medium;
    AdvRetransTimer 0;
    AdvManagedFlag off;
    prefix ${PREFIX1}66::/64 {
        AdvPreferredLifetime 14400;
        AdvAutonomous on;
        AdvOnLink on;
        AdvValidLifetime 18000;
    };
    prefix fd00:dead:babe:0066::/64 {
        AdvPreferredLifetime 14400;
        AdvAutonomous on;
        AdvOnLink on;
        AdvValidLifetime 18000;
    };
    RDNSS fd00:dead:babe:66::50
    {
        AdvRDNSSLifetime 600;
    };
};

le fichier final étant généré depuis mon hook dibbler comme ça (qui exporte la variable ${PREFIX1} contenant le /56:
        # Generate RADVD configuration
        template_str=$(cat /config/templates/radvd.conf)
        eval "echo \"${template_str}\"" > /etc/radvd.conf

PS: Oui, j'annonce 2 préfixes dans chaque LAN, dont un dans la plage d'adresses ULA (juste pour avoir des IPv6 qui ne changent jamais dans mon serveur DNS local si le préfixe d'Orange change).

cyayon

  • Abonné Orange Fibre
  • *
  • Messages: 648
  • Cordon 74 - Orange Fibre Pro
Tuto - ER4 - v2.0.8 - IPv6 + TV et Tel avec Livebox
« Réponse #10 le: 28 juillet 2020 à 15:54:08 »
ok merci.

Mais l'idée d'utiliser des cgroups n'est pas une mauvaise idée, simplement en utilisant 0:0 6:6 ?

zoc

  • Abonné Orange Fibre
  • *
  • Messages: 4 288
  • Antibes (06) / Mercury (73)
Tuto - ER4 - v2.0.8 - IPv6 + TV et Tel avec Livebox
« Réponse #11 le: 28 juillet 2020 à 16:03:25 »
Si tu peux faire des cgroups alors c'est la solution ultime car seuls tes clients DHCP seront impactés. On n'en parle pas dans ce fil car le firmware de l'ER4 ne dispose pas du module cgroups net_prio malheureusement...

En fait si tu fais un cgroup net_prio alors le plus simple c'est vraiment de mettre 0:6 1:6 2:6 3:6 4:6 5:6 6:6 pour le groupe dont dhclient fera partie. Comme ca tu es certain d'avoir toujours la bonne priorité et tu n'as pas besoin d'un dhclient patché...