Моя схема: ADSL Inet (DynamicIP) Modem --- eth0(192.168.0.1) --- Ubuntu --- eth1(192.168.1.1) --- LAN (1921.68.1.0/24). При соединении по pppoe у меня появляется интерфейс ppp0. Недавноя доделал брандмауэр на iptables, так вот в нем именно ppp0 в качестве $INET_IFACE и использую, что по сути вполне логично. А вот с шейпингом непонятки.. обьясните знающие люди.
Делаю так:
Код: Выделить всё
#!/bin/bash
#ppp0 <=> eth0 - Интернет, eth1 - интерфейс, связанный с локальной сетью (IP 192.168.1.1)
tc qdisc add dev eth1 root handle 1: htb default 12
tc class add dev eth1 parent 1: classid 1:1 htb rate 1000kbit ceil 1000kbit
tc class add dev eth1 parent 1:1 classid 1:11 htb rate 128kbit ceil 128kbit
tc class add dev eth1 parent 1:1 classid 1:12 htb rate 872kbit ceil 1000kbit
tc filter add dev eth1 parent 1:0 protocol ip prio 1 u32 match ip dst 192.168.1.0/24 flowid 1:11
echo 'Дисциплина tc - eth1 удачно добавлена.'И все работает - ограничивает, проверяю ноутбуком в ланке.
Код: Выделить всё
#tc qdisc add dev ppp0 root handle 1: htb default 12
tc class add dev ppp0 parent 1: classid 1:1 htb rate 1000kbit ceil 1000kbit
tc class add dev ppp0 parent 1:1 classid 1:11 htb rate 128kbit ceil 128kbit
tc class add dev ppp0 parent 1:1 classid 1:12 htb rate 872kbit ceil 1000kbit
tc filter add dev ppp0 parent 1:0 protocol ip prio 1 u32 match ip src 192.168.1.0/24 flowid 1:11
echo 'Дисциплина tc - ppp0 удачно добавлена.'tc qdisc add dev eth0 handle ffff: ingress и прицепить какой то фильтр-ограничитель для в простом например всего потока. Но разве не ppp0 тут нужно писать? В общем разъясните какие (root, ingress) дисциплины куда цеплять в данном лучае, чтобы выполнить вышепоставленные задачи.
Contacts: