FreeBSD - ipfw скрипт для шлюза, корректно работающий с торрент-траффиком

Аватара пользователя
cluber

FreeBSD - ipfw скрипт для шлюза, корректно работающий с торрент-траффиком

Сообщение cluber »

машина верой и правдой служит в качестве шлюза.



ОС: FreeBSD 6

Файр: в ipfw

прокси: Squid



Возникла необходимость пробросить торрент траффик на одну машину в локалке.



Цель - пропустить и ограничить (чтоб не кушал больше положенного) торрент траффик.

Торрент траффик желательно пропустить вне прокси.



основа для конфигурации ipfw скрипта, пробрасывающего торрент-траффик взята здесь:

http://www.opennet.ru/openforum/vslu...ID12/5247.html




основа для конфигурации ipfw скрипта, для работы с прокси взята здесь:

http://www.opennet.ru/base/net/freebsd_gw2.txt.html




Проблема в том, что приведенные конфиги ipfw работоспособны в отдельности, но несовместимы.



Помогите, пожалуста.
Аватара пользователя
cluber

Re: FreeBSD - ipfw скрипт для шлюза, корректно работающий с торрент-траффиком

Сообщение cluber »

Какие еще существуют варианты проброса торрент-траффика сквозь шлюз?
Аватара пользователя
cluber

Re: FreeBSD - ipfw скрипт для шлюза, корректно работающий с торрент-траффиком

Сообщение cluber »

Снова вернулся к этой теме.



Составил список городских домашних сетей, пользователи которых пользуются торрен-сервисом (в данном случае это внутренний ресурс)

Есть идея разделить весь входящий и исходящий траффик по принадлежности IP.



Но IP адреса WEB серверов находятся в том же диапазоне, что и клиенты торрента.



Как можно в ipfw описать диапазон IP адресов (причем немаленький диапазон) исключив из него несколько IP?
Аватара пользователя
cluber

Re: FreeBSD - ipfw скрипт для шлюза, корректно работающий с торрент-траффиком

Сообщение cluber »

Снова вернулся к этой теме.



Составил список городских домашних сетей, пользователи которых пользуются торрен-сервисом (в данном случае это внутренний ресурс)

Есть идея разделить весь входящий и исходящий траффик по принадлежности IP.



Но IP адреса WEB серверов находятся в том же диапазоне, что и клиенты торрента.



Как можно в ipfw описать диапазон IP адресов (причем немаленький диапазон) исключив из него несколько IP?
Аватара пользователя
WhitePangolin

Re: FreeBSD - ipfw скрипт для шлюза, корректно работающий с торрент-траффиком

Сообщение WhitePangolin »

ну в PF например можно создать таблицу, которая содержит список подсетей и исключить из нее опредеоенный ИП. Пример



Код:

Код: Выделить всё

table  { 192.0.2.0/24, !192.0.2.5 }

Содержимое таблицы можно брать из файла:



Код:

Код: Выделить всё

table  persist file "/etc/spammers"
block in on fxp0 from  to any

Я думаю что в IPFW тоже можно чтото подобное сделать. только вот как.... . нужно в мануале пошукать.
Аватара пользователя
cluber

Re: FreeBSD - ipfw скрипт для шлюза, корректно работающий с торрент-траффиком

Сообщение cluber »

WhitePangolin, если вас не затруднит, то пожалуйста, приведите корректный пример для сети 192.168.10.0

IP адреса, которые нужно исключить 192.168.10.101 и 192.168.10.10



нигде ничего не смог найти с NOT.



Кто-нить использовал tables?



корректен ли такой вариант:

ipfw table 3 add 192.168.10.0

ipfw table 3 delete 192.168.10.10

ipfw table 3 delete 192.168.10.101
Аватара пользователя
leonty

Re: FreeBSD - ipfw скрипт для шлюза, корректно работающий с торрент-траффиком

Сообщение leonty »

cluber, в принципе я думаю правильно. но проще как в мане написано



Код:

Код: Выделить всё

 If you administer one or more subnets, you can take advantage of the
     address sets and or-blocks and write extremely compact rulesets which
     selectively enable services to blocks of clients, as below:
           goodguys="{ 10.1.2.0/24{20,35,66,18} or 10.2.3.0/28{6,3,11} }"
           badguys="10.1.2.0/24{8,38,60}"
           ipfw add allow ip from ${goodguys} to any
           ipfw add deny ip from ${badguys} to any
           ... normal policies ...
Аватара пользователя
WhitePangolin

Re: FreeBSD - ipfw скрипт для шлюза, корректно работающий с торрент-траффиком

Сообщение WhitePangolin »

Создаем white.list с содержанием:



Код:

Код: Выделить всё

192.168.10.10
192.168.10.101

в правилах пишем:



Код:

Код: Выделить всё

${ipfw} table 100 flush
for net in `cat white.list`; do
    ${ipfw} table 100 add $net
done
${ipfw} add deny all from any to not table\(100\)

В результате рубим все что идет не на адреса перечисленные в белом списке.
Аватара пользователя
cluber

Re: FreeBSD - ipfw скрипт для шлюза, корректно работающий с торрент-траффиком

Сообщение cluber »

Цитата cluber:



#Определяем одну из торрент подсетей (на самом деле их несколько)

# сама сеть

ipfw table 3 add 192.168.10.0

# веб сервера, которые тоже в этой подсети, но в торрент движениях участия не принимают удаляются из списка

ipfw table 3 delete 192.168.10.10

ipfw table 3 delete 192.168.10.101
FreeBSD - ipfw скрипт для шлюза, корректно работающий с торрент-траффиком




Это работать не должно.



Код:

Код: Выделить всё

gt# ipfw table 3 add 192.168.10.0
gt# ipfw table 3 list
192.168.10.0/32 0

соответственно стереть можно только весь диапазон, а не отдельный адрес.
Ответить

Вернуться в «Общий по FreeBSD»