Auteur Sujet: [Résolu] Renouvellement DHCP  (Lu 21165 fois)

0 Membres et 1 Invité sur ce sujet

cyayon

  • Abonné Orange Fibre
  • *
  • Messages: 648
  • Cordon 74 - Orange Fibre Pro
[Résolu] Renouvellement DHCP
« Réponse #72 le: 30 septembre 2020 à 16:35:12 »

C'est quand un coup de bol d'avoir 2 ips fixes Orange dans 2 range bien distincts. J'ai repéré sur le forum des users qui avaient le même serveur DHCP que moi.
Du coup, je m'étais dis que tout le monde avait le même serveur DHCP chez Orange...

Quand je vois la complexité de nftables vs PF (packet filter) d'openbsd, je me dis que y a des mecs qui doivent pas bien dormir ... :)
Mais bon, faut vivre avec son temps, pas vrai ?

J'ai quand même bcp appris sur ce post, certaines choses sont plus claires dans ma tete, c'est grace à toi  ;) merci !
 

kazyor

  • Expert des Télécoms
  • Expert
  • *
  • Messages: 1 339
  • Lyon 7ème (69)
[Résolu] Renouvellement DHCP
« Réponse #73 le: 30 septembre 2020 à 23:21:51 »
C'est juste un peu dommage parce qu'on ne saura jamais ce qui clochait dans le setup.

+1 vous ne voulez pas continuer ? Pour la beauté du geste ?

cyayon

  • Abonné Orange Fibre
  • *
  • Messages: 648
  • Cordon 74 - Orange Fibre Pro
[Résolu] Renouvellement DHCP
« Réponse #74 le: 01 octobre 2020 à 09:07:22 »
+1 vous ne voulez pas continuer ? Pour la beauté du geste ?

comme un air de moquerie ?  ;D

kazyor

  • Expert des Télécoms
  • Expert
  • *
  • Messages: 1 339
  • Lyon 7ème (69)
[Résolu] Renouvellement DHCP
« Réponse #75 le: 01 octobre 2020 à 09:31:18 »
Oh non, pas du tout. La curiosité et le challenge avant tout.
J'ai appris pleins de choses, lu assidûment et suis un peu déçu de ne pas voir au bout la solution malgré votre investissement.

cyayon

  • Abonné Orange Fibre
  • *
  • Messages: 648
  • Cordon 74 - Orange Fibre Pro
[Résolu] Renouvellement DHCP
« Réponse #76 le: 01 octobre 2020 à 09:32:30 »
Oh non, pas du tout. La curiosité et le challenge avant tout.
J'ai appris pleins de choses, lu assidûment et suis un peu déçu de ne pas voir au bout la solution malgré votre investissement.

moi aussi, surtout que je dois avoir un bidule mal configuré qque part, c'est stressant  ::)

cyayon

  • Abonné Orange Fibre
  • *
  • Messages: 648
  • Cordon 74 - Orange Fibre Pro
[Résolu] Renouvellement DHCP
« Réponse #77 le: 02 octobre 2020 à 09:07:17 »
Et ben voila, ce qui devait arriver, arriva...

Le serveur DHCP orange est bien commun à tout le monde : 80.10.247.48

Oct 02 09:05:00 cerber.nbux.org dhclient[97498]: DHCPREQUEST for <iporange1> on orange1 to 80.10.247.48 port 67

Du coup mon dhclient orange1 ne parvient pas à faire son RENEW, car j'ai une route statique vers  80.10.247.48 sur orange2.

Donc on a bien un problème.

cyayon

  • Abonné Orange Fibre
  • *
  • Messages: 648
  • Cordon 74 - Orange Fibre Pro
[Résolu] Renouvellement DHCP
« Réponse #78 le: 02 octobre 2020 à 09:38:24 »
Du coup, en pièce jointe, j'ai posté l'ensemble de mes rêgles NFT, rule et routes.

J'ai anonymsé certaines IP.
J'ai retiré les modifs que nous avions faites pour tenter de solutionner le problème de re-routecheck histoire de repartir from scratch.


xavierg

  • Abonné Orange Fibre
  • *
  • Messages: 96
[Résolu] Renouvellement DHCP
« Réponse #79 le: 02 octobre 2020 à 22:03:25 »
Que de rebondissements...
... et que d'entrées dans cette table de routage principale... ça laisse vraiment penser que des namespaces pourraient segmenter tout ça.
Ça se comporte comme voulu le double-nexthop en guise de route par défaut ? Ça fait pas chier sur tout ce qui touche à TCP ?

