The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Linux 2.6.23.1; tc filter (FW) не работает."
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [ Отслеживать ]

"Linux 2.6.23.1; tc filter (FW) не работает."  
Сообщение от alexpro (ok) on 09-Апр-08, 14:41 
Всем доброго времени суток!
Имеем две системы. Ядро 2.6.23.1, конфиги - одинаковые. Версии iproute2 - одинаковые.
Единственное различие - архитектуры: i386 и x86_64.

Делаю следующее:
iptables -t mangle -A POSTROUTING -o eth0 -d 192.168.200.77 -j MARK --set-mark 0x2ff (нормально в обеих системах)

###Корневые дисциплины добавлены, все нормально с этим
tc class add dev eth0 parent 1:2 classid 1:55 htb rate 256Kbit (нормально в обеих системах)

tc filter add dev eth0 parent 1:0 protocol ip prio 100 handle 0x2ff fw flowid 1:55 (!! Грабли !!)
Вот после этой самой команды на x86_64 все нормально, а на i386 выдает сообщение:
RTNETLINK answers: Invalid argument.
We have an error talking to the kernel

Никто не может подсказать, что это за мистика?

Кстати, есть еще машина, x86_64, конфиги различаются только в аппаратной части, в QOS и netfilter - одинаковые, версия iproute2 - такая же. Но грабли тоже всплывают, как и на i386.

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. " Linux 2.6.23.1; tc filter (FW) не работает."  
Сообщение от alexpro (ok) on 10-Апр-08, 15:33 
>tc filter add dev eth0 parent 1:0 protocol ip prio 100 handle 0x2ff fw flowid 1:55 (!! Грабли !!)

Разобрался. Все оказалось просто, как дверь военкомата. Правда, пришлось заниматься трассировкой кода ядра, чтобы выловить, где именно вылезают грабли.
Грабли были в части процитированной команды: "prio 100"
На указанном выше x86_64 вообще не было установлено ни одного фильтра (потому все и работало), а на i386 фильтры были. prio 100 u32 match ip dst <xxx>. Если prio изменить на любое другое значение, все работает. Выходит так, что если я уже применяю фильтры u32, то fw фильтр не может быть с тем же значением prio, что есть у u32. ИМХО, данные "грабли" заслуживают помещения в FAQ по iproute2.

Всем спасибо за внимание :)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру