ollsanek Опубликовано 9 июля, 2014 · Жалоба входящие UDP пакеты нужно раунд-робином раскидывать по нескольким серверам, но для пакетов с одинаковыми {src IP, src port, dst IP, dst port} балансировки фактически не происходит, а она очень нужна. можно ли с помощью pf, для конкретного правила вида: rdr on $iniface proto udp from any to $ip port 1000 -> <servers> сделать балансировку без отслеживания состояний? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vlad11 Опубликовано 9 июля, 2014 · Жалоба man DSCP Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
boco Опубликовано 9 июля, 2014 · Жалоба примерно так: /etc/pf.conf vpn_if="em0" vpn_srv="10.8.0.1" vpn_clients="10.64.0.0/11" table <vpnservers> persist file "/etc/vpnservers" set limit { states 100000, frags 60000, src-nodes 100000 } set timeout { src.track 3600 } scrub in all # Filtering: the implicit first two rules are pass in all no state pass out all no state # balancing pass in route-to ( $vpn_if <vpnservers> ) round-robin sticky-address from $vpn_clients to $vpn_srv keep state тут, правда, один и тот же src отроутится в один и тот же dst, но если убрать sticky-address и заменить keep state на no state, то, может быть, будет то что вы хотите. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
ollsanek Опубликовано 9 июля, 2014 · Жалоба man DSCP можете написать чуть больше? а то поиск показывает только поле в заголовке пакетов, которое обычно используется для QOS. root@lb03-pf:/etc # uname -a FreeBSD lb03-pf 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260789: Fri Jan 17 01:46:25 UTC 2014 root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC i386 root@lb03-pf:/etc # man dscp No manual entry for dscp примерно так: ... # balancing pass in route-to ( $vpn_if <vpnservers> ) round-robin sticky-address from $vpn_clients to $vpn_srv keep state [/code] тут, правда, один и тот же src отроутится в один и тот же dst, но если убрать sticky-address и заменить keep state на no state, то, может быть, будет то что вы хотите. почти подходит. но тут есть ограничение, что сервера которые используются для балансировки должны быть next-hop, т.е. в одном сегменте с балансировщиком. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vlad11 Опубликовано 9 июля, 2014 (изменено) · Жалоба А погуглить? :) Вкратце: коммутатор и сервера должны уметь DSCP. Патчи для ОС брать тут. Изменено 9 июля, 2014 пользователем vlad11 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
boco Опубликовано 9 июля, 2014 · Жалоба тут есть ограничение, что сервера которые используются для балансировки должны быть next-hop, т.е. в одном сегменте с балансировщиком. натяните туннелей =) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vlad11 Опубликовано 10 июля, 2014 · Жалоба тут есть ограничение, что сервера которые используются для балансировки должны быть next-hop, т.е. в одном сегменте с балансировщиком. натяните туннелей =) То же решение :) Только потом не забыть fix-mtu делать :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
ollsanek Опубликовано 11 июля, 2014 (изменено) · Жалоба .... # balancing pass in route-to ( $vpn_if <vpnservers> ) round-robin sticky-address from $vpn_clients to $vpn_srv keep state [/code] тут, правда, один и тот же src отроутится в один и тот же dst, но если убрать sticky-address и заменить keep state на no state, то, может быть, будет то что вы хотите. Вобщем, сделал именно так, без тунелей, просто растянул Л2 сегмент. работает именно так как хотелось. Спасибо! Изменено 11 июля, 2014 пользователем ollsanek Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...