Добрый день. Имеется роутер 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'а. Все ли я правильно понял?
1) Шейпится всегда исходящий с интерфейса трафик (egress).
2) Узким местом в данном случае является ppp0, поэтому шейпить надо только его.
3) Исходящий в Интернет можно шейпить непосредственно на ppp0.
4) Для входящего (ingress) на ppp0 можно делать полисинг, но на медленном канале он будет лажать.
5) Шейпинг входящего через ppp0 можно делать, если завернуть его на ifb0.
6) NAT выполняется на выходе последним, на входе первым, поэтому проблем с IP-адресами не возникнет.
7) HTB работает нормально, распространён повсеместно, менять его ни на что не нужно (CBQ, HSMC).
8) Вместо дефолтного pfifo на листья HTB настоятельно рекомендуется вешать SFQ.
9) Если что-то неясно — спрашивайте. Шейпер в Линуксе — имхо не самая тривиальная в освоении вещь.
кстати да. Если забыть про локальную сеть, а шейпить только ppp0, ну и ifb0 — то проблем не возникнет с br0 не возникнет.
Можно еще несколько слов про полисинг? Насколько медленным должен быть канал, чтобы он лажал?