Ah, mais c'est bullseye, donc Debian 11, pas Debian 10.
Donc il y a déjà systemd 247, et avec bullseye-backports (pas buster-backports), on peut avoir systemd 251.
Est-ce que le ER-4 mettait le CoS 6 sur le DHCP ?
Sur les lignes où c'est nécessaire, s'il n'est pas présent il n'y aura pas de réponse au DHCP.
Dans systemd >= 248, dans la définition de [VLAN] on peut mettre EgressQOSMaps=6-6.
Sinon il faudrait un "ip link set enp2s0.832 type vlan egress 6:6" manuel ailleurs.
Dans le client DHCP intégré de systemd-networkd :
- dhcp_network_bind_udp_socket positionne IPPROTO_IP / IP_TOS à IPTOS_CLASS_CS6
- dhcp_network_bind_raw_socket ne positionne pas SOL_SOCKET / SO_PRIORITY : l'entête IP construit aura bien le bon DSCP, mais il n'y aura pas la priorité 6 dans l'entête VLAN (802.1Q)
La première requête (quand il n'y a pas encore d'IP) part à priori en RAW, donc si le CoS 6 est nécessaire il faudrait soit :
- patcher systemd
- utiliser LD_PRELOAD (si ça fonctionne pour le lancement de systemd-networkd) :
https://lafibre.info/remplacer-livebox/petit-ld_preload-pour-amateurs-de-setsockopt/msg799671 - utiliser les cgroupsv1, comme :
https://lafibre.info/remplacer-livebox/isc-dhcp-client-raw-socket-solution/msg634966Pour les cgroupsv1, ce n'est pas une solution pérenne, puisqu'il faudrait les réactiver (Debian 11 est passé hiérarchie unifiée, cad cgroupv2).
Donc il faudrait "systemd.unified_cgroup_hierarchy=false" sur la ligne de commande kernel.
Et pour lancer le service dans le cgroup, ce serait "systemctl edit systemd-networkd.service", avec probablement quelque chose comme :
[Service]
ExecStartPre=+cgcreate -t systemd-network:systemd-network -g net_prio:dhcp-orange ; +cgset -r "net_prio.ifpriomap=enp2s0.832 6" dhcp-orange
ExecStart=
ExecStart=!!cgexec -g net_prio:dhcp-orange --sticky -- {{ROOTLIBEXECDIR}}/systemd-networkd
Les "+" sont pour faire la création du cgroup en root avec tous les privilèges.
Tout systemd-networkd sera affecté, mais ce n'est normalement pas gênant d'avoir un peu plus de paquets en priorité 6 (tant que ce n'est pas l’ensemble du trafic réseau).