This page describes how to install NDISwrapper on Debian systems.
Some vendors do not release hardware specifications and do not provide a Linux driver for their devices.
The NDISwrapper project provides a Linux kernel module that loads and runs Windows kernel API and NDIS (Network Driver Interface Specification) API drivers supplied by the vendors within the Linux kernel. A Windows driver is then linked to this implementation so that the driver runs natively, as though it is in Windows, without binary emulation.
NDISwrapper uses Windows XP driver files - which may have been supplied with your hardware - to operate your device. This driver wrapper is only available for use on the x86 and x86-64 architectures (Debian i386 and AMD64 ports respectively).
While NDISwrapper is intended for use with WiFi devices, it may alternatively be used for other hardware classes, such as Ethernet adapters or USB-to-serial converters. This page assumes use of a wireless LAN device.
16-bit PC Card (PCMCIA) devices are not supported. CardBus devices are supported.
- Install the NDISwrapper kernel module and supporting applications.
- Install the relevant NDIS driver for your device.
- Configure the wireless interface.
# apt-get install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') ndiswrapper-utils-1.9 wireless-tools
This will also install the recommended ndiswrapper-dkms package. DKMS will build the NDISwrapper module for your system.
Add ndiswrapper to the list of kernel modules to load at boot time:
# echo ndiswrapper >> /etc/modules
Windows XP drivers are required to be used. NDISwrapper does not support NDIS 6.x (Windows Vista/7/8) at this time.
You are required to provide the appropriate driver for your device. The first place you should check is the NDISwrapper wiki. It lists many models of wireless devices that are usable with NDISwrapper and the driver that works best.
If you can't find it there, the Linuxant Windows Driver page has many drivers that work with NDISwrapper. It also has drivers for some 64-bit devices that don't offer native 64-bit drivers on the manufacturer's web page.
The final place you should examine is your driver CD or the manufacturer's web page. These often work, but sometimes they're broken or don't offer you full functionality. It's best to go with the ones listed on the NDISwrapper web page.
The driver you find may be packaged as a ZIP (.zip) archive or a self-extractable .zip inside a Portable Executable (.exe) format. Such self-extractable .exe are ZIP archive encapsulated inside a .exe, you can run the unzip de-archiver (provided by the unzip package) to extract its contents.
The following procedure is specific to the "Dell Wireless Card 1390" (PCI ID 14e4:4311) device and is provided as an example only. Consult the NDISwrapper wiki for information on your specific device.
Install the unzip package:
# apt-get install unzip
Acquire an archive containing the NDIS driver from Dell's FTP site:
# wget http://ftp.us.dell.com/network/R151517.EXE
Extract its contents:
# unzip -a R151517.EXE
Install the NDIS driver:
# ndiswrapper -i DRIVER/bcmwl5.inf
To verify NDIS driver installation, list the currently installed drivers:
# ndiswrapper -l
You should receive the following output:
bcmwl5 : driver installed device (14E4:4311) present
Refer to the NDISwrapper manual page for more information: ndiswrapper-1.9(8)
You can alternatively use ndisgtk to install drivers to the system.
To remove a previously installed NDIS driver from your system:
# ndiswrapper -e <driver>
# ndiswrapper -e bcmwl5
You can alternatively use ndisgtk to uninstall drivers from the system.
Insert the NDISwrapper module into the kernel:
# modprobe ndiswrapper
Verify your device has an available interface:
Configure your wireless interface as appropriate.
NDISwrapper only supports managed and ad-hoc device operating modes.1
ndisgtk - a graphical frontend for ndiswrapper
cabextract - a program to extract Microsoft Cabinet files
orange - extracts CAB files from self-extracting installers
unshield - extracts CAB files from InstallShield installers