Hi, im interested in getting a decent QoS script for linux as im now
using it as a router instead of a hardware based solution.
Ive looked around and havent really found a huge amount of clear
information or resources on this.
A bit of background, im running debian, kernel 2.6.11, iptables 2.3.0
and have applied the qnet patches for QoS. All this compiled ok,
rebooted and works.
The linux box has 2 interaces:- ppp0 being the external facing interface
and eth0 for the LAN. Basically i want QoS applied solely to ppp0.
The slight difference to "normal" in my system is im running "multi-nat"
in that i have a /29 subnet allocated to me and a specific lan IP maps
to a specific external IP, example:
internal > external
192.168.1.1 > 22.214.171.124
192.168.1.2 > 126.96.36.199
192.168.1.3 > 188.8.131.52 and so on.
Im doing the multi NAT via iptables. For each address ive mapped it
using the following:
iptables -t nat -A PREROUTING -d 184.108.40.206 -j DNAT --to 192.168.1.1
iptables -t nat -A POSTROUTING -s 192.168.1.1 -j SNAT --to 220.127.116.11
Im not sure if the above effects QoS hence mentioning it.
I found "jdg-qos" script via google and mentioned on this newsgroup so
decided to try it. Although the script produces 1 error (modprobe cant
find module IMQ) i dont think this is an issue as IMQ is compiled into
the kernel. The script itself other than that appears to run without
any other errors at all.
However, it doesnt appear to actually do anything at all. Some tests
seem to show me getting the same ICMP ping times both with and without
the script whilst testing things such as full upload, full downloading,
mixture of both and so on.
Am i missing anything critical here in this script to get it working? I
assume i should see lower ping times and so on when using it than
without (for example with P2P uploading at full speed) ? Would my
multi-NAT setup above confuse it in some way?
As far as i can tell ive set it up correctly, specific both interfaces,
specified 80% of my bandwidth for their speed, selected NAT=1 and so on.
Failing that does anyone know of other pre-written effective QoS scripts
to work on linux ?
Does anyone have details or examples of how to set up iptables "real
time" rule in this jdg-script ?