Não faça isso há muito tempo ... tome minha resposta com um grão de sal.
O pai do filtro pode ter que ser o qdisc PRIO em si (então você tem filtros HTB e filtros PRIO, ...). Caso contrário, o PRIO pode reclassificar pacotes por si próprio de acordo com o priomap.
Isto é o que parecia em um script antigo meu (FairNAT, você pode encontrar a coisa toda no GitHub) e eu tenho certeza que costumava trabalhar na época ... pacotes não foram filtrados por IP, mas marcados por iptables neste caso (o que também vale a pena tentar se você suspeitar que o filtro ip seja desonesto).
# Create a prio qdisc with 4 classes. All P2P traffic goes into class 4.
$BIN_TC qdisc add dev $UC_DEV parent 1:$UC_MARK handle $UC_MARK: prio \
bands 4
# Add a filter for IPP2P to this qdisc. The rest depends on TOS.
$BIN_TC filter add dev $UC_DEV parent $UC_MARK: protocol ip \
handle $(($UC_MARK+1)) fw flowid $UC_MARK:4
PRIO
não é uma boa escolha na maioria das vezes. É muito agressivo, pode matar completamente todo o tráfego.
Ter apenas uma única classe HTB também pode não ter o efeito desejado. Limitar ao 10GE também soa um pouco estranho para mim, se essa é a velocidade teórica do link que nunca é alcançada na prática, simplesmente não fará nada.
HFSC
pode ser mais adequado para a tarefa. A documentação é ainda pior do que o HTB, mas é mais capaz de classificar o limite e priorizar (o HTB realmente não prioriza absolutamente nada).