31

Млин, как урезать трафик?)

32

Потерпи щас тоже тестю завтра напишу готовый.

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

33 (22.11.2010 21:37:21 отредактировано kraftu)

eth0      Link encap:Ethernet  HWaddr 00:11:6b:33:8a:68
          inet addr:10.15.1.119  Bcast:10.15.1.127  Mask:255.255.255.192
          inet6 addr: fec0::b:211:6bff:fe33:8a68/64 Scope:Site
          inet6 addr: 2002:b2d5:d734:b:211:6bff:fe33:8a68/64 Scope:Global
          inet6 addr: fe80::211:6bff:fe33:8a68/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2301 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2031 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:229952 (224.5 KiB)  TX bytes:190904 (186.4 KiB)
          Interrupt:16 Base address:0xd000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:50 errors:0 dropped:0 overruns:0 frame:0
          TX packets:50 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:4825 (4.7 KiB)  TX bytes:4825 (4.7 KiB)

ppp0      Link encap:Point-to-Point Protocol
          inet addr:213.108.148.19  P-t-P:213.108.144.29  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1400  Metric:1
          RX packets:793 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1069 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:800258 (781.5 KiB)  TX bytes:109148 (106.5 KiB)


ppp2      Link encap:Point-to-Point Protocol
          inet addr:192.168.0.1  P-t-P:192.168.0.2  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1396  Metric:1
          RX packets:644 errors:0 dropped:0 overruns:0 frame:0
          TX packets:53 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:37580 (36.6 KiB)  TX bytes:3281 (3.2 KiB)

ppp2- это клиент, VPN соединения... кому раздаю инет провайдера..
ppp0 - это VPN до провайдера, для внеши..
eth0 - тут локалка провайдера, и также для VPN клиентов
Что куда прописывать... когда ставил на ppp0 до этого работало,как переустановил linux вот и получилось так..

34 (22.11.2010 21:54:28 отредактировано Kettler)

Выложил результат
http://narod.ru/disk/182461001/%D1%80%D … 2.rar.html

Сам скрипт

#!/bin/sh
lan=eth0
tc=`which tc`
tc qdisc del dev $lan root
$tc qdisc add dev $lan root handle 1: htb default 2
$tc class add dev $lan parent 1: classid 1:1 htb rate 1024kbit
$tc class add dev $lan parent 1:1 classid 1:2 htb rate 24kbit ceil 512kbit prio 1
$tc filter add dev $lan protocol ip parent 1: u32 match ip dst 172.16.0.2 flowid 1:2

На твоём примере ограничим скорость до 24kbit максимальная 512kbit
#!/bin/sh
lan=ppp2
tc=`which tc`
tc qdisc del dev $lan root
$tc qdisc add dev $lan root handle 1: htb default 2
$tc class add dev $lan parent 1: classid 1:1 htb rate 1024kbit
$tc class add dev $lan parent 1:1 classid 1:2 htb rate 24kbit ceil 512kbit prio 1
$tc filter add dev $lan protocol ip parent 1: u32 match ip dst 192.168.0.1 flowid 1:2

или
lan=ppp0
tc=`which tc`
tc qdisc del dev $lan root
$tc qdisc add dev $lan root handle 1: htb default 2
$tc class add dev $lan parent 1: classid 1:1 htb rate 1024kbit
$tc class add dev $lan parent 1:1 classid 1:2 htb rate 24kbit ceil 512kbit prio 1
$tc filter add dev $lan protocol ip parent 1: u32 match ip dst 192.168.0.1 flowid 1:2

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

35

Это в консоли прописать и все?

36

Писец создай файл
nano /home/tc
впиши сюда всё.
chmod +x /home/tc
sh /home/tc

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

37 (22.11.2010 22:02:11 отредактировано Kettler)

Я больше не могу пиши в асю помогу.
Или дал направление дальше сам.

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

38

Аську в пм напиши ка:)

39

Kettler спасибо реально, помог разобрались:)

40

kraftu, пишите сюда решение.

41 (22.11.2010 23:23:27 отредактировано Kettler)

вот оно
lan=ppp0
tc=`which tc`
tc qdisc del dev $lan root
$tc qdisc add dev $lan root handle 1: htb default 2
$tc class add dev $lan parent 1: classid 1:1 htb rate 1024kbit
$tc class add dev $lan parent 1:1 classid 1:2 htb rate 24kbit ceil 512kbit prio 1
$tc filter add dev $lan protocol ip parent 1: u32 match ip dst 192.168.0.1 flowid 1:2
tc qdisc add dev eth0 parent 1:2 handle 20: sfq perturb 10

Чуток подправил.

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

42

Нашол не большой пример который проще адаптировать

iptables -t mangle -I OUTPUT -o eth1 -d xx.xx.xx.xx -j MARK --set-mark 10
iptables -t mangle -I OUTPUT -o eth1 -d xx.xx.xx.yy -j MARK --set-mark 11

#дисциплина очереди
tc qdisc add dev eth1 root handle 1: htb
#главный класс
tc class add dev eth1 parent 1: classid 1:1 htb rate 6kbps ceil 6kbps
#дочерние классы
tc class add dev eth1 parent 1:1 classid 1:10 htb rate 3kbps ceil 6kbps prio 0
tc class add dev eth1 parent 1:1 classid 1:11 htb rate 3kbps ceil 6kbps prio 0
#фильтр
tc filter add dev eth1 protocol ip handle 10 parent 1:0 prio 0 fw flowid 1:10
tc filter add dev eth1 protocol ip handle 11 parent 1:0 prio 0 fw flowid 1:11

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

43

