drivers-modules-patches για ασυρματες καρτες?

placebophd | Δευ, 06/09/2008 - 13:02 | 2' | 8

Γεια σας πνευματικοι συνδαιτημονες,

Εχω εγκαταστησει το ubuntu hardy. Εχω την ασυρματη καρτα netgear wpn311 η οποια δουλευει τελεια.

Οταν παταω την εντολη iwconfig βλεπω οτι εχει φορτωθει το ath_pci module. Οταν τρεχω το backtrack linux live cd η ιδια εντολη μου βγαζει οτι εχει

φορτωθει το madwifi_ng module!!!! Απο οτι διαβασα και τα δυο modules ειναι madwifi drivers.

Μπορει καποιος να μου εξηγησει ποια ειναι η διαφορα μεταξυ τους? Απο οτι ειδα στο madwifi.org υπαρχει μονο ενα αρχειο για download!!! αρα πως προκυπτουν διαφορετικα drivers? Εψαξα και διαβασα στο διαδικτυο αλλα δεν βρηκα κατι. Το μονο που ειδα οτι υπαρχει και η εννοια του patch, που δεν μπορεσα ομως να καταλαβω τι προσφερει στον πυρηνα.

Ακομα πιο σημαντικο. Πως μπορω εγω στο ubuntu hardy να σβησω το  ath_pci  και να φορτωσω το madwifi_ng για να τρεξω το Kismet και καποια αλλα sniffing πακετα?

Θα ηθελα παρα πολυ το περιοδικο να ασχολειται και με τετοια θεματα και να βγαζει ειδικα τευχη για λιγο πιο προχωρημενα θεματα, γιατι πλεον το ubuntu ειναι τοσο ευκολο στη χρηση που μαλλον δεν χρειαζονται ειδικα τευχη για το πως γινεται η εγκατασταση και πως δουλευει το kaffeine και τα αλλα προγραμματα του.

--Χ

Δώσε αστέρια!

MO: (ψήφοι: 0)

Σχόλια

Sure, δεν έχεις άδικο.

Στο τεύχος 18 όμως φιλοξενούσαμε τον Νίκο Κοσσυφίδη που είναι στην ομάδα ανάπτυξης του Madwifi και εξηγούσε τι γίνεται με τα Atheros, Madwifi κλπ.

Οπότε το περιοδικό ασχολείται και με τέτοια θέματα, απλά εσύ δεν το αγοράζεις :)

Για την ιστορία να η απάντηση του Νίκου:

Νικος Κοσσυφίδης, Ελληνικό Linux Format #18]

Το 2002 μια παρέα 10 - 15 ατόμων αρχίσαμε να στήνουμε το AWMN (www.awmn.net) και φυσικά οι δρομολογητές του δικτύου έπρεπε να είναι σε Linux. Τότε άρχισα επιτέλους να απολαμβάνω πραγματικά το Linux, έφτιαξα το πρώτο ταρατσο-pc που έτρεχε τότε SuSE 7.2 και άρχισα να στήνω services, να παίζω με το δίκτυο και να μαθαίνω πράγματα. Εν το μεταξύ το Linux είχε προχωρήσει αρκετά, είχε φτάσει στην έκδοση 2.4 και το hardware support αλλά και η ταχύτητά του είχε βελτιωθεί αρκετά. Το SuSE και το YaST όσο προχώραγα άρχισαν να μου τη δίνουν στα νεύρα και σε κάποια φάση έβαλα debian και ησύχασα.

Γύρω στο 2005-6 σταμάτησα πλέον να χρησιμοποιώ στο pc μου windows και το γύρισα αποκλειστικά σε Linux, εν' το μεταξύ το AWMN είχε μεγαλώσει πολύ και αλλάξαμε εξοπλισμό, αρχίσαμε να χρησιμοποιούμε τις κάρτες τις Atheros και το πρότυπο 802.11a (αντί του b που χρησιμοποιούσαμε μέχρι τότε). Απ' το 2003 είχε αρχίσει η ανάπτυξη του σχετικού driver στο Linux (MadWiFi) και στο FreeBSD (ath), όμως δυστυχώς ο driver αυτός δεν ήταν εντελώς ελεύθερος. Το κομμάτι του driver που επικοινωνούσε με το hw ήταν κλειστού κώδικα κι αυτό γιατί η Atheros προτίμησε αντί να επενδύσει στον μικροεπεξεργαστή της (MAC chip) ώστε να τρέχει κάποιο firmware, να επενδύσει στο radio και να μεταφέρει ουσιαστικά τις λειτουργίες του firmware σε αυτό το κομμάτι του driver το οποίο και ονόμασε HAL (Hardware Access Layer). Το HAL εν το μεταξύ έπρεπε να είναι σε binary μορφή και όσο το δυνατό ποιο κλειστό γιατί το hw έχει πολύ μεγάλες δυνατότητες και μπορεί κάποιος ξεκλειδώνοντας τις δυνατότητες αυτές να εκπέμψει σε παράνομη συχνότητα και ισχύ (και άρα οι κάρτες δεν θα μπορούσαν να πιστοποιηθούν και να βγουν στην αγορά).

