LINUX.ORG.RU

История изменений

Исправление vel, (текущая версия) :

Создаем набор с опцией skbinfo

ipset create xxx hash:ip  --skbinfo
#добавляем адрес с меткой
ipset -A xxx 10.0.0.1 skbmark 0x10
ipset -A xxx 10.0.0.2 skbmark 0x10
ipset -A xxx 10.0.0.5 skbmark 0x11 skbprio 1:11
#где-то в iptables
iptables -t mangle -A .... -j SET --map-set xxx src --map-mark
#Если src пакета есть в наборе, то пакет будет с меткой из набора.
#Если нужно маркировать conntrack то добавляем
iptables -t mangle -A .... -m mark ! --mark 0 -j CONNMARK --save-mark

кроме метки пакета можно задавать класс для шейпера через

iptables -t mangle -A .... -j SET --map-set xxx src --map-prio

Там много типов наборов, в т.ч. «hash:net,iface»

ipset create ccc hash:net,iface --skbinfo
ipset add ccc 0.0.0.0/0,ppp0 skbmark 0x20
ipset add ccc 0.0.0.0/0,ppp1 skbmark 0x21

Исходная версия vel, :

Создаем набор с опцией skbinfo

ipset create xxx hash:ip  --skbinfo
#добавляем адрес с меткой
ipset -A xxx 10.0.0.1 skbmark 0x10
ipset -A xxx 10.0.0.2 skbmark 0x10
ipset -A xxx 10.0.0.5 skbmark 0x11
#где-то в iptables
iptables -t mangle -A .... -j SET --map-set xxx src --map-mark
#Если src пакета есть в наборе, то пакет будет с меткой из набора.
#Если нужно маркировать conntrack то добавляем
iptables -t mangle -A .... -m mark ! --mark 0 -j CONNMARK --save-mark

кроме метки пакета можно задавать класс для шейпера через

iptables -t mangle -A .... -j SET --map-set xxx src --map-prio

Там много типов наборов, в т.ч. «hash:net,iface»

ipset create ccc hash:net,iface --skbinfo
ipset add ccc 0.0.0.0/0,ppp0 skbmark 0x20
ipset add ccc 0.0.0.0/0,ppp1 skbmark 0x21