Hi I finally had some time to clean up (read: completely re-write) the shaper script I've been using for over a year now. I was hoping it would be useful to others, but before I "release" it, I would like some comments from you guys. Please let me know about any bugs, annoyances or ideas. The script (ezshaper) is a "simple" bash script (although pretty large) with very few extra dependencies (I'm planning on running it on a IPCop box soon). Basically all it really needs are iptables and tc (htb version). At the moment ezshaper is intended for simple situations like this: LAN <-----> Linux Firewall/router <------> Internet But I believe it could be used in (or adapted to) other situations as well. Ezshaper reads a simple config file (ezshaper.cfg) that contains the definitions for the tc classes (with prio, rates and ceils) and the rules to mark packets for each class. Ezshaper generates iptables and tc commands from that. I believe I have made the syntax in the cfg file as easy as possible, but you can also include more complex iptables options (matches etc) for more advanced rules. There are some resctrictions I might fix some day. The ezshaper script itself can be run with several options (e.g.: -h for help; -d for debugmode) and then a command (start, stop, status, ...). In the "status" command I added a nice easy-to-read table showing all classes and the most important statistics. Any comments are welcome! Thanks, Jannes Faber
Attachment:
ezshaper-1.0rc.tar.gz
Description: GNU Zip compressed data