From mboxrd@z Thu Jan 1 00:00:00 1970 From: "sufcrusher" Date: Sat, 11 Oct 2003 21:51:22 +0000 Subject: [LARTC] Plz comment on my ezshaper script MIME-Version: 1 Content-Type: multipart/mixed; boundary="----=_NextPart_000_0036_01C39052.931E7270" Message-Id: List-Id: To: lartc@vger.kernel.org This is a multi-part message in MIME format. ------=_NextPart_000_0036_01C39052.931E7270 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit 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 ------=_NextPart_000_0036_01C39052.931E7270 Content-Type: application/x-gzip; name="ezshaper-1.0rc.tar.gz" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="ezshaper-1.0rc.tar.gz" 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 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== ------=_NextPart_000_0036_01C39052.931E7270-- _______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/