Как перенапрвить p2p сети на отдельный канал?
Модераторы: SLEDopit, Модераторы разделов
-
zkrvova
- Сообщения: 280
Как перенапрвить p2p сети на отдельный канал?
Хочу p2p трафик завернуть на свой канал, может ктото таким уже занимался и подскажет.
Вот смотрю у ослика порты по умолчанию 4662, у торента 32459. Но это входящие или исходящие? И это на скачку или только информационный канал.
И вообще плохо что эти порты можно сменить.
Подскажите кто знает!
Вот смотрю у ослика порты по умолчанию 4662, у торента 32459. Но это входящие или исходящие? И это на скачку или только информационный канал.
И вообще плохо что эти порты можно сменить.
Подскажите кто знает!
-
INF[SZ]
- Сообщения: 395
- ОС: Centos
Re: Как перенапрвить p2p сети на отдельный канал?
Собрать модуль www.ipp2p.org
метить пекаты iptables -A FORWARD -m ipp2p --edk -j MARK --set-mark 1
Создаем маршрут для "меченых"
echo 666 donkey >> /etc/iproute2/rt_tables
ip rule add fwmark 1 table donkey
ip route add default via 10.0.0.1 dev eth0 table donkey
ip route flush cache
Подробнее в Linux Advanced Routing & Traffic Control HOWTO
метить пекаты iptables -A FORWARD -m ipp2p --edk -j MARK --set-mark 1
Создаем маршрут для "меченых"
echo 666 donkey >> /etc/iproute2/rt_tables
ip rule add fwmark 1 table donkey
ip route add default via 10.0.0.1 dev eth0 table donkey
ip route flush cache
Подробнее в Linux Advanced Routing & Traffic Control HOWTO
Я не понял Вашего вопроса, но я Вам на него отвечу.
-
INF[SZ]
- Сообщения: 395
- ОС: Centos
Re: Как перенапрвить p2p сети на отдельный канал?
Есть тонкость с Bittorrent трафиком.
Модуль ipp2p блокирует только нешифрованный трафик т.е. если у пользователя стоит шифрование тогда Вы не направите этот трафик в отдельный канал прийдется действовать от противного - разрешить весь нужный трафик(http,icq и т.д.) в один канал а все остальное в другой.
Модуль ipp2p блокирует только нешифрованный трафик т.е. если у пользователя стоит шифрование тогда Вы не направите этот трафик в отдельный канал прийдется действовать от противного - разрешить весь нужный трафик(http,icq и т.д.) в один канал а все остальное в другой.
Я не понял Вашего вопроса, но я Вам на него отвечу.
-
zkrvova
- Сообщения: 280
Re: Как перенапрвить p2p сети на отдельный канал?
Спасибо, это то что надо.
Только жаль что для компиляции нужны исходники ядра, а с федорой они не идут.
А может есть у когото уже готовый модуль для iptables?
Только жаль что для компиляции нужны исходники ядра, а с федорой они не идут.
А может есть у когото уже готовый модуль для iptables?
-
INF[SZ]
- Сообщения: 395
- ОС: Centos
Re: Как перенапрвить p2p сети на отдельный канал?
yum install kernel-devel этого хватит
Я не понял Вашего вопроса, но я Вам на него отвечу.
-
zkrvova
- Сообщения: 280
-
INF[SZ]
- Сообщения: 395
- ОС: Centos
Re: Как перенапрвить p2p сети на отдельный канал?
kernel_src укажите /usr/src/kernels/2.6.XXXXXXX
а iptables_src делаются так
rpm -ihv iptables-XXXXX.srpm
rpmbuild -bp /usr/src/redhat/SPECS/iptables.spec
после наложения всех патчей сорцы будут находиться в /usr/src/redhat/BUILD/iptables-XXXX
их в Makefile ipp2p и укажите
а iptables_src делаются так
rpm -ihv iptables-XXXXX.srpm
rpmbuild -bp /usr/src/redhat/SPECS/iptables.spec
после наложения всех патчей сорцы будут находиться в /usr/src/redhat/BUILD/iptables-XXXX
их в Makefile ipp2p и укажите
Я не понял Вашего вопроса, но я Вам на него отвечу.
-
zkrvova
- Сообщения: 280
Re: Как перенапрвить p2p сети на отдельный канал?
О, спасибо, уже скомпелировалось
В модули iptables уже скопировал но невыходит:
insmod ipt_ipp2p.o / ipt_ipp2p.ko or copy to your kernel modules dir and do a "depmod -a"
insmod libipt_ipp2p.o
insmod: error inserting 'libipt_ipp2p.o': -1 Invalid module format
а libipt_ipp2p.ko у меня нету.
может просто скопировать в модули ядра, только где они?
В модули iptables уже скопировал но невыходит:
insmod ipt_ipp2p.o / ipt_ipp2p.ko or copy to your kernel modules dir and do a "depmod -a"
insmod libipt_ipp2p.o
insmod: error inserting 'libipt_ipp2p.o': -1 Invalid module format
а libipt_ipp2p.ko у меня нету.
может просто скопировать в модули ядра, только где они?
-
INF[SZ]
- Сообщения: 395
- ОС: Centos
Re: Как перенапрвить p2p сети на отдельный канал?
у меня после make появились
ipt_ipp2p.ko - модуль ядра
libipt_ipp2p.so - модуль Iptables
соответственно подгрузил модуль ядра
depmod -a
modprobe ipt_ipp2p
Далее пишем правила для iptables.
Во время компиляции ошибок не возникало ?
ipt_ipp2p.ko - модуль ядра
libipt_ipp2p.so - модуль Iptables
соответственно подгрузил модуль ядра
depmod -a
modprobe ipt_ipp2p
Далее пишем правила для iptables.
Во время компиляции ошибок не возникало ?
Я не понял Вашего вопроса, но я Вам на него отвечу.
-
zkrvova
- Сообщения: 280
Re: Как перенапрвить p2p сети на отдельный канал?
Ошибок никаких, но и модуля нету, я тут просмотрел макефайл и кажется что до компиляции модуля ядра вообще не доходит. Короче я закоментировал all: и стало компилироватся но выдаёт кучу ошибок. Нехочет короче. Нет в исходниках тех файлов который надо.
Что делать?
-
INF[SZ]
- Сообщения: 395
- ОС: Centos
Re: Как перенапрвить p2p сети на отдельный канал?
Вот смотрите я распаковал архив и выполнил make
в итоге модуль ядра собрался, а модуль iptables нет по причине отсутствия исходников.
ну соответственно скачиваем srpm пакет iptables, проводим наложение патчей rpmbuild -bp iptables.spec
В Makefile указываю где лежат исходники iptables
[code]
ifeq ($(IPTABLES_SRC),)
$(warning You need to install iptables sources and maybe set IPTABLES_SRC)
endif
IPTABLES_SRC = /usr/src/redhat/BUILD/iptables-1.3.5
IPTABLES_INCLUDE = -I$(IPTABLES_SRC)/include
[code]
Выполняем make снова и все собирается
Код: Выделить всё
[root@ws8 ipp2p-0.8.2]# make
Makefile:36: You need to install iptables sources and maybe set IPTABLES_SRC
make -C /lib/modules/2.6.18-53.1.4.el5/build SUBDIRS=/usr/src/redhat/BUILD/ipp2p-0.8.2 modules
make[1]: Entering directory `/usr/src/kernels/2.6.18-53.1.4.el5-i686'
CC [M] /usr/src/redhat/BUILD/ipp2p-0.8.2/ipt_ipp2p.o
Building modules, stage 2.
MODPOST
CC /usr/src/redhat/BUILD/ipp2p-0.8.2/ipt_ipp2p.mod.o
LD [M] /usr/src/redhat/BUILD/ipp2p-0.8.2/ipt_ipp2p.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.18-53.1.4.el5-i686'
gcc -O3 -Wall -DIPTABLES_VERSION=\"1.3.5\" -I/include -fPIC -c libipt_ipp2p.c
libipt_ipp2p.c:9:22: error: iptables.h: Нет такого файла или каталога
libipt_ipp2p.c:67: предупреждение: декларация ‘struct ipt_entry_match’ внутри списка параметровв итоге модуль ядра собрался, а модуль iptables нет по причине отсутствия исходников.
ну соответственно скачиваем srpm пакет iptables, проводим наложение патчей rpmbuild -bp iptables.spec
В Makefile указываю где лежат исходники iptables
[code]
ifeq ($(IPTABLES_SRC),)
$(warning You need to install iptables sources and maybe set IPTABLES_SRC)
endif
IPTABLES_SRC = /usr/src/redhat/BUILD/iptables-1.3.5
IPTABLES_INCLUDE = -I$(IPTABLES_SRC)/include
[code]
Выполняем make снова и все собирается
Я не понял Вашего вопроса, но я Вам на него отвечу.
-
zkrvova
- Сообщения: 280
Re: Как перенапрвить p2p сети на отдельный канал?
Не, нето, я ж говорю что не собрался модуль ядра, а модуль iptables собрался.
-
INF[SZ]
- Сообщения: 395
- ОС: Centos
Re: Как перенапрвить p2p сети на отдельный канал?
У меня $(KERNEL_SRC) принимает значение /lib/modules/2.6.18-53.1.4.el5/build
build является симлинком на ../../../usr/src/kernels/2.6.18-53.1.4.el5-i686
а у Вас ?
build является симлинком на ../../../usr/src/kernels/2.6.18-53.1.4.el5-i686
а у Вас ?
Я не понял Вашего вопроса, но я Вам на него отвечу.
-
zkrvova
- Сообщения: 280
Re: Как перенапрвить p2p сети на отдельный канал?
Ну я значит прописал так:
KERNEL_SRC ?= $(firstword $(wildcard /lib/modules/2.6.18-1.2798.fc6xen/build /usr/src/linux))
А ссылка:
ls /lib/modules/2.6.18-1.2798.fc6xen/ -l
lrwxrwxrwx 1 root root 51 Авг 31 09:49 build -> ../../../usr/src/kernels/2.6.18-1.2798.fc6-xen-i686
и в каталоге:
ls /usr/src/kernels/2.6.22.14-72.fc6-i686/
arch/ crypto/ include/ kernel/ mm/ scripts/ usr/
block/ drivers/ init/ lib/ Module.symvers security/
.config fs/ ipc/ Makefile net/ sound/
А ругается:
cat: /lib/modules/2.6.18-1.2798.fc6xen/build/Makefile: Нет такого файла или каталога
cat: /lib/modules/2.6.18-1.2798.fc6xen/build/Makefile: Нет такого файла или каталога
Makefile:36: You need to install iptables sources and maybe set IPTABLES_SRC
ipt_ipp2p.c:2:31: error: linux/modversions.h: Нет такого файла или каталога
ipt_ipp2p.c:4:26: error: linux/module.h: Нет такого файла или каталога
In file included from /usr/include/linux/netfilter_ipv4/ip_tables.h:18,
from ipt_ipp2p.c:5:
/usr/include/linux/netfilter_ipv4.h:53: error: ‘INT_MIN’ undeclared here (not in a function)
/usr/include/linux/netfilter_ipv4.h:65: error: ‘INT_MAX’ undeclared here (not in a function)
In file included from /usr/include/linux/netfilter_ipv4/ip_tables.h:20,
from ipt_ipp2p.c:5:
Ну и так далее.
KERNEL_SRC ?= $(firstword $(wildcard /lib/modules/2.6.18-1.2798.fc6xen/build /usr/src/linux))
А ссылка:
ls /lib/modules/2.6.18-1.2798.fc6xen/ -l
lrwxrwxrwx 1 root root 51 Авг 31 09:49 build -> ../../../usr/src/kernels/2.6.18-1.2798.fc6-xen-i686
и в каталоге:
ls /usr/src/kernels/2.6.22.14-72.fc6-i686/
arch/ crypto/ include/ kernel/ mm/ scripts/ usr/
block/ drivers/ init/ lib/ Module.symvers security/
.config fs/ ipc/ Makefile net/ sound/
А ругается:
cat: /lib/modules/2.6.18-1.2798.fc6xen/build/Makefile: Нет такого файла или каталога
cat: /lib/modules/2.6.18-1.2798.fc6xen/build/Makefile: Нет такого файла или каталога
Makefile:36: You need to install iptables sources and maybe set IPTABLES_SRC
ipt_ipp2p.c:2:31: error: linux/modversions.h: Нет такого файла или каталога
ipt_ipp2p.c:4:26: error: linux/module.h: Нет такого файла или каталога
In file included from /usr/include/linux/netfilter_ipv4/ip_tables.h:18,
from ipt_ipp2p.c:5:
/usr/include/linux/netfilter_ipv4.h:53: error: ‘INT_MIN’ undeclared here (not in a function)
/usr/include/linux/netfilter_ipv4.h:65: error: ‘INT_MAX’ undeclared here (not in a function)
In file included from /usr/include/linux/netfilter_ipv4/ip_tables.h:20,
from ipt_ipp2p.c:5:
Ну и так далее.