To load your ipw2200 driver you need to: (last updated: 30-6-2006) Do a: modprobe ipw2200 modprobe arc4 (for crypto) modprobe crc32c (for crypto) Or place the module names on seperate lines in your /etc/modprobe.preload (for Mandrakelinux) or in /etc/modules.conf (for most other distros) Do a: iwconfig eth2 power on iwconfig eth2 essid "MYSSID" iwconfig eth2 key open "MYWEPKEY" to test the card, but you can also add the rules for your device so that it starts on boot (Some cards/machines won't work without rebooting the machine): (<- for Mandrakelinux. With, for instance Debian, it's /etc/network/interfaces.) Example for /etc/sysconfig/network-scripts/ifcfg-eth1 (home, wireless) DEVICE=eth1 BOOTPROTO=static IPADDR=192.168.1.46 NETMASK=255.255.255.0 NETWORK=192.168.1.0 BROADCAST=192.168.1.255 ONBOOT=yes HWADDR=00:0e:35:7a:16:19 METRIC=10 MII_NOT_SUPPORTED=no WIRELESS_MODE=Managed WIRELESS_ESSID=any Example 2 for /etc/sysconfig/network-scripts/ifcfg-eth1 (home, wireless) DEVICE=eth1 BOOTPROTO=dhcp ONBOOT=yes HWADDR=00:0e:35:7a:16:19 METRIC=10 MII_NOT_SUPPORTED=no WIRELESS_MODE=Ad-hoc WIRELESS_ESSID=any Example 3 (this one workd "as-is", unlike the 2 earlier examples, but you'll have to remove the commentary first!) DEVICE=eth0 BOOTPROTO=static (or dhcp, when that's what you use) IPADDR=192.168.0.1 (only needed when using bootproto=static) NETMASK=255.255.255.0 (idem) NETWORK=192.168.0.0 (idem) BROADCAST=192.168.0.255 (idem) ONBOOT=yes (or "no" when you don't want to start the card during boot) MII_NOT_SUPPORTED=yes (standard value, no real importance here) #WIRELESS_KEY="12345678910111213141516171" (use this line if you want to use a (128-bits) WEP key, but please use a real value here! Attention: don't forget to remove the "#"!) WIRELESS_IWCONFIG="key 12345678910111213141516171 restricted" (use this line instead of the one above if you want to force the used of a WEP-key) WIRELESS_MODE=Ad-hoc (or "Managed") WIRELESS_ESSID=essid-naam (essid name when you use one) Troubleshooting When you get the following error message through "dmesg" ieee80211_crypt: registered algorithm 'NULL' ipw2200: Intel(R) PRO/Wireless 2200/2915 Network Driver, 1.0.1 ipw2200: Copyright(c) 2003-2004 Intel Corporation ACPI: PCI interrupt 0000:00:0b.0[A] -> GSI 19 (level, low) -> IRQ 19 ipw2200: Detected Intel PRO/Wireless 2200BG Network Connection ipw2200: ipw-2.2-boot.fw load failed: Reason -2 ipw2200: Unable to load firmware: 0xFFFFFFFE ipw2200: failed to register network device ipw2200: probe of 0000:00:0b.0 failed with error -5 Then you have a too short timeout for the loading of the firmware. First load the module "firmware_class" and next do a: "echo 100 > /sys/class/firmware/timeout" and then load the ipw2200 module. In Mandrake you can also "automate" this fix with the following line in /etc/modprobe.preload te zetten: firmware_class && echo 100 > /sys/class/firmware/timeout & Don't forget to also place "ipw2200" somewhere below that on a new line. In kernels NEWER than 2.6.10 this problem does not seem to exist. In these kernels hotplug/firmware/usb support has been tweaked and is a lot more reliable. With driver version 1.0.4 & 1.0.6 When you, after downloading, unpacking, doing "make" and "make install", do not see the option monitor mode after the command "iwpriv ethX", then your driver isn't built with the monitor mode option. This is because the drivers Makefile refers to your kernel to get its settings right. The kernels in most distro's don't support monitor mode (yet). The solution: in the Makefile of the driver, you change: # NOTE: If you have previously added IPW2200 to your kernel and configured it # for inclusion, these settings will be overridden by your kernel # configuration. ifndef CONFIG_IPW2200 EXTERNAL_BUILD=y CONFIG_IPW2200=m CONFIG_IPW_DEBUG=y CONFIG_IPW_MONITOR=y # Experimental QoS support. CONFIG_IPW_QOS=y endif to: # NOTE: If you have previously added IPW2200 to your kernel and configured it # for inclusion, these settings will be overridden by your kernel # configuration. #ifndef CONFIG_IPW2200 EXTERNAL_BUILD=y CONFIG_IPW2200=m CONFIG_IPW_DEBUG=y CONFIG_IPW_MONITOR=y # Experimental QoS support. CONFIG_IPW_QOS=y #endif Now do "make" and "make install" again, and you will have monitor mode. For WPA support, you need the wpa_supplicant rpm. The WPA support will be added as a service on your system. Attention!!!! Since kernel 2.6.15, WPA support is delivered no longer thru driver IPW, but wext (so on the commandline, use "-Dwext" instead of "-dIPW" The ipw2200 driver should be loaded with "hwcrypto=0"; so: "modprobe ipw2200 hwcrypto=0" This parameter is not needed with ipw2200 driver versions 1.1.x and higher. Please don't forget to CONFIGURE the WPA support! For more info, go to: http://hostap.epitest.fi/wpa_supplicant/ Example config file for wpa_supplicant: http://hostap.epitest.fi/cgi-bin/viewcvs.cgi/*checkout*/hostap/wpa_supplicant/wpa_supplicant.conf?rev=HEAD&content-type=text/plain Remember: especially for managed mode that less settings can be more! Example for an AP with a WPA2 key and a cloaked ssid: network{ ssid psk '' ap-scan 1 scan-ssid 1 } More settings won't work in many cases!!! the AP sets the rest.