SDB:Ndiswrapper
Version: 9.1
Situation
You want to use a network card supported by Windows drivers (NDIS) with Linux.
NDIS, which stands for "Network Device Interface Specification", is a standard for the connection of network cards (hardware) to network protocols (software).
Some manufacturers of wireless LAN hardware do not want to release any hardware specifications and/or drivers for their products for operating systems other than Microsoft Windows.
The Ndiswrapper project enables to use this hardware with Linux by means of a kernel module that "wraps itself around" the NDIS driver, thus providing support for some Windows network drivers under Linux.
A list of the supported chipsets is available at:
http://ndiswrapper.sourceforge.net/mediawiki/index.php/List
Procedure
Install the package ndiswrapper
via YaST2.
Download the manufacturer driver for your card. The above-mentioned web page supported_chipsets.html
includes some direct links to manufacturer home pages.
We recommend you the use of archives (.zip,.tar.gz), since they can be unpacked in Linux.
The following lines describe the procedure for the network card RTL8180L.
Go to the web page of the manufacturer and save the relevant ZIP archive in the directory /tmp
.
Open a text console e.g. by clicking on the icon representing a monitor with a shell in the tool bar on the lower screen border in KDE. Enter the following command in the displayed window:
su -
Enter root's password when prompted to do so. Note that no output is displayed on the screen when typing the password.
Unpack the file with the command:
unzip -d driver /tmp/winxp-8180(168).zip
Note:
The back slashes () in the file name must be entered manually in order to mask the brackets. As an alternative, you can use the extension with TAB so that the file name is automatically completed.
A new subdirectory (/tmp/driver
) is created when unpacking the file. This subdirectory contains the file .INF
required by Ndiswrapper.
Proceed to install the driver by entering the path to the file INF (ndiswrapper -i /PATH_TO_FILE/NET8180.INF)
. In this example:
ndiswrapper -i /tmp/driver/NET8180.INF
The output displayed should be similar to:
Installing net8180
Check if the driver has been properly installed with the command:
ndiswrapper -l
If this is the case, the following output will be displayed:
Installed ndis drivers: net8180
Load the module with the command:
modprobe ndiswrapper
If the command does not return any error messages, the driver has been successfully loaded. The output of the command dmesg
displays additional information:
ndiswrapper version 0.6+CVS loaded ndiswrapper adding rtl8180.sys
Once the driver is loaded, the WLAN interface must be configured.
For this purpose, proceed as described in the article SDB:Wireless LANs with SuSE Linux
Interfaces can be configured either manually or by way of YaST2.
Interface Configuration with YaST2:
Start YaST2 Control Center and select the 'Network Devices' section. Then start the module 'Network card'.
- Press the button Configure.
- Enter Wireless as device type.
- The field Configuration name can remain empty. wlan0 will then be used as default name.
- You can either maintain the entry
static-0
in the field Hardware configuration name or choose a different name. - Important: enter
ndiswrapper
in the field Module name. - If required, you can enter some values for the card's I/O range and IRQ in the field Options.
Go to the next step by pressing the button Wireless settings.
- Enter Managed as your Operating Mode to enable the use of access points (AC).
- Enter the network name used by the access point in the field Network Name (ESSID).
- The field Network Identifier (NWID) can remain empty.
- As your Encryption Key, you can enter a 6-digit number for 40-bit encryption or a 10-digit number for 128-bit encryption. If you want to use decimal values, the numbers must be preceded by the identification code s:.
- The nickname designates the station name. You can choose it arbitrarily.
Refer to the legend on the left border for more information on each value.
Manual Interface Configuration:
Use the tool iwconfig
to configure the WLAN interface. The command:
iwconfig
displays the WLAN interface name (wlan0
in most cases). The name used in this example is wlan0
. Replace it with your interface name if necessary.
Execute the following commands to set up a connection with an access point:
iwconfig wlan0 mode managed
This command sets the mode to managed
to enable the use of access points.
iwconfig wlan0 key restricted s:12345
Many networks require the specification of an encryption key (12345 in this case). Enter a 6-digit number for 40-bit encryption or a 10-digit number for 128-bit encryption. Depending on the access point settings, you might have to use the security mode 'open
' instead of the 'restricted
' mode specified above.
iwconfig wlan0 essid "network name"
The network name is very important. Enter the network name used by the access point as ESSID
.
The command
ifconfig wlan0 up
makes the network card available under Linux.
If everything works, you can enter the following command to load the module when the system starts:
ndiswrapper -m
Please note that the use and installation of ndiswrapper as well as any problems derived from it exceed the scope of the free-of-charge installation support. <keyword>ndiswrapper,ndis,wrapper,wlan,network,flex</keyword>