Ограничение bittorrent трафика
gebs 15 Августа, 2009 - 13:50
Ну и по традиции, здравствуй Сообщество.
Вопрос таков, может кто-нибудь посоветовать и по возможности поделиться решением по ограничению bittorrent трафика на маршрутизаторе, имеющиеся ПО:
iptables + POM, патченное ядро с поддержкой esfq, iproute2.
Логика такова, пакеты, принадлежащие bittorrent маркируются iptables в цепочке PREROUTING, далее средствами iproute2 получают более низкий приоритет и шейпятся.
Спасибо!
»
- Для комментирования войдите или зарегистрируйтесь

Логично. Утилита tc из
Логично. Утилита tc из sys-apps/iproute2 используется для организации очередей исходящего трафика. Там целая теория со совоими определениями. Много статей на эту тему на opennet. Например эта http://www.opennet.ru/base/net/linux_traffic_qos.txt.html. Да и на гентору это обсуждалось не раз. Напиши в строке поиска htb tc
Вообщем-то да, вы уже все
Вообщем-то да, вы уже все правильно расписали, осталось почитать маны на тему возможностей iproute2 и вперед.
Насчет маркировки - есть два модуля для iptables:
* net-misc/l7-filter-userspace Available versions: (~)0.7 (~)0.8 (~)0.10 (~)0.11 Homepage: http://l7-filter.sourceforge.net Description: Userspace utilities for layer 7 iptables QoS * net-misc/l7-protocols Available versions: (~)2008.01.16 (~)2008.02.20 (~)2008.04.23 (~)2008.11.08 (~)2008.11.23 (~)2008.12.18 (~)2009.05.10 (~)2009.05.28 Homepage: http://l7-filter.sourceforge.net/protocols Description: Protocol definitions of l7-filter kernel modulesи
* net-firewall/ipp2p Available versions: 0.8.2-r4 {kernel_linux} Homepage: http://www.ipp2p.org/index_en.html Description: Netfilter module for dealing with P2P Applications.Рекомендуют второе, ибо оно заточенно под конкретную задачу.
P.S. http://www.gentoo-wiki.info/QoS вот статья на эту саму тему.
net-firewall/ipp2p -нет такого пакета
emerge --search ipp2p
Searching...
[ Results for search key : ipp2p ]
[ Applications found : 0 ]
xtables не собирается же
CC [M] /var/tmp/portage/net-firewall/xtables-addons-1.31/work/xtables-addons-1.31/extensions/xt_fuzzy.o CC [M] /var/tmp/portage/net-firewall/xtables-addons-1.31/work/xtables-addons-1.31/extensions/xt_geoip.o /var/tmp/portage/net-firewall/xtables-addons-1.31/work/xtables-addons-1.31/extensions/xt_TEE.c: In function 'tee_tg_route4': /var/tmp/portage/net-firewall/xtables-addons-1.31/work/xtables-addons-1.31/extensions/xt_TEE.c:46: error: 'struct flowi' has no member named 'nl_u' /var/tmp/portage/net-firewall/xtables-addons-1.31/work/xtables-addons-1.31/extensions/xt_TEE.c:47: error: 'struct flowi' has no member named 'nl_u' /var/tmp/portage/net-firewall/xtables-addons-1.31/work/xtables-addons-1.31/extensions/xt_TEE.c:48: error: 'struct flowi' has no member named 'nl_u' /var/tmp/portage/net-firewall/xtables-addons-1.31/work/xtables-addons-1.31/extensions/xt_TEE.c:50: warning: passing argument 2 of 'ip_route_output_key' from incompatible pointer type include/net/route.h:131: note: expected 'struct flowi4 *' but argument is of type 'struct rtable **' /var/tmp/portage/net-firewall/xtables-addons-1.31/work/xtables-addons-1.31/extensions/xt_TEE.c:50: error: too many arguments to function 'ip_route_output_key' make[2]: *** [/var/tmp/portage/net-firewall/xtables-addons-1.31/work/xtables-addons-1.31/extensions/xt_TEE.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[1]: *** [_module_/var/tmp/portage/net-firewall/xtables-addons-1.31/work/xtables-addons-1.31/extensions] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.39.3' make: *** [modules] Error 2 emake failed * ERROR: net-firewall/xtables-addons-1.31 failed (compile phase): * Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= modules * * Call stack: * ebuild.sh, line 56: Called src_compile * environment, line 3469: Called linux-mod_src_compile * environment, line 2679: Called die * The specific snippet of code: * eval "emake HOSTCC=\"$(tc-getBUILD_CC)\" CROSS_COMPILE=${CHOST}- LDFLAGS=\"$(get_abi_LDFLAGS)\" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}"; * * If you need support, post the output of 'emerge --info =net-firewall/xtables-addons-1.31', * the complete build log and the output of 'emerge -pqv =net-firewall/xtables-addons-1.31'. * The complete build log is located at '/var/tmp/portage/net-firewall/xtables-addons-1.31/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/net-firewall/xtables-addons-1.31/temp/environment'. * S: '/var/tmp/portage/net-firewall/xtables-addons-1.31/work/xtables-addons-1.31' >>> Failed to emerge net-firewall/xtables-addons-1.31, Log file: >>> '/var/tmp/portage/net-firewall/xtables-addons-1.31/temp/build.log' * Messages for package net-firewall/xtables-addons-1.31: * ERROR: net-firewall/xtables-addons-1.31 failed (compile phase): * Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= modules * * Call stack: * ebuild.sh, line 56: Called src_compile * environment, line 3469: Called linux-mod_src_compile * environment, line 2679: Called die * The specific snippet of code: * eval "emake HOSTCC=\"$(tc-getBUILD_CC)\" CROSS_COMPILE=${CHOST}- LDFLAGS=\"$(get_abi_LDFLAGS)\" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}"; * * If you need support, post the output of 'emerge --info =net-firewall/xtables-addons-1.31', * the complete build log and the output of 'emerge -pqv =net-firewall/xtables-addons-1.31'. * The complete build log is located at '/var/tmp/portage/net-firewall/xtables-addons-1.31/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/net-firewall/xtables-addons-1.31/temp/environment'. * S: '/var/tmp/portage/net-firewall/xtables-addons-1.31/work/xtables-addons-1.31' * IMPORTANT: 6 news items need reading for repository 'gentoo'. * Use eselect news to read news items.Думай голова, думай. Я за тебя думать не буду!
:)
Не собирай модуль tee (он есть в ядре уже) для xtables и наступит тебе счастье.
Я его и не собирал. в опциях
Я его и не собирал. в опциях нигде не указывал. по use же флагам его нигде нет, что бы забить на него.
Думай голова, думай. Я за тебя думать не буду!
rimsky написал(а): Я его и не
А вот не надо такое утверждать. Вы его собирали, и в опциях он у вас указан. По дефолту. Ваша задача - убрать этот модуль.
Курите
в make.conf
убрал
XTABLES_ADDONS="account chaos condition delude dhcpmac fuzzy geoip iface ipmark ipp2p ipv4options length2 logmark lscan pknock psd quota2 rawnat steal sysrq tarpit"
все равно ошибка.
iptables -t mangle -A OUTPUT -m layer7 --l7proto bittorrent -j MARK --set-mark 3
iptables v1.4.10: Couldn't load match `layer7':/lib/xtables/libipt_layer7.so: cannot open shared object file: No such file or directory
Try `iptables -h' or 'iptables --help' for more information.
буду дальше смотреть, что убрать, а что наоборот поставить.
Думай голова, думай. Я за тебя думать не буду!
Agressor написал(а): Курите
как не кури XTABLES_ADDONS=, но даже если убрать tee (то есть, добавить в make.conf в переменную XTABLES_ADDONS= все флаги, кроме tee), но после даже удачной сборки, все равно ошибка:
iptables -t mangle -A OUTPUT -m layer7 --l7proto bittorrent -j MARK --set-mark 3:
iptables v1.4.10: Couldn't load match `layer7':/lib/xtables/libipt_layer7.so: cannot open shared object file: No such file or directory
можно поочередно добавлять разные флаги, все равно одна и та же ошибка.
можно пересобрать layer7 - не то.
Думай голова, думай. Я за тебя думать не буду!
:(
Пля... ну при чем тут это? Добился результата что пакет собирается - закрой тему. Начни новую.
А чтоб не начинал новую - подсказка:
и так далее.
Читать и еще раз читать. После прочтения - опять читать! До просветления. Затем поиском по этому форуму!
Agressor, загляни сюда
Agressor, загляни сюда http://gentoo.ru/node/23467 ;(
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)
:)
Да я ему об этом и пишу, мне лень просто в двух топиках сразу...
1.37 - "удачно" всё собралось
кавычки, ибо один хрен непонятки >>> http://www.gentoo.ru/node/23467
Думай голова, думай. Я за тебя думать не буду!