Всем привет! Возникла такая проблема с 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, ошибка таже.
Кто сталкивался, подскажите плиз.