Differences between revisions 10 and 11
Revision 10 as of 2007-11-23 18:04:09
Size: 5569
Editor: localhost
Comment: converted to 1.6 markup
Revision 11 as of 2012-03-11 02:30:45
Size: 5589
Comment: add CategoryHistorical
Deletions are marked like this. Additions are marked like this.
Line 88: Line 88:
[CategoryDocumentation] [CategoryDocumentation][CategoryHistorical]

T step by step instructions, what JerrittCollord achived of turning a Linux box into a true AccessPoint using JouniMalinen's HostApMode drivers for the Prism2Cards.

Because I am most familiar with DebianLinux this tutorial will be very Debian specific. If someone will write an equivelent for Redhat, Mandrake, Suse that would be great.

I starting off by compiling a custom kernel using Debian's make-kpkg facility. However at this point I don't believe that this is necessisary. What follows is a step by step guide of what I've done. When I've made it all work this page will be updated but in the mean time it's my scratch pad so don't expect it to be a guide to LinuxAccessPoint nirvana. :-)

If you are looking for the already configured AccessPoint image you can find that on the DebianApImage page.

  • This requires packages which are only available in Debian's unstable distribution. If you're not comfortable using their unstable distribution you might not want to do this, however it caused me very little heart ache. Thus you need to make sure that your /etc/apt/sources.list file contains these lines.

    deb http://http.us.debian.org/debian unstable main contrib non-free
    deb http://non-us.debian.org/debian-non-US unstable/non-US main contrib non-free

  • The 2.4 kernel requires newer versions of some packages. Exactly which packages these are I haven't narrowed down yet, but as a start you need to make sure you are running the lastest versions of at least these packages.

    # apt-get install modutils initrd-tools

  • You are also going to have to compile some stuff so you need to make sure that you have what's required to compile kernel modules. If you've done this before you should be able to skip this step.

    # apt-get install gcc make patch bin86 libc6-dev binutils

  • Find what the most recent version of the 2.4 kernel is which has been Debianized. At the time of writing this was 2.4.9 so it will be refered to as that from now on. For testing I would recommend that you use the -386 kernel package, later when everything works you can upgrade to a kernel which is optimized for your particular Intel architecture.

    # apt-cache search kernel-image-2.4

  • Actually, that won't work, because as you say down below, you need kernel source. So go to ftp.kernel.org and get a new kernel. I've had good exp with 2.4.16 and 2.4.14 for this application. Download the tarball and untar it in /usr/src/linux. Configure with all the stuff you need (wired ethernet card/s, iptables, cardbus support...), you must have wireless lan enabled though. (I'll add my config file later) Install kernel as normal, reboot so as not to confuse any of the things you'll be compiling.


  • Install the latest kernel image, PCMCIA card servers and sources and the wireless tools packages.

    # apt-get install kernel-image-2.4.9-386 pcmcia-cs pcmcia-source wireless-tools

  • This is mostly right, but again, can't use the kernel.

    # apt-get install  pcmcia-cs pcmcia-source wireless-tools


  • Update your boot manager (either lilo or grub) to use the new kernel. Doing this is beyond the scope of this document, however note that the Debian 2.4 kernels do use initrd so you will need to configure lilo/grub to use that or you will be unable to boot the new kernel. Make sure you leave a your old working kernel configuration in case something doesn't work with the new kernel.
  • Reboot your computer and make sure the new kernel works!

    # shutdown -r now

  • Download JouniMalinen's Prism 2 source modules into /usr/local/src.

  • Untar the PCMCIA source package, and add the custom Prism 2 modules to it.

    # cd /usr/src
    # tar zxvf pcmcia-cs.tar.gz
    # tar zxvf /usr/local/src/Prism2-2001-07-11.tar.gz -C /tmp
    # tar zxvf /tmp/Prism2-2001-07-11/prism2-0.0.0.tar.gz -C /usr/src/modules/pcmcia-cs

  • Build the PCMCIA modules.

    # cd /usr/src/modules/pcmcia-cs
    # make all && make install

  • Edit your config and config.opts files in /etc/pcmcia. The card you will be using needs to load the prism2_cs driver instead of orinoco_cs or wvlan_cs or whathave you.
  • Restart pcmcia services.

    # /etc/init.d/pcmcia restart

  • Insert the card, tail -f /var/log/syslog and make sure everything works ok. Now, when the card is inserted, it should load the module. But, I found that it ignores network.opts entirely. ifconfig won't show a thing, and it is called wlan0 instead of eth1. So I simply do this after the card is inserted and module loaded correctly.

    # ifconfig wlan0

Now a this point, i'm forgetting how you set the ESSID, i think it's in /etc/pcmcia/config and is in the line to load the module. But, i could be way off. I'll boot up my box tomorrow and check it out, since i've got an aironet bridge i use most of the time.

hope you don't mind me trying to fix some things here and there adam.


oh crap ... this won't work cause you need to have kernel source to build the pcmcia modules. shit shit shit. okay .. back to the documentaiton drawing board. more tomorrow. it's bed time.


Also based on Debian, BeWitched is a LinuxAccessPoint designed to run on both the CloneArmyBox and the SoekrisBox.

brian beattie


DebianAp (last edited 2012-03-11 02:30:45 by RussellSenior)