Απ' την άλλη όμως διάφορες εταιρίες έκαναν NDA (Non Disclosure Agreement) με την Atheros και είχαν πρόσβαση στον κώδικα του HAL με αποτέλεσμα να δημιουργήσουν ποιο γρήγορους και σταθερούς drivers απ' τον MadWiFi κι έτσι το AWMN να αρχίσει πλέον να χρησιμοποιεί προϊόντα όπως το Mikrotik για να έχει καλύτερες επιδόσεις. Κάπου εκεί τα πήρα και αποφάσισα να ασχοληθώ σοβαρά με το θέμα. Θυμόμουν ότι είχε γίνει παλαιότερα μια προσπάθεια για reverse engineering σε κάποιες παλιές κάρτες τις Atheros (5210) απ' τον Reyk Floeter αλλά είχα χάσει την πορεία της δουλειάς του και είχα μείνει με ένα draft tarball απ' το 2003 που το είχα πρωτοκοιτάξει. Τελικά η δουλειά αυτή κατέληξε στο OpenBSD όπου είχαν πάρει τον ath driver απ' το FreeBSD και στη θέση του HAL είχαν βάλει το συγκεκριμένο project που το ονόμαζαν ar5k. Αφού το ar5k είχε φτιαχτεί για να αντικαταστήσει το HAL του FreeBSD δεν θα ήταν τίποτα να αντικαταστήσει το HAL στον MadWiFi. Έχετε υπόψη ότι το HAL είναι αυτόνομο, το μόνο ουσιαστικά που χρησιμοποιεί απ' το λειτουργικό είναι οι συναρτήσεις για να διαβάζει και να γράφει στο hw, γα την ακρίβεια ο MadWiFi και ο ath driver χρησιμοποιούν το ίδιο binary, υλοποιούν τις συναρτήσεις αυτές του HAL open-source και μετά κάνουν το linking με τον υπόλοιπο driver.

Έτσι ξεκίνησα να κάνω port το ar5k στον MadWiFi και μετά από 1 χρόνο και διάφορα τρεχάματα τα παιδιά απ' το MadWiFi με έβαλαν στην ομάδα και μου έδωσαν access στο svn repository όπου άνοιξα το madwifi-old-openhal branch και δουλεύω από τότε εκεί.

LXF: Ποιες είναι οι διαφορές του HAL από το ar5k, και σε τι εστιάζει το δικό σας port; Υποστηρίζουν τις ίδιες συσκευές/chipsets, έχουν την ίδια λειτουργικότητα;

Όχι το ar5k σαφώς υστερεί σε σχέση με το HAL κι αυτό γιατί μέχρι τώρα όσο υπήρχε το HAL ο κόσμος δεν ασχολήθηκε με το ar5k αρκετά ώστε να υπάρχει επαρκές feedback. Υποστιρίζει όμως αρκετά chipsets με έμφαση στο 5212 που είναι και το ποιο διαδεδομένο της σειράς (ουσιαστικά τα μετέπειτα chips βασίστηκαν αρκετά σε αυτό) και παίζει αρκετά καλά και σταθερά, τόσο σαν station όσο και σαν access point. Το 5211 έχει πρόβλημα στην λειτουργία του ως AP και τα μετέπειτα 5413/5414 έχουν χαμηλή απόδοση γιατί δεν ξέρουμε πώς να κάνουμε initialize σωστά το radio. Όλα τα υπόλοιπα chips δεν υποστηρίζονται, τα 2424/5424, τα καινούρια MIMO chips 5416/5418 που βρίσκονται σε καινούρια laptops -πχ. στα macbook- κλπ ενώ το 5210 που είναι το παλαιότερο απ' όλα δεν βρήκαμε κάποια κάρτα για να το τεστάρουμε (υποτίθεται πως ο κώδικας δουλεύει πάντως). Τέλος δεν έχουμε βρει ακόμα τι γίνεται με το transmition power (μάλλον γι' αυτό και το 5211 δεν μπορεί να παίξει ως AP) καθώς και τις βασικές έστω λεπτομέρειες για το initialization του radio. Όπως και να 'χει το δουλεύουμε και στην πορεία όσο κάνουμε αρκετά register dumps θα βρούμε την άκρη.

