LINUX.ORG.RU

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

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

Наверное как-то так. Не проверяю, набрасываю прямо тут без проверки. Т.е. пример может быть и не рабочим, дальше сами :)

iptables -t mangle -A PREROUTING -m set --set ra src -j CONNMARK --set-mark 0x1
iptables -t mangle -A PREROUTING m set --set rb src -j CONNMARK --set-mark 0x2
iptables -t mangle -A PREROUTING -j CONNMARK --restore-mark

iptables -N RA
iptables -N RB

iptables -A FORWARD -m connmark --mark 0x1 -j RETURN
iptables -A FORWARD -m connmark --mark 0x2 -j RETURN
iptables -A FORWARD -m statistic --mode random --probability 0.5 -j RA
iptables -A FORWARD -j RB

iptables -A RA -j SET --add-set ra src
iptables -A RA -j CONNMARK --set-mark 0x1


iptables -A RB -j SET --add-set rb src
iptables -A RB -j CONNMARK --set-mark 0x2

ip rule add fwmark 0x1 lookup ra
ip rule add fwmark 0x2 lookup rb

Ес-но в ядре должна быть поддержка ipset.

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

Наверное как-то так. Не проверяю, набрасываю прямо тут без проверки. Т.е. пример может быть и не рабочим, дальше сами :)

<pre> iptables -t mangle -A PREROUTING -m set --set ra src -j CONNMARK --set-mark 0x1 iptables -t mangle -A PREROUTING m set --set rb src -j CONNMARK --set-mark 0x2 iptables -t mangle -A PREROUTING -j CONNMARK --restore-mark

iptables -N RA iptables -N RB

iptables -A FORWARD -m connmark --mark 0x1 -j RETURN iptables -A FORWARD -m connmark --mark 0x2 -j RETURN iptables -A FORWARD -m statistic --mode random --probability 0.5 -j RA iptables -A FORWARD -j RB

iptables -A RA -j SET --add-set ra src iptables -A RA -j CONNMARK --set-mark 0x1

iptables -A RB -j SET --add-set rb src iptables -A RB -j CONNMARK --set-mark 0x2

ip rule add fwmark 0x1 lookup ra ip rule add fwmark 0x2 lookup rb </pre>

Ес-но в ядре должна быть поддержка ipset.