Wlan Realtek RTL8180 and SuSE (Linuxant)
June 14th, 2004There are several ways to get your RTL 8180 card to work on your SuSE laptop. The easiest way to do so is via the commercial Linuxant driver. This solution is relatively independent from the used Kernel. Another solution is the open source NdisWrapper, which will ship with SuSE 9.1 (read about it here). If you use an older Kernel (2.4.20) you can also use the driver offered by Realtek. Installation tutorials can be found here (German) and here (English). With newer Kernels the drivers offered by Realtek will probably not work.
Setting up the Linuxant Driver
Personally, I like the Linuxant [1] driver. It provides me with an easy way to have my RTL8180 card running on my SuSE laptop. I tried to get the NdisWrapper [2] running under SuSE 9.0 (Kernel 2.4.21), but for some reason it didn’t work… maybe it was the Kernel I used. I did not try again when I upgraded to SuSE 9.1 [5], since by that time I already bought the Linuxant license and I didn’t really want to spend more time tinkering around with it.
One more thing: the solution described below worked well on my own Laptop, the Dell Inspirion 1100 with both, SuSE 9.0 and also SuSE 9.1. If you follow these instructions, you will do so on your own risk. I will not be held responsible if something strange happens to your Laptop/PC etc. The fact that it works on my own system does not have to mean that it will work on yours also. So be careful when you tinker with it.
Download the driver from Linuxant [4] and install it via rpm (root). Make sure you chose the driver that fits your Kernel. Upon installation run SuSEconfig. On my system the driver was loaded. To check if it is loaded run ‘lsmod’ and look for ‘driverloader’. If it is not available, run ‘modprobe driverloader’.
If you didn’t do it already, download the Windows Driver for the RTL8180 chip. You’ll find it under listing [3]. Alternatively you can of course use the one provided on your wlan CD.
Once installed you can set up your driver via the web interface. Point your browser to “http://127.0.0.1:18020″:http://127.0.0.1:18020, and log in with your root password. This web interface will enable you to load the Windows driver files in a very convenient way. Simply follow the online instructions.
Once the driver is loaded, you can install the license number. You can either type it in, or install it from your Linuxant account. Should you not have a license already, you can obtain one now (get a demo license first to make sure the driver will work for you). Note: you will need the MAC address from you card (it should be printed on your card).
By now your card should be set up as wlan0. You can go ahead and change your settings via the Yast networking tool (wlan0). You can setup if you’d like to use DHCP or rather a fixed IP address, and in one of the advanced areas, you should set your SSID name, the type (probably ‘managed’) and the encryption.
Now it’s time for some hand tweaking. To have your card work properly, you need to turn off the regular eth0 card, and turn on wlan0, and the other way around. You can do all that manually, but that’s tedious. Instead create two scripts to handle just that:
Script to start wlan0 (wlan0):
#!/bin/sh
route add default gw 192.168.1.1 wlan0
sleep 1
ifconfig wlan0 up
route del default gw 192.168.1.1 eth0
ifconfig eth0 down
What it does: It sets the default gateway for wlan0 to your routers IP (please, change to fit your needs), starts the wlan0 card, removes the default gateway from eth0 and shuts it down. The 2nd and 3rd line are commented out since this is taken care of by the wlan0 script (ifcfg-wlan0).
Script to start eth0 again (wlan0d):
#!/bin/sh
ifconfig eth0 192.168.1.63 netmask 255.255.255.0
sleep 1
route add default gw 192.168.1.1 eth0
sleep 1
ifconfig eth0 up
route del default gw 192.168.1.1 wlan0
ifconfig wlan0 down
What it does: This script works the other way around. It set eth0 IP address, the default gateway for your eth0 card (again use the IP address from your router here), and starts it. Once that is done, it removes the gateway from the wlan0 card and shuts it down.
The ifcfg-wlan0 scriptBelow is the example of my ifcfg-wlan0 script. In the last two lines you see the commands that will call the two scripts you just created (above) based on the taken action.
BOOTPROTO=’static’
BROADCAST=’192.168.1.255′
IPADDR=’192.168.1.64′
MTU=”
NETMASK=’255.255.255.0′
NETWORK=’192.168.1.0′
REMOTE_IPADDR=”
STARTMODE=’hotplug’
WIRELESS_AP=”
WIRELESS_AUTH_MODE=’open’
WIRELESS_BITRATE=’auto’
WIRELESS_CHANNEL=’6′
WIRELESS_DEFAULT_KEY=”
WIRELESS_ESSID=’your_network_name’
WIRELESS_FREQUENCY=”
WIRELESS_KEY=’your_key1_here’
WIRELESS_KEY_0=’your_key1_here’
WIRELESS_KEY_1=’your_key2_here’
WIRELESS_KEY_2=’your_key3_here’
WIRELESS_KEY_3=’your_key4_here’
WIRELESS_KEY_LENGTH=’64′
WIRELESS_MODE=’Managed’
WIRELESS_NICK=”
WIRELESS_NWID=”
WIRELESS_POWER=’yes’
POST_UP_SCRIPT=’/path/to/wlan0′
POST_DOWN_SCRIPT=’/path/to/wlan0d’
You should now be able to use your card. If it is not recognized, make sure the driverloader module is loaded by running ‘lsmod’. I didn’t really have to do anything here. The module was loaded after restarting my stystem. Should this not be the case in your setup you might have to add it manually. One way to do it is via adding the line ‘modprobe driverloader’ in your boot.local file.
Related Links and Resources
[1] Linuxant – DriverLoader for Wireless LAN devices
[2] NdisWrapper
[3] RTL8180L Download
[4] SuSE Linunuxant Driver
[5] SuSE Linux


