I have a Ubuntu Router with 2 network interfaces. eth0
is the private network and eth1
is the internet. What I want is the following: All packages (mostly udp) comming from a specified private ip (e.g. 192.168.0.4) to a given destination port (e.g. 5200) should be delayed by 500ms.
I tried several things including this, this and this. The only result is, no delay is added.
If possible I want to decide using iptables
which packages should be delayed.
Here are some of the errors I got:
root@ubuntu:~# tc qdisc del dev eth1 root
root@ubuntu:~# tc qdisc ls dev eth1
qdisc pfifo_fast 0: root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
root@ubuntu:~# tc qdisc add dev eth1 root handle 1: htb default 20
root@ubuntu:~# tc class add dev eth1 parent 1: classid 1:1 pfifo_fast
Error: Qdisc "pfifo_fast" is classless.
root@ubuntu:~# tc class add dev eth1 parent 1: classid 1:1 prio
Error: Qdisc "prio" is classless.
root@ubuntu:~# tc class add dev eth1 parent 1: classid 1:10 netem delay 500ms
Error: Qdisc "netem" is classless.
root@ubuntu:~# tc class add dev eth1 parent 1:10 netem delay 500ms
Error: Qdisc "netem" is classless.
What am I doing wrong?