LXF: Σε ποιο σημείο βρίσκεται τώρα το project; Πότε θα το δούμε στον πυρήνα;

Φτιάχνουμε γύρω απ' το port μου -πλέον είναι fork γιατί το έχω αλλάξει αρκετά- έναν καινούριο driver που βασίζεται στο νέο 802.11 protocol stack του πυρήνα (mac80211) και λέγεται ath5k. Προς το παρόν υποστιρίζει μόνο station mode γιατί το mac80211 είναι ακόμα στα πρώτα του βήματα και θέλει αρκετή βελτίωση, έτσι δεν βάζουμε ακόμα AP support γιατί περιμένουμε το protocol stack όπως και το configuration interface (cfg80211/nl80211) να σταθεροποιηθεί -API κλπ-. Ήδη τα πρώτα commits έχουν γίνει και περιμένουμε τον kernel maintainer να κάνει review τον κώδικα. Εν το μεταξύ προέκυψε το θέμα με το license και καθυστερεί ακόμα περισσότερο η διαδικασία. Αν όλα πάνε καλά πάντως κατά πάσα πιθανότητα θα μπει στον 2.6.24.

Χρήσιμο είναι και το wiki του MadWifi:
http://madwifi.org/wiki/About/History

επί της ουσίας απ' όσο καταλαβαίνω, το hardy σου έχει τους παλιούς drivers. Το madwifi-ng, πολύ λογικά, είναι η επόμενη γενιά πραγματικών Linux drivers για τέτοιες συσκευές. Στο wiki τους έχουν και πάλι χρήσιμες οδηγίες:
http://madwifi.org/wiki/UserDocs/FirstTimeHowTo

Τα περί patch που πιθανώς διάβασες στα Ubuntu forums (πριν κάνεις το post σου εκεί...) είναι για συγκεκριμένα μοντέλα laptop/wireless της Acer.

Προσοχη: γράφω "πιθανώς" και κρατώ επιφυλάξεις γιατί δεν έχω παρόμοια κάρτα. Υποθέσεις κάνω με λίγη κοινή λογική.

--Stat rosa pristina nomine, nomina nuda tenemus

Καταρχας dimtiri σε ευχαριστω πολυ πολυ.

dimitris]Sure, δεν έχεις άδικο. Στο τεύχος 18 όμως φιλοξενούσαμε τον Νίκο Κοσσυφίδη που είναι στην ομάδα ανάπτυξης του Madwifi και εξηγούσε τι γίνεται με τα Atheros, Madwifi κλπ. Οπότε το περιοδικό ασχολείται και με τέτοια θέματα, απλά εσύ δεν το αγοράζεις :) 

Πραγματι δεν αγοραζω καθε τευχος. Ομως η κοινη λογικη λεει οτι για οτιδηποτε πριν  αγορασεις κατι ριχνεις και μια ματια στο τι προκεται να αγορασεις, γιατι αλλιως...

Δυστυχως τα περιεχομενα για το τευχος 18 δεν ηταν καθολου διαφωτιστικα και οι "συνεντευξεις" συνειρμικα με παραπεμπουν σε αλλου ειδους περιοδικα! 

dimitris]

 Χρήσιμο είναι και το wiki του MadWifi: http://madwifi.org/wiki/About/History επί της ουσίας απ' όσο καταλαβαίνω, το hardy σου έχει τους παλιούς drivers. Το madwifi-ng, πολύ λογικά, είναι η επόμενη γενιά πραγματικών Linux drivers για τέτοιες συσκευές. Στο wiki τους έχουν και πάλι χρήσιμες οδηγίες: http://madwifi.org/wiki/UserDocs/FirstTimeHowTo Τα περί patch που πιθανώς διάβασες στα Ubuntu forums (πριν κάνεις το post σου εκεί...) είναι για συγκεκριμένα μοντέλα laptop/wireless της Acer. Προσοχη: γράφω "πιθανώς" και κρατώ επιφυλάξεις γιατί δεν έχω παρόμοια κάρτα. Υποθέσεις κάνω με λίγη κοινή λογική.

--Stat rosa pristina nomine, nomina nuda tenemus

