Release Date: 2008-10-23, ver 1.37 
RTL8187B Linux driver version 1.37 
 
   --This driver supports RealTek RTL8187B Wireless LAN NIC 
     for 
     2.6 kernel: 
     Fedora Core 2/3/4/5/6/7, Debian 3.1, Mandrake 10.2/Mandriva 2006,  
     SUSE 9.3/10.1/10.2, Gentoo 3.1, etc. 
     2.4 kernel: 
     Redhat 9.2, etc 
   - Support Client mode for either infrastructure or adhoc mode 
   - Support WEP, WPAPSK and WPA2PSK connection 
 
< Component > 
The driver is composed of several parts:
The driver is composed of several parts:
        1. Module source code
           ieee80211
           rtl8187

        2. Script ot build the modules
           Makefile

        3. Script to load/unload modules
           wlan0up
           wlan0down

        4. Script and configuration for DHCP
           wlan0dhcp
           ifcfg-wlan0
 
	5. Supplicant source code: 
	   wpa_supplicant-0.5.3.tar.gz 
 
	6. Example of supplicant configuration file: 
	   wpa1.conf 
 
< Installation >
Runing the scripts can finish all operations of building up modules
from the source code, installing driver to the kernel and starting up the nic.
        1. Build up the drivers from the source code
           make

        2. Install the driver to the kernel
           make install
           reboot
	
        3. bring up wlan if nic is not brought up by GUI, such as NetworkManager
           ifconfig wlan0 up
           Note: use ifconfig to check whether wlan0 is brought up and use iwconfig to check your wlan interface name,
           since it may change wlan0 to wlan1,etc.

Or only load the driver module to kernel and start up nic.
        1. Build up the drivers from the source code
           make

        2. Load driver module to kernel and start up nic.
           ./wlan0up
 
< Set wireless lan MIBs > 
This driver uses Wireless Extension as an interface allowing you to set 
Wireless LAN specific parameters. 
 
Current driver supports "iwlist" to show the device status of nic 
        iwlist wlan0 [parameters] 
where 
        parameter explaination      	[parameters]     
        -----------------------     	-------------    
        Show available chan and freq	freq / channel   
        Show and Scan BSS and IBSS 	scan[ning]           
        Show supported bit-rate         rate / bit[rate]         
        Show Power Management mode      power              
 
For example: 
	iwlist wlan0 channel 
	iwlist wlan0 scan 
	iwlist wlan0 rate 
	iwlist wlan0 power 
 
Driver also supports "iwconfig", manipulate driver private ioctls, to set 
MIBs. 
 
	iwconfig wlan0 [parameters] [val] 
where 
	parameter explaination      [parameters]        [val] constraints 
        -----------------------     -------------        ------------------ 
        Connect to AP by address    ap              	[mac_addr] 
        Set the essid, join (I)BSS  essid             	[essid] 
        Set operation mode          mode                {Managed|Ad-hoc} 
        Set keys and security mode  key/enc[ryption]    {N|open|restricted|off} 
 
For example: 
	iwconfig wlan0 ap XX:XX:XX:XX:XX:XX 
	iwconfig wlan0 essid "ap_name" 
	iwconfig wlan0 mode Ad-hoc 
	iwconfig wlan0 mode essid "name" mode Ad-hoc 
	iwconfig wlan0 key 0123456789 [2] open 
	iwconfig wlan0 key off 
	iwconfig wlan0 key restricted [3] 0123456789 
 
< Getting IP address > 
After start up the nic, the network needs to obtain an IP address before 
transmit/receive data. 
This can be done by setting the static IP via "ifconfig wlan0 IP_ADDRESS" 
command, or using DHCP. 
 
If using DHCP, setting steps is as below: 
	(1)connect to an AP via "iwconfig" settings 
		iwconfig wlan0 essid [name]	or 
		iwconfig wlan0 ap XX:XX:XX:XX:XX:XX 
 
	(2)run the script which run the dhclient 
		./wlan0dhcp 
           or  
		dhcpcd wlan0 
              	(Some network admins require that you use the 
              	hostname and domainname provided by the DHCP server. 
              	In that case, use  
		dhcpcd -HD wlan0) 
		 
< WPAPSK/WPA2PSK > 
WPA_SUPPLICANT help the network to communicate under the protection of WPAPSK/WPA2PSK 
mechanism 
	 
	(1)Unpack source code of WPA supplicant: 
	  tar -zxvf wpa_supplicant-0.5.3.tar.gz 
	  cd wpa_supplicant-0.5.3 
	 
	(2)Create .config file: 
	  cp defconfig .config 
	 
	(3)Edit .config file, uncomment the following line: 
	  #CONFIG_DRIVER_IPW=y. 
		 
	(4)Build WPA supplicant: 
	  make 
	If make error for lack of <include/md5.h>, install the openssl lib(two ways): 
	 1. Install the openssl lib from corresponding installation disc: 
	    Fedora Core 2/3/4/5/6/7(openssl-0.9.71x-xx), 
            Mandrake10.2/Mandriva10.2(openssl-0.9.7x-xmdk), 
	    Debian 3.1(libssl-dev), Suse 9.3/10.0/10.1(openssl_devl), 
            Gentoo(dev-libs/openssl), etc. 
	 2. Download the openssl open source package from www.openssl.org, build and install it. 
	If make error for lack of <krb5.h>, first make sure krb5-devel & krb5-libs intalled.
	 If in Redhat, these files have been moved to "/usr/kerberos/include". So either make a symbol link 
	 or just add "CFLAGS += -I/usr/kerberos/include" to its makefile. 
	(5)Edit wpa_supplicant.conf to set up SSID and its passphrase. 
	  For example, the following setting in "wpa1.conf" means SSID  
          to join is "BufAG54_Ch6" and its passphrase is "87654321". 
	  network={ 
			ssid="BufAG54_Ch6" 
			proto=WPA 
			key_mgmt=WPA-PSK 
			pairwise=CCMP TKIP 
			group=CCMP TKIP WEP104 WEP40 
			psk="87654321" 
			priority=2 
		  } 
	Note: 1. proto=WPA for WPA, proto=RSN for WPA2.  
	      2. If you want to connect an AP which works under WPA2 mixed mode, you'd better 
                 use Realtek customed wpa_supplicant package. 
 
	(6)Execute WPA supplicant (Assume 8187B and related modules had been 
           loaded): 
	  ./wpa_supplicant -D ipw -c wpa1.conf -i wlan0 & 
 
