La réponse choisie est incorrecte / incomplète. J'ai rencontré un problème similaire, la réponse choisie a donné de l'aide, mais pas assez.
Tout d'abord, la commande suivante n'est pas vraiment nécessaire.
tc qdisc del dev eth0 racine
Il «supprimera» le qdisc racine, mais sera immédiatement remplacé par un pfifo_fast (afin de ne pas perdre la connectivité).
La deuxième commande:
tc qdisc add dev eth0 root handle 1: prio
Remplacera le qdisc pfifo_fast par le prio one. Par défaut, la file d'attente prio a 3 bandes (0, 1, 2) chacune gérée par une classe (1: 1, 1: 2 et 1: 3).
Les paquets seront envoyés à l'une de ces bandes en utilisant le champ TOS du paquet IP. Cette configuration s'affiche lorsque vous exécutez:
tc qdisc ls
en regardant les valeurs «priomap».
Ensuite, vous ajoutez un qdisc netem:
tc qdisc add dev eth0 parent 1: 1 handle 2: délai netem 500ms
Avec cette commande, vous retardez tout le trafic vers la bande 1: 1 (jusqu'à ce que le filtre soit en place).
Mais il y a deux mises en garde:
- Votre trafic peut avoir une valeur TOS différente, puis être envoyé à une autre bande.
- Le prio qdisc peut être configuré de sorte que le trafic passe vers une autre bande.
Ce qui suit a résolu mon problème de ne pas être affecté par le netem alors que le filtre n'est pas appliqué. Au lieu des étapes ci-dessus, j'ai fait:
tc qdisc add dev eth0 root handle 1: prio priomap 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
Cela enverra tout le trafic par défaut à la bande 1: 3.
Ensuite, j'ai ajouté la règle pour retarder le trafic:
tc qdisc add dev eth0 parent 1: 1 handle 10: délai netem 100ms 10ms
Cela crée le qdisc dans la bande 0, mais comme tout le trafic va à la bande 3, cela ne m'a pas affecté.
Ensuite, j'ai ajouté le filtre:
filtre tc ajouter dev eth0 protocole ip parent 1: 0 prio 1 u32 match ip dst 10.0.0.1/32 match ip dport 80 0xffff flowid 1: 1
Maintenant avec le filtre, seul l'IP / port choisi sera affecté, puisque nous redirigeons le trafic choisi vers la bande 0.
Tous les autres trafics ne sont pas affectés, car ils continuent de circuler vers la bande 3.