Auteur Sujet: Remplacement de la Livebox par un routeur Openwrt  (Lu 518914 fois)

0 Membres et 2 Invités sur ce sujet

bigboo

  • Abonné Orange Fibre
  • *
  • Messages: 28
  • Bordeaux 33
Remplacement de la Livebox par un routeur Openwrt
« Réponse #1260 le: Hier à 22:10:38 »
La version 25.12.0 rc1 est disponible depuis 2j:
https://downloads.openwrt.org/

J'attend avant de mettre à jour vu tous les changements que cela va représenter pour les fichiers de config spécifiques au remplacement de la Livebox.

Mais j'ai vraiment espoir de pouvoir bientôt tagguer tous les paquets avec QoS à 0 comme recommandé par levieuxorange pour régler le problème de Wireguard bridé à 5mb/s

Bon ben je me répond à moi-même :P

J'ai trouvé la solution pour lever le bridage à 5mb/s pour Wireguard, en me basant sur la config du premier post c'est finalement très simple, dans le fichier /etc/nftables.d/nft-prio6-rules.include Il faut ajouter la ligne:

oifname "eth0.832" counter meta priority set 4:1
Wireguard taggue ses paquets en CoS 4, avec cette ligne le firewall les retaggue en CoS 1, puis dans l'interface ils sont retagué en CoS 0.

Pour info voici mon fichier nft-prio6-rules.include modifié et mis à jour à partir de différents posts trouvés sur ce forum plus mon ajout personnel du jour pour retaguer tous les paquets en CoS 0 au final conformément à ce qui est attendu par Orange pour éviter tout bridage :


oifname "eth0.832" counter meta priority set 0:1
oifname "eth0.832" counter meta priority set 2:1
oifname "eth0.832" counter meta priority set 3:1
oifname "eth0.832" counter meta priority set 4:1
oifname "eth0.832" counter meta priority set 5:1
oifname "eth0.832" udp dport 67 counter meta priority set 0:6 ip dscp set cs6
oifname "eth0.832" udp dport 547 counter meta priority set 0:6 ip dscp set cs6
oifname "eth0.832" icmpv6 type { nd-neighbor-solicit, nd-neighbor-advert } ip6 daddr fe80::ba0:bab/128 counter meta priority set 0:6 ip6 dscp set cs6
oifname "eth0.832" icmpv6 type nd-router-solicit counter meta priority set 0:6 ip6 dscp set cs6

EDIT:
en fait ca ne marche pas complètement
depuis mon pc windows >routeur openwrt>orange>livebox 5> serveur debian : pas de bridage pour wireguard
mais pour  serveur debian>routeur openwrt>orange>livebox 5> serveur debian : bridage à 5mb/s pour wireguard.
je ne comprends pas
« Modifié: Hier à 22:33:47 par bigboo »

unipo

  • Abonné Orange vdsl
  • *
  • Messages: 29
  • 32
Remplacement de la Livebox par un routeur Openwrt
« Réponse #1261 le: Hier à 23:13:04 »
Étrange, le bridage est inversé dans mon cas:
Serveur => routeur OpenWRT (wireguard peer) => Orange => Livebox => client (wireguard peer): Pas de bridage
Client (wireguard peer) => Livebox => Orange => routeur OpenWRT (wireguard peer) => serveur: Bridage 5mb/s

zof

  • Abonné Sosh fibre
  • *
  • Messages: 3
  • Le Mans (72)
Remplacement de la Livebox par un routeur Openwrt
« Réponse #1262 le: Aujourd'hui à 14:32:54 »
j'essaie de comprendre comment tout cela fonctionne avant de supprimer ma livebox mais c'est pas vraiment facile...

en lisant les précédents posts, j'ai l'impression que qu'il y a beaucoup de confusion (mais c'est peut être dans ma tête ;-) )

pour moi, il y a 3 endroits où on peut mettre une qualité :
- champ DSCP du paquet IP
- priorité interne du paquet linux
- champ PCP de la trame VLAN ethernet

pour moi, la directive "list egress_qos_mapping '1:0'" au niveau de l'interface permet de transformer une priorité interne en champ PCP sur une interface VLAN
et les regles nft "meta priority set xx" servent uniquement à fixer la priorité interne

est-ce que je me trompe ?

si c'est le cas, pas besoin de toucher au champ DSCP du paquet IP pour les trames DHCP ?

de plus, pour moi ces lignes ci-dessous se remplacent et donc n'ont aucune utilité à part la dernière :

oifname "eth0.832" counter meta priority set 0:1
oifname "eth0.832" counter meta priority set 2:1
oifname "eth0.832" counter meta priority set 3:1
oifname "eth0.832" counter meta priority set 4:1
oifname "eth0.832" counter meta priority set 5:1

je suis un peu perdu et les docs techniques ne sont pas toujours très claires (à mes yeux en tout cas ;-) )





basilix

  • Abonné Orange Fibre
  • *
  • Messages: 866
    • Mon dépôt GitHub
Remplacement de la Livebox par un routeur Openwrt
« Réponse #1263 le: Aujourd'hui à 17:47:38 »
L'IA indique que meta priority modifie la priorité du connecteur réseau (socket) (SO_PRIORITY) :

meta priority → skb->priority
                     → egress-qos-map
                     → PCP dans vlan_tci
                     → insertion 802.1Q

et que egress-qos-map fait correspondre cette priorité interne à la valeur du champ PCP.

Pour une interface VLAN logicielle (pas DSA), sans accélération matérielle (hardware offload) ou déchargement de flux (flow offloading) :

uci -q batch <<-EOF
add firewall include
set firewall.@include[-1].enabled='1'
set firewall.@include[-1].type='nftables'
set firewall.@include[-1].path='/etc/custom-netdev-table.nft'
set firewall.@include[-1].position='ruleset-post'
EOF

wan_iface=$(jsonfilter -i /etc/board.json -e '$.network.wan.ports[0]')

cat >/etc/custom-netdev-table.nft <<EOF
table netdev filter
flush table netdev filter

table netdev filter {
        chain set_isp_vlan_832 {
                udp dport 547 vlan pcp set 6 ip6 dscp set cs6 counter comment "Set QoS for DHCPv6 packets"
                udp dport 67 vlan pcp set 6 ip dscp set cs6 counter comment "Set QoS for DHCPv4 packets"
                icmpv6 type { 133, 135, 136 } vlan pcp set 6 ip6 dscp set cs6 counter comment "Set QoS for ICMPv6 packets"
        }
        chain set_isp_vlan_840 {
                ip protocol igmp vlan pcp set 5 ip dscp set cs4 counter comment "Set QoS for IGMP packets"
        }
        chain lan_iptv {
                ip protocol igmp ip dscp set cs4 counter comment "Set DSCP for IGMP packets"
        }
        chain egress {
                type filter hook egress device $wan_iface priority filter; policy accept;
                vlan type arp vlan pcp set 6 counter comment "Set QoS for ARP packets"
                vlan id 832 jump set_isp_vlan_832
                vlan id 840 jump set_isp_vlan_840
                jump lan_iptv
        }
}
EOF

J'ai écrit cette configuration il y a plusieurs mois (cela commence à dater).

Les compteurs ne semblent pas fonctionner mais c'est une autre histoire.

Je n'ai pas testé sur la version 25.12. J'utilisais la version nocturne. Il faut au minimum la version 25.12 (nftables >= v1.1.3).