Bref, pour reprendre les travaux sur le déclenchement d'un reroute check basé sur une fwmark (meta mark), je te propose dans un premier temps de modifier ta chaîne mangle/OUTPUT (qui me semble correctement déclarée) comme suit :

    chain OUTPUT {
        type route hook output priority mangle; policy accept;
        # une ligne ajoutée au début :
        udp sport 68 dport 67 log prefix "mangle/OUTPUT: entering"

        # contenu initial, laissé intact :
        oifname "orange1" ct state new counter packets 991 bytes 84041 jump MWAN1 comment "mwan1_orange1"
        oifname "orange2" ct state new counter packets 574 bytes 48670 jump MWAN2 comment "mwan2_orange2"
        oifname "wan3" ct state new counter packets 3 bytes 276 jump MWAN3 comment "mwan3_lte"
        oifname "beta0" ct state new counter packets 2 bytes 184 jump MWAN5 comment "mwan5_beta"
        oifname { "tun4" } ct state new counter packets 0 bytes 0 jump MWAN6 comment "mwan6_vanisher_orange1"
        oifname { "tun5" } ct state new counter packets 0 bytes 0 jump MWAN7 comment "mwan7_vanisher_orange2"
        oifname { "tun3" } ct state new counter packets 0 bytes 0 jump MWAN9 comment "mwan1_vanisher_lte"
        ct state new counter packets 1866 bytes 169599 jump MWAN
        ct mark != 0x00000000 meta mark set ct mark

        # trois lignes ajoutées à la fin :
        udp sport 68 dport 67 log prefix "mangle/OUTPUT: about to mark"
        udp sport 68 dport 67 meta mark set 0xcafecafe
        udp sport 68 dport 67 log prefix "mangle/OUTPUT: freshly marked"
    }

Le but c'est de marquer tous les paquets DHCP unicast sortants et d'avoir des traces qui certifient que la fwmark n'était pas présente lors de l'entrée du paquet dans la chaîne de type route hook output mais qu'elle est bien présente en sortie.
Tu noteras que je meta mark après le "meta mark set ct mark" qui me semble être un appeau à subtilités.
Si ça fonctionne, on doit obtenir 3 entrées de log pour chaque paquet intéressant.

zoc

  • Abonné Orange Fibre
  • *
  • Messages: 4 292
  • Antibes (06) / Mercury (73)
