Добрый день,Использую для ограничения скорости tc и iptables, ipset
для tc маркирую пакеты следующем образом
-A FORWARD -m set --match-set 20 src -j MARK --set-xmark 0x14/0xffffffff
-A FORWARD -m set --match-set 20 dst -j MARK --set-xmark 0x14/0xffffffff
-A FORWARD -m set --match-set 10 src -j MARK --set-xmark 0xa/0xffffffff
-A FORWARD -m set --match-set 10 dst -j MARK --set-xmark 0xa/0xffffffff
Обратил внимание, что у меня на iptables пакет проходит всю цепочку правил, то есть если ip будет в таблице 10 и таблице 20, то скорость будет соответствовать 10й так как она последняя, есть ли возможность прохождения пакета по цепочки до первого совпадения?
1) маркировать _обычно_ надо в -t mangle
2)
-A FORWARD -m set --match-set 20 src -m mark --mark 0 -j MARK --set-xmark 0x14/0xffffffff
-A FORWARD -m set --match-set 20 dst -m mark --mark 0 -j MARK --set-xmark 0x14/0xffffffff
-A FORWARD -m set --match-set 10 src -m mark --mark 0 -j MARK --set-xmark 0xa/0xffffffff
-A FORWARD -m set --match-set 10 dst -m mark --mark 0 -j MARK --set-xmark 0xa/0xffffffff
таким образом маркироваться будут только НЕ промаркированные пакеты
Судя по тексту особенность в -m mark --mark 0Спасибо, попробую добавить.