Welcome to the new location of Alien's Wiki, sharing a single dokuwiki install with the SlackDocs Wiki.

Welcome to Eric Hameleers (Alien BOB)'s Wiki pages.

If you want to support my work, please consider a small donation:

no way to compare when less than two revisions

Differences

This shows you the differences between two versions of the page.


Previous revision
Last revision
slackware:rt2xxx [2008/05/26 10:16] – Info about kernel's rt2x00 alien
Line 1: Line 1:
 +===== The rt2x00 project ======
 +
 +Wireless cards based on RaLink's chipsets are very well-suited for Linux computers. RaLink actively supports Linux and the Open Source community by releasing the code for a driver and configuration utility. Based on that code, a re-developed driver for these cards is hosted at [[http://rt2x00.serialmonkey.com]]. This drivers (although still in beta) are working good and are quite stable. They are different from other modern wireless drivers in that they have built-in WPA support. It is not dependent on a third-party tool like [[http://hostap.epitest.fi/wpa_supplicant/ | wpa_supplicant]]. The rt2x00 driver will eventually replace the current rt2400, rt2500, rt2570, rt61 and rt73 drivers.
 +
 +==== Kernel-supported rt2x00 (2.6.24 and later) ====
 +
 +The rt2x00 driver included in the Linux kernels since 2.6.24 and which replaces all of the legacy RaLink drivers, does not have a built-in WPA support. Instead, it communicates with wpa_supplicant through the **''wext''** driver of wpa_supplicant. For more information on how to configure wpa_supplicant see the [[slackware:madwifi#support_for_wpa_encryption|WPA section of my madwifi page]].
 +
 +==== Legacy drivers ====
 +
 +I still use the "legacy" drivers from the Serialmonkey web site myself, since I do not consider the kernel's own rt2x00 driver stable enough (for me the rt2x00 often does not work with WPA connections). Therefore, the rest of this article concerns itself with building and configuring these out-of-kernel modules.
 +
 +=== Getting the software ===
 +
 +I maintain a Slackware package for several RaLink drivers. For instance, you will find the rt2500 driver (54Mbit wireless cards) [[http://www.slackware.com/~alien/slackbuilds/rt2500/ | here]]. Install a package for your release of Slackware (the version number should correspond with your running kernel) or build your own package using the [[http://www.slackware.com/~alien/slackbuilds/rt2500/build/rt2500.SlackBuild | SlackBuild script]] and the other files found in that location. An easy way to download all source files in one command is <code>
 +lftp -c "open http://www.slackware.com/~alien/slackbuilds/rt2500/; mirror build"
 +</code> When this command completes, you will end up with a subdirectory called "//build//" in your current directory. Build the package as follows: <code>
 +cd build
 +sh rt2500.SlackBuild
 +</code> The resulting package will be created in the ''/tmp'' directory and can be installed with (for example) <code>
 +installpkg /tmp/rt2500-20080517_2.6.24.5_smp-i486-1alien.tgz
 +</code> 
 +SlackBuild scripts and packages for the rt61 and rt73 driver can be found at the same location. Build and installation is analoguous to the above intructions.
 +
 +
 +=== Loading and configuring the rt2500 driver ===
 +
 +After installing the software, a simple <code>/sbin/modprobe rt2500</code> is enough to load the driver. A reboot would do the same, if you have enabled hotplug. Without hotplug, you can add the line ''/sbin/modprobe rt2500'' to the end of either <code>/etc/rc.d/rc.netdevice</code> or  <code>/etc/rc.d/rc.modules</code> so that the driver will load upon boot.\\
 +This will create an network device called //__ra0__// . Slackware since release 10.2 can handle network devices that are not called //ethX// and you can have a look at the [[#sample_configuration | sample configuration below]]. For older releases of Slackware, you can have a look at [[http://www.slackware.com/~alien/rc_scripts/ | my updated network scripts]] that are written as a drop-in replacement for your current //rc.inet1// and/or //rc.wireless// scripts (if you upgrade, upgrade them both!).
 +
 +=== Sample configuration ===
 +
 +Taken from my ''/etc/rc.d/rc.inet1.conf'', your configuration for a rt2x00 driven card could look like this (several parameter values are specific to your own network and you should edit where appropriate):
 +<code>
 +# Config information for ra0:
 +IFNAME[5]="ra0"
 +IPADDR[5]=""
 +NETMASK[5]=""
 +USE_DHCP[5]="yes"
 +DHCP_HOSTNAME[5]="icculus"
 +WLAN_ESSID[5]=MYWAVES
 +WLAN_MODE[5]=Managed
 +WLAN_CHANNEL[5]="auto"
 +WLAN_IWPRIV[5]="set AuthMode=WPAPSK | set EncrypType=TKIP | set WPAPSK=1234567890123456789012345678901234567890123456789012345678901234"
 +</code>
 +The last line (//WLAN_IWPRIV[5]//) is the necessary configuration for WPA. The 64-character string '//12345.....901234//' I copied in there should be replaced by your Access Point's 64-character hexadecimal WPA key.
 +
 +<note warning>The above notation for the **//WLAN_IWPRIV//** variable has changed starting with Slackware 12.0. The old notation for ''IWPRIV'' in before Slackware 12.0 was like this: \\ ''WLAN_IWPRIV[5]="AuthMode=WPAPSK EncrypType=TKIP WPAPSK=the64characterkey"'' \\ Starting with Slackware 12.0, you should use the new syntax <code>
 +WLAN_IWPRIV[5]="set AuthMode=WPAPSK | set EncrypType=TKIP | set WPAPSK=the64characterkey"
 +</code></note>
 +
  
 The rt2x00 project ()
SlackDocs