The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Помогите с IProute"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Firewall, Фильтрация пакетов)
Изначальное сообщение [ Отслеживать ]

"Помогите с IProute"  +/
Сообщение от wellcom (ok) on 04-Июл-10, 15:38 
Всем привет! Возникла такая проблема с IProute

Вых данные:
Комп - Atlon 900, 512Mb, 40Gb
Ubuntu 10, ядро 2.6.32
создал вот такой скрипт для деления общего интернет канала:
#!/bin/sh

ipr=/usr/sbin/tc

shaper_off() {
$ipr qdisc del dev eth1 root &> /dev/null # eth1 - смотрит в сторону юзеров
$ipr qdisc del dev eth0 root &> /dev/null # eth0 - смотрит в сторону ДСЛ модема
}

shaper_on() {
$ipr qdisc del dev eth1 root &> /dev/null
$ipr qdisc add dev eth1 root handle 1: htb default 17
$ipr class add dev eth1 parent 1:  classid 1:1  htb rate 100Mbit

$ipr class add dev eth1 parent 1: classid 1:1001 htb rate 512Kbit ceil 600Kbit prio 5
$ipr qdisc add dev eth1 parent 1:1001 handle 1001 tbf rate 512Kbit buffer 10Kb/8 limit 15Kb mtu 1500
$ipr filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dst 10.1.1.21 match ip sport 3128 0xffff classid 1:1001

$ipr class add dev eth1 parent 1: classid 1:1002 htb rate 512Kbit ceil 600Kbit prio 5
$ipr qdisc add dev eth1 parent 1:1002 handle 1002 tbf rate 512Kbit buffer 10Kb/8 limit 15Kb mtu 1500
$ipr filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dst 10.1.1.23 match ip sport 3128 0xffff classid 1:1002

$ipr class add dev eth1 parent 1: classid 1:1004 htb rate 512Kbit ceil 600Kbit prio 5
$ipr qdisc add dev eth1 parent 1:1004 handle 1004 tbf rate 512Kbit buffer 10Kb/8 limit 15Kb mtu 1500
$ipr filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dst 10.1.1.51 match ip sport 3128 0xffff classid 1:1004
}

list (){
echo '================================' eth1 '================================'
$ipr -s -d qdisc show dev eth1
$ipr -s -d class show dev eth1
$ipr -s  filter show dev  eth1
}

case "$1" in

start)
shaper_on
;;

stop)
shaper_off
;;

show)
list
;;

restart)
shift
$0 stop
$0 start "$@"
;;

*)
echo "Usage: `basename $0` {start|stop|restart|show}"
esac


....после запуска даного скрипта, скорость режет, но пишет ошибку:

RTNETLINK answers: No such file or directory

начал вычислять коментированием всех строк, какая из них выдает ошибку, и вычислил, что ошибку выдает во ети две строчки, что по отдельности, что вместе:
shaper_off() {
$ipr qdisc del dev eth1 root &> /dev/null # eth1 - смотрит в сторону юзеров
$ipr qdisc del dev eth0 root &> /dev/null # eth0 - смотрит в сторону ДСЛ модема
}

при этом, даю команду из строки tc qdisc del dev eth1 root &> /dev/null ошибки не выдает, пытался ставить вместо $ipr - tc, ошибка таже.

Кто сталкивался, подскажите плиз.

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

Оглавление

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


1. "Помогите с IProute"  +/
Сообщение от PavelR (??) on 05-Июл-10, 07:07 
>[оверквотинг удален]
>RTNETLINK answers: No such file or directory
>
>начал вычислять коментированием всех строк, какая из них выдает ошибку, и вычислил,
>что ошибку выдает во ети две строчки, что по отдельности, что
>вместе:
> shaper_off() {
>$ipr qdisc del dev eth1 root &> /dev/null # eth1 - смотрит в сторону юзеров
>$ipr qdisc del dev eth0 root &> /dev/null # eth0 - смотрит в сторону ДСЛ модема
>}
>

какбэ я думаю ты должен понимать, что такое shaper_off и как это переводится на русский язык ? Дык какого оно на старте вызывается, не задумался ? Задумайся...


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

2. "Помогите с IProute"  +/
Сообщение от aaa (??) on 05-Июл-10, 09:26 
При старте ошибка возникает в секции shaper_on() в строке $ipr qdisc del dev eth1 root &> /dev/null, т.к. скрипт пытается удалить не существующую дисциплину. Это не критично.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

3. "Помогите с IProute"  +/
Сообщение от wellcom (ok) on 05-Июл-10, 22:20 
>При старте ошибка возникает в секции shaper_on() в строке $ipr qdisc del dev eth1 root &> /dev/null, т.к. скрипт пытается удалить не существующую дисциплину. Это не критично.

пасиб, вроде решил: поменял &> на 2> (накопал в нете) и ошибка исчезла, правда я так и не понял почему, ведь в первом варианте работает же у людей...

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

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

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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