Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Linux и FreeBSD » Общий по Linux » Slackware - Перенаправление torrent траффика.

Ответить
Настройки темы
Slackware - Перенаправление torrent траффика.

Аватара для Trinux

Старожил


Сообщения: 225
Благодарности: 2

Профиль | Отправить PM | Цитировать


Здравствуйте уважаемые форумчане. Задача в теме, скажу что есть:

1. Сервер (3 сетевые карты eth0 локальная сеть1 eth1 аплинк eth2 локальная сеть2)
2. Есть микротик RB750 на нем pppoe подключение к провайдеру №2


Задача состоит в том, чтобы как-то разгрузить аплинк №1 хочу перенаправить торрент траффик на микротик с pppoe .


Задача выполнима? Подскажите варианты реализации.

Отправлено: 13:07, 07-12-2012

 

Ветеран


Сообщения: 2029
Благодарности: 704

Профиль | Отправить PM | Цитировать


Проще всего было бы сделать, установив opendpi.

Тогда маршрутизация torrent-трафика через второго провайдера выглядело бы примерно так (пишу навскидку и не проверяю):

iptables -t mange -A OUTPUT -m opendpi --bittorrent -j MARK --set-mark 2
iptables -t mange -A PREROUTING -m opendpi --bittorrent -j MARK --set-mark 2
ip route add default via <ip шлюза второго провайдера> table torrent
ip rule add fwmark 2 table torrent

Идея, я думаю, понятна.


P.S. Всё написанное выше - увы, бред. Раньше такое работало, но, увы, проект OpenDPI по каким-то причинам прекратил существование, ему на смену пришел какой-то nDPI, но я с ним не знаком. Решил не удалять это сообщение. Пусть останется как напоминание о том, насколько быстро устаревают знания.

Можно, конечно, задать диапазон портов для торрента через --destination-port, но это куда менее красивое решение.

Последний раз редактировалось AMDBulldozer, 07-12-2012 в 15:33.


Отправлено: 14:55, 07-12-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Trinux

Старожил


Сообщения: 225
Благодарности: 2

Профиль | Отправить PM | Цитировать


Не совсем понял, бред написал я или по поводу opendpi ???

Отправлено: 16:30, 07-12-2012 | #3


Ветеран


Сообщения: 2029
Благодарности: 704

Профиль | Отправить PM | Цитировать


Цитата Trinux:
Не совсем понял, бред написал я или по поводу opendpi ??? »
Прошу прощения за то, что неточно сформулировал свою мысль. Задача, которую Вам требуется решить, достаточно тривиальна.
Она обычно решается при помощи комбинации команд iptables с использованием цели MARK (каждому пакету присваивается тэг, по значению которого будет потом происходить маршрутизация) и команд ip rule (ip - это утилита из пакета iproute2) с помощью которых создаются дополнительные таблицы маршрутизации.
То есть, пакеты с указанным тэгом маршрутизируются с использованием набора правил для конкретной таблицы, а те, у которых тэга нет, маршруизируются с использованием обычной таблицы маршрутизации.
Команда "route" работает только с этой "обычной" таблицей, поэтому её недостаточно для дифференциации трафика по установленному целью MARK тэгу.

То есть, если бы Вам нужно было направить весь трафик через одного провайдера, а, скажем, интернет-серфинг осуществлять через другого, можно было бы использовать набор команд:

iptables -t mangle -A OUTPUT -p tcp --destination-port 80 -j MARK --set-mark 80
ip route add default via <ip шлюза> table http
ip rule add fwmark 80 table http

(в данном случае цель MARK находится в цепочке OUTPUT, поэтому правило действовало бы только на пакеты, отправителем которых был бы сам хост на котором установлен этот набор правил.
Транзитные пакеты, то есть пакеты, которые маршрутизировались бы через этот хост, не попали бы в цепочку OUTPUT и, следовательно, не могли бы получить тэг.

Вернемся к Вашей задаче. Вам нужно пометить тэгом все исходящие пакеты относящиеся к протоколу bittorrent, а потом использовать дополнительную таблицу маршрутизации для того, чтобы установить шлюз для пакетов с этим тэгом.
Остается единственный вопрос: каким образом отличить пакеты отправленные торрент-клиентом от всех остальных?
Правильный способ дифференциаци трафика основан на использовании DPI - deep packet inspection.
В этом случае, пакеты получат тэг даже при использовании нестандартных портов или после трансляции адресов (NAT).
В моем примере, я предложил использовать модуль opendpi, который я знал, потому что пару лет назад им пользовался.
К сожалению, когда я решил освежить свои воспоминания и залез в поисковую систему, выяснилось, что этот проект был закрыт несколько месяцев назад.
В сети я прочитал, что от него было сделано ответвление (fork) получившее название nDPI, ссылку на сайт которого я привел в предыдущем сообщении.
Но, opendpi больше не существует, поэтому предложенный мной метод в таком виде работать не будет.
Я расстроился, обозвал своё предложение бредом и честно признаюсь, что больше ничем не могу Вам помочь.
Уж извините. Единственное, на что я хотел обратить Ваше внимание - это на то, что задача, которую Вам требуется решить не только выполнима, но даже достаточно тривиальна.
Просто тривиальное решение с дифференциацией трафика по диапазону портов мне лично не нравится, потому что я считаю его некрасивым.

-------
Господа! Убедительная просьба не обращаться за консультациями в ЛС. Поверьте, создать ветку в соответствующем разделе форума гораздо эффективнее.


Отправлено: 17:34, 07-12-2012 | #4


Аватара для Trinux

Старожил


Сообщения: 225
Благодарности: 2

Профиль | Отправить PM | Цитировать


Очень доходчиво и понятно. Вот бы помог кто-то, потому как гугл мне внятных ответов не дал.

Отправлено: 18:05, 07-12-2012 | #5


Аватара для Trinux

Старожил


Сообщения: 225
Благодарности: 2

Профиль | Отправить PM | Цитировать


Вернусь к теме поставил layer7 (выполняет своию работу где-то на 10%)



так же поднял ipp2p, но почему-то не хочет с моим ядром работать. при запросе хелпа говорит возможные опции





root@server:/etc/network# iptables -m ipp2p --help
iptables v1.4.3

Usage: iptables -[AD] chain rule-specification [options]
iptables -I chain [rulenum] rule-specification [options]
iptables -R chain rulenum rule-specification [options]
iptables -D chain rulenum [options]

......................и т.д.





а вот при выполнении говорит следующее



root@server:/etc/network# iptables -A FORWARD -m ipp2p --edk --kazaa --gnu --bit
iptables: Incompatible with this kernel. Run `dmesg' for more information.






Opendpi не могу найти пакет opendpi-netfilter-wrapper-1.1.tar.gz может есть у кого-то?

Отправлено: 13:38, 18-03-2013 | #6


Ветеран


Сообщения: 2029
Благодарности: 704

Профиль | Отправить PM | Цитировать


Цитата Trinux:
так же поднял ipp2p, но почему-то не хочет с моим ядром работать »
Утилита iptables сама по себе никакой фильтрации трафика не выполняет. И не должна выполнять. Она всего лишь служит для управления таблицами правил, которые используют модули сетевой подсистемы ядра. Таким образом, для работы любого модуля iptables требуется наличие соответствующего модуля ядра.
Для ipp2p это модуль ipt_ipp2p. Он не включен в ядро, поэтому должен собираться отдельно. С помощью команды "lsmod" Вы можете проверить, загружен этот модуль или нет. Если модуль отсутствует, установить правила, которые требуют его наличия, будет невозможно.

-------
Господа! Убедительная просьба не обращаться за консультациями в ЛС. Поверьте, создать ветку в соответствующем разделе форума гораздо эффективнее.


Отправлено: 14:30, 18-03-2013 | #7


Аватара для Trinux

Старожил


Сообщения: 225
Благодарности: 2

Профиль | Отправить PM | Цитировать


Я наверное дал мало информации...


root@server:/etc/network# lsmod | grep ipp2p
ipt_ipp2p 5310 0
x_tables 13219 7 ipt_ipp2p,iptable_mangle,xt_mark,iptable_nat,iptable_filter,ip_tables,xt_layer7


и при этом....


root@server:/etc/network# iptables -A FORWARD -m ipp2p --edk --kazaa --gnu --bit
iptables: Incompatible with this kernel. Run `dmesg' for more information.

Отправлено: 15:57, 18-03-2013 | #8


Ветеран


Сообщения: 2029
Благодарности: 704

Профиль | Отправить PM | Цитировать


Trinux, а в выводе "dmesg" ничего интересного нет?

-------
Господа! Убедительная просьба не обращаться за консультациями в ЛС. Поверьте, создать ветку в соответствующем разделе форума гораздо эффективнее.


Отправлено: 16:09, 18-03-2013 | #9


Аватара для Trinux

Старожил


Сообщения: 225
Благодарности: 2

Профиль | Отправить PM | Цитировать


YНу как бэ намекает мне о моей версии ядра 2.6.35, но вот пытаюсь пересобрать на 2.6.22 а получается какая-то кака..... ничего не работает одни фейлы сыплются....

[ 142.600956] IPP2P v0.8.2+2.6.22-patch loading

Отправлено: 16:27, 18-03-2013 | #10



Компьютерный форум OSzone.net » Linux и FreeBSD » Общий по Linux » Slackware - Перенаправление torrent траффика.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Proxy/NAT - Proxifier и torrent The_Immortal Сетевые технологии 2 09-06-2012 17:33
Интернет - Перенаправление траффика iRusel Программное обеспечение Windows 11 06-01-2012 22:00
запретить torrent Antoha Svai Сетевые технологии 11 22-07-2010 13:41
µTorrent 1.8.5 OSZone Software Новости программного обеспечения 0 03-11-2009 18:30
Suse/OpenSuSE - перенаправление траффика 9112root Общий по Linux 8 26-12-2007 10:17




 
Переход