Strumenti Utente

Strumenti Sito


it:acx
no way to compare when less than two revisions

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.


it:acx [2009/08/14 11:36] (versione attuale) – creata drosophila
Linea 1: Linea 1:
 +====== ACX100/ACX111  ======
  
 +//Nota: Questa pagina parla dei vecchi driver acx100/acx111. Per i nuovi driver basati su mac80211, vedere [[:acx1xx]].//
 +
 +===== ATTENZIONE!!! =====
 +**C'è una controversia legale sullo sviluppo di questo driver, vedere la [[http://kerneltrap.org/comment/reply/6692|mailing list]] wireless per maggiori informazioni. Leggere [[http://acx100.sourceforge.net/wiki/History#Kernel_inclusion|kernel inclusion section]] per maggiori informazioni sul precedente tentativo di includere questi driver nel kernel. 
 +**
 +
 +===== Stato del driver  =====
 +
 +Questo è un piccolo report sui driver acx. Leggere [[http://forum.aircrack-ng.org/index.php?topic=2216.msg12412#msg12412|questo thread]]  per maggiori informazioni.
 +
 +Esistono 3 versioni del driver:
 +- plain
 +- SoftMac
 +- mac80211
 +
 +Al momento la release stabile del driver "plain" è la v0.3.36 (acx-20070101) e funziona con le versioni del kernel >= 2.6.10.
 +
 +Per il kernel 2.6.21-22, è richiesta la patch: http://acx100.sourceforge.net/wiki/Patch_2.6.22
 +Questo driver non supporta WPA.
 +
 +Il driver può essere patchato per l'injection con le istruzioni riportate di seguito in questa pagina.
 +
 +La versione SoftMac è deprecata e non più aggiornata ormai.
 +
 +La [[:acx1xx|versione mac80211]] è ancora beta. Richiede una versione di kernel >= 2.6.18 (con il supporto per mac80211). Partendo dalla 2.6.27, sarà integrata nel kernel.
 +
 +A partire dalla versione 2.6.23, è stata inserita nel kernel una patch per l'injection direttamente nello stack mac80211. Per effettuare l'attacco fragmentation, è richiesta una patch aggiuntiva. Per maggiori informazioni vedere [[:mac80211]].
 +
 +Tutte le versioni richiedono il firmware non-GPL in /lib/firmware/, che è possibile trovare online.
 +
 +Leggere: http://acx100.sourceforge.net/wiki/Main_Page
 +
 +
 +===== Installazione del driver  =====
 +
 +Per prima cosa è richiesta una versione del kernel >= 2.6.10:
 +
 +  ifconfig wlan0 down
 +  rmmod acx
 +  wget http://www.cmartin.tk/acx/acx-20070101.tar.bz2
 +  tar -xjf acx-20070101.tar.bz2
 +  cd acx-20070101
 +  wget http://patches.aircrack-ng.org/acx-20070101.patch
 +  patch -Np1 -i acx-20070101.patch
 +  make -C /lib/modules/`uname -r`/build/ M=`pwd` modules
 +  make -C /lib/modules/`uname -r`/build/ M=`pwd` modules_install
 +  modprobe acx
 +
 +nota: se il codice non funziona, gli utenti Ubuntu potranno modificare le seguenti righe:
 +  make -C /lib/modules/`uname -r`/build/ M=`pwd` modules
 +  make -C /lib/modules/`uname -r`/build/ M=`pwd` modules_install
 +e sostituire `uname -r` con il nome del kernel utilizzato.
 +Il motivo di tutto ciò è che le directory dei moduli del kernel (ovvero ciò che restituisce il comando  /lib/modules/`uname -r`/) attuale non contengono il link simbolico "build" usato per la compilazione, e quindi non viene trovato nessun makefile dal comando make.
 +Solo /lib/modules/2.6.20-16-generic/ contiene un link simbolico chiamato "build" che assicura la presenza del makefile.
 +
 +esempio: dal 26 Giugno 2007, sotto Ubuntu 7.04 "Feisty Fawn", le righe corrette dovrebbero essere le seguenti:
 +  make -C /lib/modules/2.6.20-16-generic/build/ M=`pwd` modules
 +  make -C /lib/modules/2.6.20-16-generic/build/ M=`pwd` modules_install
 +
 +
 +====== Risoluzione dei problemi  ======
 +
 +===== FAILED to free any of the many full tx buffers =====
 +
 +Si ottiene un messaggio del kernel simile al seguente:
 +Jul  3 00:44:12 ubuntop kernel: [  736.008000] wlan0: FAILED to free any of the many full tx buffers. Switching to emergency freeing. Please report!
 +Jul  3 00:44:12 ubuntop kernel: [  736.008000] wlan0: tx timeout!
 +
 +Dall'autore della patch:
 +
 +E' un problema con il driver che ho visto diverse volte durante la scrittura della patch per acx111. Funziona così:
 +
 +Ogni pacchetto trasmesso alloca un buffer tx, in modo da iniziare a riempire l'intero buffer fino alla sua liberazione, e quello è il punto. Non averlo liberato in tempo.
 +Una volta raggiunto il limite ed aver utilizzato tutti i buffer disponibili, non funzionerà più fino al ricaricamento del driver. Egli attende per un messaggio TX_COMPLETE...
 +
 +Possibili soluzioni (nulla di certo, solo prove):
 +
 +    * Questo accade quando si utilizza il driver non patchato, occorre infatti controllare ed assicurarsi di utilizzare il driver patchato: guardare il buildtime, rimuovere tutti i moduli acx, assicurarsi che il modulo personalizzato sia inserito nel percorso corretto /lib/modules/`uname -r`/
 +    * Utilizzare aireplay-ng 0.8 o superiore, poiché hanno integrato un supporto indiretto dell'injection per acx (inviando più pacchetti ack)
 +    * Cambiare il mac dell'hardware con fakemac usando l'opzione "-h"
it/acx.txt · Ultima modifica: 2009/08/14 11:36 da drosophila