Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Linux и FreeBSD » Общий по Linux » Debian/Ubuntu - Шейпинг трафика с помощью tc в ubuntu

Ответить
Настройки темы
Debian/Ubuntu - Шейпинг трафика с помощью tc в ubuntu

Пользователь


Сообщения: 96
Благодарности: 12

Профиль | Отправить PM | Цитировать


Народ, прошу помощи. Маны читал, возможно не слишком усердно, но не выходит каменный цветок.

Есть домовая локалка на eth0 10.0.0.0 и eth1 192.168.1.2, который уходит в DSL-модем 192.168.1.1. Из домовой локалки подключаются клиенты по pptp и получают адреса 192.168.1.10-20 ppp0, ppp1 и т.д.
Есть очень большое желание ограничивать им пропускную способность на уровне протокола с помощью lartc.

Далее привожу конфигурацию системы и не работающий скрипт tc. Подскажите, где "шляпа".

Код: Выделить весь код
Linux aserv 2.6.28-6-server #16-Ubuntu SMP Mon Jan 26 21:05:48 UTC 2009 i686 GNU/Linux
Код: Выделить весь код
eth0      Link encap:Ethernet  HWaddr 00:a0:c5:b3:72:9f
          inet addr:10.103.12.236  Bcast:10.103.12.255  Mask:255.255.255.0
          inet6 addr: fe80::2a0:c5ff:feb3:729f/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2696506 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3927143 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:366835077 (366.8 MB)  TX bytes:315406768 (315.4 MB)
          Interrupt:19 Base address:0xd400

eth1      Link encap:Ethernet  HWaddr 00:20:ed:28:9e:a4
          inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::220:edff:fe28:9ea4/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:11377942 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9228073 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:889200661 (889.2 MB)  TX bytes:1807112407 (1.8 GB)
          Interrupt:17 Base address:0xd000
Код: Выделить весь код
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.7     0.0.0.0         255.255.255.255 UH    0      0        0 ppp1
192.168.1.11    0.0.0.0         255.255.255.255 UH    0      0        0 ppp0
192.168.1.10    0.0.0.0         255.255.255.255 UH    0      0        0 ppp2
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth1
10.103.12.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
10.0.0.0        10.103.12.2     255.0.0.0       UG    0      0        0 eth0
0.0.0.0         192.168.1.1     0.0.0.0         UG    100    0        0 eth1
И, собственно, сам скрипт tc (для начала пробую просто ограничить ширину канала между eth1 192.168.1.2 и DSL-модемом 192.168.1.1 до 256 кбит:
Код: Выделить весь код
tc qdisc del dev eth1 root
tc qdisc add dev eth1 root handle 1: htb default 255
tc class add dev eth1 parent 1: classid 1:1 htb rate 256kbit ceil 256kbit
tc filter add dev eth1 protocol ip parent 1:0 prio 1 u32 match ip src 192.168.1.4 flowid 1:1

Отправлено: 22:09, 03-02-2009

 

Пользователь


Сообщения: 96
Благодарности: 12

Профиль | Отправить PM | Цитировать


Более того, беру рабочий скрипт с рабочей машины приятеля, меняю наименование интерфейсов, меняю адрес, который надо шейпить - для теста и 192.168.1.1 и 192.168.1.4 (ppp*) и 192.168.1.15 (мой pptp) - нифига не работает. Скрипт такой:

Код: Выделить весь код
tc qdisc del dev eth1 root
tc qdisc add dev eth1 root handle 1: htb
tc class add dev eth1 parent 1: classid 1:1 htb rate 950Mbit
tc class add dev eth1 parent 1:1 classid 1:2 htb rate 50000kbit
tc class add dev eth1 parent 1:2 classid 1:21 htb rate 8kbit ceil 8kbit
tc qdisc add dev eth1 parent 1:21 handle 21 sfq perturb 10
tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dst 192.168.1.15 flowid 1:21
Напрашивается вывод, может что-то в системе не так?
/dev/hands правил, не помогло

Отправлено: 12:01, 04-02-2009 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 738
Благодарности: 89

Профиль | Отправить PM | Цитировать


может модуль для /dev/head подгрущить? извните

-------
Бараш.


Отправлено: 16:37, 04-02-2009 | #3


Пользователь


Сообщения: 96
Благодарности: 12

Профиль | Отправить PM | Цитировать


Странно. Вопрос задал адекватный, а вот ответ - глупый. Нормальный ответ есть?

Пока что решил на убунте через егойный wondershaper, который умееет шейпить только интерфейс, крон раз в минуту проверяет наличие ppp0, ppp1 и т.д., и при наличии шейпит его. Но это совсем не красиво

Отправлено: 16:40, 04-02-2009 | #4


Новый участник


Сообщения: 1
Благодарности: 0

Профиль | Отправить PM | Цитировать


Spooner, конечно не красиво. Более того -- это костыль, который целую минуту НЕ шейпит трафик.
Таки нужно смотреть в сторону /etc/ppp/ip-up.
Я про wondershaper.

Отправлено: 20:41, 21-02-2010 | #5



Компьютерный форум OSzone.net » Linux и FreeBSD » Общий по Linux » Debian/Ubuntu - Шейпинг трафика с помощью tc в ubuntu

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Debian/Ubuntu - с Ubuntu 8.04 до Ubuntu 8.10 (не повредив Windows) kagorec Общий по Linux 10 03-03-2009 21:21
Debian/Ubuntu - Vista+Ubuntu --> XP+Ubuntu WChek Общий по Linux 2 02-02-2009 15:26
Прочее - Учёт трафика beliy-dis Сетевые технологии 1 03-07-2008 16:05
Интернет - [решено] Как с помощью Windows XP (SP2) дать инет на ноутбук с Ubuntu (8.4 beta) AreD Сетевые технологии 5 12-04-2008 09:38
Учет трафика wolland Сетевые технологии 7 19-10-2004 09:25




 
Переход