[Résolu] Renouvellement DHCP
« Réponse #80 le: 03 octobre 2020 à 07:49:23 »
Perso si je devais faire ce que tu essayes de faire, j’utiliserais cgroups, et en particulier le network classifier group, ce qui permet d’une part d’avoir une table de routage spécifique pour chaque process, et d’autre part si besoin d’appliquer la CoS sans devoir patcher dhclient en utilisant le groupe network priority, comme certains l’ont déjà expliqué ici ( https://lafibre.info/remplacer-livebox/isc-dhcp-client-raw-socket-solution )

J’avoue que j’ai très peu joué avec cgroups (d’autant plus que le kernel de mon ER4 ne supporte pas le network priority group), mais il y a quelques pistes ici https://www.evolware.org/?p=369 par exemple).

 En pratique il s’agirait de mettre en place 2 groupes, un process dhclient dans chaque groupe avec la table de routage qui va bien.

cyayon

  • Abonné Orange Fibre
  • *
  • Messages: 648
  • Cordon 74 - Orange Fibre Pro
[Résolu] Renouvellement DHCP
« Réponse #81 le: 03 octobre 2020 à 08:34:29 »
Premièrement la route dans la table main avec nexthop ne fonctionne pas, c'est soit l'un soit l'autre.

Suite aux modifs proposées par Xavier, j'ai effectivement 3 logs par DHCPREQUEST. Actuellement, c'est mon orange2 qui ne parvient pas à faire son RENEW. Pourtant, dans les logs, cela provient de l'IP orange1, alors que c'est le dhclient de l'interface orange2...

Oct 03 08:31:10 cerber.nbux.org kernel: mangle/OUTPUT: entering IN= OUT=orange1 SRC=<iporange1> DST=80.10.247.48 LEN=411 TOS=0x00 PREC=0x00 TTL=64 ID=34374 PROTO=UDP SPT=68 DPT=67 LEN=391
Oct 03 08:31:10 cerber.nbux.org kernel: mangle/OUTPUT: about to mark IN= OUT=orange1 SRC=<iporange1> DST=80.10.247.48 LEN=411 TOS=0x00 PREC=0x00 TTL=64 ID=34374 PROTO=UDP SPT=68 DPT=67 LEN=391 MARK=0x100
Oct 03 08:31:10 cerber.nbux.org kernel: mangle/OUTPUT: freshly marked IN= OUT=orange1 SRC=<iporange1> DST=80.10.247.48 LEN=411 TOS=0x00 PREC=0x00 TTL=64 ID=34374 PROTO=UDP SPT=68 DPT=67 LEN=391 MARK=0xcafecafe

Oct 03 08:31:27 cerber.nbux.org kernel: mangle/OUTPUT: entering IN= OUT=orange1 SRC=<iporange1> DST=80.10.247.48 LEN=411 TOS=0x00 PREC=0x00 TTL=64 ID=35298 PROTO=UDP SPT=68 DPT=67 LEN=391
Oct 03 08:31:27 cerber.nbux.org kernel: mangle/OUTPUT: about to mark IN= OUT=orange1 SRC=<iporange1> DST=80.10.247.48 LEN=411 TOS=0x00 PREC=0x00 TTL=64 ID=35298 PROTO=UDP SPT=68 DPT=67 LEN=391 MARK=0x100
Oct 03 08:31:27 cerber.nbux.org kernel: mangle/OUTPUT: freshly marked IN= OUT=orange1 SRC=<iporange1> DST=80.10.247.48 LEN=411 TOS=0x00 PREC=0x00 TTL=64 ID=35298 PROTO=UDP SPT=68 DPT=67 LEN=391 MARK=0xcafecafe

Compte-tenu de mes ip rules, c'est logique je crois ?
0:      from all lookup local
100:    from <iporange1> lookup 100
101:    from all fwmark 0x100 lookup 100
200:    from <iporange2> lookup 200
201:    from all fwmark 0x200 lookup 200
300:    from 192.168.4.254 lookup 300
301:    from all fwmark 0x300 lookup 300
500:    from 192.168.251.2 lookup 500
501:    from all fwmark 0x500 lookup 500
600:    from 10.4.113.251 lookup 600
601:    from all fwmark 0x600 lookup 600
700:    from 10.2.0.244 lookup 700
701:    from all fwmark 0x700 lookup 700
900:    from 10.0.49.26 lookup 900
901:    from all fwmark 0x900 lookup 900
32766:  from all lookup main
32767:  from all lookup default


Ensuite, merci ZOC pour ta suggestion.

En réfléchissant (si si ça m'arrive :)), je ne vois pas comment marker mes paquets dans ces conditions sachant que l'interface ET l'IP source ne sont pas bons. Du coup, effectivement, il reste de le process (ou le skgid comme l'avait suggéré Xavier avant d'ailleurs).
J'ai modifié ma table mangle/OUTPUT en ajoutant un markage sur meta cgroup.

chain OUTPUT {
                type route hook output priority mangle; policy accept;
                oifname $iface_wan1 ct state new counter jump MWAN1 comment "mwan1_orange1"
                oifname $iface_wan2 ct state new counter jump MWAN2 comment "mwan2_orange2"
                oifname $iface_wan3 ct state new counter jump MWAN3 comment "mwan3_lte"
                oifname $iface_beta ct state new counter jump MWAN5 comment "mwan5_beta"
                oifname $iface_vanisher1 ct state new counter jump MWAN6 comment "mwan6_vanisher_orange1"
                oifname $iface_vanisher2 ct state new counter jump MWAN7 comment "mwan7_vanisher_orange2"
                oifname $iface_vanisher3 ct state new counter jump MWAN9 comment "mwan1_vanisher_lte"
                ct state new counter jump MWAN
                ct mark != 0x0 meta mark set ct mark

                # to force DHCP RENEW cgroup process via its own iface
                udp sport 68 udp dport 67 meta cgroup $cgroup_wan1 counter jump MWAN1_CGROUP comment "mwan1_dhcpc_cgroup"
                udp sport 68 udp dport 67 meta cgroup $cgroup_wan2 counter jump MWAN2_CGROUP comment "mwan2_dhcpc_cgroup"

        }

       chain MWAN1_CGROUP {
                counter meta mark set 0x100
                log prefix "netfilter_MWAN1_CGROUP" group 0
        }

        chain MWAN2_CGROUP {
                counter meta mark set 0x200
                log prefix "netfilter_MWAN2_CGROUP" group 0
        }

        chain MWAN3_CGROUP {
                counter meta mark set 0x300
                log prefix "netfilter_MWAN3_CGROUP" group 0
        }

j'ai modifié mes rules :
0:      from all lookup local
1:      from all fwmark 0x100 ipproto udp sport 68 dport 67 lookup 100
2:      from all fwmark 0x200 ipproto udp sport 68 dport 67 lookup 200
100:    from <iporange1> lookup 100
101:    from all fwmark 0x100 lookup 100
200:    from <iporange2> lookup 200
201:    from all fwmark 0x200 lookup 200
300:    from 192.168.4.254 lookup 300
301:    from all fwmark 0x300 lookup 300
500:    from 192.168.251.2 lookup 500
501:    from all fwmark 0x500 lookup 500
600:    from 10.4.102.16 lookup 600
601:    from all fwmark 0x600 lookup 600
700:    from 10.2.23.241 lookup 700
701:    from all fwmark 0x700 lookup 700
900:    from 10.3.5.248 lookup 900
901:    from all fwmark 0x900 lookup 900
32766:  from all lookup main
32767:  from all lookup default

ensuite, j'ai ajouté les PID des process dhclient dans /sys/fs/cgroup/net_cls/dhcp-orange1|2/tasks et chacun avec son $cgroup_wanX dans /sys/fs/cgroup/net_cls/dhcp-orange1|2/net_cls.classid

Résultat, ca a marché de suite, le RENEW de l'interface orange2 est passé direct !

Par contre, ne sachant pas trop, dois-je ajouter les lignes de markage cgroup dans la chain OUTPUT AVANT le "meta mark set ct mark" final ?
Est-ce une bonne idée, je ne sais pas ... qu'en pensez-vous ? d'un point de vue perf, c'est surement mieux non ?
Ca ressemblerait à cela :

chain OUTPUT {
                type route hook output priority mangle; policy accept;
                oifname $iface_wan1 ct state new counter jump MWAN1 comment "mwan1_orange1"
                oifname $iface_wan2 ct state new counter jump MWAN2 comment "mwan2_orange2"
                oifname $iface_wan3 ct state new counter jump MWAN3 comment "mwan3_lte"
                oifname $iface_beta ct state new counter jump MWAN5 comment "mwan5_beta"
                oifname $iface_vanisher1 ct state new counter jump MWAN6 comment "mwan6_vanisher_orange1"
                oifname $iface_vanisher2 ct state new counter jump MWAN7 comment "mwan7_vanisher_orange2"
                oifname $iface_vanisher3 ct state new counter jump MWAN9 comment "mwan1_vanisher_lte"
               
                # to force DHCP RENEW cgroup process via its own iface
                udp sport 68 udp dport 67 meta cgroup $cgroup_wan1 counter jump MWAN1_CGROUP comment "mwan1_dhcpc_cgroup"
                udp sport 68 udp dport 67 meta cgroup $cgroup_wan2 counter jump MWAN2_CGROUP comment "mwan2_dhcpc_cgroup"

                ct state new counter jump MWAN
                ct mark != 0x0 meta mark set ct mark
        }


Enfin, c'est vrai que ce serait plus simple sans utiliser les cgroup et d'arriver à marker les paquets avec une regle mangle/OUTPUT, mais compte-tenu des caractéristiques des paquets, avec l'ip source et l'interface qui correspondent bien (alors que c'est faux), j'avoue que je ne vois pas trop comment faire.

Ou alors le gid du process dhclient et une regle nftables du genre : 

chain OUTPUT {
                type route hook output priority mangle; policy accept;
                oifname $iface_wan1 ct state new counter jump MWAN1 comment "mwan1_orange1"
                oifname $iface_wan2 ct state new counter jump MWAN2 comment "mwan2_orange2"
                oifname $iface_wan3 ct state new counter jump MWAN3 comment "mwan3_lte"
                oifname $iface_beta ct state new counter jump MWAN5 comment "mwan5_beta"
                oifname $iface_vanisher1 ct state new counter jump MWAN6 comment "mwan6_vanisher_orange1"
                oifname $iface_vanisher2 ct state new counter jump MWAN7 comment "mwan7_vanisher_orange2"
                oifname $iface_vanisher3 ct state new counter jump MWAN9 comment "mwan1_vanisher_lte"
               
                # to force DHCP RENEW cgroup process via its own iface
                udp sport 68 udp dport 67 meta skgid $skgid_wan1 counter jump MWAN1_CGROUP comment "mwan1_dhcpc_skgid"
                udp sport 68 udp dport 67 meta skgid $skgid_wan2 counter jump MWAN2_CGROUP comment "mwan2_dhcpc_skgid"

                ct state new counter jump MWAN
                ct mark != 0x0 meta mark set ct mark
        }

C'est peut-être plus simple et plus flexible, il suffirait de faire tourner les process dans leur groupe...

La question qui persiste, est de savoir s'il faut mettre les regles nft avant ou apres le 'meta mark set ct mark' final de la chain OUTPUT ?
Et dois-je marké les paquets dans les chains mangle/OUTPUT, mangle/PRETROUTING et mangle/POSTROUTING comme je le fais, ou bien mangle/OUTPUT et mangle/PREROUTING ne suffirait-il pas ?
« Modifié: 03 octobre 2020 à 10:59:49 par cyayon »

xavierg

  • Abonné Orange Fibre
  • *
  • Messages: 96
[Résolu] Renouvellement DHCP
« Réponse #82 le: 03 octobre 2020 à 13:40:35 »
Premièrement la route dans la table main avec nexthop ne fonctionne pas, c'est soit l'un soit l'autre.
Ah, c'est bien ce qu'il me semblait :)

Suite aux modifs proposées par Xavier, j'ai effectivement 3 logs par DHCPREQUEST.
Excellent.

Oct 03 08:31:10 cerber.nbux.org kernel: mangle/OUTPUT: entering IN= OUT=orange1 SRC=<iporange1> DST=80.10.247.48 LEN=411 TOS=0x00 PREC=0x00 TTL=64 ID=34374 PROTO=UDP SPT=68 DPT=67 LEN=391
Oct 03 08:31:10 cerber.nbux.org kernel: mangle/OUTPUT: about to mark IN= OUT=orange1 SRC=<iporange1> DST=80.10.247.48 LEN=411 TOS=0x00 PREC=0x00 TTL=64 ID=34374 PROTO=UDP SPT=68 DPT=67 LEN=391 MARK=0x100
Oct 03 08:31:10 cerber.nbux.org kernel: mangle/OUTPUT: freshly marked IN= OUT=orange1 SRC=<iporange1> DST=80.10.247.48 LEN=411 TOS=0x00 PREC=0x00 TTL=64 ID=34374 PROTO=UDP SPT=68 DPT=67 LEN=391 MARK=0xcafecafe
Tu remarqueras que le paquet se fait d'abord marquer en 0x100 avant de se faire marquer en 0xcafecafe (ou 0x200 comme initialement voulu). C'est peut-être dans cette zone que se situe le bloquage rencontré jusqu'à maintenant.

Ensuite, merci ZOC pour ta suggestion.
En réfléchissant (si si ça m'arrive :)), je ne vois pas comment marker mes paquets dans ces conditions sachant que l'interface ET l'IP source ne sont pas bons. Du coup, effectivement, il reste de le process (ou le skgid comme l'avait suggéré Xavier avant d'ailleurs).
J'ai modifié ma table mangle/OUTPUT en ajoutant un markage sur meta cgroup.
Oui, très clairement, comme déjà mentionné, tu ne PEUX PAS te baser sur les informations que tu veux corriger (ici : celles choisies lors du routage initial : IP source et interface de sortie) pour repérer les paquets qui t'intéressent, tu DOIS te baser sur une discrimination relative au processus ayant émis les paquets (uid ça a foiré, skgid c'est toujours sympa parce que c'est simple et réutilisable, cgroup je l'avais mentionné mais selon ton setup ça peut être un peu plus chiant à gérer) ou une discrimination relative au payload UDP (comme repérer ton login Orange dans le payload).

j'ai modifié mes rules :
Ça me semble un peu redondant. Je proposerais :
0:      from all lookup local
1:      from all fwmark 0x100 lookup 100
2:      from all fwmark 0x200 lookup 200
100:    from <iporange1> lookup 100
200:    from <iporange2> lookup 200
300:    from 192.168.4.254 lookup 300
301:    from all fwmark 0x300 lookup 300
500:    from 192.168.251.2 lookup 500
501:    from all fwmark 0x500 lookup 500
600:    from 10.4.102.16 lookup 600
601:    from all fwmark 0x600 lookup 600
700:    from 10.2.23.241 lookup 700
701:    from all fwmark 0x700 lookup 700
900:    from 10.3.5.248 lookup 900
901:    from all fwmark 0x900 lookup 900
32766:  from all lookup main
32767:  from all lookup default
À mon sens tu pourrais même grouper toutes tes rules fwmark au début et ensuite seulement te baser sur l'IP source. Mais c'est du chipotage à ce stade.

ensuite, j'ai ajouté les PID des process dhclient dans /sys/fs/cgroup/net_cls/dhcp-orange1|2/tasks et chacun avec son $cgroup_wanX dans /sys/fs/cgroup/net_cls/dhcp-orange1|2/net_cls.classid
Ça c'est à mon sens la partie "un peu plus chiant que changer le gid"... mais si par hasard c'est systemd qui lance tes dhclients, ça peut se simplifier. Dans tous les cas, cgroups ou skgid, ça reste ton choix, le principe restant le même : un reroute-check basé sur une fwmark elle-même basée sur une propriété du processus possédant le file descriptor du socket utilisé pour émettre les paquets.

Résultat, ca a marché de suite, le RENEW de l'interface orange2 est passé direct !
\o/

Par contre, ne sachant pas trop, dois-je ajouter les lignes de markage cgroup dans la chain OUTPUT AVANT le "meta mark set ct mark" final ?
Moi je vote non. Tu es sur un cas de marquage très simple (UDP, sortant, pas d'état, pas de tracking, pas de paquets liés, rien), ne gâche pas ça en prenant le risque de l'écraser à cause d'un marquage conntrack présent ou futur.

Est-ce une bonne idée, je ne sais pas ... qu'en pensez-vous ? d'un point de vue perf, c'est surement mieux non ?
Les performances c'est bien mais la maintenabilité et la stabilité sont à prendre en compte aussi. Ne risque pas des heures de prises de tête dans le futur pour épargner 10 microsecondes ici et là.

Enfin, c'est vrai que ce serait plus simple sans utiliser les cgroup et d'arriver à marker les paquets avec une regle mangle/OUTPUT
Mais c'est ce que tu fais. Tu marques tes paquets dans mangle/OUTPUT. Et cette fois ça fonctionne.

mais compte-tenu des caractéristiques des paquets, avec l'ip source et l'interface qui correspondent bien (alors que c'est faux), j'avoue que je ne vois pas trop comment faire.
Je te sens encore très très confus sur le sujet, mais je ne peux que réitérer l'explication :
1 - la route choisie lors de l'émission du paquet par le processus est fausse parce qu'à ce stade le système n'a pas connaissance de la discrimination que tu souhaites implémenter. Cela lui assigne une IP source erronée et une interface de sortie erronée, ce qui ruine effectivement tes chances de filtrer sur ces éléments.
2 - marquer tes paquets dans mangle/OUTPUT t'offre la possibilité de réévaluer leur route, ce qui, combiné à une ip rule fwmark corrige leur interface de sortie (yay !)
3 - l'IP source est corrigée par le masquerading
4 - profit!

C'est peut-être plus simple et plus flexible, il suffirait de faire tourner les process dans leur groupe...
avec leur groupe :)

La question qui persiste, est de savoir s'il faut mettre les regles nft avant ou apres le 'meta mark set ct mark' final de la chain OUTPUT ?
Je confirme mon vote : skgid, après le "meta mark set ct mark".


Et dois-je marké les paquets dans les chains mangle/OUTPUT, mangle/PRETROUTING et mangle/POSTROUTING comme je le fais, ou bien mangle/OUTPUT et mangle/PREROUTING ne suffirait-il pas ?
Je ne suis pas sûr de te suivre pour cette dernière question ; je n'ai pas analysé l'intégralité de tes nftables mais je peux te confirmer que dans le cadre de cette histoire de discrimination sur les paquets DHCP sortants, il est nécessaire et suffisant de marquer ces paquets dans mangle/OUTPUT (ou devrais-je dire dans "type route hook output priority mangle").

xavierg

  • Abonné Orange Fibre
  • *
  • Messages: 96
[Résolu] Renouvellement DHCP
« Réponse #83 le: 03 octobre 2020 à 13:49:37 »
À noter qu'utiliser skgid pour ton setup double-DHCP n'empêche nullement d'utiliser les cgroups pour la CoS (et les namespaces pour segmenter tout ça). À ce stade, tu as l'embarras du choix sur les techniques à employer pour avoir un setup fonctionnel et maintenable.