|
|
Wireless Notes
Prerequisites
You need a recent kernel at, least 2.6.6 or 2.4.26, with kernel headers. Make sure that Some vendors ship ndiswrapper in their distributions. It may be easier to locate and install ndiswrapper package(s) from your distribution. However, ndiswrapper available for your distribution may be quite old and may not work. In that case, proceed with installation below. UpgradingIt is always a good idea to uninstall the current version and reinstall the new version. This way, if there are changes in formats of configuration files, etc., the new version will work without problems. Downloading
Download the latest version of the ndiswrapper sources from http://sourceforge.net/projects/ndiswrapper and extract it with
This will create the ndiswrapper-version directory. Change to that directory with
If you are having problems with the release version, or you want to try the bleeding-edge version, you can either get the latest SVN version with Note that the snapshot tar balls and SVN versions may or may not work - they may not even compile. If you have problems with these, please don’t complain, except to provide feedback/debug trace to help fix bugs. However, sometimes, these may work better than release versions, as bugs are fixed, features are added, etc. InstallationCompile and install
Go to the source-directory and run NOTE: Source-directory is for the ndiswrapper directory that you just created. (NOT the /usr/src directory) Install Windows driverImportant: Not all Windows drivers are tested / stable. If the Windows driver that you use is problematic, try alternate Windows drivers that others have tested, especially those in List. Always, try Windows XP drivers and if Windows XP drivers are not available, try Windows 2000/2003 drivers. Windows Vista drivers are not supported (yet) - using Windows Vista driver will result in many ‘unknown symbol’ error messages when loading ndiswrapper.
To identify the driver that you need from List, first identify the card you have with
If you already have your device working in Windows you can try that driver. Open the device manager and find the name of the .sys driver file listed for the device. You need the .sys file and the .inf file. To find the .inf file search in the \Windows\inf\ directory for a file containing the name of the .sys file. You will need to do an advanced search to search for text within the files. Now use the ‘ndiswrapper’ tool to install the driver with
Where ‘present’ means that you have a card that can be used with the driver installed. In this case, broadcom driver
If you get something like Errors on Installation
If you get an error with Extracting drivers from EXEs or CAB files
If there’s no windows driver listed for your card, or your card isn’t there at all, you might as well try to locate a driver, and add it if you succeed. The drivers you find may be packaged as an executable file. These notes were extracted from the List of cards, there may be more there. Some of the EXE files are just zip files, so you can run Load module
Before you load the module, DO NOT FORGET to type
To load the module type If after modprob’ing, the system is locked up (no response to keyboard, etc.), it indicates that kernel has crashed. See distributions and the FAQ for hints on what may cause problems for your distribution/kernel.
If you have successfully installed the windows drivers earlier with If this does not bring up the lights on the card, try ejecting it and re-inserting it.
If the system has a card that works with one of the loaded drivers, you should see the following message in the system log Configure interface
Use iwconfig to configure wireless network interface. First, see if the interface is available, with
This will print the wireless interface e.g., wlan0. In the examples below, wlan0 is used. Replace wlan0 with the interface reported by iwconfig above. The wireless configuration to be used should match what your access point uses. First, find out if you can see your access point (AP) with
If you see the AP in the scan above, set the operating mode of the interface according to your setup. In most cases, it is Managed
Set the network name
At this point, check to make sure that the ESSID is set in the output of
Now, setup the network parameters for the interface wlan0. This varies from distribution to distribution. Refer to your distribution’s documents on how to do this. Once this is done, you can use network tools to bring up the network e.g., Remember, if you have a firewall, let it know that wlan0 is an external interface, and allow it to pass traffic. Otherwise you won’t even be able to ping your AP.
Once everything works fine you can write the correct modprobe settings to load ndiswrapper automatically when the wlan0 interface is used, by running
If this does not work, instead add a line If this does not work either, you can find a couple of other possible solutions at http://www.linuxquestions.org/questions/showthread.php?t=431575 WPA support: See WPA Wiki on how to use Wi-fi Protected Access with ndiswrapper How to use WPA with ndiswrapperGet 0.4.9 or newer version of wpa_supplicant from http://hostap.epitest.fi/wpa_supplicant. In wpa_supplicant directory, add .config file so it contains driver support for wext and a control interface i.e., add the following line to .config file: CONFIG_DRIVER_WEXT=y CONFIG_CTRL_IFACE=y Now compile it with “make” and copy wpa_supplicant, wpa_passphrase and wpa_cli to some place that is in your PATH, e.g., /usr/local/bin. Get 1.41 version or newer of ndiswrapper and install it. Create wpa_supplicant configuration somewhere, say, /etc/wpa_supplicant.conf. A simple configuration such as ctrl_interface=/var/run/wpa_supplicant
network={
ssid="myssid"
psk="mysecret"
key_mgmt=WPA-PSK
proto=WPA
}
should suffice. Note that psk given above can be plain text ASCII pass phrase that is used on the AP or hex digits (without quotes) that can be generated with wpa_passphrase from the same ASCII pass phrase. For simplicity, go with ASCII pass phrase. Above configuration causes wpa_supplicant to negotiate which encryption scheme to use. Certain AP’s might not work with this negotiation procedure. So it can help to limit the scheme to the most basic WPA one: TKIP. Add this line to your config to do so: pairwise=TKIP Now start the interface and then wpa_supplicant. For example, as ifconfig wlan0 up wpa_supplicant -Dwext -iwlan0 -c/etc/wpa_supplicant.conf -dd
Note: With ndiswrapper version 1.12 and older, use
Now configure the network interface; e.g., if you are using a DHCP you may need to run
The option wpa_supplicant by default tries CCMP also known as AES and TKIP ciphers in that order. So if your AP supports both, you can use either ndiswrapper works with both, if the driver supports them. You can also use wpa_supplicant to set WEP keys if you don’t want/need to use WPA. This way, you can specify bssid in each network block so you can set different WEP keys for different APs automatically. ndiswrapper works with WPA-EAP; tested with freeradius and TLS, TTLS, PEAP, IEEE8021X. Laptop: Dell Inspiron 5150 Card: Wireless 1350 (802.11b/g) WLAN miniPCI Card
Hardware Notes
Slackware Installation Notes
Installation Checklist: Installing Slackware 11 on a Dell Inspiron 5150
June 2007 Operating System [X] Linux 2.6 Kernel [X] Power Management (ACPI) [_] Wireless w/ WPA supplicant Window Managers [X] Ratpoison Window Manager (Slack Build) [_] Ion Window Manager [X] Lua [_] Gnome Window Manager (?) [?] Network Manager Multimedia Software [X] MPlayer and codecs (Slack Build) Network Software [_] rTorrent Slackware Installation Logs
Installation Log: Installing Slackware 11 on a Dell Inspiron 5150
June 2007 Kernel: 2.6.17.13 Partitions: 17G / 37G /home 02G swap Post Installation Extra Packages /mnt/cdrom/extra/ linux-2.6.17.13/ installpkg kernels-modules-2.6.17.13-i486-1.tgz installpkg kernels-source-2.6.17.13-i486-1.tgz checkinstall/ installpkg checkinstall-1.6.0-i486-2.tgz slackpkg/ installpkg slackpkg-2.09-noarch-1.tgz grub/ installpkg grub-0.97-i486-2.tgz grubconfig 1024x768x32k Framebuffer console MBR Uninstallation pkgtool > Remove kernel-ide-2.4.33-i kernel-modules-2.4.33 kernel-source-2.4.33 lilo-22.7.1-i486-2 Note: As per Patrick's notes, keep the kernel-headers-2.4.33 installed. Install Updates vim /etc/slackpkg/mirrors Used: ftp://carroll.cac.psu.edu/ ... ZZ slackpkg update slackpkg upgrade patches Keymap Tweak (See Customizations & Tweaks) Video Video Card lspci | grep -i nvidia 01:00.0 VGA compatible controller: nVidia Corporation NV34M [GeForce FX Go5200] (reva1) NVIDIA Accelerated Linux Graphics Driver README and Installation GuideInstalling the nVidia Linux Display Driversu && cd ~ wget http://us.download.nvidia.com/.../NVIDIA-Linux-x86-100.14.09-pkg1.run chmod +x NVIDIA-Linux-x86-100.14.09-pkg1.run sh NVIDIA-Linux-x86-100.14.09-pkg1.run "When the installer is run, it will determine if it has a precompiled kernel interface for the kernel you are running. If it does not have one, it will check if there is one on the NVIDIA FTP site (assuming you have an Internet connection), and download it. If one cannot be downloaded, either because the FTP site cannot be reached or because one is not provided, the installer will check your system for the required kernel sources and compile the interface for you. You must have the source code for your kernel installed for compilation to work." [Build Kernel Module...] [Allow nVidia to update X configuration file...] cp /etc/X11/xorg.conf /etc/X11/xorg.conf.nvidia vim /etc/X11/xorg.conf [Prepend "1600x1200" "1280x960" to each Display subsection...] [Change mouse protocol to "Auto"] [Add to Mouse section: Option "ZAxisMapping" "4 5 6 7"] Section "Device" Power Management ACPI Installation Log: Installing Slackware 12 on a Dell Inspiron 5150
July 2007 Kernel: 2.6.21.5-smp Partitions: 15G / 02G /root 37G /home 02G swap Post Installation Extra Packages /mnt/cdrom/extra/ checkinstall/ Not released w/ 12.0 slackpkg/ installpkg slackpkg-2.09-noarch-1.tgz grub/ installpkg grub-0.97-i486-3.tgz grubconfig 1024x768x32k Framebuffer console MBR Uninstallation pkgtool > Remove lilo-22.8.1-i486-4 Install Updates vim /etc/slackpkg/mirrors Used: ftp://carroll.cac.psu.edu/ ... ZZ slackpkg update slackpkg upgrade patches Keymap Tweak (See Customizations & Tweaks) Video Video Card lspci | grep -i nvidia 01:00.0 VGA compatible controller: nVidia Corporation NV34M [GeForce FX Go5200] (reva1) NVIDIA Accelerated Linux Graphics Driver README and Installation GuideInstalling the nVidia Linux Display Driversu && cd ~ wget http://us.download.nvidia.com/.../NVIDIA-Linux-x86-100.14.09-pkg1.run chmod +x NVIDIA-Linux-x86-100.14.09-pkg1.run sh NVIDIA-Linux-x86-100.14.09-pkg1.run "When the installer is run, it will determine if it has a precompiled kernel interface for the kernel you are running. If it does not have one, it will check if there is one on the NVIDIA FTP site (assuming you have an Internet connection), and download it. If one cannot be downloaded, either because the FTP site cannot be reached or because one is not provided, the installer will check your system for the required kernel sources and compile the interface for you. You must have the source code for your kernel installed for compilation to work." [Build Kernel Module...] [Allow nVidia to update X configuration file...] cp /etc/X11/xorg.conf /etc/X11/xorg.conf.nvidia vim /etc/X11/xorg.conf [Prepend "1600x1200" "1280x960" to each Display subsection...] [Change mouse protocol to "Auto"] [Add to Mouse section: Option "ZAxisMapping" "4 5 6 7"] Section "Device" Power Management ACPI Installation Log: Installing Slackware 12 on a Dell Inspiron 5150
September 2007 Partitioning root@slackware:/# fdisk -l /dev/hdc Disk /dev/hdc: 60.0 GB, 60011642880 bytes 16 heads, 63 sectors/track, 116280 cylinders Units = cylinders of 1008 * 512 = 516096 bytes Device Boot Start End Blocks Id System /dev/hdc1 * 1 31002 15624976+ 83 Linux /dev/hdc2 37879 112384 39063024 83 Linux /dev/hdc3 31003 34878 1953504 83 Linux /dev/hdc4 112385 116280 1963584 82 Linux swap Partition table entries are not in disk order Setup Swap Space [*] /dev/hdc4 Linux swap partition, 1963584KB swapon /dev/hdc4 Mount Points Mount points for /etc/fstab Device Mount Format Filesystem /dev/hdc1 / Yes ext3 /dev/hdc2 /home No ext3 /dev/hdc3 /root Yes ext3 CD/DVD Installation [*] full Install everything (4.5+ GB of software, RECOMMENDED!) Full installation mode. Installing all packages without prompting. Sound alsamixer alsactl store (Below this line are incomplete items) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Kernel: 2.6.21.5-smp Partitions: 15G / 02G /root 37G /home 02G swap Post Installation Extra Packages /mnt/cdrom/extra/ checkinstall/ Not released w/ 12.0 slackpkg/ installpkg slackpkg-2.09-noarch-1.tgz grub/ installpkg grub-0.97-i486-3.tgz grubconfig 1024x768x32k Framebuffer console MBR Uninstallation pkgtool > Remove lilo-22.8.1-i486-4 Install Updates vim /etc/slackpkg/mirrors Used: ftp://carroll.cac.psu.edu/ ... ZZ slackpkg update slackpkg upgrade patches Keymap Tweak (See Customizations & Tweaks) Video Video Card lspci | grep -i nvidia 01:00.0 VGA compatible controller: nVidia Corporation NV34M [GeForce FX Go5200] (reva1) NVIDIA Accelerated Linux Graphics Driver README and Installation GuideInstalling the nVidia Linux Display Driversu && cd ~ wget http://us.download.nvidia.com/.../NVIDIA-Linux-x86-100.14.09-pkg1.run chmod +x NVIDIA-Linux-x86-100.14.09-pkg1.run sh NVIDIA-Linux-x86-100.14.09-pkg1.run "When the installer is run, it will determine if it has a precompiled kernel interface for the kernel you are running. If it does not have one, it will check if there is one on the NVIDIA FTP site (assuming you have an Internet connection), and download it. If one cannot be downloaded, either because the FTP site cannot be reached or because one is not provided, the installer will check your system for the required kernel sources and compile the interface for you. You must have the source code for your kernel installed for compilation to work." [Build Kernel Module...] [Allow nVidia to update X configuration file...] cp /etc/X11/xorg.conf /etc/X11/xorg.conf.nvidia vim /etc/X11/xorg.conf [Prepend "1600x1200" "1280x960" to each Display subsection...] [Change mouse protocol to "Auto"] [Add to Mouse section: Option "ZAxisMapping" "4 5 6 7"] Section "Device" Power Management ACPI |