το madwifi_ng (next generation) ειναι καινουργιας γενιας, αλλα δεν εχω καταλαβει αν ειναι πιο καινουργια απο το ath_pci. Αυτο ομως που δεν υποκειται στην κοινη λογικη ειναι τα καινουργια ubuntu να εχουν παλιους drivers. Αρα η κοινη λογικη φιλε μου δεν ειναι τοσο κοινη, τουλαχιστον για αυτους που δεν μυημενοι στο χωρο.

Επι της ουσιας, ομως, εχω διαβασει απειρα forum αλλα δεν μπορω να καταλαβω τι ειναι αυτο το ath_pci και πως μπορω να το ξεφορτωθω!!!!!

 Υ.Γ Εχω και αλλα post σε αλλα φορουμ και κλαμπ, τι νοημα ομως εχει αυτο;

 

--X 

Δεν καταλαβαίνω ακριβώς σε ποιου είδους περιοδικά σε παραπέμπουν τα περιεχόμενα ή οι συνεντεύξεις του τεύχους 18. Μπορείς να μου εξηγήσεις, για να διορθώσουμε το στυλ;

Επί της ουσίας, απάντησα αλλά πιθανώς δεν ήμουν σαφής: Το ath_pci είναι παλιότερο module.
Επίσης, το ότι υπάρχει νεότερο module από το Madwifi δε σημαίνει ότι οι διανομές Linux είναι υποχρεωμένες να το εγκαταστήσουν (αν και κρατώ επιφυλάξεις για το τι πράγματι συμβαίνει, μια και όπως ανέφερα δεν έχω τέτοια κάρτα μπροστά μου για δοκιμή).

Πάντως, για να απενεργοποιήσεις το module δίνεις:

rmmod -w ath_pci

και για να το βγάλεις οριστικά:

gksudo gedit /etc/modprobe.d/blacklist

Στο αρχείο προσθέτεις:

blacklist ath_pci

Αποθηκεύεις και το κλείνεις, κι αν κάνεις reboot παύει να λειτουργεί το module και άρα η wireless.

Γι'αυτό ακολούθησε τις οδηγίες του link που σου έδωσα για το madwifi_ng...

--Stat rosa pristina nomine, nomina nuda tenemus

Ελπιζω να σε καλυψα με το pm.

Θα κανω ακριβως αυτα που μου λες και θα ενημερωσω αν ειχα επιτυχια.

 

Thx a lot

Με κάλυψες απόλυτα και έχεις δίκιο! Good luck.

--Stat rosa pristina nomine, nomina nuda tenemus

Τελικα πετυχα να δουλεψω τους sniffers που ηθελα.

Απο οτι εχω καταλαβει το ath_pci ειναι το kernel module που φορτωνει το driver του madwifi. Αρα το ath_pci δεν ειναι ενας παλιος ή καινουργιος driver, απλα το ονομα του module tou madwifi. Μεσα στους drivers υπαρχει και ενα προγραμμα που κανει caputre τα πακετα. Αυτο το προγραμμα αναλογα με το chipset της atheros καρτας μας εχει αλλο ονομα οπως  madwifi_ng, madwifi_g, madwifi_a, madwifi_b...

Χωρίς να ξέρω κάτι ιδιαίτερο, δεν μου φαίνεται σόι εξήγηση. Εχεις ένα URL όπου γράφει κάτι τέτοιο για να το έχουμε σαν αναφορά;

Επίσης δεν μας είπες τι έπρεπε να κάνεις για να δουλέψει... ;)

--Stat rosa pristina nomine, nomina nuda tenemus

Στο λινκ που μου εστειλες οι οδηγιες γραφουν να εγκαταστησεις τους καινουργιους drivers του madwifi και μετα να φορτωσεις το module ath_pci me την εντολη modprobe ath_pci. Το modprobe εκτελει το inmod που ειναι μια εντολη να τρεξεις ενα Module se kernel mode.

Αρα το ath_pci ειναι ανεξαρτητο απο τους drivers και τo madwifi-ng ειναι το ονομα του driver και ath_pci το ονομα του Module.

Μα δεν υπαρχει κανεις να μου πει αν ειμαι λαθος? Μονο ο dimitris συμμετασχει στο thread.

Οσον αφορα τους sniffers (προκειται για το kismet) βρηκα το παρακατω λινκ.

http://www.madwifi.org/wiki/UserDocs/kismet

Ακολουθησα ΑΚΡΙΒΩΣ τις οδηγιες που εχει.

Αλλα το κισμετ εχει καποια προβλματα με το madwifi δεν ξεκιναει μερικες φορες!. Γιαυτο χρησιμοποιησα και την εντολη

Killall wpa_supplicant που την βρηκα σε ενα forum

Μετα ετρεξε κανονικα.