Как правильно настроить шейпер?

Добрый день. Имеется роутер rt-n56u, кастомная прошивка. Хочу настроить шейпер, чтобы предотвратить ситуации, когда торрент забивает весь входящий и исходящий канал. Начитался, многое прояснил. Но есть некоторые моменты, которые хочу уточнить. В роутере приблизительно вот такой порядок интерфейсов:


eth2

ra0 -> br0 -> eth3 -> ppp0

rai1


где eth2 — локальная сеть Ethernet, ra0 и rai1 — две WiFi зоны, 2.4Ghz и 5Ghz соответственно; eth3 — WAN порт и ppp0 — ADSL коннект.


Есть несколько вопросов:


1. Я успешно отшейпил eth2 канал (входящий траффик для пользователей Ethernet сети), но меня смущает наличие еще двух WiFi каналов, о которых шейпер не знает. Соответственно, он не может сделать правильное распределение канала ( HTB умеет заимствовать канал, если он не занят ). Почему я не могу шейпить br0. Нужно поднимать ifb устройство, перенаправлять туда весь трафик с eth2, ra0 и rai1, и уже потом его шейпить?


2. Чтобы шейпить исходящий траффик, нужно настраивать шейпер на ppp0, eth3 или создавать еще один ifb интерфейс? Я боюсь то, что на ppp0 и eth3 будут уже отNATченные пакеты, т.е. исходный IP будет внешний IP от провайдера (iptraf так и показывает на ppp0 интерфейсе), и я не смогу классифицировать траффик по IP.


3. Может HTB не удачный вариант, и вообще, нужно шейпить по другому? Подскажите, это мой первый опыт в таких делах.


4. iptraf показывает траффик только на eth2 и ppp0 интерфейсах. eth3, br0, ra0 и rai1 — по нулям. Почему?


Получается, нужно создать два IFB  интерфейса, один — чтобы шейпить сразу три канала вместе — LAN и два WiFi, и второй, чтобы шейпить исходящий траффик до NAT'а. Все ли я правильно понял?


Спасибо большое
  • Вопрос задан
  • 6148 просмотров
Решения вопроса 1
IlyaEvseev
@IlyaEvseev
Opensource geek
1) Шейпится всегда исходящий с интерфейса трафик (egress).
2) Узким местом в данном случае является ppp0, поэтому шейпить надо только его.
3) Исходящий в Интернет можно шейпить непосредственно на ppp0.
4) Для входящего (ingress) на ppp0 можно делать полисинг, но на медленном канале он будет лажать.
5) Шейпинг входящего через ppp0 можно делать, если завернуть его на ifb0.
6) NAT выполняется на выходе последним, на входе первым, поэтому проблем с IP-адресами не возникнет.
7) HTB работает нормально, распространён повсеместно, менять его ни на что не нужно (CBQ, HSMC).
8) Вместо дефолтного pfifo на листья HTB настоятельно рекомендуется вешать SFQ.
9) Если что-то неясно — спрашивайте. Шейпер в Линуксе — имхо не самая тривиальная в освоении вещь.

Ищем в Гугле «shaping ppp0 ifb0», тут же находим:
ventrill.blogspot.ru/2011/02/qos-shapingsh.html
forum.nag.ru/forum/index.php?showtopic=61755&view=findpost&p=733864
… и ещё кучу примеров.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы