Wireless Networking
snip super secret IBM information so 3l334 /. h@x0r$ don't get us :)

How to get it working in Linux:

Kernels

Redhat 7.2 comes with 2.4.7-10. The latest up2date brings it up to 2.4.9-13. Neither of these kernels work. They are unable to select internal WEP keys on the Aironet cards. You simply get an "Operation Not Permitted" error when you try to do it. But, later kernels work just fine. Gerrit is using a stock 2.4.16, and I'm using a stock 2.4.17. Both work well. 2.4.13 had some updates to the drivers. I have a feeling that all kernels >2.4.13 will work.
Person Kernel Version Works? Notes
Dave Hansen 2.4.17 Yes
Gerrit Huizenga 2.4.16 Yes
Dave Oleszkiewicz 2.4.12 No Machine froze when card was inserted
Dave Hansen 2.4.7-10 No Redhat 7.2 kernel. Unable to set key
Dave Hansen 2.4.9-13 No Redhat 7.2 updated kernel. Unable to set key
Matt Dobson 2.4.2-2 No Redhat 7.1 default kernel. No PCMCIA wireless option
If you have something to add to the table, send it to me

In the kernel configuration. Make sure you have the card support selected:
Network device support  ---> 
    Wireless LAN (non-hamradio)  --->                          
       [*] Wireless LAN (non-hamradio)                                        
       < >   STRIP (Metricom starmode radio IP) (NEW)                       
       < >   AT&T WaveLAN & DEC RoamAbout DS support (NEW)		           
       < >   Aironet Arlan 655 & IC2200 DS support (NEW)                       
       < >   Aironet 4500/4800 series adapters (NEW)                         
       < >   Cisco/Aironet 34X/35X/4500/4800 ISA and PCI cards (NEW)       
       < >   Hermes chipset 802.11b support (Orinoco/Prism2/Symbol) (NEW) 
       --- Wireless Pcmcia cards support                                
       <M>   Cisco/Aironet 34X/35X/4500/4800 PCMCIA cards (NEW) 
Or, just set this config option in your .config:
CONFIG_AIRO_CS=m

Network Device configuration

The easy way to do this part is to use netconf. Add an entry like this:
                                             Adaptor 2                
            [x] Enabled			           
            Config mode            ( ) Manual (o) Dhcp ( ) Bootp      
            Primary name + domain                                     
            Aliases (opt)                                             
            IP address						            
            Netmask (opt)						         
            Net device             eth1						      
            Kernel module          airo_cs					           
            I/O port (opt)                                           
            Irq (opt)						          

The hard way:

If you have a modules.conf, you need this line:
alias eth1 airo_cs 
You should have a file /etc/sysconfig/network-scripts/ifcfg-eth1, which looks like this. You can change ONBOOT to "yes" if you like.
DEVICE="eth1"
ONBOOT="no"
BOOTPROTO="dhcp"

Wireless Tools

To control the wireless cards, you need a copy of wireless tools. The version that came with RedHat is wireless-tools-21-3. It works just fine.

PCMCIA Configuration

Everything before this point is generic and will be part of the installation of just about any network card. Now comes the IBM-specific part. Go in to /etc/pcmcia/wireless.opts, and change the
essidany,*,*,*)   
    INFO="Any ESSID"
    ESSID="any"
    ;;
to look like this:
snip super secret IBM information so 3l334 /. h@x0r$ don't get us :)
This will tell the wireless card to select its first internal WEP key, and to only accept encrypted traffic. For those of you who have 802.11 at home, you'll also need an entry like this:
home,*,*,*)
    INFO="Any ESSID"
    ESSID="any"
    #ESSID="myhouse"
    KEY="off"               # Encryption off
    #KEY="s:myasciikey [2]" # ASCII key
    #KEY="0123-4567... [3]" # Numeric key
    ;;
You can use the cardctl command to change configurations. You can select configurations like this:
shell# cardctl scheme work
shell# cardctl scheme home
Remember, you only need to do this if you want a separate home and work configuration. If you don't, you can ignore this part.
By: Dave Hansen
haveblue@us.ibm.com