User Tools

Site Tools


r8187

Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
r8187 [2008/08/15 19:33]
darkaudax Changed iwe_stream_add_event to use patches.aircrack-ng.org
r8187 [2017/01/09 21:35] (current)
mister_x Mark page as deprecated.
Line 1: Line 1:
 +====== DEPRECATED ======
 +
 +**IMPORTANT NOTE**: This page is deprecated, updated documentation can be found [[install_drivers|here]]
 +
 ====== General ====== ====== General ======
  
-The r8187 driver works properly for the Realtek RTL8187L chipset. ​ Support for the RTL8187B chipset is under development but is not fully working.+The r8187 driver works properly for the Realtek RTL8187L chipset. ​ Support for the RTL8187B chipset is under development but is not fully working. See [[r8187b]] for the RTL8187B ieee80211 driver.
  
-This page only deals with the ieee80211 version of the r8187 driver. For the mac80211 rtl8187 version see the [[mac80211|mac80211 ​page]]. ​ To understand the differences,​ see [[install_drivers#​mac80211_versus_ieee80211_stacks|mac80211 versus ieee80211 stacks]] write-up.+This page only deals with the ieee80211 version of the r8187 driver. For the mac80211 rtl8187 version see the [[rtl8187|rtl8187 ​page]]. ​ To understand the differences,​ see [[install_drivers#​mac80211_versus_ieee80211_stacks|mac80211 versus ieee80211 stacks]] write-up.
  
 **IMPORTANT**\\ **IMPORTANT**\\
 If you have a new kernel that support mac80211 and includes the new rtl8187 driver then you **MUST** blacklist it otherwise the ieee80211 version of the module below will not work.  See [[r8187#​blacklisting_mac80211_driver_version|blacklisting mac80211 driver version]] below. If you have a new kernel that support mac80211 and includes the new rtl8187 driver then you **MUST** blacklist it otherwise the ieee80211 version of the module below will not work.  See [[r8187#​blacklisting_mac80211_driver_version|blacklisting mac80211 driver version]] below.
- 
  
 ====== R8187 ====== ====== R8187 ======
Line 18: Line 21:
   unzip rtl8187_linux_26.1010.zip   unzip rtl8187_linux_26.1010.zip
   cd rtl8187_linux_26.1010.0622.2006/​   cd rtl8187_linux_26.1010.0622.2006/​
-  wget http://​patches.aircrack-ng.org/​rtl8187_2.6.24v3.patch+  wget http://​patches.aircrack-ng.org/​rtl8187_2.6.27.patch 
 +  wget http://​patches.aircrack-ng.org/​rtl8187_2.6.32.patch
   tar xzf drv.tar.gz   tar xzf drv.tar.gz
   tar xzf stack.tar.gz   tar xzf stack.tar.gz
-  patch -Np1 -i rtl8187_2.6.24v3.patch+  patch -Np1 -i rtl8187_2.6.27.patch 
 +  patch -Np1 -i rtl8187_2.6.32.patch
   make   make
   make install   make install
Line 28: Line 33:
  
 Please note that a copy of the patch is also included with the aircrack-ng tar file in the "​patches"​ subdirectory. Please note that a copy of the patch is also included with the aircrack-ng tar file in the "​patches"​ subdirectory.
- 
  
 ====== Usage Tips ====== ====== Usage Tips ======
- 
- 
 ===== Power Settings ===== ===== Power Settings =====
  
Line 55: Line 57:
 You MUST ignore the dBm and mW labels. ​ The value of "​5"​ above is the actual value in the  0 to 35 range. ​ Unfortunately due to driver constraints,​ the "dBm (3mW)" are also displayed but must be ignored. You MUST ignore the dBm and mW labels. ​ The value of "​5"​ above is the actual value in the  0 to 35 range. ​ Unfortunately due to driver constraints,​ the "dBm (3mW)" are also displayed but must be ignored.
  
-See this [[http://​tinyshell.be/​aircrackng/​forum/​index.php?​topic=3138.msg17673#​msg17673|posting]] for a more detailed description of the power settings.+See this [[http://​forum.aircrack-ng.org/​index.php?​topic=3138.msg17673#​msg17673|posting]] for a more detailed description of the power settings.
  
 ===== "​highpower"​ ipriv Setting ===== ===== "​highpower"​ ipriv Setting =====
Line 74: Line 76:
  
    ​iwpriv wlan0 highpower 0    ​iwpriv wlan0 highpower 0
- 
  
 ===== Using Unpatched Driver ===== ===== Using Unpatched Driver =====
  
 Although it is highly recommended that you patch the driver, it is possible to use the unpatched driver for injection. ​ Simply enter this command first "​iwpriv wlan0 rawtx 1". Although it is highly recommended that you patch the driver, it is possible to use the unpatched driver for injection. ​ Simply enter this command first "​iwpriv wlan0 rawtx 1".
- 
  
 ====== Troubleshooting Tips ====== ====== Troubleshooting Tips ======
- 
- 
- 
 ===== Blacklisting mac80211 driver version ===== ===== Blacklisting mac80211 driver version =====
  
Line 93: Line 90:
  
 In both cases, reboot your system afterwards. In both cases, reboot your system afterwards.
- 
  
 ===== "sh wlan0up"​ fails ===== ===== "sh wlan0up"​ fails =====
Line 177: Line 173:
  
 Change "/​usr/​src/​kernels/​2.6.18-1.2869.fc6-i686"​ to where your kernel sources are located and the your specific kernel and directory structure. ​ You can use "uname -r" to help determine your exact kernel. Change "/​usr/​src/​kernels/​2.6.18-1.2869.fc6-i686"​ to where your kernel sources are located and the your specific kernel and directory structure. ​ You can use "uname -r" to help determine your exact kernel.
- 
  
 ===== "​passed 3 arguments, but takes just 2..." compile error message ===== ===== "​passed 3 arguments, but takes just 2..." compile error message =====
Line 196: Line 191:
  
 Solution: This typically occurs after you have upgraded your kernel version. Delete the all the patch files and install a fresh version. ​ You should now be able to compile it successfully. Also ensure that you have matching kernel header files. Solution: This typically occurs after you have upgraded your kernel version. Delete the all the patch files and install a fresh version. ​ You should now be able to compile it successfully. Also ensure that you have matching kernel header files.
- 
- 
  
 ===== Low injection rates ===== ===== Low injection rates =====
Line 207: Line 200:
   * Having legacy USB support enabled in your BIOS. Try disabling this option.   * Having legacy USB support enabled in your BIOS. Try disabling this option.
  
-**Note:** VMWare Workstation ​6.0 and VMWare Player ​2.0 use USB 1.1 and when injecting at high speed, injection uses all USB bandwith (so, nearly no packets are received) and you can notice a lot of packets lost in airodump-ng.+**Note:** VMWare Workstation ​6.0 and VMWare Player ​2.0 use USB 1.1 and when injecting at high speed, injection uses all USB bandwith (so, nearly no packets are received) and you can notice a lot of packets lost in airodump-ng.
  
  
Line 239: Line 232:
 ===== Optimizing injection rates ===== ===== Optimizing injection rates =====
 Some people have reported that including "-x 250" on the aireplay-ng command optimizes their injection rates. ​ You will have to experiment to see if this helps you or not. Some people have reported that including "-x 250" on the aireplay-ng command optimizes their injection rates. ​ You will have to experiment to see if this helps you or not.
- 
- 
  
 ===== "SKB BUG" Error Messages ===== ===== "SKB BUG" Error Messages =====
Line 253: Line 244:
   * To remove them from system log files, edit /​etc/​syslog.conf or /​etc/​rsyslog.conf depending on your system. ​ Add "​kern.!debug"​ to definition of each file receiving the debug messages.   * To remove them from system log files, edit /​etc/​syslog.conf or /​etc/​rsyslog.conf depending on your system. ​ Add "​kern.!debug"​ to definition of each file receiving the debug messages.
  
 +Another more radical approach is to comment out the kernel messages in the kernel source code.  This will also mean recompiling your kernel.
 +
 +Change net/​core/​skbuff.c in your kernel source:
 +
 +   void skb_truesize_bug(struct sk_buff *skb)
 +   {
 +         ​printk(KERN_ERR "SKB BUG: Invalid truesize (%u) "
 +                "​len=%u,​ sizeof(sk_buff)=%Zd\n",​
 +                skb->​truesize,​ skb->​len,​ sizeof(struct sk_buff));
 +   }
 +   ​EXPORT_SYMBOL(skb_truesize_bug);​
 +
 +to:
 +
 +   void skb_truesize_bug(struct sk_buff *skb)
 +   {
 +   ​(void)skb;​
 +   // ​     printk(KERN_ERR "SKB BUG: Invalid truesize (%u) "
 +   // ​            "​len=%u,​ sizeof(sk_buff)=%Zd\n",​
 +   // ​            ​skb->​truesize,​ skb->​len,​ sizeof(struct sk_buff));
 +   }
 +   ​EXPORT_SYMBOL(skb_truesize_bug);​
 +
 +This effectively eliminates the kernel from reporting the SKB BUG messages.
  
 ===== "​iwe_stream_add_event"​ compile error message ===== ===== "​iwe_stream_add_event"​ compile error message =====
Line 268: Line 283:
 in the instructions at the top of the page. in the instructions at the top of the page.
  
 +===== "​asm/​semaphore.h:​ No such file or directory"​ compile error message =====
 +
 +See this [[http://​forum.aircrack-ng.org/​index.php?​topic=4305.msg24483#​msg24483|forum entry]]:
 +
 +Please note a repair apparently needed in ' rtl8187_2.6.27.patch'​ for kernel 2.6.27 +/-
 +
 +Unmodified, you will get the following error :
 + -- output from ' make ' :
 +  ...In file included from /​usr/​src/​drivers/​rtl8187_linux_26.1010.0622.2006/​beta-8187/​r8187_core.c:​65:​
 +     /​usr/​src/​drivers/​rtl8187_linux_26.1010.0622.2006/​beta-8187/​r8187.h:​47:​27:​ error: asm/​semaphore.h:​ No such file or directory
 +
 +
 +Modification to file    r8187.h ​  :
 +    lines 46,47 are :
 +      #include <​asm/​io.h>​
 +      #include <​asm/​semaphore.h>​
 +
 +    overwrite lines 46,47 to this....
 +      #if (LINUX_VERSION_CODE < KERNEL_VERSION(2,​6,​19))
 +        #include <​asm/​io.h>​
 +        #include <​asm/​semaphore.h>​
 +      #else
 +        #include <​linux/​io.h>​
 +        #include <​linux/​semaphore.h>​
 +      #endif
 +
 +
 +===== Will not compile on kerner 2.6.31 or above =====
 +
 +Follow the patching instructions at the top of this page then:
 +
 +   wget http://​github.com/​nopper/​archpwn/​raw/​master/​repo/​lkm-skel/​rtl8187-ng/​rtl8187-ng-2.6.31.patch
 +   patch -Np1 -i rtl8187-ng-2.6.31.patch
 +
 +Then proceed with make/make install.
  
 ====== Limitations ====== ====== Limitations ======
Line 274: Line 324:
  
 While in monitor mode, airodump-ng will not capture or record any packets injected by the aircrack-ng suite. ​ This is a known problem with the driver. While in monitor mode, airodump-ng will not capture or record any packets injected by the aircrack-ng suite. ​ This is a known problem with the driver.
- 
  
 ===== Shared Key Authentication fails in managed mode ===== ===== Shared Key Authentication fails in managed mode =====
Line 289: Line 338:
 SKA is not currently supported with the RTL8187 driver. There is no known workaround. SKA is not currently supported with the RTL8187 driver. There is no known workaround.
  
 +===== WPA/WPA2 fails in managed mode =====
 +
 +On recent kernels, the patched driver fails to work in normal WPA/WPA2 mode.  In this case, use the patched ieee80211 driver for injection and use the mac80211 version for normal WPA/​WPA2. ​ In order to do this you will have to blacklist the unwanted module based what you plan to use your system for.  IE For injection, blacklist the rtl8187 module. ​ For WPA/WPA2, blacklist the r8187 module.
r8187.1218821639.txt.gz · Last modified: 2008/08/15 19:33 by darkaudax