Here we go loop de loo here we go loop de lai... BR

This text assumes that you have: BR * A working NoCat Gateway BR * A working NoCat AuthServer BR * A Debian box running the NoCat Gateway BR * Enough patience to slog through this BR

IMQ was the solution:

First, get the 2.4.20 linux kernel (assuming Debian here folks! May need the unstable apt-site in your /etc/apt/sources.list) BR # apt-get update BR # apt-get install gcc libcurses5 libcurses5-dev kernel-package kernel-headers-2.4.20 kernel-source-2.4.20 BR # cd /usr/src BR # bunzip2 kernel-source-2.4.20.tar.bz2 BR # tar xvvf kernel-source-2.4.20.tar BR

To install the IMQ Patch (from the FAQ):

Get the combo patch attachment:imq-2.4.18-combo-patch.txt and the precompiled shared libs attachment:libipt_IMQ-1.2.6a.tar.gz matching your iptables version (iptables -V - was 1.2.6a for me).

Put the patch file in /usr/src

# cd /usr/src/linux BR # patch -p1 <../imq-2.4.18.diff-combo-6BR -- (make sure it's the right name you saved from above) BR -- find where iptables keeps its shared libraries (/lib/iptables and /usr/lib/iptables is common) BR # tar xvzf libipt_IMQ-1.2.6a.tar.gz -C /lib/iptables BR

Then you need to make and install your kernel. Here's my .config attachment:config-2.4.20-imq file that I used to compile my kernel. It's a pretty stock 2.4.20 kernel, patched with the IMQ patch.

# cd /usr/src/linux BR # make menuconfig BR

You will have three new options: Networking options ---> IP: Netfilter Configuration --->IMQ target support BR Networking options ---> IPv6: Netfilter Configuration --->IMQ target support BR Network device support --->IMQ (intermediate queueing device) support BR

Choose at least one of the targets and the device itself. Netfilter debugging should be turned off, otherwise cou get lots of annoying messages.

# make dep modules bzImage modules_install

or, for debian, I use Thing's Kernel Recompile Page: # make dep BR # make-kpkg cleanBR # make-kpkg --revision=thing.2.0 kernel_imageBR # type dpkg -i name_of_the_kernel.debBR -- May give you a warning to move your libraries if you're on the same kernel level. If so, you can do this: BR # mv /lib/modules/2.4.20 /lib/modules/2.4.20-oldBR -- and retry installing

Next, replace the attachment:throttle.fw attachment:initialize.fw and attachment:access.fw scripts, typically located in /usr/local/nocat/bin

Some 2-machine wireless testing I've done: -> internet connection for download speed testing (they let you run over and over and over..)

Mac w/ Safari Thinkpad with IE 6.0

Thinkpad logged in as Public, Mac logged in as Public BR Download 200 KB file at same time: 89 kb/s each BR Download 200 KB file solo: 167 kb/s each (fluctuates up to 263 kb/s for solo - but this is a live node) BR

Thinkpad logged in as Public, Mac logged in as Member BR Download 500 KB file on Mac, 200 KB file on ThinkPad: 500 kb/sec Mac, 250 kb/sec ThinkPad BR

ThinkPad logged in as Public, Mac logged in as Owner BR Download 2 MB file on Mac, 200 KB file on ThinkPad: 1000 kb/sec Mac, 250 kb/sec Thinkpad BR

Looks pretty fair to me - the 2 publics aren't stomping over each other (1 drowning out the other).

There's a lot of stuff in the scripts that I need to take OUT, but it's working right now, and I'll deal with that Jingo problem later. Next, is to make a nice PHP frontend to the user admin page.