Kernel с поддержкой iplimit [message #16043] |
Mon, 20 August 2007 09:25 |
GFell
Messages: 12 Registered: August 2007
|
Junior Member |
|
|
Доброго времени дня всем!
Хотел спросить - кто-нибудь занимался пересборкой ядра openvz чтобы включить поддержку iplimit?
Жалко что нельзя так же просто поставить ядро с этой поддержкой, как и обычно.
Или все таки прийдется самому пропатчить ядро для поддержки openvz, потом для iplimit, потом закинуть конфиг и пересобирать?
|
|
|
|
Re: Kernel с поддержкой iplimit [message #16193 is a reply to message #16043] |
Mon, 27 August 2007 11:25 |
GFell
Messages: 12 Registered: August 2007
|
Junior Member |
|
|
Отлично, по первой ссылке написано:
Your can use ipt_connlimit without any problem. Just do:
1) Install ipt_connlimit module how described in the "Netfilter Extensions
HOWTO"
В этом хауту ( http://www.netfilter.org/documentation/HOWTO/netfilter-exten sions-HOWTO.html) написано:
While configuring your kernel, you will see new options in ``Networking Options -> Netfilter Configuration''. Choose the options you need, recompile & install your new kernel.
Once your new kernel is installed, you can go ahead and compile and install the ``iptables'' package, from the `userspace/' directory as follows :
# make && make install
Опять двадцать пять - все равно пересобирать ядро надо?
А по второй ссылке, которую я уже давно видел - нифига не сработает. Во первых пути будут не такие, папки называться не kernel*, а 2.6.18* и т.д. Но это только цветочки. Если даже неглупый человек сам укажет нужные пути, то после патча make menuconfig вылетит с ошибкой.
Доков много, но сам кто-нить может сделать так же как написано там и чтоб получилось?
...
Ррр, сколько можно уже возится с этим... Было бы на ядро с самого начала наложен патч, никто б не мучался.
Скажите по нормальному - как собрать и поставить модуль этот?
|
|
|
|
Re: Kernel с поддержкой iplimit [message #16210 is a reply to message #16193] |
Tue, 28 August 2007 07:21 |
gblond
Messages: 64 Registered: May 2007
|
Member |
|
|
1. Скачиваем rpm c ядром и соответствующий ему devel rpm:
ovzkernel-2.6.18-8.1.8.el5.028stab039.1.i686.rpm
ovzkernel-devel-2.6.18-8.1.8.el5.028stab039.1.i686.rpm.
Уставливаем ovzkernel-devel-2.6.18-8.1.8.el5.028stab039.1.i686.rpm
2. Скачиваем с сайта iptables.org patch-o-matic-ng-20070820.tar.bz2 и iptables-1.3.8-20070821.tar.bz2 и распаковываем в какой-либо директории, например, /tmp/conndir .
3. Копируем также заголовки ядра из установленного ovzkernel-devel-2.6.18-8.1.8.el5.028stab039.1.i686.rpm в ту же директорию из п.2
cp -rd /usr/src/kernels/2.6.18-8.1.8.el5.028stab039.1-i686 /tmp/conndir/
4. Заходим в директорию куда был распакован patch-o-matic-ng (/tmp/dir/patch-o-matic-ng-20070820) и запускаем:
./runme --download connlimit
указываем где лежат заголовки ядра (/tmp/conndir/2.6.18-8.1.8.el5.028stab039.1-i686) и где исходники iptables (/tmp/conndir/iptables-1.3.8-20070821) и отвечаем 'y' на предложение установить исходники модуля connlimit.
5. Заходим в директорию с заголовками (/tmp/conndir/2.6.18-8.1.8.el5.028stab039.1-i686) и запускаем:
make oldconfig
Отвечаем 'm' на вопрос о модуле connlimit.
Запускаем команду компиляции:
make M=net/ipv4/netfilter obj-m=ipt_connlimit.o
Берем модуль net/ipv4/netfilter/ipt_connlimit.ko и используем по назначению .
P.S. компилятор должен быть gcc-4.1 (т.е. тот же каким было скомпилировано ядро)
|
|
|
|
|
|
|
Re: Kernel с поддержкой iplimit [message #20188 is a reply to message #16377] |
Thu, 13 September 2007 06:56 |
GFell
Messages: 12 Registered: August 2007
|
Junior Member |
|
|
Поставил gcc 3.4.4...
export PATH, CC и вообще грохнул ту версию которая была до этого (4.1) вместе с libgcc от неё.
[root@v180 /]# gcc -v
Reading specs from /usr/local/lib/gcc/i686-pc-linux-gnu/3.4.4/specs
Configured with: ../gcc-3.4.4/configure
Thread model: posix
gcc version 3.4.4
[root@www netfilter]# cat /proc/version
Linux version 2.6.18-ovz028stab039.1-smp (root@centos-32-build) (gcc version 3.4.4 20050721 (Red Hat 3.4.4-2)) #1 SMP Tue Jul 24 12:13:58 MSD 2007
[root@www netfilter]# modinfo ipt_connlimit.ko
filename: ipt_connlimit.ko
license: GPL
vermagic: 2.6.18-8.1.8.el5.028stab039.1 SMP mod_unload 686 REGPARM gcc-3.4
depends: x_tables,ip_conntrack
srcversion: E7354AB22D085D35285E9B6
[root@www netfilter]# insmod ipt_connlimit.ko
insmod: error inserting 'ipt_connlimit.ko': -1 Invalid module format
При этом есть нормальный модуль:
modinfo ipt_REJECT
filename: /lib/modules/2.6.18-ovz028stab039.1-smp/kernel/net/ipv4/netf ilter/ipt_REJECT.ko
license: GPL
author: Netfilter Core Team <coreteam@netfilter.org>
description: iptables REJECT target module
vermagic: 2.6.18-ovz028stab039.1-smp SMP mod_unload 686 4KSTACKS gcc-3.4
depends: x_tables
[Updated on: Sat, 06 October 2007 12:19] Report message to a moderator
|
|
|
Re: Kernel с поддержкой iplimit [message #20193 is a reply to message #20188] |
Thu, 13 September 2007 07:24 |
|
> Дайте нормальный модуль или его наличие в ядре.
Во-первых, как вы сами можете видеть, у вас не сходится vermagic'и для "хорошего" и "плохого" модулей.
Во-вторых, хотелось бы между прочим заметить, что не стоит писать в столь требовательном тоне. Тут вам никто ничего не должен -- это open source support forum, поддерживаемый исключительно на энтузиазме разработчиков. Виталий помогает вам в своё рабочее время (при этом зарплату не вы ему платите) -- цените это, и немножечко сбавьте обороты, попытайтесь меньше привлекать его и больше разбираться самостоятельно.
Если есть желание писать в более требовательном тоне -- советую купить где-нибудь платную поддержку, или взять себе на работу админа или кернель дивелопера, и у него уже требовать.
Касательно модуля -- его нет в mainstream ядре, почему вы ожидаете его наличие в нашем ядре? Есть огромное количество кода, которого нет в мейнстрим-ядре -- почему всё это должно быть в нашем? (вопрос риторический)
Kir Kolyshkin
|
|
|
Re: Kernel с поддержкой iplimit [message #20281 is a reply to message #20193] |
Fri, 14 September 2007 15:02 |
GFell
Messages: 12 Registered: August 2007
|
Junior Member |
|
|
Согласен, извиняюсь за напор.
После суток работы без сна не обратил внимания на vermagic и еще несколько мелочей...
Спасибо за помощь Виталию, все стабильно работает.
|
|
|