Spis treści
Poradnik: Czy moja karta bezprzewodowa jest kompatybilna?
Wersja: 1.07 17 maja 2009
Autor: darkAudax
Wstęp
Często zadawanym pytaniem jest „Mam taką i taką kartę bezprzewodową, czy jest ona kompatybilna z Aircrack-ng?” lub „Jaką kartę powinienem kupić?”, a także „Czy moja karta wspiera packet injection?” i podobne. Poradnik ten ma za zadanie odpowiedzieć na te pytania.
Znalezienie odpowiedzi na te pytania wymaga też współpracy z Twojej strony. Nie jest to tak proste, jak zgłoszenie swojej wątpliwości na forum i czekanie na odpowiedź. Jeśli nie odrobisz swojej pracy domowej, nie zostanie Ci zaoferowana żadna pomoc. Z drugiej strony, jeśli odrobiłeś ją poprawnie, ludzie bardzo chętnie Ci pomogą.
Jeśli dopiero planujesz kupno karty bezprzewodowej, najłatwiej po prostu wybrać jedną z listy kompatybilnych kart. Jeśli wiesz już, jaką zamierzasz kupić (bądź już jakąś masz) to możesz użyć tego poradnika aby dowiedzieć się, czy jest ona kompatybilna.
Inna sprawa jest taka, że istnieje bardzo wiele kart, których jeszcze nie ma na liście kompatybilnych. Jeśli udało Ci się uruchomić aircrack'a jakąś kartą, proszę, abyś umieścił odpowiedniego posta na forum. Jest to jedyny sposób w jaki możemy powiększać tą listę. W swoim poście umieść informację o producencie, modelu, wersji karty (jeśli takowa istnieje - bardzo ważne szczególnie przy kartach firmy Linksys), chipset karty oraz użytych sterownikach.
Zajmijmy się jednak naszym zadaniem. Kroki w celu jego wykonania będą następujące :
- Określenie własnych wymagań i oczekiwań
- Wykrycie podstawowych właściwości karty
- Odkrycie chipsetu karty
- Zweryfikowanie możliwości chipsetu
- Określenie potrzebnych sterowników i ewentualnych modyfikacji
- Wybór karty
Określenie własnych wymagań i oczekiwań
Na początku musisz zdecydować, czy chcesz tylko zbierać pakiety, czy chcesz mieć także możliwość ich wstrzykiwania. Ważne jest, aby zdawać sobie sprawę, że Windows aktualnie potrafi tylko zbierać pakiety, które już są w sieci. Nie jest on w stanie ich w jakikolwiek sposób wstrzykiwać. Jest to jednym z podstawowych ograniczeń. O wiele mniej kart jest także kompatybilnych z tym systemem.
W zależności od karty i jej chipsetu, Linux umożliwia zarówno zbieranie pakietów, jak też ich wstrzykiwanie.
Powinieneś teraz już wiedzieć :
- którego systemu operacyjnego zamierzasz używać
- jaki typ sprzętu jest dla Ciebie wygodniejszy (PCI, PCMCIA, USB, itp.)
- których możliwości potrzebujesz (nasłuchiwanie, wstrzykiwanie)
Rzeczy te będą wyznacznikami w dalszej części poradnika.
Wykrycie podstawowych właściwości karty
Z kartą bezprzewodową zawsze związanych jest dwóch producentów. Jeden z nich zajmuje się produkcją faktycznej karty. Przykładami takich producentów są takie firmy, jak na przykład Netgear, Ubiquiti, Linksys czy D-Link. Poza tymi istnieje oczywiście wiele innych.
Drugim producentem jest ten, który zajmuje się produkcją chipsetu znajdującego się wewnątrz karty. Jest to - jeśli chodzi o karty bezprzewodowe - ważniejszy z producentów. Niestety, czasami bardzo trudno do niego dojść. Dzieje się tak dlatego, że producenci kart nie zawsze chcą ujawniać, czego używają wewnątrz swoich produktów. Dla naszych celów jednak, poznanie producenta chipsetu jest najważniejsze, jako że daje nam możliwość dowiedzenia się, na jakich systemach operacyjnych chipset ten jest najlepiej wspierany, jakich sterowników potrzebuje i jakie ewentualne ograniczenia związane są z jego używaniem.
Bardzo ważnym jest uświadomienie sobie różnicy między tymi dwoma producentami. Sama informacja dotycząca producenta i modelu naszej karty nie jest wystarczająca, aby iść dalej. Czego naprawdę musimy się dowiedzieć to producent chipsetu (i jego model). Następny krok opisuje, jak dowiedzieć się, jaki chipset znajduje się w środku Twojej karty.
Odkrycie chipsetu karty
Jest to najtrudniejsza część poradnika. Powiem z miejsca, że - aby osiągnąć sukces - tutaj musisz się naprawdę postarać. Jeśli Twoja karta znajduje się na liście kompatybilnych kart, to już wszystko wiesz i tą sekcję możesz pominąć.
Jeśli jednak tak nie jest, musisz dojść do tego, jaki chipset znajduje się w Twojej karcie. Można to osiągnąć na kilka różnych sposobów :
- Przeszukaj Internet wpisując w wyszukiwarkach „<model karty> chipset” lub „<model karty> linux”. Całkiem często w ten sposób można znaleźć informacje na temat chipsetu, którego używa karta wraz z doświadczeniami innych ludzi. Jest to najłatwiejszy i z reguły najbardziej efektywny sposób szukania chipsetu karty. Sprawdź jednak parę wyników wyszukiwania aby upewnić się, że są one spójne.
- Przeszukaj forum
- Możesz także zerknąć na nazwy sterowników w Windowsie, czasami zawierają one producenta i model chipsetu.
- Sprawdź stronę producenta karty. Niektórzy zamieszczają informację na temat chipsetu danej karty.
- Na niektórych kartach PCI chipset jest fizycznie widoczny. Poszukaj producenta takiego jak Atheros, Texas Instruments, bądź innych. Czasami na chipsecie widoczny jest też jego model.
- Wszystkie urządzenia bezprzewodowe sprzedawane w Stanach Zjednoczonych muszą być zatwierdzone przez FCC. Te same urządzenia są z reguły sprzedawane na całym świecie. Jeśli zostały one zatwierdzone, to muszą mieć na swojej płycie numer identyfikacyjny FCC. Jeśli masz ten numer, możesz po prostu użyć wyszukiwarki FCC ID aby znaleźć szczegółowe informacje o urządzeniu. Wyszukiwanie to zwróci Ci producenta, model karty oraz bardzo często producenta i model chipsetu.
Oto lista innych źródeł, które mogą być pomocne w określaniu chipsetu Twojej karty :
- Katalog chipsetów kart bezprzewodowych - jedna z najlepszych stron z takimi informacjami
- Katalog chipsetów adapterów WLAN nieaktualizowane, jednak ciągle całkiem przydatne
- Porównanie sprzętu z dużą ilością szczegółów.
- Przegląd i szczegółowe informacje na temat adapterów bezprzewodowych.
- Wyszukiwarka USB product ID Jeśli masz urządzenie USB, zdobądź jego identyfikator (device ID) przez komendę lsusb na Linuksie, a następnie wyszukaj je poprzez identyfikator produktu (product ID). Jest to pierwsza połowa identyfikatora urządzenia. Przykładowym jest 0bda:8187. Użyj „0bda” w wyszukiwarce i później poszukaj „8187” w zwróconych przez nią wynikach.
Producenci kart bezprzewodowych często wprowadzają jeszcze większe zamieszanie przez to, że na ten sam model karty przypadają różne chipsety. W takich właśnie sytuacjach będziesz miał do czynienia z „wersją karty”. D-Link bardzo często używa takich pojęć. Najpierw dowiedz się, czy Twoja karta też ma parę różnych wersji - z reguły można ją znaleźć na samej obudowie karty albo obok numeru seryjnego bądź adresu MAC. Przykład karty z różnymi wersjami znaleźć można na jednej ze stron D-Linka.
Tak więc gdy określasz chipset który znajduje się w Twojej karcie bezprzewodowej, zwróć uwagę na jej wersję. Na przykład jeśli szukasz informacji w Internecie, zamiast „DWL-G650 chipset” zastosuj zapytanie „DWL-G650 C1 chipset”. Wersja karty z reguły odgrywa bardzo ważną rolę.
Jeśli używasz Linuksa, jest parę sposobów dzięki którym możesz się dowiedzieć, jakiego chipsetu używa Twoja karta :
- komenda „dmesg” całkiem często posiada dużo informacji na temat wykrytej karty i jej chipsetu,
- jeśli Twoja karta używa magistrali ISA, to z reguły nie będziesz w stanie się niczego dowiedzieć
- jeśli Twoja karta używa magistrali PCI, będziesz musiał użyć komendy „lspci -nn” aby uzyskać ciągi identyfikujące urządzenia. W paru przypadkach, na przykład kart opartych na chipsetach Broadcom, wystarcza to do zidentyfikowania chipsetu. Parametr „-nn” powinien spowodować, że wyświetlone zostaną identyfikatory PCI ID. Przykładowy PCI ID dla karty opartej na chipsecie Atheros to „168c:0013”. Gdy już go posiadasz, w Internecie istnieje wiele stron dzięki którym możesz do niego dopasować chipset. Dwie z tych stron to http://pciids.sourceforge.net/ oraz http://www.pcidatabase.com/. Możesz znaleźć inne używając zapytania „PCI ID” w wyszukiwarkach. Komenda ta wyświetla także wymagane moduły kernela i moduły znajdujące się w użyciu - mogą one być także całkiem pomocne przy określaniu chipsetu.
- jeśli Twoja karta używa interfejsu USB, analogicznym narzędziem do powyższego jest „lsusb”. Czasami może on niestety nie działać, na przykład gdy nie jest zamontowany usbfs - w tym przypadku w celu pozyskania ciągów identyfikujących urządzenie użyj komendy „dmesg”.
- jeśli Twoja karta używa interfejsu Cardbus (32-bitowy PCMCIA), a Ty masz zainstalowany stosunkowo nowy kernel (2.4.X lub nowszy) z obsługą podsystemu PCMCIA, możesz użyć komendy „lspci -nn” w celu wyświetlenia ciągów identyfikujących. Jeśli jednak używasz starszego kernela, musisz użyć komendy „cardctl ident” aby wyświetlić ciągi.
- jeśli Twoja karta jest prawdziwą 16-bitową PCMCIA, a Ty używasz kernela nowszego niż 2.6.14, w celu wyświetlenia ciągów identyfikujących możesz użyć komendy „pccardctl ident”. Jeśli używasz starszego kernela, to samo możesz osiągnąć używając komendy „cardctl ident”. Miej na uwadze, że cardmgr wypisuje pewne ciągi identyfikujące do logów, jednak różnią się one od faktycznych ciągów identyfikujących dane urządzenie.
- komenda „lsmod” wypisuje wszystkie moduły aktualnie załadowane w systemie. Jeśli Twoja karta została automatycznie wykryta, możesz działać wstecz i dowiedzieć się, jaki chipset zawiera karta na podstawie używanych modułów.
Nawet jeśli używasz Windowsa, możesz załadować Linuxa używając dystrybucji „live” i używając technik opisanych powyżej.
W środowisku Windowsowym, możesz użyć programu typu HWiNFO aby pozyskać informacje o chipsecie.
Jeśli nie jesteś w stanie określić, jaki chipset zawiera Twoja karta, to nie masz szczęścia. Twoim jedynym wyjściem jest kupno karty kompatybilnej, bądź zbadanie i zidentyfikowanie karty która spełnia Twoje wymagania i zakupienie jej.
Gdy znasz już chipset, przejdź do następnego kroku.
Zweryfikowanie możliwości chipsetu
Używając sekcji kompatybilności dowiedz się, jakie możliwości daje Ci dany chipset na Twoim systemie operacyjnym.
Jeśli wszystko pasuje do Twoich wymagań, to świetnie. Jeśli nie, rozważ użycie innego systemu operacyjnego bądź karty bezprzewodowej.
Jeśli Twoim głównym systemem operacyjnym jest Windows, a podobają Ci się możliwości oferowane przez Linuksa, rozważ użycie dystrybucji „live”. W ten sposób będziesz w stanie mieć to, co najlepsze.
Przejdź do następnego kroku mającego na celu określenie potrzebnych sterowników i łatek.
Określenie potrzebnych sterowników i ewentualnych modyfikacji
Używając sekcji sterowników możesz teraz określić sterowniki potrzebne do obsługi Twojego chipsetu na wybranym przez Ciebie systemie operacyjnym. Strona ta zawiera odnośniki do wszelkich potrzebnych zasobów internetowych.
Na Linuksie z reguły potrzebne będzie „załatanie” sterowników w celu pozyskania zaawansowanych możliwości, takich jak packet injection i tryb monitorowania. Większość łatek można znaleźć tutaj. Pamiętaj, że będziesz potrzebować nagłówków jądra, podstawowych narzędzi developerskich oraz w paru przypadkach źródeł jądra.
Ten poradnik nie opisuje, jak ewentualnie załatać sterowniki tego potrzebujące na Twoim systemie.
Jeśli nie masz umiejętności bądź doświadczenia potrzebnego do załatania swojego systemu, rozważ użycie dystrybucji „live” takiej, jak BackTrack, która posiada już wszystkie załatane sterowniki.
Wybór karty
Jeśli wiesz, których cech chipsetu potrzebujesz, możesz użyć listy kompatybilnych kart aby znaleźć kartę, która używa właśnie tego chipsetu.
Na liście tej możesz też znaleźć informacje, które pozwolą Ci na określenie, czy karta, którą masz na oku, będzie umożliwiała przeprowadzenie takich operacji, których potrzebujesz.