Вот вопрос возник, сущности ака темы плодить не охота ab
А откуда скрипт запускаете? Из /etc/rc.local что-то не хочет отрабатывать - руами норма
может его в init.d пихнуть, насколько такое оправдано?

44 (24.10.2012 02:41:28 отредактировано Forgot)

Мдя.. чет добавидв init.d и все умерло....

45

Forgot, дистрибутив? Если Деб то поторять устал - Iptables (новичек)

История показывает, что во всем новом обычно кроется какой-то подвох.
Классическая ошибка, которую совершают проектировщики
абсолютно надежных систем, - недооценка изобретательности клинических идиотов.

46 (24.10.2012 10:16:43 отредактировано Forgot)

2 zenon
Разобрался, все элементарное простынь (С) Фоменко
Суть такая, что скрипт (в т.ч.) и из rc.local запускался раньше dnsmasq и правил iptables
вот и было все девственно чисто, вылечилось добавлением строчки sleep 1
А дистрибутив - сборка на базе Debian Lenny, Untangle 9.3.1 ab

P.S. а писать "в интерфейс" я тоже пробовал, результат тот-же )))

47 (26.10.2012 21:59:49 отредактировано Forgot)

Теперь вопрос по фильтрам
eth0 - внешний интерфейс роутера
eth1 - внутренний интерфейс роутера

tc filter add dev eth1 protocol ip parent 1: u32 match ip dst 192.168.0.1 flowid 1:2

Это фильтр на исходящий поток со стороны роутера (входящий для абонента) - для зарезания входящей скорости аб.

А если мне нужно исходящую скорость от абонента порезать, то насколько я понимаю нужно поменять интерфейс и, dst на src т.е. привести к виду

tc filter add dev eth0 protocol ip parent 1: u32 match ip src 192.168.0.1 flowid 1:2

Что-то каша в голове по этому поводу, да и пишут все разное, ниче не понимаю.... bn

48

Как пример


#Режем входящую
NUMBERS_VLAN="vlan14 vlan15 vlan16"
for number_vl in `echo $NUMBERS_VLAN`
do
echo $number_vl

tc qdisc del dev $number_vl root
tc qdisc add dev $number_vl root handle 1: htb
tc class add dev $number_vl parent 1: classid 1:1 htb rate 100Mbit

tc class add dev $number_vl parent 1:1 classid 1:100 htb rate 2Mbit ceil 4Mbit burst 15k
tc class add dev $number_vl parent 1:1 classid 1:90 htb rate 1Mbit ceil 2Mbit burst 15k

tc qdisc add dev $number_vl parent 1:100 handle 100: sfq perturb 10
tc qdisc add dev $number_vl parent 1:90 handle 90: sfq perturb 10

tc filter add dev $number_vl parent 1:0 protocol ip prio 7 handle 100 fw classid 1:100
tc filter add dev $number_vl parent 1:0 protocol ip prio 6 handle 90 fw classid 1:90
done

#FORWARD CLIENT 14
iptables -t mangle -A FORWARD -s 192.168.14.0/24 -o ppp999 -j MARK --set-mark 100
iptables -t mangle -A FORWARD -i ppp999 -d 192.168.14.0/24 -j MARK --set-mark 100
iptables -A FORWARD -s 192.168.14.0/24 -o ppp999 -j ACCEPT
iptables -A FORWARD -i ppp999 -d 192.168.14.0/24 -j ACCEPT

#FORWARD CLIENT 15
iptables -t mangle -A FORWARD -s 192.168.15.0/24 -o ppp999 -j MARK --set-mark 90
iptables -t mangle -A FORWARD -i ppp999 -d 192.168.15.0/24 -j MARK --set-mark 90
iptables -A FORWARD -s 192.168.15.0/24 -o ppp999 -j ACCEPT
iptables -A FORWARD -i ppp999 -d 192.168.15.0/24 -j ACCEPT


#Режем исходящую
tc qdisc del dev ppp999 root
tc qdisc add dev ppp999 root handle 1: htb
tc class add dev ppp999 parent 1: classid 1:1 htb rate 100Mbit
tc class add dev ppp999 parent 1:1 classid 1:100 htb rate 2Mbit ceil 4Mbit burst 15k
tc class add dev ppp999 parent 1:1 classid 1:90 htb rate 1Mbit ceil 2Mbit burst 15k
tc qdisc add dev ppp999 parent 1:100 handle 100: sfq perturb 10
tc qdisc add dev ppp999 parent 1:90 handle 90: sfq perturb 10
tc filter add dev ppp999 parent 1:0 protocol ip prio 1 handle 100 fw classid 1:100
tc filter add dev ppp999 parent 1:0 protocol ip prio 1 handle 90 fw classid 1:90
Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

49

А можно пример попроще и без маркирования пакетов  ab .

50 (21.02.2013 13:31:28 отредактировано Forgot)

И снова нужна помощь ab
Встала задача порезать исходящий от абонентов трафик, условие самое простое - всех под одну гребенку. Покурив маны по tc додумался до следующего

$tc qdisc del dev eth1 handle ffff: ingress
$tc qdisc add dev eth1 handle ffff: ingress
$tc filter add dev eth1 parent ffff: protocol ip prio 50 u32 match ip src 0.0.0.0/0 police rate 3072kbit burst 10k drop flowid :1

на боевом серваке пока не проверял, на домашней тачке что-то ересь какая-то выходит, входящая падает до не приличия, а исходящая как перла так и прет (правда на машине всего один интерфейс)
На правильном ли я пути, или где-то что-то все же не так?

P.S. Проверил на боевом, исходящая у абонентов упала до ~0.5mb/s Что не так?