>[оверквотинг удален]
> Делаю следующим образом:
> testserver:/ # tc qdisc add dev ppp0 handle ffff: ingress
> testserver:/ # tc filter add dev ppp0 parent ffff: protocol ip prio
> 50 u32 match ip src 0.0.0.0/0 police rate 512kbit burst 12k
> drop flowid :1
> RTNETLINK answers: No such file or directory
> We have an error talking to the kernel
> На второй строке получаю ошибку(см. выше).
> Не могу понять на что ругается. По всем букварям пишут так.
> В чем я ошибся? Помогите кто знает!как вариант есть вот такой вот ip-up.local скрипт (100% рабочий)
#!/usr/bin/perl
use DBI;
require("/usr/local/dt_billing/bin/dbaccess.pm");
my $framed_ip = $ENV{'PPP_REMOTE'};
my $iface = $ENV{'PPP_IFACE'};
my $sql = $dbh->prepare("SELECT speed_rate, login FROM inet_dynamic_ip_services WHERE framed_ip = '$framed_ip'");
$sql->execute;
my @res = $sql->fetchrow_array;
my $speed_rate = $res[0];
my $speed_rate_up = $res[0];
my $burst = $speed_rate;
my $burst_up = $speed_rate_up;
my $login = $res[1];
if (($speed_rate == "0") or ($speed_rate == "")) {
exit(1);
}
system ("/sbin/tc qdisc del dev ".$iface." root");
system ("/sbin/tc qdisc add dev ".$iface." root tbf rate ".$speed_rate."kbit latency 100ms burst ".$burst."kbit");
system ("/sbin/tc qdisc del dev ".$iface." handle ffff: ingress");
system ("/sbin/tc qdisc add dev ".$iface." handle ffff: ingress");
system ("/sbin/tc filter add dev ".$iface." parent ffff: protocol ip prio 50 u32 match ip src 0.0.0.0/0 police rate ".$speed_rate_up."kbit burst ".$burst_up."kbit drop flowid :1");