LINUX.ORG.RU

История изменений

Исправление I-Love-Microsoft, (текущая версия) :

sT331h0rs3

Нашел решение тут: http://kakaroto.homelinux.net/2011/09/network-emulator-tool-for-linux/

Смотрите какая жэсть:

#!/bin/bash

echo "emulation of slow network"
sudo echo

echo "START"
sudo modprobe ifb
sudo ip link set dev ifb0 up
sudo tc qdisc del dev eth0 ingress
sudo tc qdisc add dev eth0 ingress
sudo tc filter add dev eth0 parent ffff: protocol ip u32 match u32 0 0 flowid 1:1 action mirred egress redirect dev ifb0
sudo tc qdisc del dev ifb0 root
sudo tc qdisc add dev ifb0 root handle 1: prio bands 10
sudo tc qdisc del dev eth0 root
sudo tc qdisc add dev eth0 root handle 1: prio bands 10
sudo tc qdisc add dev ifb0 parent 1:1 handle 10: htb default 1
sudo tc class add dev ifb0 parent 10: classid 0:1 htb rate 128kbit ceil 128kbit burst 0 cburst 0
sudo tc qdisc add dev eth0 parent 1:1 handle 10: htb default 1
sudo tc class add dev eth0 parent 10: classid 0:1 htb rate 128kbit ceil 128kbit burst 0 cburst 0
sudo tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip src 0.0.0.0/0 match ip dst 0.0.0.0/0 flowid 10:1
sudo tc filter add dev ifb0 protocol ip parent 1:0 prio 1 u32 match ip src 0.0.0.0/0 match ip dst 0.0.0.0/0 flowid 10:1
echo "END"

Ни за что бы в жизни не разобрался с написанием таких правил самостоятельно...

ЗЫ РАБОТАЕТ :) реально и туда и сюда 128 кбит/с, тестировал тут: http://www.speedtest.net/

А остальные правила типа задержек написать очень просто по имеющимся в инете руководствам, например: https://calomel.org/network_loss_emulation.html

Исходная версия I-Love-Microsoft, :

sT331h0rs3

Нашел решение тут: http://kakaroto.homelinux.net/2011/09/network-emulator-tool-for-linux/

Смотрите какая жэсть:

#!/bin/bash

echo "emulation of slow network"
sudo echo

echo "START"
sudo modprobe ifb
sudo ip link set dev ifb0 up
sudo tc qdisc del dev eth0 ingress
sudo tc qdisc add dev eth0 ingress
sudo tc filter add dev eth0 parent ffff: protocol ip u32 match u32 0 0 flowid 1:1 action mirred egress redirect dev ifb0
sudo tc qdisc del dev ifb0 root
sudo tc qdisc add dev ifb0 root handle 1: prio bands 10
sudo tc qdisc del dev eth0 root
sudo tc qdisc add dev eth0 root handle 1: prio bands 10
sudo tc qdisc add dev ifb0 parent 1:1 handle 10: htb default 1
sudo tc class add dev ifb0 parent 10: classid 0:1 htb rate 128kbit ceil 128kbit burst 0 cburst 0
sudo tc qdisc add dev eth0 parent 1:1 handle 10: htb default 1
sudo tc class add dev eth0 parent 10: classid 0:1 htb rate 128kbit ceil 128kbit burst 0 cburst 0
sudo tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip src 0.0.0.0/0 match ip dst 0.0.0.0/0 flowid 10:1
sudo tc filter add dev ifb0 protocol ip parent 1:0 prio 1 u32 match ip src 0.0.0.0/0 match ip dst 0.0.0.0/0 flowid 10:1
echo "END"

Ни за что бы в жизни не разобрался с написанием таких правил самостоятельно...